Javascript 如何用地理坐标求小多边形的面积

Javascript 如何用地理坐标求小多边形的面积,javascript,geocoding,Javascript,Geocoding,我正在使用GeoServer做一个函数来获取地图上不规则多边形的面积,我有地理坐标,我搜索了很多答案,比如坐标到笛卡尔坐标的转换(我想这是最简单的),还有。 但这项工作很昂贵,而且我没有那么多时间来做预测 请帮我得到最接近和最简单的面积 我从开始,试过之后,但不是预期的 _showPerimeterAndArea(coordx, coordy) { const earthRadius = 6371; let area = 0; let size = coordx.leng

我正在使用GeoServer做一个函数来获取地图上不规则多边形的面积,我有地理坐标,我搜索了很多答案,比如坐标到笛卡尔坐标的转换(我想这是最简单的),还有。 但这项工作很昂贵,而且我没有那么多时间来做预测

请帮我得到最接近和最简单的面积

我从开始,试过之后,但不是预期的

_showPerimeterAndArea(coordx, coordy) {
    const earthRadius = 6371;
    let area = 0;
    let size = coordx.length;
    let i = 0;
    if (size < 3) { return 0; }
    let prevTanLat = Math.tan(((Math.PI / 2) - toRadians(coordy[size-1])) / 2);
    let prevLng = toRadians(coordx[size-1]);
    /* For each edge, accumulate the signed area of the triangle formed by the North Pole
    and that edge ("polar triangle"). */
    for (i = 0; i < size-1; i++) {
        let tanLat = Math.tan((Math.PI / 2 - toRadians(coordx[i])) / 2 );
        let lng = toRadians(coordy[i]);
        area += this._polarTriangleArea(tanLat, lng, prevTanLat, prevLng);
        prevTanLat = tanLat;
        prevLng = lng;
    }
    return (area * earthRadius * earthRadius);
},
\u显示周边区域(coordx,coordy){
常数地球半径=6371;
设面积=0;
让尺寸=坐标x.长度;
设i=0;
如果(大小<3){返回0;}
设prevTanLat=Math.tan(((Math.PI/2)-toRadians(coordy[size-1]))/2);
设prevLng=toRadians(coordx[size-1]);
/*对于每条边,累加北极形成的三角形的有符号区域
还有那个边(“极三角”)*/
对于(i=0;i