Javascript中国家的中心坐标

Javascript中国家的中心坐标,javascript,map,openlayers,Javascript,Map,Openlayers,我想使用Javascript获得一个国家的中心坐标。是否有任何xml文件提供此类数据,以便在web应用程序中使用?我基本上是尝试在OpenLayers中使用国家名称将数据放在地图上。使用您可以使用该类 var geocoder = new google.maps.Geocoder(); geocoder.geocode( { address : "Germany" }, function(results) { window.alert(results[0].geo

我想使用Javascript获得一个国家的中心坐标。是否有任何xml文件提供此类数据,以便在web应用程序中使用?我基本上是尝试在OpenLayers中使用国家名称将数据放在地图上。

使用您可以使用该类

var geocoder = new google.maps.Geocoder();
geocoder.geocode(
    { address : "Germany" },
    function(results) {
        window.alert(results[0].geometry.bounds.getCenter());
    });

您可能需要检查
结果[]
数组,而不仅仅是获取索引0,但这应该让您从正确的方向开始。

您可能已经下载了合适的GIS数据集,并自己生成了所需的信息。例如:

使用类似这样的程序,您可以计算每个县的质心,并根据国家名称和x/y生成一个表格

请注意,Koordinates还有一个向量API,允许您按位置查询特征,并可以选择拉出完整的几何图形:

OpenLayers可以加载完整的几何图形并计算质心(eg),但考虑到世界边界数据集的大小和复杂性,性能不会很好

将它们放在一起


最好的选择可能是:一旦从国家获得质心,使用坐标向量API(不获取几何体)确定所选点所在的国家。从响应中,按名称从数据文件中查找质心,并将地图放在该位置的中心。

感谢您的回复,但由于谷歌API的许可条款,我真的不想使用谷歌API。你必须在谷歌地图上显示数据,否则你不能使用它。还有别的选择吗?