有没有办法在服务器端使用Google Maps API v3(Node.js)?

时间:2013-11-27 17:54:20

标签: javascript google-maps google-maps-api-3

我在客户端上扩展了一个多边形形状。请查看我的问题(How to evenly adjust some area to polygon (extend a polygon)?)以了解我的意思。我在浏览器中进行所有计算,然后将结果发送到服务器并将其存储在DB中。我使用这个函数(来自here):

    this.extendPolygon = function(polyline, offset) {
        var distance = Number(offset) * 1000;
        var numPts = polyline.getPath().getLength();
        var bounds = new google.maps.LatLngBounds();

        for (var i=0; i< numPts; i++) {
            bounds.extend(polyline.getPath().getAt(i));
        }

        var center = bounds.getCenter();
        var extendedPolyPts = [];
        for (var i=0; i< numPts; i++) {
            var heading = google.maps.geometry.spherical.computeHeading(center,polyline.getPath().getAt(i));
            var initialDist = google.maps.geometry.spherical.computeDistanceBetween(center,polyline.getPath().getAt(i));
            var extendedDist = initialDist + distance;
            var extendedPt = google.maps.geometry.spherical.computeOffset(center, extendedDist, heading);
            extendedPolyPts.push(extendedPt);
        }
        extendedPoly = new google.maps.Polygon({
            // map: map,
            paths:extendedPolyPts, 
            fillColor:"#00FF00",
            strokeWidth:2, 
            fillOpacity:0.4, 
            strokeColor:"#0000FF",
            strokeOpacity:0.5
        });

        return extendedPoly;
    };

但我想在服务器端进行计算。是否可以在服务器上运行该功能?它使用GM API的这些功能:

google.maps.geometry.spherical.computeHeading
google.maps.LatLngBounds
polyline.getPath().getLength()
google.maps.geometry.spherical.computeDistanceBetween
google.maps.geometry.spherical.computeOffset
google.maps.Polygon

0 个答案:

没有答案