【问题标题】:How to draw a polygon on google map (V3) and save it? [duplicate]如何在谷歌地图(V3)上绘制多边形并保存? [复制]
【发布时间】:2014-07-21 15:07:43
【问题描述】:

我在我的项目中使用谷歌地图,我自定义它来创建和绘制多边形和折线,但我不保存形状,现在我想在地图上创建多边形并将其保存在我的数据库中,我的问题是:如何在我的数据库中保存多边形坐标?

我的代码:

  function initialize() {

        var mapOptions = {
            zoom: 14,
            minZoom: 14,
            maxZoom: 19,
            center: new google.maps.LatLng(35.696282, 51.422946),
            mapTypeId: google.maps.MapTypeId.ROADMAP,
            mapTypeControl: true,
            scaleControl: true,
            streetViewControl: false                
        };

        map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);

          drawingManager = new google.maps.drawing.DrawingManager({
            drawingMode: google.maps.drawing.OverlayType.POLYGON,
            drawingControl: true,
            drawingControlOptions: {
                position: google.maps.ControlPosition.TOP_CENTER,
                drawingModes: [/*google.maps.drawing.OverlayType.CIRCLE, google.maps.drawing.OverlayType.RECTANGLE, */google.maps.drawing.OverlayType.POLYLINE, google.maps.drawing.OverlayType.POLYGON]
            },
            polygonOptions: {
                editable: true
            }
        });
        drawingManager.setMap(map);

        google.maps.event.addListener(drawingManager, "overlaycomplete", function (event) {
            if (event.type != google.maps.drawing.OverlayType.MARKER) {                    
                drawingManager.setDrawingMode(null);
                var newShape = event.overlay;
                newShape.type = event.type;
                google.maps.event.addListener(newShape, 'click', function () {
                    setSelection(newShape);
                });

                setSelection(newShape);
            }
        });            
        google.maps.event.addListener(drawingManager, 'drawingmode_changed', clearSelection);
        google.maps.event.addListener(map, 'click', clearSelection);
        //delete selected shape
        google.maps.event.addDomListener(document.getElementById('deleteShape'), 'click', deleteSelectedShape);

}

【问题讨论】:

标签: javascript google-maps polygon


【解决方案1】:
var len = shape.getPath().getLength();
        var htmlStr = "";
        for (var i = 0; i < len; i++) {
            console.log(shape.getPath().getAt(i).toUrlValue(7));
        }

【讨论】:

    猜你喜欢
    • 2012-02-23
    • 1970-01-01
    • 1970-01-01
    • 2012-05-31
    • 2020-06-28
    • 2014-11-03
    • 1970-01-01
    • 2012-07-03
    • 2013-03-26
    相关资源
    最近更新 更多