Похоже, что вы измеряете расстояние (R) в метрах и поворачиваете (тета) против часовой стрелки с восточного направления. И для ваших целей (сотни метров) геометрия самолета должна быть достаточно точной. В этом случае
dx = R*cos(theta) ; theta measured counterclockwise from due east
dy = R*sin(theta) ; dx, dy same units as R
Если тета измеряется по часовой стрелке с севера (например, подшипники компаса),
расчет для dx и dy немного отличается:
dx = R*sin(theta) ; theta measured clockwise from due north
dy = R*cos(theta) ; dx, dy same units as R
В любом случае изменение в градусах долготы и широты составляет:
delta_longitude = dx/(111320*cos(latitude)) ; dx, dy in meters
delta_latitude = dy/110540 ; result in degrees long/lat
Разница между константами 110540 и 111320 обусловлена сжатием Земли
(полярные и экваториальные окружности разные).
Вот рабочий пример, использующий параметры из вашего более позднего вопроса:
Учитывая начальное местоположение на долготе -87,62788 градусов, широте 41,88592 градуса,
найти координаты точки в 500 метрах к северо-западу от начальной точки.
Если мы измеряем углы против часовой стрелки от восточного направления, «северо-запад» соответствует
тета = 135 градусов. R составляет 500 метров.
dx = R*cos(theta)
= 500 * cos(135 deg)
= -353.55 meters
dy = R*sin(theta)
= 500 * sin(135 deg)
= +353.55 meters
delta_longitude = dx/(111320*cos(latitude))
= -353.55/(111320*cos(41.88592 deg))
= -.004266 deg (approx -15.36 arcsec)
delta_latitude = dy/110540
= 353.55/110540
= .003198 deg (approx 11.51 arcsec)
Final longitude = start_longitude + delta_longitude
= -87.62788 - .004266
= -87.632146
Final latitude = start_latitude + delta_latitude
= 41.88592 + .003198
= 41.889118