百度地图得到两地点(通过经纬度)的距离、 通过经纬度获取详细地址
1 /** 2 * 计算两点间的距离 3 * pt1 {lng:"12.34",lat:"3423"}第一个点的经纬度 4 * pt2 {lng:"12.34",lat:"3423"}第二个点的经纬度 5 * */ 6 getDistance:function(pt1,pt2){ 7 var map = new BMap.Map("container"); 8 var point1 = new BMap.Point(pt1.lng,pt1.lat); 9 var point2 = new BMap.Point(pt2.lng,pt2.lat); 10 var distance = map.getDistance(point1,point2); 11 return distance; 12 },
1 /** 2 * 通过经纬度获取详细地址 3 * */ 4 getAddress: function(pt, callBack) { 5 // 创建地址解析器实例 6 var point =new BMap.Point(pt.lng,pt.lat) 7 var myGeo = new BMap.Geocoder(); 8 // 将地址解析结果显示在地图上,并调整地图视野 9 myGeo.getLocation(point, function(rs){ 10 // rs.addressComponents 可以得到省、市、区、街道、街道编号 11 var addComp = rs.addressComponents; 12 if(addComp){ 13 callBack(addComp); 14 }else { 15 callBack(""); 16 } 17 }); 18 19 },