【发布时间】:2012-02-08 17:35:29
【问题描述】:
当使用 Google 的 V3 API 在地图上绘制可编辑的 Polygon 时,是否有一些我可以注册的事件告诉我何时单击多边形的一个点(仅通过 editable 标志可见)?我希望能够使用户能够使用右键单击来绘制多边形,并通过单击绘制的第一个点来“完成”多边形。我首先创建一个点的Polygon,然后通过每次右键单击添加每个连续的点。我使用 mousemove 事件创建了两条“完成”线,两条较淡的线(两条Polylines)从绘制的最后一点到地图上的当前鼠标位置,以及从地图上的当前鼠标位置到第一条(“锚”)点。当我单击第一个点时,我希望能够通过删除这些完成线来“完成”Polygon,从而推断用户现在的意图是编辑已经使用可编辑句柄绘制的点Polygon 提供或保存 Polygon 的坐标到我的应用程序。
有没有办法做到这一点? (在我写这篇文章时,我想到了一个解决方案:在第一个(“锚点”)点周围创建一个不可见的小圆圈,并检测何时单击了那个不可见的圆圈。但我想看看是否有我可以使用的 API 中内置的东西。)
【问题讨论】:
-
您是否正在尝试推出自己的多边形编辑器?我建议改用绘图库:code.google.com/apis/maps/documentation/javascript/… 另见事件部分:code.google.com/apis/maps/documentation/javascript/…
-
@andresf 不知道绘图库可以绘制
Polygons。感谢您为这个 Google Maps API 新手指明正确的方向。 -
乐于助人。会将我的 cmets 移至答案部分。
-
@andresf 几年前我为 V2 地图 API 推出了自己的多边形编辑器。现在很难将它迁移到 V3。我自己的编辑器与其他基础设施相关联,因此我不确定将我的东西迁移或将绘图库连接到我的基础设施是否更容易。在 V2 中,我们使用事件“结束线”和“取消线”来回答问题。
-
我希望得到这个问题的实际答案。
标签: javascript events google-maps-api-3