专栏名称: 鸿洋
你好,欢迎关注鸿洋的公众号,每天为您推送高质量文章,让你每天都能涨知识。点击历史消息,查看所有已推送的文章,喜欢可以置顶本公众号。此外,本公众号支持投稿,如果你有原创的文章,希望通过本公众号发布,欢迎投稿。
目录
相关文章推荐
51好读  ›  专栏  ›  鸿洋

在百度地图上绘制运动轨迹图及相关事件处理

鸿洋  · 公众号  · android  · 2017-07-06 07:30

正文

请到「今天看啥」查看全文


每日推荐


《Android系统定制和源码开发以及源码编译》


作者原文序:为了把Android系统源码定制和编译的课程讲完,从准备到录制完所有的视频,一共花去了近半年的时间,前前后后各种下载源码,编译源码,系统不兼容,版本适配,虚拟机配置困难重重,总算是录制完成,目前应该算是全网最全的源码编译课程。

http://www.jianshu.com/p/46c63dfd5c89

Android系统定制和源码开发以及源码编译


本文作者


本文由 zhh_happig 投稿。

zhh_happig 的博客地址:

http://www.jianshu.com/u/d82bd37b1d29


1
概述


上篇文章讲述了如何在地图显示位置点,这篇文章主要讲述如何在地图上画运动轨迹,以及地图图层点击事件的处理。


很多运动类的app都有画出跑步者运动轨迹的需求,拿咕咚来说,我们看一下它的效果图:




本篇将要实现的效果

1.跑步结束后,静态的画出整个运动轨迹
2.跑步过程中,时时动态的画运动轨迹





如何实现:


1.将点与点连成线,在百度地图MapView上画出线条图层;
2.获取定位点List :通过百度定位sdk:LocationClient类获取,户外运动画运动轨迹,要求位置点的精度高,所以我们必须使用gps定位类型的位置结果。


//允许使用gps定位mOption.setOpenGps(true);


更多百度定位sdk参数详解请阅读篇头百度地图(一)文章

http://www.jianshu.com/p/29ccac3e1e42


2

静态画整个运动轨迹


1.画轨迹



用到的coordinateConvert方法:



运动轨迹效果




2.添加起始图标图层、点击图层响应事件



运动轨迹效果,点击图标弹出信息窗口




点击图标弹出信息窗口弹出Toast




弹出Toast.


到这里,运动结束后画出整个轨迹图和图层添加点击事件就介绍完了。


3

实时动态的画运动轨迹


时时动态画运动轨迹效果




运动轨迹:箭头为当前位置和方向


关键在于取点:gps刚接收到信号时返回的一些点精度不高,容易造成位置偏移,如何取点很重要。


首先开始初始化工作,开启定位:



重点就在于收到返回的位置点,绘制路线:



用到的辅助方法:



退出记得释放资源



注:我们画运动轨迹要求定位sdk返回的位置精度很高,轨迹的效果才会好,因而必须接受gps位置点。


但是gps位置的在刚开始收到信号时精度不高,会出现位置漂移的情况,所以要选取一个精度较好的点。在建筑物、桥梁、大树、隧道里面,gps信号不好,精度不高,所以在开阔地带,运动轨迹效果更好。


源码地址

https://github.com/zhuhaoHappig/BaiduMapApi


更多百度地图、定位sdk参数详解请阅读:


Android百度地图(一):百度地图定位sdk 类方法参数、定位原理详细介绍

http://www.jianshu.com/p/29ccac3e1e42

Android百度地图(二):百度定位与地图结合显示位置点

http://www.jianshu.com/p/fdd1ba783495


以上文章内容,是本人工作中的总结,供大家参考,有误的地方还请指正。


如果你有 想学习的文章 直接留言,我会整理征稿。如果你有好的文章想和大家分享欢迎投稿,直接向我投递 文章链接 即可。


欢迎 长按下图 -> 识别图中二维码 或者 扫一扫 关注我的公众号:







请到「今天看啥」查看全文