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

Document created by xander_bakker on Dec 4, 2017
Version 1Show Document
  • View in full screen mode

 

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

2 people found this helpful

Attachments

    Outcomes