我的iPhone应用程序中有大约800个地理坐标作为平面文件。我正在寻找一种有效的方法来找到一个将采用当前用户位置的算法,循环遍历所有这800个坐标,并只拉动10英里附近的坐标。这可以做得多有效?也请分享链接,让我对这背后的数学有基本的了解。查找离我目前GPS位置最近的坐标
回答
这是一个link的问题,其中OP的最终代码可以帮助您了解如何从坐标创建位置以及如何计算它们之间的距离。
这里是如何创建一个位置:
CLLocation *location = [[CLLocation alloc] initWithLatitude:latitude longitude:longitude];
这里是如何找到两个位置之间的距离:
CLLocationDistance distance = [locationA distanceFromLocation:locationB]; //CLLocationDistance is a double
但是你不必位置排序。只需循环遍历它们并将附近的位置添加到数组中即可。
首先,我认为每个人都同意计算距离,你需要使用Haversine函数。
Finding the closest point to a given point
如果搜索的时间是一个问题(迭代你所提到的800个数据点),那么怎么样二维散列?只需根据lat/long将数据集加载到存储桶或区域中 - 那么您不必搜索整个数据集 - 只有可能包含匹配的存储桶。
这正是我正在寻找的感谢.. – dreampowder 2013-12-21 20:11:21
如果我在地图上有10点。我想找到给定的“目标”点的最近点。我得到我的尺子并计算从“目标”到每个点的距离。我不会找到最近的点吗?为什么我需要沙滩车? – dimitris93 2016-05-18 23:28:23
- 1. 查找距离最近的GPS坐标(最邻近搜索)
- 2. 按特定距离查找距离目标位置最近的位置
- 3. 如何查找当前位置列表中最近的位置坐标?
- 4. 查找接近距离GPS
- 5. 从现有坐标查找最近的位置mapkit
- 6. MongoDB gps离我最近
- 7. 如何从我的GPS坐标ge附近的位置?
- 8. 从我的当前位置获取距离最近的位置
- 9. 查找就近我的GPS定位
- 10. 从多个GPS坐标计算到最近岸的距离
- 11. 查找离纬度/经度坐标最近的5个车站
- 12. android-寻找最近的位置到我目前的地方
- 13. Python:在一组GPS坐标中找出最常见的位置
- 14. 获取给定当前位置,方位和距离的GPS坐标
- 15. 使用javascript/jQuery查找与鼠标位置最接近的网格坐标
- 16. JavaScript地理位置:检查距离2个GPS坐标的距离
- 17. 如何找到距离当前位置最近的经纬度?
- 18. 查找几个坐标中最接近的坐标
- 19. 如何在我目前的位置附近找到最近的地方?
- 20. 查找离我最近的CCSprite
- 21. 寻找距离鼠标最近的对象坐标
- 22. 获得距离点最近的坐标
- 23. 如何查找我当前位置附近的位置?
- 24. 从坐标列表的最小距离查找坐标
- 25. 查找距离阵列最近的位置(iOS)
- 26. 查找当前位置的坐标并找出国家
- 27. GPS坐标距离测量
- 28. 如何找到已知GPS距离的GPS坐标?
- 29. Android GPS我的位置查找
- 30. 在R中,将浮点坐标离散到最近的坐标
你或许可以看到这个问题http://stackoverflow.com/questions/913576/finding-the-closest-point-to-a-given-point他们提供了一个简单的例子,虽然它不是用Objective-C编写。 – 2012-02-18 00:30:49
我认为你已经得到了与链接问题不同的问题,因为它试图找到_the closest_,并且你正试图在指定的距离内找到_all_,对吗? – sarnold 2012-02-18 00:46:36