1

我正在构建一个 iPad 应用程序,它将逐屏显示来自 Google 的 Directions API 的方向。我想使用 CoreLocation 跟踪用户在物理空间中的进度并更新屏幕以跟随用户,类似于大多数方向应用程序。

我最初的想法是这样的:

  1. 对于方向上的每一步,抓住相应的折线
  2. 当 CoreLocation 更新时,检查纬度/经度对是否在折线上某个点的某个增量内(即,遍历折线上的所有点)。
  3. 如果位置在折线内,则留在同一屏幕上
  4. 如果不在折线上,则检查用户是否在下一步的折线某个子集的同一增量内(例如 10 个点),如果是,则前进到下一个屏幕。
  5. 如果不在下一条折线上,请提醒用户他们已经离开了路线。

这似乎效率低下而且不是特别准确......有没有更好的方法来做到这一点?

4

0 回答 0