У меня есть следующие доступны:Как использовать текущую позицию линейной интерполяции между двумя координатами Geo?
- последние сообщил широта, долгота ж/метки времени
- цель широта, долгота
- расчетного времени целевого
- заголовка
Как я могу интерполировать предполагаемая позиция с течением времени?
Я знаю, что этого достаточно, чтобы вычислить требуемую среднюю скорость для остальной части поездки. Учитывая прямолинейное расстояние, это довольно тривиально. Я знаю, что это связано с векторами, но я немного ржавый и подумал, что лучше проконсультироваться с некоторыми экспертами.
Причина, по которой мне нужна эта скорость обновления, ограничена, поэтому для отображения гладкой анимации мне нужно угадать текущую позицию между обновлениями.
Целевая платформа - приложение Google Maps, поэтому у меня есть некоторые базовые функции, такие как функция Geo-correct для расстояния между двумя координатами. Язык незначителен, поскольку я знаю много, и при необходимости может переносить или адаптировать любые примеры. Однако предпочтительными были бы общие решения.
Это просто два независимых векторных расчета?
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
Извините, я не получил уведомление о вашем ответе, пока добавлял свой комментарий. Я думаю, что мы оба говорим то же самое ... Я соглашусь на ваш ответ после пары upvotes, чтобы поддержать его ;-) –
@Mark R, извините, сам, я не видел формулы, которые вы добавили к своему вопросу или. Я вижу, вы слишком полагаете, что можете использовать обычную линейную экстраполяцию. См. Мои изменения в отношении этого предположения. – mjv
Я думаю, потому что у меня уже есть расчетное время (которое мы можем считать правильным, если нет аномалий), который удаляет геопространственный аспект из уравнения справа? Я интерполирую со временем, чтобы найти позицию, не пытаясь рассчитать время. –