gpt4 book ai didi

ios - distanceFromLocation 方法如何工作?

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:18:16 25 4
gpt4 key购买 nike

我经常对 CLLocation 对象使用 distanceFromLocation 方法来获取它们与其他位置的距离。枚举 CLLocations 数组,然后使用此方法将每个 CLLocations 与我的引用位置进行比较。

我很想知道使用 distanceFromLocation 对处理/内存的影响,尤其是对于连续的大量 CLLocation 对象。这种方法是如何工作的——它是连接到服务器以获取数据,还是根据一些数学公式计算距离,例如 Haversine Formula

是否有更有效的方法来比较 1 个引用位置与 CLLocation 对象数组之间的距离?

最佳答案

他们很可能使用的是余弦球面法则而不是半正弦法则 (why? see this question)。

如果您只想将多个点与一个点进行比较以查看哪个点最接近,那么您可能并不关心计算距离的准确性,而只关心性能。在那种情况下,也许使用毕达哥拉斯定理对您有用。

所有这些算法在 this web page 上都有详细说明,部分内容是:

If performance is an issue and accuracy less important, for small
distances Pythagoras’ theorem can be used on an equirectangular
projection:*

您可以使用毕达哥拉斯定理实现一个函数,然后将其与 CLLocation 中的函数以及我对 distanceInMetersFromRadians 的实现进行基准测试它使用余弦球定律来查看性能差异有多大。

关于ios - distanceFromLocation 方法如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15549534/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com