how to convert decimal degree to utm using loops ?

I have this X ( 51 by 51 ) and Y ( 51 by 51 ) lat and lon matrix and I want to convert them to UTM using the deg2utm function in a loop. deg2utm function says [x,y,utmzone] = deg2utm(lat,lon)
I am not how to loop to though the my X and Y matrix in this case. any help would be highly appreciated. Thanks

1 commentaire

I have this code that I wrote but both my new XX lat and YY lon give me 51 by 1 matrix instead of 51 by 51
xx=[]; yy = [];
for i = 1:1:length(X3)
[x(i),y(i),utmzone] = deg2utm(X3(i),Y3(i));
xx(i,:) = x(i);
yy(i,:) = y(i);
end

Connectez-vous pour commenter.

 Réponse acceptée

ANKUR KUMAR
ANKUR KUMAR le 8 Jan 2018
Modifié(e) : ANKUR KUMAR le 8 Jan 2018
Firstly do the meshgrid of lon lat.
[lon_new,lat_new]=meshgrid(lon,lat);
for i=1:size(lon_new,1)
for ii=1:size(lon_new,2)
C(i,ii)= deg2utm(lon_new(i,ii),lat_new(i,ii));
end
end
I haven't run this code yet. If your problem is still is not resolved, please attach the .mat file.

5 commentaires

My old lat and lon are generated from meshgird already. That's how I have 51 by 51 . is there anyway without creatring another meshgird for my lat and lon ? Thanks!
I have edited my answer. Please go through it.
Please accept the answer, if it helps you.
I had to modify your code without using the meshgrid. Thanks
I have written the complete the complete code, so that others can understand too.

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by