Google maps api 3 谷歌地图V3:绘图库

Google maps api 3 谷歌地图V3:绘图库,google-maps-api-3,drawing,Google Maps Api 3,Drawing,我喜欢Google Maps v3.7的新绘图库,但我感觉文档还不完整,我有几个问题: 只提到了overlycompleted和{overlay}completed事件,但我还提到了drawingmode\u changed事件。有什么活动的清单吗 除了像上面的例子那样等待绘制完成并使用带有overlycompleted的侦听器之外,还有什么方法可以获取我们正在绘制的多边形的引用(对象) 有没有一种方法可以通过简单的点击来删除多边形中的顶点?如果没有,你会怎么做 经过大量搜索,我得出以下结论:

我喜欢Google Maps v3.7的新绘图库,但我感觉文档还不完整,我有几个问题:

  • 只提到了
    overlycompleted
    {overlay}completed
    事件,但我还提到了
    drawingmode\u changed
    事件。有什么活动的清单吗

  • 除了像上面的例子那样等待绘制完成并使用带有
    overlycompleted
    的侦听器之外,还有什么方法可以获取我们正在绘制的多边形的引用(对象)

  • 有没有一种方法可以通过简单的点击来删除多边形中的顶点?如果没有,你会怎么做


  • 经过大量搜索,我得出以下结论:

  • 除此之外,我找不到任何事件列表

  • 我找不到

  • 不,这是不可能的,但是我放了一个,我看到了一个使用右键点击的小图标。不幸的是,这对我不起作用,因为我需要左键点击


  • 我希望这对其他人有所帮助

    您可以像这样调用任何覆盖事件

    google.maps.event.addListener(drawingManager, 'polygoncomplete', function(e) {
        //Your magic goes here 
    });
    
    overlaycomplete
    类似于任何覆盖的全局事件,例如标记、多段线、圆和多边形。但是,如果您想为特定覆盖创建侦听器,只需将
    覆盖
    更改为所需覆盖:
    polygoncomplete
    polylinecomplete
    circlecomplete


    我知道这个问题很老了,但我还是想和大家分享我的答案。

    非常老的问题,但我有一些最新的信息,也许会对别人有所帮助

  • 对于可编辑形状,还有一些其他事件可能很有用:

  • 也找不到解决方案

  • 这段代码演示了如何在单击鼠标左键时删除多边形/多段线顶点:

  • google.maps.event.addListener(drawingManager,'OverlyComplete',函数(e){
    if(e.type!==google.maps.drawing.overlytype.MARKER){
    //绘制形状后切换回非绘制模式。
    drawingManager.setDrawingMode(空);
    //为新绘制的形状添加单击事件侦听器
    //并删除多边形顶点(如果已单击)
    var newShape=e.overlay;
    google.maps.event.addListener(新闻形状,'click',函数(e){
    如果(例如顶点!==未定义){
    if(newShape.type===google.maps.drawing.overlytype.POLYGON){
    var path=newShape.getpath().getAt(e.path);
    移除路径(e.顶点);
    如果(路径长度<3){
    newShape.setMap(空);
    }
    }
    if(newShape.type===google.maps.drawing.overlytype.POLYLINE){
    var path=newShape.getPath();
    移除路径(e.顶点);
    如果(路径长度<2){
    newShape.setMap(空);
    }
    }
    }
    });
    }
    });
    
    答案3确实帮助了我。7年后,这仍然有用。几乎不可能找到这些信息。谢谢。