CÓMO

Determinar condicionalmente si una clase de entidad se encuentra dentro de una distancia especificada de otra clase de entidad con Arcade en ArcGIS Pro

Last Published: October 7, 2024

Descripción

Cuando hay muchas clases de entidad diferentes agrupadas entre sí en ArcGIS Pro, es difícil determinar si estas clases de entidad se encuentran dentro de una distancia específica.

En este artículo se describe el flujo de trabajo para determinar condicionalmente si una clase de entidad se encuentra dentro de una distancia especificada de otra clase de entidad con Arcade en ArcGIS Pro.

Solución o solución alternativa

En este ejemplo, se utilizan una clase de entidad de punto y una clase de entidad de línea.

  1. Abra la herramienta Calcular campo en la tabla de atributos. Consulte ArcGIS Pro: Acceder a la calculadora de campo para obtener más información.
  2. En Tabla de entrada, asegúrese de que la capa de puntos deseada esté seleccionada en la lista desplegable.
  3. Especifique un nombre para Nombre de campo.
  4. En Tipo de expresión, seleccione Arcade en la lista desplegable.
  5. Especifique la siguiente expresión de Arcade en la sección Expresión. Reemplace '<lineName>' por el nombre de la clase de entidad de línea.
    1. Cargue la clase de entidad de línea.
var lines = FeaturesetByName($datastore, "<lineName>")
    1. Devuelva los resultados si los puntos se encuentran dentro de la distancia especificada desde la entidad de línea.
return IIF(Count(Intersects(Buffer($feature, <numericValue>, "<unit>"), lines)) > 0 , "Yes", "No")

El código que aparece a continuación muestra el ejemplo del script de trabajo completo.

var lines = FeaturesetByName($datastore, "Line1")
return IIF(Count(Intersects(Buffer($feature, 10, "kilometers"), lines)) > 0 , "Yes", "No")
  1. Haga clic en Aceptar.

La siguiente imagen muestra el ejemplo de la secuencia de comandos de trabajo completa en el cuadro de diálogo Calcular campo.

Ejemplo del script de trabajo completo

La siguiente imagen muestra el resultado de 'Sí' o 'No' si los puntos están dentro de una distancia especificada de una línea.

Los resultados devuelven 'Sí' si los puntos están dentro de la distancia especificada de las líneas y 'No' si no lo están

Id. de artículo: 000030048

Recibir notificaciones y encontrar soluciones a problemas nuevos o comunes

Obtenga respuestas resumidas y soluciones de vídeo de nuestro nuevo chatbot de IA.

Descargar la aplicación de soporte de Esri

Obtener ayuda de expertos en ArcGIS

Contactar con el soporte técnico

Descargar la aplicación de soporte de Esri

Ir a opciones de descarga