JS 百度地图 地图线路描绘
JS 百度地图 地图线路描绘
<script type="text/javascript"
src="http://api.map.baidu.com/api?v=3.0&ak=PlhFWpA02aoURjAOpnWcRGqw7AI8EEyO"></script>
<div id="allmap"></div>
// 百度地图API功能
var map = new BMap.Map("allmap");
map.centerAndZoom(new BMap.Point(113.350512, 23.191744),12);
map.enableScrollWheelZoom(); var data=[
{lng:"113.350512",lat:"23.191744"},
{lng:"113.364512",lat:"23.182644"},
{lng:"113.375512",lat:"23.173544"},
{lng:"113.386512",lat:"23.164344"},
{lng:"113.397512",lat:"23.155444"},
{lng:"113.318512",lat:"23.136244"},
{lng:"113.329512",lat:"23.147144"}
]
var pois1 = [];
(data).forEach(function (item) {
pois1.push(new BMap.Point(item.lng, item.lat));
}) var sy = new BMap.Symbol(BMap_Symbol_SHAPE_BACKWARD_OPEN_ARROW, {
scale: 0.4,//图标缩放大小
strokeColor: '#fff',//设置矢量图标的线填充颜色
strokeWeight: '2',//设置线宽
});
var icons = new BMap.IconSequence(sy, '', '5%');
var point = pois1[Math.ceil(pois1.length / 2)];
map.centerAndZoom(point, 12); //描绘线
var line=new BMap.Polyline(addPolyline(pois1,"red",5));
function addPolyline(pois, color, width) {
var polyline = new BMap.Polyline(pois, {
enableEditing: false,//是否启用线编辑,默认为false
enableClicking: true,//是否响应点击事件,默认为true
strokeWeight: width,//折线的宽度,以像素为单位
strokeOpacity: 0.8,//折线的透明度,取值范围0 - 1
strokeColor: color//折线颜色
}); map.addOverlay(polyline); //增加折线
return polyline;
};
var startPng=("./start.png"),endPng=("./end.png"),pointY=("./poscar.png"); SMSSMAPGetOrders(data,'',map); //描绘开始-结束图标
setTimeout(function () {
if (data.length > 1) {
var length = data.length - 1;
SMSSMAPAddCars(map, data[0].lng, data[0].lat, startPng, 18, 18, 0);
SMSSMAPAddCars(map, data[length].lng, data[length].lat, endPng, 18, 18, 0);
} else {
SMSSMAPAddCars(map, data[0].lng, data[0].lat,startPng, 18, 18, 0);
}
}, 500); //描绘途径点--图标
function SMSSMAPGetOrders(pois1, carInfo, mapCity) {
for (var i = 0; i < pois1.length; i++) {
if (pois1[i].lng && pois1[i].lng != "") {
SMSSMAPAddCars(mapCity, pois1[i].lng, pois1[i].lat, pointY, 15, 15, 0)
}
}
}; //生成图标
function SMSSMAPAddCars(map, lng, lat, src, w, h, index) {
//经纬度转换
var point = new BMap.Point(lng, lat);
var myIcon = SMSSMAPICON(src, w, h, index);
// 创建标注对象并添加到地图
var marker = new BMap.Marker(point, {icon: myIcon});
marker.setTitle("");
map.addOverlay(marker); }; //设置图标格式
function SMSSMAPICON(src, w, h, index) {
var myIcon = new BMap.Icon(src, new BMap.Size(w, h), {
anchor: new BMap.Size(10, 10),
imageOffset: new BMap.Size(0, 0 - index * h), // 设置图片偏移
// 设置图片大小
imageSize: new BMap.Size(w, h)
}); return myIcon;
};
JS 百度地图 地图线路描绘的更多相关文章
- 百度地图公交线路查询,并绘制到地图上并获取所有路径经纬度点(可供echarts 路径图使用)
github地址 https://github.com/a1115040996/MyHTML/tree/gh-pages/BDMap 源代码 <!DOCTYPE html PUBLIC &quo ...
- JS 百度地图路书---动态路线
JS 百度地图路书---动态路线 <!DOCTYPE html> <head> <meta http-equiv="Content-Type" con ...
- JS 百度地图 换地图主题颜色(自定义)
JS 百度地图 换地图主题颜色(自定义) 可通过这个在线编辑得到自己想要的主题:https://developer.baidu.com/map/custom/ <div id="all ...
- JS 百度地图 换地图主题颜色(API自带)
JS 百度地图 换地图主题颜色(API自带) <script type="text/javascript" src="http://api.map.baidu.co ...
- JS 百度地图-右键菜单
JS 百度地图-右键菜单 /*-----------------标注右键删除-------------------------*/ var markerMenu = new BMap.ContextM ...
- js 百度地图
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 百度API地图的标注不居中显示,而显示在左上角
前言:今天弄个百度地图,弄了半天就是不居中,之前使用一直没有遇到这个问题.所以就一直在找原因. 百度地图对地图所在的div做了显示隐藏之类操作,标注就不再居中显示,而显示在左上角. 查了很久,有人提出 ...
- 基于vue实现百度离线地图
基于vue实现百度离线地图 1. 百度地图API文件获取 有网络 的情况下,需引入百度地图API文件.如下: <script type="text/javascript" s ...
- ionic 修改应用名称 、启动页出现黑白屏 及 修改百度离线地图 点聚合 图标
1.ionic 修改应用名称 2.启动页打开后会在图片消失会出现一小段黑屏的时间 解决方法: 首先,启动页的图片消失时间默认是在config.xml配置的 <preference name=&q ...
随机推荐
- 一百三十九:CMS系统之首页帖子列表布局
# 配置ueditor上传文件到七牛UEDITOR_UPLOAD_TO_QINIU = True # 设置为True是,视为开始把图片传到七牛储存,本地不储存UEDITOR_QINIU_ACCESS_ ...
- Eclipse Mars配置tomcat 7
进入Eclipse,点击"Window"-->"Preferences". 在出现的弹窗的左侧面板选择"Server"-->&q ...
- vs2012编译的程序不能在XP和2003下执行问题的解决方法
问题如题,通过无数次百度和谷歌后,发现,微软已经确认这是一个缺陷,安装Vs2012的update 3的升级包就可以解决问题.同时,在分发包的地方,vcredist_x86.exe 随程序分发一份就可以 ...
- Andrew Ng机器学习课程11之使用machine learning的建议
Andrew Ng机器学习课程11之使用machine learning的建议 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 2015-9-28 艺少
- jquery-easyui中改变【确认框控件的按钮文字】($.messager.confirm)
根据API这句话,就很自然想到重写该方法,代码如下: $.messager.defaults = { ok: "通过", cancel: "不通过" ,widt ...
- js删除array数组中元素
for(var i = 0; i < array.length; i++) { if(-1 != array[i]) { array.splice(i, 1); i--; } } 上面if就是判 ...
- 1、3 list 加入缓存,并postman测试
1.pom.xml导入redis依赖 2.配置文件配置 redis 3.主类开启缓存注解 4.Service方法上加注解 @Cacheable(value="list")//val ...
- 《ucore lab1 exercise1》实验报告
资源 ucore在线实验指导书 我的ucore实验代码 题目:理解通过make生成执行文件的过程 列出本实验各练习中对应的OS原理的知识点,并说明本实验中的实现部分如何对应和体现了原理中的基本概念和关 ...
- (模板)扩展kmp算法(luoguP5410)
题目链接:https://www.luogu.org/problem/P5410 题意:有两个字符串a,b,要求输出b与a的每一个后缀的最长公共前缀.输出: 第一行有lenb个数,为b的next数组( ...
- Linux由于物理节点故障导致的异常重启-Case1
问题描述:Linux VM异常重启,需要排查问题原因 排查结果: 查询Messages日志获取到的信息 虚拟机内核版本: Jun :: test01 kernel: Linux version -.e ...