Visualizar Coordenadas (Grados, Minutos, Segundos) en la ventana emergente en ArcGIS Online con Arcade

2312
0
12-04-2017 07:55 AM
Labels (1)

Visualizar Coordenadas (Grados, Minutos, Segundos) en la ventana emergente en ArcGIS Online con Arcade

Cuando tenemos un conjunto de datos con coordenadas geográficas (GCS WGS 1984) podemos en ArcGIS Online visualizar las coordenadas en grados, minutos y segundos. Para lograr esto se puede usar ArcGIS Arcade | ArcGIS for Developers.

Ojo: para poder usar la expresión el conjunto de puntos debe ser publicado con coordenadas geográficas (ejemplo: GCS WGS 1984)

Lo que tenemos y lo que queremos

Situación inicial:

Pero queremos visualizar:

Crear la expresión en Arcade

El primer paso es entrar a la configuración de la ventana emergente, donde encontramos para crear expresiones de atributos:

Empecemos con agregar una expresión para la Latitud:

Código Arcade:

Function LAT_g_m_s(grados_decimales) {
    /* grados decimales a gra min seg */
    var grados = Floor(Abs(grados_decimales), 0);
    if (grados_decimales < 0) {
        var quad = 'S';
    } else {
        var quad = 'N';
    }
    var min_seg = Abs(grados_decimales) * 60 - grados * 60;
    var minutos = Floor(min_seg);
    var segundos = min_seg * 60 - minutos * 60;
    var gms = Text(grados, "###") +  "° " + Text(minutos, "00") + "' " + Text(segundos, "00.000") + '" ' + quad;
    return gms;
}

return LAT_g_m_s($feature.Latitude);

Para el Longitud es una expresión bastante similar:

Código Arcade:

Function LON_g_m_s(grados_decimales) {
    /* grados decimales a gra min seg */
    var grados = Floor(Abs(grados_decimales), 0);
    if (grados_decimales < 0) {
        var quad = 'O';
    } else {
        var quad = 'E';
    }
    var min_seg = Abs(grados_decimales) * 60 - grados * 60;
    var minutos = Floor(min_seg);
    var segundos = min_seg * 60 - minutos * 60;
    var gms = Text(grados, "###") +  "° " + Text(minutos, "00") + "' " + Text(segundos, "00.000") + '" ' + quad;
    return gms;
}

return LON_g_m_s($feature.Longitude);

El resultado es que en la ventana emergente se visualizará el texto de Latitud y Longitud con grados, minutos y segundos:

Extraer las coordenadas de la geometría

En caso que no cuente con atributos que contienen las coordenadas en grados decimales, se puede usar la geometría. Las funciones "LAT_g_m_s" y "LON_g_m_s" quedarán lo mismo pero se suministren las propiedades de la geometría.

Para Latitud:

//return LAT_g_m_s($feature.Latitude);
return LAT_g_m_s(Geometry($feature).Y);

Para Longitud:

//return LON_g_m_s($feature.Longitude);
return LON_g_m_s(Geometry($feature).X);

Recursos

Labels (1)
Version history
Revision #:
1 of 1
Last update:
‎12-04-2017 07:55 AM
Updated by:
 
Contributors