У меня под рукой есть набор данных журналов GPS, содержащих также скорости GPS. Вот как выглядит набор данных:
id | gpstime | lat | lon | speed
--------+------------+------------+------------+---------
157934 | 1530099776 | 41.1825026 | -8.5996864 | 3.40901
157934 | 1530099777 | 41.1825114 | -8.599722 | 3.43062
157934 | 1530099778 | 41.1825233 | -8.5997594 | 3.45739
157934 | 1530099779 | 41.1825374 | -8.5997959 | 3.40025
157934 | 1530099780 | 41.1825519 | -8.5998337 | 3.41673
(5 rows)
Теперь я хочу вычислить изменение bearing
для каждой точки относительно истинного севера.
Но у меня есть следующие вопросы: пока не нашел ответов на:
На основании моего прочтения я сталкиваюсь с формулой (как в этом ответе):
Bearing = atan(y,x)
, где x
и y
- величины
y = sin (B lon -A lon ) * cosB lat
x = cosA lat * sinB lat -sinA lat * cosB lat * cos (B lon -A lon )
соответственно для точек A
и B
. Затем из другого источника, формула здесь , формула написана:
Bearing = atan2(y,x)
Так что я запутался, какую формулу я должен использовать?
lat
и
lon
следует преобразовать из градусов в радианы, прежде чем переходить к величинам
x
и
y
. Учитывая, что значения
lon
в моем наборе данных являются отрицательными, я должен взять абсолютное значение каждого?