Resumen
Calcula distancias y otra información de proximidad entre entidades en una o varias capas o clases de entidad. A diferencia de la herramienta Cercano, que modifica la entrada, Generar tabla de cercanía escribe los resultados en una tabla independiente nueva y admite la búsqueda de más de una entidad cercana.
Más información sobre cómo se calcula la proximidad con las herramientas de geoprocesamiento
Ilustración
Uso
La tabla de salida contendrá los siguientes campos:
Nombre de campo Descripción IN_FID El ObjectID de la entidad de entrada.
NEAR_FID El ObjectID de la entidad más próxima.
NEAR_DIST La distancia de la entidad de entrada a la entidad cercana. El valor de este campo está definido en la unidad lineal del sistema de coordenadas de la entidad de entrada, o en Metros si el parámetro Método está establecido en GEODESIC y la entrada está definida en un sistema de coordenadas geográficas.
NEAR_FC La ruta del catálogo de la clase de entidad que contiene la entidad próxima. Este campo solo se agrega a la tabla de salida si se especifican varias Entidades cercanas.
NEAR_RANK Valor entero que clasifica todas las entidades cercanas según su proximidad a una entidad de entrada individual. La entidad más cercana tendrá un valor NEAR_RANK de 1, la segunda más cercana un valor NEAR_RANK de 2, y así sucesivamente.
Los siguientes campos se agregarán a la tabla de salida si el parámetro Ubicación está activado (parámetro location establecido en LOCATION en Python). La unidad de los valores de los campos depende del método que se haya seleccionado en el parámetro Método. Si se establece como PLANAR, el valor estará en la unidad lineal del sistema de coordenadas de la entidad de entrada. Si se establece como GEODESIC, el valor estará en el sistema de coordenadas geográficas asociado al sistema de coordenadas de la entidad de entrada.
Nombre de campo Descripción FROM_X Coordenada X de la ubicación en la entidad próxima más cercana a la entidad de entrada.
FROM_Y Coordenada Y de la ubicación en la entidad próxima más cercana a la entidad de entrada.
NEAR_X Coordenada X de la ubicación en la entidad próxima más cercana a la entidad de entrada.
NEAR_Y Coordenada Y de la ubicación en la entidad de entrada más cercana a la entidad próxima.
El siguiente campo se agregará a la tabla de salida si el parámetro Ángulo está activado (parámetro angle establecido en ANGLE en el script).
Campo Descripción NEAR_ANGLE El ángulo de la línea en las ubicaciones FROM_X y FROM_Y que conecta las entidades de entrada con la entidad cercana.
Cuando la entidad de entrada y próxima intersecan, los siguientes valores se escriben en la tabla de salida:
- NEAR_ANGLE y NEAR_DIST se establecerán en 0.0.
- FROM_X y FROM_Y serán idénticos a NEAR_X y NEAR_Y y serán una ubicación en la intersección de ambas entidades.
Los valores del campo NEAR_DIST están en la unidad lineal del sistema de coordenadas de las entidades de entrada. Si la entrada está en un sistema de coordenadas geográficas y el parámetro Método se establece en GEODESIC, las unidades NEAR_DIST estarán en metros.
La tabla de salida se puede unir de nuevo a las entidades de entrada mediante IN_FID o a las entidades cercanas mediante NEAR_FID.
Si se especifica un Radio de búsqueda y no se encuentra ninguna entidad cercana, no se generará ningún registro.
Si no se especifica ningún Radio de búsqueda, todas las entidades cercanas se considerarán candidatas.
Si no se especifica ningún Radio de búsqueda y Encontrar solo entidad más cercana está desactivado (closest establecido en ALL en Python), y se deja el valor predeterminado de Cantidad máxima de coincidencias más cercanas (0 o vacío), la tabla de salida contendrá cálculos de distancia entre todas las entidades de entrada y todas las entidades cercanas. Este tipo de proceso puede tardar bastante y puede crear una tabla de salida grande. Por ejemplo, si tiene 1.000 entidades de entrada y 1.000 entidades próximas, la tabla de salida incluirá 1.000.000 de registros.
La misma capa o clase de entidad se puede usar tanto como entidades de entrada como entidades próximas. En esta situación, la entidad de entrada que se está evaluando se excluye de los candidatos de entidad para evitar que todas las entidades estén próximas a ellas mismas.
Cuando se utiliza la opción Planar para el parámetro Método, las entidades de entrada deben tener una proyección que sea adecuada para la medición de distancia, como en proyecciones equidistantes.
Más información sobre Sistemas de coordenadas y proyecciones
Para visualizar las ubicaciones FROM_X, FROM_Y, NEAR_X y NEAR_Y, la tabla de salida se puede usar como entrada de las herramientas Crear capa de eventos XYo De XY a línea.
Sintaxis
arcpy.analysis.GenerateNearTable(in_features, near_features, out_table, {search_radius}, {location}, {angle}, {closest}, {closest_count}, {method})
Parámetro | Explicación | Tipo de datos |
in_features | Las entidades de entrada que pueden ser de tipo punto, polilínea, polígono o multipunto. | Feature Layer |
near_features [near_features,...] | Una o más capas de la clase de entidad que contienen candidatos de entidades cercanas. Las entidades próximas pueden ser de tipo punto, polilínea, polígono o multipunto. Si se especifican varias capas o clases de entidad, se agrega un nuevo campo llamado NEAR_FC a la tabla de entrada que almacenará las rutas de la clase de entidad de origen con las entidades más cercanas detectadas. La misma capa o clase de entidad se puede usar tanto como entidades de entrada como entidades próximas. | Feature Layer |
out_table | La tabla de salida contiene el resultado de los análisis. | Table |
search_radius (Opcional) | El radio que se utiliza para buscar entidades cercanas. Si no se especifica ningún valor, las entidades cercanas serán candidatas. Si se introduce una distancia, pero la unidad se deja en blanco o está definida como Desconocido, se utilizan las unidades del sistema de coordenadas de las entidades de entrada. Si la opción Geodésico se utiliza en el parámetro Método, debería usarse una unidad lineal, como Kilómetros o Millas. | Linear Unit |
location (Opcional) | Especifica si las coordenadas x e y de la ubicación de la entidad de entrada y de la ubicación más cercana de la entidad cercana se escribirán en los campos FROM_X, FROM_Y, NEAR_X y NEAR_Y.
| Boolean |
angle (Opcional) | Especifica si el ángulo cercano se calculará y se escribirá en un campo nuevo NEAR_ANGLE en la tabla de salida. Un ángulo próximo mide la dirección de la línea que conecta una entidad de entrada a la entidad más próxima en las ubicaciones más cercanas. Cuando el método PLANAR se utiliza en el parámetro method, el ángulo está dentro del rango de -180° a 180°, con 0° al este, 90° al norte, 180° (o -180°) al oeste y -90° al sur. Cuando se utiliza el método GEODESIC, el ángulo se encuentra dentro del rango de -180° a 180°, con 0° al norte, 90° al este, 180° (o -180°) al sur y -90° al oeste.
| Boolean |
closest (Opcional) | Especifica si solo se devuelve a las entidades más cercanas o a múltiples entidades.
| Boolean |
closest_count (Opcional) | Limita el número de entidades cercanas reportadas para cada entidad de entrada. Este parámetro no se tiene en cuenta si el parámetro closest está establecido en CLOSEST.. | Long |
method (Opcional) | Determina si se utiliza una ruta más corta en un esferoide (geodésico) o una Tierra plana (planar). Se recomienda encarecidamente utilizar el método Geodésico con datos almacenados en un sistema de coordenadas que no sea adecuado para mediciones de distancias (por ejemplo, Web Mercator y cualquier sistema de coordenadas geográficas), o cualquier dataset que abarque una extensa área geográfica.
| String |
Muestra de código
A continuación, se muestra cómo utilizar la función GenerateNearTable en la ventana de Python.
import arcpy
arcpy.env.workspace = "C:/data/input/gnt.gdb"
arcpy.GenerateNearTable_analysis("campsites", ["parks", "trails"], "better_sites")
El siguiente script de Python muestra cómo utilizar la función GenerateNearTable en un script independiente.
# Name: GenerateNearTable.py
# Description: Finds 3 nearest in the near feature class from the input feature class.
# import system modules
import arcpy
# set workspace environment
arcpy.env.workspace = "C:/data/input/gnt.gdb"
# set required parameters
in_features = "campsites"
near_features = ["parks", "trails"]
out_table = "near_parks_trails"
# optional parameters
search_radius = '1500 Meters'
location = 'NO_LOCATION'
angle = 'NO_ANGLE'
closest = 'ALL'
closest_count = 3
# find crime locations within the search radius
arcpy.GenerateNearTable_analysis(in_features, near_features, out_table, search_radius,
location, angle, closest, closest_count)
Información de licenciamiento
- Basic: Sí
- Standard: Sí
- Advanced: Sí