我正在尝试求多边形的面积。这发生在加载多边形时并将在函数中使用。这是我的代码:
map.data.forEach(function(feature) {
if (feature.getGeometry().getType() == "Polygon") {
var bounds=[];
feature.getGeometry().forEachLatLng(function(path) {
var temp = new google.maps.LatLng(path.lat,path.lng);
bounds.push(temp);
});
console.log(bounds);
console.log(google.maps.geometry.spherical.computeArea(bounds));
}
});
Run Code Online (Sandbox Code Playgroud)
如果加载的对象是多边形,它会创建一个 LatLng 数组,然后应该使用computeArea 函数。我不断收到返回的 NaN 。我查看了帮助文档,计算区域采用 latLngs 区域,这就是边界。
边界显示正确,所以我不确定为什么没有计算面积。