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

56 views (last 30 days)
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).

Accepted Answer

Chunru
Chunru on 15 Aug 2022
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 Comments
ANURAG DEEPAK
ANURAG DEEPAK on 16 Aug 2022
How is distance (ref, p) function defined? And, how can i choose reference point for the very first point in the dataset?
Chunru
Chunru on 16 Aug 2022
"doc distance" for more details.
You can use the center of of data points as the reference point.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!