Matlab - GUIDE matlab para convertir de UTM a lat/lon (geograficas)

 
Vista:
sin imagen de perfil
Val: 23
Ha disminuido su posición en 3 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

GUIDE matlab para convertir de UTM a lat/lon (geograficas)

Publicado por Nick (14 intervenciones) el 16/04/2020 21:26:31
Buenas tardes a todos estoy desarrollando una guide que al ingresar coordenadas UTM me de en la salida coordenadas geográficas (lat/lon) por ejemplo si ingreso:
3.0643515e+005 8.6275492e+006 debe salir -76.780592 -12.409213
Para tal fin adjunto lo archivos que he desarrollado (utilice m_ma es necesario? o se puede usar sin m_map)

Comparto también parte del script dentro de la guide donde se controla dicha info, esta en el comprimido también

1
2
3
4
5
6
7
8
9
% --- Executes on button press in pushbutton1.
function pushbutton1_Callback(hObject, eventdata, handles)
addpath('C:\Users\Nick\Documents\MATLAB\m_map')
 m_proj('utm','lon',[-85 -68],'lat',[-20 0],'ell','wgs84','hem',1,'zon',18)
x=get(handles.edit1,'String')
y=get(handles.edit2,'String')
[lon,lat] = m_xy2ll(x,y)
set(handles.edit3,'String',lon)
set(handles.edit4,'String',lat)


Agradecido a todos de su gentil ayuda y repsuesta.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 918
Bronce
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

GUIDE matlab para convertir de UTM a lat/lon (geograficas)

Publicado por Daniel (354 intervenciones) el 17/04/2020 10:36:48
Hola,

1
2
3
4
5
6
7
8
9
10
11
12
13
% No se debe usar una ruta absoluta para enlazar a un libreria, lo ideal
% seria darla de alta
addpath(fullfile(fileparts(mfilename('fullpath')), 'm_map'));
 
m_proj('utm','lon',[-85 -68],'lat',[-20 0],'ell','wgs84','hem',1,'zon',18)
 
% A diferencia de AppDesigner en GUIDE los editores son texto, por lo que
% se tienen que converir a double.
x = str2double(get(handles.edit1,'String'));
y = str2double(get(handles.edit2,'String'));
[lon,lat] = m_xy2ll(x,y);
set(handles.edit3,'String',lon)
set(handles.edit4,'String',lat)

Saludos,
Daniel Rodríguez
Analytics Lane
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 23
Ha disminuido su posición en 3 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

GUIDE matlab para convertir de UTM a lat/lon (geograficas)

Publicado por Nick (14 intervenciones) el 17/04/2020 22:38:45
Muchas gracias por la ayuda solo una pequeña consulta:

%todo esto
addpath(fullfile(fileparts(mfilename('fullpath')), 'm_map'));
%reemplazaria a
addpath('C:\Users\Nick\Documents\MATLAB\m_map')

solo quedaría esa inquietud, lo demás me quedo clarisimo, muchas gracias.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 918
Bronce
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

GUIDE matlab para convertir de UTM a lat/lon (geograficas)

Publicado por Daniel (354 intervenciones) el 18/04/2020 16:01:59
Funcionalmente si, pero esto te permite mover el código a otro ordenador o a otra carpeta dentro del mismo ordenador sin tener que reescribir la función.

* mfilename: devuelve el nombre del archivo actual con la ruta.
* fileparts: obtiene solo la ruta, sin el nombre del archivo.
* fullfile: concatena la ruta relativa para obtener la ruta a librería.

Así lo que se hace es obtener la ruta al archivo m, se elimina el nombre del archivo y se pega la ruta a la librería antes de cargarla.

Puede surgir la duda de por qué no uso pwd para obtener la ruta, pues porque pwd da la ruta de trabajo, no donde esta el archivo. En el caso de añadir la carpeta al path los valores no tienen por qué coicidir.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar