百度地图显示历史轨迹时经纬度的处理方法
来源:互联网 发布:win10 php 编辑:程序博客网 时间:2024/06/11 09:47
<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">后台实现将gps</span><span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">经纬度转换为百度地图经纬度,也可以在前台实现。</span>
<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">在后台实现的代码:#我使用的Python+django</span>
##这里必须要注意 坐标转换服务每日请求次数上限为10万次,每次最多支持100个坐标点的转换,若需更高配额,请申请开发者认证以获取更高配额和更及时技术支持。
def baidu(s_list): b = ';'.join(s_list) print b url="http://api.map.baidu.com/geoconv/v1/?coords="+str(b)+"&from=1&to=5&ak=你的秘钥&output=json" fd=urllib2.urlopen(url) data=fd.read() a=simplejson.loads(data,encoding="utf-8") list1=[] list2=[] list=[list1,list2] for obj in a["result"]: list1.append(obj['x']) list2.append(obj['y']) return list
在前台实现的代码:
注意先引入百度地图相关的API文件
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=你的秘钥"></script><script type="text/javascript" src="http://developer.baidu.com/map/jsdemo/demo/convertor.js"></script>
translateCallback = function (point){var marker = new BMap.Marker(point);arr.push(new BMap.Point(point.lng, point.lat));for(var i = 0; i < msg.hislist.length; i++){var marker=new BMap.Marker(new BMap.Point(point.lng, point.lat),{icon:new BMap.Icon("/static/image/car"+parseInt((msg.hislist[i].GPS_DIRECTION+22.5)/45)%8+".png",new BMap.Size(25,25))});var infoWindow = new BMap.InfoWindow("<font size='2' color='#0066FF'>定位位置:</font> "+"<font size='2'>"+msg.hislist[i].address+"</font>"+"<hr style='color:#0066FF'><font size='2' color='#0066FF'>定位时间:</font> "+"<font size='2'>"+msg.hislist[i].GPS_UTC+"</font>"+"<hr style='color:#0066FF'><font size='2' color='#0066FF'>速度:</font> "+"<font size='2'>"+msg.hislist[i].GPS_SPEED+"</font>"+"<font size='2'>公里/小时</font><hr style='color:#0066FF'>");marker.infoWindow=infoWindow;marker.addEventListener("click",function(e){this.openInfoWindow(e.target.infoWindow)});maplet.addOverlay(marker);}var label = new BMap.Label("我是百度标注哦",{offset:new BMap.Size(20,-10)});marker.setLabel(label); //添加百度labelmaplet.setCenter(point);//maplet.centerAndZoom(point), zoom);//alert("转化为百度坐标为:"+point.lng + "," + point.lat); };var arr = new Array();var arrpoints = new Array();for (var i = 0; i < msg.hislist.length; i++) {arrpoints.push({'lng':msg.hislist[i].GPS_LONG,'lat':msg.hislist[i].GPS_LAT});} for (var i = 0; i < arrpoints.length; i++) {BMap.Convertor.translate((arrpoints[i],0,translateCallback));}
0 0
- 百度地图显示历史轨迹时经纬度的处理方法
- 百度地图中实现历史轨迹显示为BMap.InfoWindow添加多个不同时间点但相同经纬度点的信息
- 百度地图 历史轨迹播放
- 百度地图显示轨迹
- 百度地图--实时显示轨迹
- android 获取GPS经纬度在百度地图上绘制轨迹
- 百度地图API,根据经纬度实现车辆移动轨迹绘制
- 百度地图API,根据经纬度实现车辆移动轨迹绘制
- 根据经纬度坐标值在百度地图上绘制轨迹
- 百度地图api描绘车辆历史轨迹图
- 安卓实现在百度地图上播放历史轨迹
- 安卓实现在百度地图上播放历史轨迹
- android 百度地图sdk v3.4 绘制历史轨迹
- 百度地图的经纬度位置
- 使用百度地图精准定位经纬度坐标的方法
- 百度地图显示经纬度和中文地址
- 百度地图根据经纬度显示描边
- iOS 百度地图,根据经纬度,显示大头针
- Android使用Robotium自动化测试junit生成单元测试结果报告
- msyql慢查询日志配置
- 「JavaScript」四种跨域方式详解
- AngularJS表单和输入验证
- Swagger UI 使用实例
- 百度地图显示历史轨迹时经纬度的处理方法
- jquery checkbox radio
- ROS No transform from [sth] to [sth]
- setUserVisibleHint需要注意的地方
- iOS 关于邮件发送的三种方法
- 百度2017暑期实习生编程题:单词接龙
- 文本处理(python)
- Android ListView 头部缩小放大的效果
- 比较全面的gdb调试命令