【发布时间】:2013-05-27 10:40:33
【问题描述】:
我有一些表示汽车的标记(由纬度和经度标识),我想知道其中一个点是否在街道上。
有办法做到这一点吗?
我认为可以:
- 获取汽车的经纬组合地址
- 获取地址的经纬度
- 比较 2 lat-lon 以验证是否相同(或接近)
但它似乎复杂且计算量大
【问题讨论】:
标签: android google-maps google-maps-markers
我有一些表示汽车的标记(由纬度和经度标识),我想知道其中一个点是否在街道上。
有办法做到这一点吗?
我认为可以:
但它似乎复杂且计算量大
【问题讨论】:
标签: android google-maps google-maps-markers
你可以使用我在这里提出的想法:https://stackoverflow.com/a/15837303/2183804
作为回报,您将在街道上获得一个点,然后您使用 Location.distanceBetween 检查距离。如果不到 10 米左右,你可以假设它在街上。
【讨论】:
您可以转换空间数据中的纬度和经度。
Geocoder gcd = new Geocoder(this, Locale.getDefault());
List<Address> addresses = gcd.getFromLocation(currentLatitude, currentLongitude,100);
您现在可以查看列表。如果列表为空,则标记不在街道上。
GeoCoder 教程:http://kindohm.com/blog/2010/10/06/androidgpsgeocoding.html
【讨论】: