GeoPoint point = new GeoPoint(
(int) (userlocation.getLatitude() * 1E6),
(int) (userlocation.getLongitude() * 1E6));
我正在创建像上面这样的地理点但它不在用户的确切位置距离近500至600米
这里的用户位置是我从位置侦听器获得的位置
在用户位置中,我得到的值类似于18.453225455645 & 78.15446456546但是在绘图时我只能使用18.453225 & 78.154464即 -- 只有小数点后的六位数字。如果我尝试使用额外的值,标记显示错误的位置。(这是由于 int 中的地理点需要值(
如何在地图上绘制确切的位置?
编辑:--我认为没有人对此有解决方案。我检查了几个应用程序,并发现了一个名为myTaxi的应用程序,它比谷歌地图更准确,不知道他们是如何得到的。目前我只是四舍五入纬度和经度。
谢谢
a.只需删除六位数字后的最后几位不会给您 500-600 m 的误差,因为小数点后 5 位应该为您提供大约 1m 的精度。
二.您是否正在使用GPS或其他位置提供商?如果您想要准确的位置,请仅使用 GPS 作为位置提供程序。尽管GPS需要视线才能正常工作,但有一个问题。