撤消绘制多边形顶点(google maps API v3)

时间:2015-03-02 00:18:55

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

我正在尝试找到一种方法来创建用于绘制的撤消按钮,其工作方式与编辑多边形时可用的撤消按钮类似。

更准确地说,每当用户在地图上插入一个点(例如多边形的顶点)时,他应该有一个选项来撤消他的最后一个(点/脊椎)插入。

目前它不存在作为现有功能,我希望在我正在开发的应用程序中实现它很容易,但对我来说似乎没有办法接近创建的对象和层。地图在完成之前。

要么是在v3 API中除了这个之外几乎所有的曝光,或者我正在寻找错误的地方。

除了'polygoncomplete'之外,没有其他有用的形状绘图事件,并且看起来绘制活动的维护状态是根深蒂固和分散的,因为我不能只用它们以前的版本替换地图对象和画布元素

有什么希望吗?

1 个答案:

答案 0 :(得分:1)

我已根据google manual创建了用于顶点删除的脚本。主要功能很简单,原型基于google.maps.OverlayView

function DeleteMenu() {
  this.div_ = document.createElement('div');
  this.div_.className = 'delete-menu';

  var menu = this;
  google.maps.event.addDomListener(this.div_, 'click', function(e) {
    menu.removeVertex();    
    e.stopPropagation();
  });
}
DeleteMenu.prototype = new google.maps.OverlayView();

代码的要点是here。使用jsbin sandbox进行播放。

查看example page,只需点击地图即可构建路径,您可以看到撤消按钮。