Dường như bạn đang đo khoảng cách (R) tính bằng mét và vòng bi (theta) ngược chiều kim đồng hồ từ phía đông. Và cho mục đích của bạn (hundereds mét), hình học máy bay phải đủ chính xác. Trong trường hợp đó,
dx = R*cos(theta) ; theta measured counterclockwise from due east
dy = R*sin(theta) ; dx, dy same units as R
Nếu theta được đo chiều kim đồng hồ từ phía bắc đến hạn (ví dụ, vòng bi la bàn), tính toán cho dx và dy là hơi khác nhau:
dx = R*sin(theta) ; theta measured clockwise from due north
dy = R*cos(theta) ; dx, dy same units as R
Trong cả hai trường hợp, sự thay đổi trong độ kinh độ và vĩ độ là:
delta_longitude = dx/(111320*cos(latitude)) ; dx, dy in meters
delta_latitude = dy/110540 ; result in degrees long/lat
sự khác biệt giữa các hằng số 110.540 và 111.320 là do mặt trái đất dẹt (chu vi phân cực và xích đạo là khác nhau).
Dưới đây là một ví dụ cách, sử dụng các thông số từ một câu hỏi sau của bạn:
Với một vị trí khởi đầu tại longitude -87,62788 độ, vĩ độ 41,88592 độ, tìm tọa độ của điểm 500 mét về phía tây bắc từ khi bắt đầu vị trí.
Nếu chúng tôi đang đo góc ngược chiều kim đồng hồ từ phía đông, "tây bắc" tương ứng tới theta = 135 độ. R cách đó 500 m.
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
Có lẽ đây là hữu ích http://www.meridianworlddata.com/Distance-Calculation.asp – stacker