【问题标题】:Get polygon area using HERE maps使用 HERE 地图获取多边形区域
【发布时间】:2019-02-22 09:20:08
【问题描述】:

我正在使用 HERE 地图,我想知道在地图上绘制的多边形的面积。有办法知道吗?我在文档中没有找到任何内容。

【问题讨论】:

  • 我认为没有任何功能可以为您提供多边形的面积。可能您可以详细解释您的用户案例。如果您的用例是关于查找坐标是否在多边形区域内,那么您可以参考heremaps.github.io/examples/…
  • 不,用例是准确地知道以平方米或平方码或其他测量单位为单位的多边形面积。

标签: javascript here-api here-maps-rest


【解决方案1】:

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);
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-10-20
    • 2017-04-21
    • 2013-09-07
    • 1970-01-01
    • 1970-01-01
    • 2019-08-10
    • 1970-01-01
    • 2016-12-19
    相关资源
    最近更新 更多