【百度地图API】自定义可编辑的交通路线

简介: 原文:【百度地图API】自定义可编辑的交通路线任务描述:   我想自己绘制一条从地铁站出口到天安门的道路,而且还需要根据我的喜好来改变这条路线。   如何实现:   鼠标左击地图,绘制路线;双击后,绘制结束;绘制结束后,路线可编辑。
原文: 【百度地图API】自定义可编辑的交通路线

任务描述:

  我想自己绘制一条从地铁站出口到天安门的道路,而且还需要根据我的喜好来改变这条路线。

 

如何实现:

  鼠标左击地图,绘制路线;双击后,绘制结束;绘制结束后,路线可编辑。

 

TIPS:

  API1.1以后,可以使用enableEditing()来开启折线可编辑功能。

 

图示:

  img_ce6306b43db8e0f142162ae58f7eeba4.png

 

运行代码,请点击这里

 

代码:

 

<! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >
< html xmlns ="http://www.w3.org/1999/xhtml" >
< head >
< meta name ="keywords" content ="百度地图,百度地图API,百度地图自定义工具,百度地图所见即所得工具" />
< meta name ="description" content ="百度地图API自定义地图,帮助用户在可视化操作下生成百度地图" />
< meta http-equiv ="Content-Type" content ="text/html; charset=gb2312" />
< title > 自定义可编辑路线 </ title >
< script type ="text/javascript" src ="http://api.map.baidu.com/api?key=46ce9d0614bf7aefe0ba562f8cf87194&v=1.1&services=true" >
</ script >
</ head >
< body >
< div style ="width:520px;height:340px;border:1px solid gray" id ="container" >
</ div >
</ body >
< script type ="text/javascript" >
var map = new BMap.Map( " container " );
map.centerAndZoom(
new BMap.Point( 116.404 , 39.915 ), 18 );
var e1,e2;
var p = []; // 用来存储折线的点
var polyline;
var doneDraw = 0 ; // 判断是否绘制折线结束
map.addEventListener( " click " , function (e1){ // 当鼠标单击时
if (doneDraw == 0 ){ // 判断是否绘制曲线完毕
p.push( new BMap.Point(e1.point.lng,e1.point.lat)) // 存储曲线上每个点的经纬度
if (polyline){polyline.setPoints(p);} // 如果曲线存在,则获取折线上的点
else {polyline = new BMap.Polyline(p);} // 如果折线不存在,就增加此点
if (p.length < 2 ){ return ;} // 当折线上的点只有一个时,不绘制
map.addOverlay(polyline); // 绘制曲线
}
});
map.addEventListener(
" dblclick " , function (e2){ // 当鼠标双击时:结束绘制,并可以编辑曲线
alert( " 绘制完成 " );
doneDraw
= 10 ;
polyline.enableEditing();
});
</ script >
</ html >

 

 

目录
相关文章
|
1月前
|
数据可视化 Linux API
如何在Linux使用docker部署Swagger Editor并实现无公网IP远程协同编辑API文档
如何在Linux使用docker部署Swagger Editor并实现无公网IP远程协同编辑API文档
|
1月前
|
缓存 API 定位技术
使用Python调用百度地图API实现地址查询
使用Python调用百度地图API实现地址查询
87 0
|
3月前
|
数据可视化 Linux API
使用Docker安装部署Swagger Editor并远程访问编辑API文档
使用Docker安装部署Swagger Editor并远程访问编辑API文档
49 0
|
4月前
|
敏捷开发 API
【sgCreateAPI】自定义小工具:敏捷开发→自动化生成API接口脚本(接口代码生成工具)
【sgCreateAPI】自定义小工具:敏捷开发→自动化生成API接口脚本(接口代码生成工具)
|
24天前
|
人工智能 关系型数据库 Serverless
Serverless 应用引擎常见问题之API生成的函数镜像改为自定义的镜像如何解决
Serverless 应用引擎(Serverless Application Engine, SAE)是一种完全托管的应用平台,它允许开发者无需管理服务器即可构建和部署应用。以下是Serverless 应用引擎使用过程中的一些常见问题及其答案的汇总:
37 3
|
25天前
|
Java API Maven
email api java编辑方法?一文教你学会配置步骤
在Java开发中,Email API是简化邮件功能的关键工具。本文指导如何配置和使用Email API Java:首先,在项目中添加javax.mail-api和javax.mail依赖;接着,配置SMTP服务器和端口;然后,创建邮件,设定收件人、发件人、主题和正文;最后,使用Transport.send()发送邮件。借助Email API Java,可为应用添加高效邮件功能。
|
1月前
|
自然语言处理 API 语音技术
Python加百度语音API实现文字转语音功能
Python加百度语音API实现文字转语音功能
50 0
|
3月前
|
JSON JavaScript 定位技术
Vue中使用echarts@4.x中国地图及AMap相关API的使用
Vue中使用echarts@4.x中国地图及AMap相关API的使用
139 0
Vue中使用echarts@4.x中国地图及AMap相关API的使用
|
4月前
|
SQL 存储 DataWorks
DataWorks中API、desc、数据地图,这3个怎么对起来?
DataWorks中API、desc、数据地图,这3个怎么对起来?
40 0
|
4月前
|
数据可视化 Linux API
使用Docker安装部署Swagger Editor并远程访问编辑API文档
使用Docker安装部署Swagger Editor并远程访问编辑API文档