我有一组定义街道的节点。每个节点都有纬度和经度。我也有用户位置的纬度和经度。我的目的是为每对节点定义的段构建 Voronoi 图,然后找到用户位置最接近的节点。
看起来这个任务可以用 CGAL 库来完成。当我正在为 iOS 环境编译它时,也许你们将能够提供指向已经针对 iOS 编译的库的链接,或者从一开始就打算在 Objective C 环境中使用...
因为我怕即使CGAL帮我编译,我在使用的时候也可能会遇到麻烦。谢谢!
P. S. 也可能你有更好的解决方案。在这里随意拼写。
最佳答案
我从未使用过 CGAL,所以我无法评论我的解决方案是否更好。
但是我使用 spatialite 库做了类似的事情。 Spatialite 运行在 sqlite 之上。使用的时候最好不要用iPhone自带的sqlite库,直接用spatialite重新编译一遍就可以了。在数据库中有数据后,您可以使用简单的函数(例如 ST_Distance)来查找关闭段。
Spatialite 使用 R*-Trees 进行空间索引。查找速度非常快。
关于iphone - iOS 的 CGAL 替代品,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4542719/