2013-03-04 223 views
3

嗨在LocationManager的帮助下,我设法在android中查找当前位置。 为了显示两个地理坐标之间的路线,我应该使用什么,以便我不会绘制空中距离,而是显示地面路线,或者是否可以借助json来绘制路线。Google Maps Android API v2路由json解析

我试过polyLine(),但它给出了直线。

回答

1

要确定两点之间的界限,您需要知道您正在使用的地图投影类型。一些地图投影保留了其他人不具备的形状(因此角度)。看看http://www.progonos.com/furuti/MapProj/Dither/CartProp/ShapePres/shapePres.html它可能会有所帮助。

如果您使用的是墨卡托投影,然后我找到了这个网页,声称在C#中的算法,应该指向你对你的方式:http://conceptdev.blogspot.co.uk/2009/01/great-circles.html

至于线段,复合线会给点之间挺直线。您需要使用Path并使用内存中的Bézier曲线方法Path.cubicTo()和Path.rCubicTo()。

1

您是否已经在Manifest中设置了所有权限?此外,您必须启用位置服务(状态栏中的gps图标显示?)。设备获取位置需要一些时间,因此请查看是否调用了onLocationChanged。

相关问题