固定点位导航,
a固定点位导航,就是在 AR 中放置几个固定的点,比如点 A,B。这种导航只能从 A 点到 B 点,或者从任意位置沿直线先到 A 点,然后再到 B 点。 当然了,点位的确定一般需要借助图片锚点/物体识别锚点,或者用世界地图重定位先确定世界坐标原点,再确定点 A,B 的位置。 缺点 这样的缺点可想而知,非常不灵活。点位需要提前确定,起点位置也受限。比如我起点已经在 AB 之间了,仍然会引导我先走到 A 点,再走到 B 点。除非添加大量判断代码,或者使用图相关的算法。 优点 写得快,无需联网,无需额外信息,简单可靠
寻路算法导航
在 iOS 中使用无向图等算法,其实不必自己从头写。GameplayKit框架中就自带了几种寻路算法,包含有向图/无向图/A* 等算法。 苹果官方文档 Pathfinding 比如,用 GKGridGraph 和 GKGridGraphNode,其实就可以实现网格寻路,效果类似于A* 算法。 用 GKGraph 和 GKGraphNode 就可以实现有向图/无向图的寻路,效果类似于迪杰斯特拉(Dijkstra)算法。