所以,我试图通过MySQL表格中的多边形空间数据在谷歌地图上绘制多个多边形.我有一个PHP脚本,根据我的表数据输出以下XML.
<subdivision name="Auburn Hills">
<coord lat="39.00748" lng="-92.323222"/>
<coord lat="39.000843" lng="-92.323523"/>
<coord lat="39.000509" lng="-92.311592"/>
<coord lat="39.007513" lng="-92.311378"/>
<coord lat="39.00748" lng="-92.323222"/>
</subdivision>
<subdivision name="Vanderveen">
<coord lat="38.994206" lng="-92.350645"/>
<coord lat="38.985033" lng="-92.351074"/>
<coord lat="38.984699" lng="-92.343092"/>
<coord lat="38.981163" lng="-92.342234"/>
<coord lat="38.984663" lng="-92.3335"/>
<coord lat="38.993472" lng="-92.333179"/>
<coord lat="38.994206" lng="-92.350645"/>
</subdivision>
Run Code Online (Sandbox Code Playgroud)
我的问题是我用来尝试将每个形状绘制到地图上的javascript返回奇数坐标.使用警报,我可以看到用于存储"new google.maps.Polygon"坐标的数组返回每个形状的第一个纬度和经度对,并绘制一个线段而不是完整的多边形.有问题的javascript如下.
function initialize() {
var mapOptions = {
...
};
var map = new google.maps.Map(document.getElementById('map-canvas'),
mapOptions);
var arr = new Array();
var polygons = [];
downloadUrl("subdivision-coordinates.php", function(data) {
var xml = data.responseXML;
var subdivision = …Run Code Online (Sandbox Code Playgroud)