我正在使用HERE地图,我想知道在地图上绘制的多边形区域。有办法知道吗?我没有在文档中找到任何内容。
答案 0 :(得分:0)
JS API中没有功能,但是您可以自己轻松地实现。 下面提供了一个用于计算多边形区域的面积(以平方米为单位)的示例函数:
function computeArea(latLngs) {
var pointsCount = latLngs.length,
area = 0.0,
d2r = Math.PI / 180.0,
radius = 6378137.0,
p1, p2;
if (pointsCount <= 2)
return 0;
for (var i = 0; i < pointsCount; i++) {
p1 = latLngs[i];
p2 = latLngs[(i + 1) % pointsCount];
area += ((p2.lng() - p1.lng()) * d2r) *
(2 + Math.sin(p1.lat() * d2r) + Math.sin(p2.lat() * d2r));
}
area = area * radius * radius / 2.0;
return Math.abs(area);
}