How to convert latitude and longitude of location to cartesian coordinates (x, y)?

36 次查看(过去 30 天)
Dear Sir,
Is there a feasible way of converting (lat, long) coordinates into cartesian corordinates (x, y) of respective locations?
For instance, i want to convert (27.2046° N, 77.4977° E) coordinates into (x, y).


Chunru 2022-8-15
First, you need a reference point. Second you have to assume that the posints are close enough to the reference points so that the spherical coordinates on earth surface (lat, lon) can be approximate in cartesian coordinates.
With these assumption, you can do the following:
ref = [27, 77]; % ref point [lat, lon]
p = [27.2046, 77.4977];
[arclen az] = distance(ref, p)
arclen = 0.4880
az = 65.0993
x = deg2km(arclen.*cosd(az));
y = deg2km(arclen.*sind(az));
[x, y]
ans = 1×2
22.8478 49.2198
  2 个评论
Chunru 2022-8-16
"doc distance" for more details.
You can use the center of of data points as the reference point.


更多回答(0 个)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by