码迷,mamicode.com
首页 > 其他好文 > 详细

百度地图应用经验(一)

时间:2014-04-29 11:23:47      阅读:441      评论:0      收藏:0      [点我收藏+]

标签:java   使用   io   问题   c   javascript   

在最近的一个项目中使用过百度地图API的Javascript开发,

发现了一些问题,在这里作为自己的Knowledge积累,写下来。

问题:

手动绘图模式下(DrawingManager),

覆盖物Polyline,Polygon的绘画模式中,如果没有在options中指定enableEditing属性为True,

而是在手动绘画完成后,生成的覆盖物的对象上调用enableEditing方法改变编辑属性,

则生成的对象在地图上编辑后(拖动编辑线框或者编辑锚点的操作),再移动地图时,覆盖物的边框会被还原到编辑前的位置上,

但是编辑的锚点依然停留在编辑后的位置上。

 

版本:

百度地图API JavaScript 开源库

Baidu Map API 1.4

 

解决方法:

1.如果需要在绘画完成后让覆盖物进入编辑状态,需要在绘画前,预先指定options中编辑模式属性【enableEditing:true】

2.如果需要在绘画完成后覆盖物不进入编辑状态,而是在选中这个覆盖物时进入编辑状态,

    (1)预先指定options的属性【enableEditing:false】(默认值);

    (2)绑定覆盖物对象的click事件,在click事件中拿到当前覆盖物对象,在当前的覆盖物上再绘画一个新的覆盖物对象new,让所有的线框与之前的覆盖物完全重合;

    (3)绑定覆盖物对象new的lineupdate事件,当改变覆盖物对象new时,原先的覆盖物对象也跟着更新;

    (4)当鼠标点击覆盖物对象new以外的地方时,关闭覆盖物对象new的编辑模式,并且删除旧的覆盖物。

 

 

百度地图应用经验(一),码迷,mamicode.com

百度地图应用经验(一)

标签:java   使用   io   问题   c   javascript   

原文地址:http://www.cnblogs.com/soman0324/p/3698914.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!