ArcGIS for Desktop

  • Documentación
  • Precios
  • Soporte

  • My Profile
  • Ayuda
  • Sign Out
ArcGIS for Desktop

ArcGIS Online

La plataforma de representación cartográfica para tu organización

ArcGIS for Desktop

Un completo SIG profesional

ArcGIS for Server

SIG en tu empresa

ArcGIS for Developers

Herramientas para crear aplicaciones basadas en la ubicación

ArcGIS Solutions

Plantillas de aplicaciones y mapas gratuitas para tu sector

ArcGIS Marketplace

Obtén aplicaciones y datos para tu organización.

  • Documentación
  • Precios
  • Soporte
Esri
  • Iniciar sesión
user
  • Mi perfil
  • Cerrar sesión

Ayuda

  • Inicio
  • Introducción
  • Mapa
  • Analizar
  • Administrar datos
  • Herramientas
  • Más...

Cercano

  • Resumen
  • Ilustración
  • Uso
  • Sintaxis
  • Ejemplo de código
  • Entornos
  • Información sobre licencias

Resumen

Calcula la distancia y la información de proximidad adicional entre entidades de entrada y la entidad más cercana en otra clases de entidad o capa.

Más información acerca del cálculo de la proximidad en las herramientas de geoprocesamiento

Ilustración

Buscar una entidad cercana por tipo de geometría

Uso

  • Los campos siguientes se agregarán a la entrada. Si los campos ya existen, los valores de campo se actualizan.

    Nombre de campoDescripción
    NEAR_FID

    El Id. de objeto de la entidad próxima más cercana. Si no se encuentra ninguna entidad próxima, el valor será -1.

    NEAR_DIST

    Distancia entre la entidad de entrada y próxima. El valor de este campo está en unidades de línea del sistema de coordenadas de entidades de entrada, o en Metros cuando el parámetro Método está establecido en GEODESIC y la entrada está definida en un sistema de coordenadas geográficas. Si no se encuentra ninguna entidad próxima, el valor será -1.

    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 próximas. Si no se encuentra ninguna entidad próxima, el valor será nulo o una cadena de caracteres vacía.

    Los siguientes campos se agregarán a las entidades de entrada si el parámetro Ubicación está activado (parámetro location establecido en LOCATION en Python). Los valores de campo se actualizan, si los campos ya existen. 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 campoDescripción
    NEAR_X

    Coordenada X de la ubicación en la entidad próxima más cercana a la entidad de entrada. Si no se encuentra ninguna entidad próxima, el valor será -1.

    NEAR_Y

    Coordenada Y de la ubicación en la entidad próxima más cercana a la entidad de entrada. Si no se encuentra ninguna entidad próxima, el valor será -1.

    El siguiente campo se agregará a las entidades de entrada si el parámetro Ángulo está activado (parámetro angle establecido en ANGLE en Python). Los valores de campo se actualizan, si los campos ya existen.

    CampoDescripción
    NEAR_ANGLE

    Ángulo de la línea en la ubicación FROM_X y FROM_Y que conecta las entidades de entrada en la entidad próxima. Si no se encuentra una entidad próxima o esta interseca la entidad de entrada, el valor será 0.

  • Los valores para NEAR_FID y NEAR_DIST serán de -1 si no se encuentra una entidad dentro del radio de búsqueda.

  • Tanto las entidades de entrada como las entidades próximas pueden ser entidades de puntos, multipuntos, líneas o polígonos.

  • Las Entidades próximas pueden incluir una clase de entidad o más de diferentes tipos de forma (punto, multipunto, línea o polígono).

  • 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.

  • Las entidades de entrada pueden ser de una capa en la que realizó una selección. Las entidades seleccionadas se utilizarán y actualizarán durante la ejecución de la herramienta. Las entidades restantes tendrán valores de los campos creados recientemente (como NEAR_FID y NEAR_DIST) configurados en -1.

  • Cuando la distancia más corta de una entidad de entrada es la misma en más de una entidad próxima, una de ellas es elegida de forma aleatoria como la entidad más cercana.

  • Cuando se utiliza la opción Planar para el parámetro Método, las entidades de entrada deben encontrarse en una proyección que sea adecuada para la medición de la distancia, como en una proyección equidistante.

    Más información sobre los sistemas de coordenadas geográficas y proyectadas

  • 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 XY o XY a línea.

Sintaxis

Near_analysis (in_features, near_features, {search_radius}, {location}, {angle}, {method})
ParámetroExplicaciónTipo 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 entidad o clases de entidad que contienen candidatos de entidades próximas. Las entidades próximas pueden ser de tipo punto, polilínea, polígono o multipunto. Si se especifican varias capas o clases de entidades, se agrega un nuevo campo denominado NEAR_FC a la tabla de entrada que almacenará las rutas de la clase de entidad de origen que contiene las entidades más próximas detectadas. La misma capa o clase de entidad se puede usar tanto como entidades de entrada como entidades próximas.

Feature Layer
search_radius
(Opcional)

El radio que se utiliza para buscar entidades próximas. Si no se especifica ningún valor, se tendrán en cuenta las entidades próximas. Si se especifica una distancia, pero no se especifica ninguna unidad o se especifica una unidad desconocida, se utilizan las unidades del sistema de coordenadas de las entidades de entrada. Si se utiliza la opción Geodesic, 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 más cercana de la entidad próxima se escribirán en los campos NEAR_X y NEAR_Y.

  • NO_LOCATION — La información de ubicación no se escribirá en la tabla de salida. Esta es la opción predeterminada.
  • LOCATION — La información de ubicación se escribirá en la tabla de salida.
Boolean
angle
(Opcional)

Especifica si se calculará el ángulo cercano y si 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 se encuentra 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.

  • NO_ANGLE —Los valores del ángulo cercano no se escribirán. Esta es la opción predeterminada.
  • ANGLE —Los valores del ángulo cercano se escribirán en el campo NEAR_ANGLE.
Boolean
method
(Opcional)

Determina si se utiliza una ruta más corta en un método esferoide (geodesic) o una tierra plana (planar). Se recomienda encarecidamente utilizar el método Geodesic con datos almacenados en un sistema de coordenadas que no sea adecuado para las mediciones de distancias (por ejemplo, Web Mercator o cualquier sistema de coordenadas geográficas), y cualquier análisis que abarque una extensa área geográfica.

  • PLANAR —Utiliza distancias planares entre las entidades. Esta es la opción predeterminada.
  • GEODESIC —Utiliza distancias geodésicas entre las entidades. Este método tiene en cuenta la curvatura del esferoide y trata correctamente los datos cercanos a la línea de cambio de fecha y los polos.
String

Ejemplo de código

Ejemplo 1 de Cerca (ventana de Python)

La siguiente secuencia de comandos de la ventana de Python interactiva demuestra cómo utilizar la función Cerca en modo inmediato.

import arcpy
arcpy.env.workspace = "C:/data/city.gdb" 

## find the nearest road from each house
arcpy.Near_analysis('houses', 'roads')
Ejemplo 2 de Cerca (secuencia de comandos de Python independiente)

La siguiente secuencia de comandos Python demuestra cómo utilizar la función Cerca en una secuencia de comandos independiente.

# Name: Near.py
# Description: Finds nearest features from input feature class to near feature class.

import arcpy

# Set workspace environment
arcpy.env.workspace = "C:/data/city.gdb"

try:
    # set local variables
    in_features = "houses"
    near_features = "parks"
    
    # find features only within search radius
    search_radius = "5000 Meters"
    
    # find location nearest features
    location = "LOCATION"
    
    # avoid getting angle of neares features
    angle = "NO_ANGLE"
    
    # execute the function
    arcpy.Near_analysis(in_features, near_features, search_radius, location, angle)
    
    # get geoprocessing messages
    print(arcpy.GetMessages())

except arcpy.ExecuteError:
    print(arcpy.GetMessages(2))
    
except Exception as err:
    print(err.args[0])
Ejemplo 3 de Cerca (secuencia de comandos de Python independiente)

La siguiente secuencia de comandos de Python demuestra cómo convertir el ángulo cercano de acimut.

# Name: near_angle_to_azimuth.py

import arcpy

# Near tool does not calculate angle in azimuths
# This script, using the output of the tool, converts the angles
# to azimuth angles.

in_table = r"C:/data/city.gdb/near_table"
    
angles = arcpy.da.SearchCursor(in_table, ["NEAR_ANGLE"])

azimuth_angles = []

with angles as rows:
    for row in rows:
        angle = row[0]
        if angle <= 180 and angle > 90:
            azimuth_angles.append(360.0 - (angle - 90))
        else:
            azimuth_angles.append(abs(angle - 90))

# Use these azimuth angles as necessary.
Ejemplo 4 de Cerca (secuencia de comandos de Python independiente)

Demuestra el procesamiento posterior con la salida derivada de la herramienta Cerca. La secuencia de comandos busca, para cada entidad cercana, de cuáles entidades de entrada está más cerca.

# Name: features_closest_to_input.py

"""
    This script finds, for each input feature, a list of near feature it is closest to.
    If near features 6, 7, 10 are closest to input feature 3 then the 
    resulting dictionary will have a list [6, 7, 10] as value for key 3
"""

import os
import arcpy

in_fc = r"C:\data\cities.gdb\cities_many"

# create a dictionary to hold the list of near ids for each input id
nearest_dict = dict()

with arcpy.da.SearchCursor(in_fc, ["OID@", "NEAR_FID"]) as rows:
    for row in rows:
        nearest_id = row[0]  # get OID value for that row
        input_id = row[1]    # get NEAR_FID value 
        
        if input_id in nearest_dict:
            # if a dict key already exists, append near id to value list for that key
            nearest_dict[input_id].append(nearest_id)
        else:
            # if the key does not exist then create a new list with near id
            # and add it to the dictionary
            nearest_dict[input_id] = [nearest_id]
            
print(nearest_dict)

# output will look like:
# {1: [13, 28], 2: [2, 9, 14, 20, 22], 3: [11, 12, 24, 25]}

Entornos

  • Extensión
  • Espacio de trabajo actual

Información sobre licencias

  • ArcGIS for Desktop Basic: No
  • ArcGIS for Desktop Standard: No
  • ArcGIS for Desktop Advanced: Sí

Temas relacionados

  • Información general sobre el conjunto de herramientas Proximidad
¿Algún comentario sobre este tema?

ArcGIS for Desktop

  • Inicio
  • Documentación
  • Precios
  • Soporte

Plataforma ArcGIS

  • ArcGIS Online
  • ArcGIS for Desktop
  • ArcGIS for Server
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

Acerca de Esri

  • Quiénes somos
  • Empleo
  • Blog interno
  • Conferencia de usuarios
  • Cumbre de desarrolladores
Esri
© Copyright 2016 Environmental Systems Research Institute, Inc. | Privacidad | Legal