The number of kilometers per degree of longitude is approximately
(2*pi/360) * r_earth * cos(theta)
where theta is the latitude in degrees and r_earth is approximately 6378 km.
The number of kilometers per degree of latitude is approximately the same in all places, approximately
(2*pi/360) * r_earth = 111 km / degree
So you can do:
new_latitude = latitude + (dy / r_earth) * (180 / pi); new_longitude = longitude + (dx / r_earth) * (180 / pi) / cos(latitude * pi/180);
So far, dx and dy are small compared to the radius of the earth, and you are not getting too close to the poles.
nibot Sep 20 '11 at 0:25 2011-09-20 00:25
source share