baidumap 百度地图,实现多点之间的带方向路线图。

您所在的位置:网站首页 百度地图多点标记测距怎么用 baidumap 百度地图,实现多点之间的带方向路线图。

baidumap 百度地图,实现多点之间的带方向路线图。

2024-07-09 23:51| 来源: 网络整理| 查看: 265

通过lastVisitAt判断时间先后。

通过三角函数验证角度

再由baidumap 会制线段

绘制三角箭头

比较难看……

测试个人

 

因为框架引用baidu 有各种问题失败,为最快实现,以此页作一个独立的iframe

通过window.localStorage 实现数据传递。

父页代码

window.localStorage.jsondata=JSON.stringify(json.data); var iframe=$("#iframebaidumap"); iframe.attr('src', '/baidumap.html');

 

window.localStorage.jsondata数据传递格式如下

"[{"lat":34.514075,"lng":113.439854,"name":"千一网吧","mobileNumber":"15838095119","contactName":"岳老板","phoneNumber":"","lastVisitAt":"2015-04-17T07:14:32.301Z"}]"

Hello, World /*html{height:100%}*/ body{ /*height:100%;*/ margin:0px;padding:0px; height:600px;width:600px; } #container{height:600px} //v1.5版本的引用方式:src="http://api.map.baidu.com/api?v=1.5&ak=您的密钥" //v1.4版本及以前版本的引用方式:src="http://api.map.baidu.com/api?v=1.4&key=您的密钥&callback=initialize" // 百度地图API功能 var jsondata= window.localStorage.jsondata; if(jsondata){ var map = new BMap.Map("container"); // // 创建地图实例 jsondata=JSON.parse(jsondata); var latcount=0; var lngcount=0; var points=[]; jsondata=jsondata.sort(function(x,y){ x.lastVisitAt> y.lastVisitAt }); var datanew=[]; for ( var i=0, ien=jsondata.length ; i=1){ if(jsondata[i].lastVisitAt==jsondata[i-1].lastVisitAt){ } else{ datanew.push(jsondata[i]); } }else{ datanew.push(jsondata[i]); } } datanew=datanew.sort(function(x,y){ x.lastVisitAt> y.lastVisitAt }); for(var i = 0,ien=datanew.length;i=1){ var y=datanew[i].lat*1000-datanew[i-1].lat*1000; var x=datanew[i].lng*1000-datanew[i-1].lng*1000; var jia=0; if(x!=0){ var tanvalue=y/x; var jiajiao=Math.atan(tanvalue)*180; jia=-(90-jiajiao); } else{ if(y


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3