在我们发布谷歌地图上的那个“我的地图”编辑器的时候,开发者的反应是“太酷了,但我怎么才能在我自己的网站上也用上这样的工具呢?”。作为最初就是因为有地图 API 以及有一个相当好的开发者社区而被吸引到谷歌来的人,我就想一定要让开发者们能够在他们自己的网站上也能用上和“我的地图”中一样的编辑工具。
现在,我很高兴的宣布,这个支持可编辑的折线和多边形这样的图像使用界面功能现在是地图 API 的一部分了。
也就是说,比如,你有一个想让用户能够编辑的多边形(GPolygon)。只需调用GPolygon.enableEditing(),用户创建的多边形的每个边在用户光标悬浮在这条边上的时候都会出现一个可拖拽的小方块,用户可以拖动某个方块点来编辑对应的边。要是你又不想让它可编辑,调用 GPolygon.disableEditing() 就可以了。
另外我们也列出了 GPolygon 和 GPolyline 的一些附加事件,这样你很容易就可以模仿“我的地图”的使用功能了(在 API 应用或者是小地图中),具体的做法就是,在 mouseover 的时候调用 enableEditing 方法,在 mouseout 的时候调用 disableEditing 方法。要确认用户什么时候做了编辑的话,侦听 lineupdated 事件就行了。如果你想让用户能够从无到有画一条完整的新的 GPolyline,像下面这样调用 enableDrawing:
map.addOverlay(polyline);
polyline.enableDrawing();
在地图上的每次点击都会增加一个新的段点来连接折线,直到用户双击或者单击折线开始的那个顶点。你也可以调用 enableDrawing 来让用户能够追加一个段点到一条已经存在的折线的任何一端。每个人都喜欢漂亮一点的颜色,所以我们也提供几个方法让你能够改变折线或者多边形的样式:setStrokeStyle 和 setFillStyle。尽情玩吧,呵呵,有什么问题可以到我们的论坛上说说。