Latitude and Longitude Data to Universal Transverse Mercator (UTM)

142 views (last 30 days)
Hi,
How can i convert this spreadsheet with xy gps coordinates (Latitude and Longitude) to Universal Transverse Mercator (UTM), in meters?

Accepted Answer

André Luiz Lourenço
André Luiz Lourenço on 13 Apr 2021
Edited: MathWorks Support Team on 6 Jun 2022
************************************
Matlab has his own functions to deal with it.
First you need to get the utm zone from the coordinates
p1 = [lat,lon];
z1 = utmzone(p1)
Then you must get the geoid of this zone and construct the projection structcture using the following functions
[ellipsoid,estr] = utmgeoid(z1);
utmstruct = defaultm('utm');
utmstruct.zone = z1;
utmstruct.geoid = ellipsoid;
utmstruct = defaultm(utmstruct);
Finally you use mfwdtran to convert coordinates
[x,y] = mfwdtran(utmstruct,lat,lon)
  3 Comments
Honey
Honey on 22 Nov 2021
Hello .
I have a problem with this code in zone part. I know that my lat and lon data is located in 40 zone of north hemisphere. But this code is showing me z1= 40S. what's the matter?

Sign in to comment.

More Answers (1)

KSSV
KSSV on 18 Nov 2016
Load the data into matlab and use the following function to convert degrees to utm.
YOu can load data from excel to matlab using xlsread.
  2 Comments
Sérgio Querido
Sérgio Querido on 18 Nov 2016
Edited: Sérgio Querido on 18 Nov 2016
close all clear all workspace
%% ext='.xlsx'; filename1='João Carlos.xlsx'
%% Leitura Ficheiros
data_MOM1=xlsread(filename1,'MOMENTO1');
datautm_MOM1= wgs2utm(data_MOM1)
What's wrong in the code?
"Error using wgs2utm (line 68) Wrong number of input arguments
Error in newroutine (line 10) datautm_MOM1= wgs2utm(data_MOM1)"
KSSV
KSSV on 18 Nov 2016
Lat = data_MOM(:,1) ; % is X latitude? check
Lon = data_MOM(:,2) ; % is Y longitude? Check
[x,y,utmzone]= wgs2utm(Lat,Lon) ;

Sign in to comment.

Tags

Community Treasure Hunt

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

Start Hunting!