Usar funciones de recorrido

Las funciones de recorrido le permiten crear y evaluar expresiones de Arcade con entradas de recorrido en ciertas herramientas de ArcGIS Velocity. Los recorridos son entidades ordenadas secuencialmente con un campo especificado como identificador de recorrido (Track ID) y un campo Start Time. Las funciones de recorrido de Arcade solo están disponibles cuando se usa Velocity en expresiones de herramientas habilitadas para recorridos específicos (Calcular campo y Correlacionar campos).

Para más información sobre cada función de recorrido, consulte Funciones de recorrido en la documentación de ArcGIS Arcade.

En ArcGIS Velocity están disponibles las siguientes funciones de recorrido:

Ejemplos

  • Acceder a la distancia recorrida desde el origen del recorrido hasta una observación actual.
    • Esto se consigue con la función de recorrido TrackCurrentDistance, la cual devuelve la suma de las distancias entre las observaciones desde la primera hasta la observación actual.
    • Esta función se usa como TrackCurrentDistance(x), donde x indica la entidad de inspección.
    • Escenario de ejemplo:
      • Una pista tiene seis entidades y la expresión devuelve un valor para la entidad actual del recorrido.
        • La distancia desde la entidad 1 a la entidad 2 es de 60 metros.
        • La distancia desde la entidad 2 a la entidad 3 es de 80 metros.
        • La distancia desde la entidad 3 a la entidad 4 es de 30 metros.
        • La distancia desde la entidad 4 a la entidad 5 es de 35 metros.
        • La distancia desde la entidad 5 a la entidad 6 es de 25 metros.
      • El resultado cuando se procesa la entidad 3 sería 140 (80 + 60).
  • Acceder a un valor de campo específico de dos observaciones anteriores a la actual.
    • Esto se consigue con la función de recorrido TrackFieldWindow, la cual devuelve una matriz de valores de atributo del campo especificado para el período de tiempo especificado.
    • La función se usa como TrackFieldWindow('fieldName', startIndex, endIndex)[x]
      • fieldName: Texto: el nombre del campo desde el que se devolverán los valores.
      • startIndex: Número: el índice de la entidad inicial. La entidad actual es el índice 0. Los valores positivos representan entidades que ocurren en el futuro, después del valor actual. Por ejemplo, la posición 1 es el siguiente valor en la matriz. Los números negativos representan entidades que ocurrieron en el pasado, antes de la entidad actual. Por ejemplo, -1 es el valor anterior en la matriz.
      • endIndex: Número: el índice de la función al final de la ventana. La entidad actual es el índice 0. Los valores positivos representan entidades que ocurren en el futuro, después del valor actual. Por ejemplo, la posición 1 es el siguiente valor en la matriz. Los números negativos representan entidades que ocurrieron en el pasado, antes de la entidad actual. Por ejemplo, -1 es el valor anterior en la matriz.
    • Escenario de ejemplo:
      • Su recorrido tiene un campo con valores ordenados secuencialmente de [10, 20, 30, 40, 50]. Las geometrías de las entidades son [{x: 1, y: 1},{x: 2, y: 2} ,{x: null, y: null},{x: 4, y: 4}, {x: 5, y: 5}]. La expresión se evalúa en cada entidad del recorrido. Los resultados que se devuelven incluyen la entidad de inicio, pero no la entidad de fin. En este ejemplo se evalúa la segunda entidad (20) y se devuelve una matriz de los valores anteriores (-1, inclusive).
      • Sintaxis de Arcade: var window = TrackFieldWindow('MyField', -2,-1)[0].
      • Valor del resultado: 10, ya que se utilizó la sintaxis [0] para tomar el primer valor de esta matriz.
  • Acceder a la geometría desde la entidad anterior a la entidad actual.
    • Esto se consigue con la función de recorrido TrackGeometryWindow, la cual devuelve una matriz de geometrías para los índices de tiempo especificados.
    • Esta función se usa como TrackGeometryWindow(startIndex, endIndex)
      • startIndex: Número: el índice de la entidad inicial. La entidad actual es el índice 0. Los valores positivos representan entidades que ocurren en el futuro, después del valor actual. Por ejemplo, la posición 1 es el siguiente valor en la matriz. Los números negativos representan entidades que ocurrieron en el pasado, antes de la entidad actual. Por ejemplo, -1 es el valor anterior en la matriz.
      • endIndex: Número: el índice de la función al final de la ventana. La entidad actual es el índice 0. Los valores positivos representan entidades que ocurren en el futuro, después del valor actual. Por ejemplo, la posición 1 es el siguiente valor en la matriz. Los números negativos representan entidades que ocurrieron en el pasado, antes de la entidad actual. Por ejemplo, -1 es el valor anterior en la matriz.
    • Escenario de ejemplo:
      • Su recorrido tiene un campo con valores ordenados secuencialmente de [10, 20, 30, 40, 50]. Las geometrías de las entidades son [{x: 1, y: 1},{x: 2, y: 2} ,{x: null, y: null},{x: 4, y: 4}, {x: 5, y: 5}]. La expresión se evalúa en cada entidad del recorrido. En este ejemplo, examinamos los resultados evaluados en la tercera entidad (30). Los resultados que se devuelven incluyen la entidad de inicio, pero no la entidad de fin.
      • Sintaxis de Arcade: var window = TrackGeometryWindow(-2,2)
      • Valor del resultado: [{x: 1, y: 1},{x: 2, y: 2} ,{x: null, y: null},{x: 4, y: 4}]

Notas de uso

  • Las funciones de recorrido de Arcade solo están disponibles en las herramientas Calcular campo y Correlacionar campos.
  • La prueba de expresión de Arcade no está disponible actualmente para expresiones que incluyan funciones de recorrido. Consulte la función de recorrido y la documentación de Arcade para garantizar que la expresión sea válida y que se tengan en cuenta los tipos de valor de retorno.
  • El análisis en tiempo real no puede acceder a los valores de recorrido futuros (x), ya que las observaciones futuras aún no han accedido al análisis en tiempo real en el momento del procesamiento. El análisis en tiempo real solo puede acceder a los valores de recorrido anteriores (-x) y actuales (0).
  • Los valores de recorrido anteriores se pueden recuperar hasta de 5 entidades anteriores (-5)
  • Al crear expresiones de Arcade con funciones de recorrido, es importante tener en cuenta qué tipo de datos (matriz, cadena, número, fecha) devuelve la función de recorrido, así como su expresión. Consulte la documentación de Funciones de recorrido para ver qué tipo de datos devuelve cada función de recorrido.

En este tema
  1. Ejemplos
  2. Notas de uso