• 获取百度地图路径下的关键坐标


    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf8">
    <title></title>
    <style type="text/css">  
    	html{height:100%}  
    	body{height:100%;margin:0px;padding:0px}  
    	#container{height:100%; 80%;float: left;}  
    	#shuchu{ 18%;float: right;};
    </style> 
    	<script type="text/javascript" src="http://api.map.baidu.com/api?v=1.5&ak=FaEYm8lYwtTwOGlRU8lUfRK9"></script>
    </head>
    <body>
    <div id="container"></div>
    <div>
    起点:<input type="text" id="startPoint" />
    </br>终点:<input type="text" id="endPoint" /></br>
    <input type="button" value="查询" onclick="query()" />
    <textarea id="shuchu" rows="35"></textarea></div> 
    <script type="text/javascript"> 
    var shuchu=document.getElementById("shuchu");
    
    
    var map = new BMap.Map("container");          // 创建地图实例  
    var opts = {offset: new BMap.Size(150, 5)}    
    
    var point = new BMap.Point(120.404, 36.215);  // 创建点坐标  
    map.centerAndZoom(point, 15);                 // 初始化地图,设置中心点坐标和地图级别 
    // var traffic=new BMap.TrafficLayer();
    // map.addTileLayer(traffic);
    map.addControl(new BMap.NavigationControl());    
    map.addControl(new BMap.ScaleControl());    
    map.addControl(new BMap.OverviewMapControl());    
    map.addControl(new BMap.MapTypeControl());    
    map.setCurrentCity("青岛"); // 仅当设置城市信息时,MapTypeControl的切换功能才能可用
    var myIcon=new BMap.Icon("land.png",new BMap.Size(23, 25));      
    
    var marker = new BMap.Marker(point,{icon:myIcon});        // 创建标注此时添加的为默认标注    
    map.addOverlay(marker);                     // 将标注添加到地图中
    marker.addEventListener("click", function(){    
     alert("您点击了标注");   
    
    });
    
    marker.enableDragging();    				//可拖拽的标注
    marker.addEventListener("dragend", function(e){    
     	alert("当前位置:" + e.point.lng + ", " + e.point.lat);    
    })
    function query(){
    	var start=document.getElementById("startPoint").value;
    	var end= document.getElementById("endPoint").value;
    	var starts=start.split(',');//.toArray();
    	start=new BMap.Point(starts[0],starts[1]);
    	var ends=end.split(',');//.toArray();
    	end=new BMap.Point(ends[0],ends[1]);
    	var driving = new BMap.WalkingRoute(map, {renderOptions:{map: map, autoViewport:true}});
    
    	driving.search(start, end);
    
    	driving.setSearchCompleteCallback(function(results){
    	 if (driving.getStatus() == BMAP_STATUS_SUCCESS){    
    	 	var firstplan=results.getPlan(0);
    	 	for(var i=0;i<firstplan.getNumRoutes();i++){
    	 		var drive=firstplan.getRoute(i);
    	 		if(drive.getDistance(false)>0){
    					 drive.getPath().forEach(function(e){
    						shuchu.innerHTML+=e.lng+","+e.lat+"
    ";
    	 			});		
    	 		}
    	 	}
    	 }
    })
    }
    
    	// var points=driving.getResults().getRoute(0).getPlan(0).getPath();
    	// points.forEach(function(e){
    	// 	shuchu.innerHTML+=point.lng+","+point.lat+"</br>";
    	// });
    
    </script>  
    </body>
    </html>
    
    

    效果如图所示。


    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    利用sklearn训练LDA主题模型及调参详解
    关联规则挖掘:Apriori算法(基于Groceries数据集)
    极大连通子图与极小连通子图
    TCP协议“三次握手”与“四次挥手”详解(下)
    TCP协议“三次握手”与“四次挥手”详解(上)
    95题--不同的二叉搜索树II(java、中等难度)
    96题--不同的二叉搜索树(java、中等难度)
    CRC循环冗余校验---模2除法解析
    黑盒测试用例设计方法总结
    软件配置管理和软件维护的区别【详细】
  • 原文地址:https://www.cnblogs.com/andy-2014/p/4964240.html
Copyright © 2020-2023  润新知