我正在开发一款 iOS 游戏,玩家的村庄会显示在大型王国地图上。每个村庄在该地图上都有 ax,y 位置,每个村庄都作为对象存储在服务器 (Parse.com) 上的数据库中。
我想要做的就是把当前玩家村庄周围的所有村庄都拉下来。通常这很简单,因为您只使用最短距离算法,但要使用它,我需要下载数据库中的所有村庄,然后对每个村庄运行算法,然后根据与玩家的距离对它们进行排序,这并不是一种快速/有效的方式。那么有没有人知道一种更精致/更有效的方式来完成上述操作?能够在对数据库的查询中实际上拉下当前玩家周围的村庄,可以说用一块石头杀死 2 只鸟,但我看不到任何方法,这将是很棒的。我怀疑答案可能在于在数据库中存储有关村庄位置的更多信息,
有任何想法吗?
我会留下这个问题,因为我仍然对如何用基本数学来做这件事感兴趣,曼哈顿距离方法应该没问题,但对于使用 Parse.com 的任何人来说,也许可以使用 geoPoints 吗?这是一个疯狂的想法,但我会尝试一下。