У меня есть в наличии следующее:
- последняя зарегистрированная широта, долгота с отметкой времени
- целевая широта, долгота
- предполагаемое время достижения цели
- Заголовок
Как я могу интерполировать расчетное положение с течением времени?
Я знаю, что этого достаточно, чтобы рассчитать требуемую среднюю скорость на оставшуюся часть пути. Учитывая расстояние по прямой, это довольно тривиально. Я знаю, что это связано с векторами, но я немного заржавел и решил, что лучше проконсультироваться с некоторыми экспертами.
Причина, по которой мне нужна эта частота обновления, ограничена, поэтому, чтобы показать плавную анимацию, мне нужно угадать текущую позицию между обновлениями.
Целевой платформой является приложение Google Maps, поэтому у меня есть некоторые базовые функции, такие как функция геокоррекции для расстояния между двумя координатами. Язык не важен, так как я знаю многих и могу портировать или адаптировать любые примеры, если это необходимо. Однако предпочтительнее использовать общие решения.
Это просто два независимых векторных вычисления?
latestimate = latstart + (Δlat * P) lonestimate = lonstart + (Δlon * P) Where: testimated = the reported estimated time to target telapsed = time since last time estimate P = telapsed / testimated Δlat = latreported - lattarget Δlon = lonreported - lontarget