【发布时间】:2013-02-03 14:15:27
【问题描述】:
我正在尝试检索折线和多边形的纬度坐标。在完成任一对象的绘制后,我想将 latlng 存储在数据库中,但现在我只是试图在 textarea 中显示 latlng。对于标记、矩形和圆形,我已经很容易做到这一点,但是折线和多边形的术语让我感到困惑。当我完成绘图时,我使用 addDomListener(drawingManager, 'polygoncomplete', ... 用于多边形,然后遍历我绘制的所有多边形。对于每个多边形,然后遍历其坐标数组。我搜索了这个论坛数据库并在 Google 文档页面上尝试了百慕大三角示例。 Bermuda Example 我已经阅读了很多次文档,只是看不到我缺少什么。任何帮助表示赞赏。
//Save polygons data to text area
var polygons = [];
google.maps.event.addDomListener(drawingManager, 'polygoncomplete', function(polygon) {
polygons.push(polygon);
});
google.maps.event.addDomListener(savebutton, 'click', function() {
document.getElementById("savedatapolygon").value = "";
for (var i = 0; i < polygons.length; i++) {
var polygonBounds = polygons[i].getPath();
var xy;
// Iterate over the polygonBounds vertices.
for (var i = 0; i < polygonBounds.length; i++) {
xy = polygonBounds.getAt(i);
contentString += '<br>' + 'Coordinate: ' + i + '<br>' + xy.lat() +',' + xy.lng();
}
document.getElementById("savedatapolygon").value += "polygon(";
document.getElementById("savedatapolygon").value += contentString;
document.getElementById("savedatapolygon").value += ")";
}
});
【问题讨论】:
-
你得到什么 javascript 错误? This example 可能会对您有所帮助,它将 DrawingManager 中的所有对象导出为 JSON 或 KML。
-
完美!这将节省我很多时间。我在工作中使用文本板,因为这就是我可用的所有内容,我无法下载任何其他内容,所以我无法跟踪任何错误:/
-
大多数浏览器都有一个报告错误的 javascript 控制台,使用调试器更简单,但有时您只需要查看报告的错误。
标签: google-maps-api-3 latitude-longitude polygons