我有一些标记(通过纬度和经度确定)显示汽车,我想知道这些点是否在街上。
有一种方法可以做到这一点吗?
我认为我可以:
但它似乎很复杂且计算量很大
答案 0 :(得分:1)
您可以使用我放在这里的想法:https://stackoverflow.com/a/15837303/2183804
您将在街道上获得一个点作为回报,然后使用Location.distanceBetween检查距离。如果它不到10米左右,你可以假设它在街上。
答案 1 :(得分:0)
您可以在空间数据中转换纬度和经度。
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