ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Ayuda
  • Sign Out
ArcGIS Desktop

ArcGIS Online

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

ArcGIS Desktop

Un completo SIG profesional

ArcGIS Enterprise

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
  • Soporte
Esri
  • Iniciar sesión
user
  • Mi perfil
  • Cerrar sesión

ArcMap

  • Inicio
  • Introducción
  • Cartografiar
  • Analizar
  • Administrar datos
  • Herramientas
  • Extensiones

Calcular ubicaciones

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

Resumen

Agrega campos a las entidades de entrada que contienen la ubicación de red de las entidades. La herramienta se utiliza para almacenar la información de la ubicación de red como atributos de entidad para poder cargar rápidamente las entidades como entradas para una capa de análisis de red.

Uso

  • Esta herramienta se utiliza para calcular los campos de ubicación que pueden ser entradas para la herramienta Agregar ubicaciones. Se debe utilizar en las entidades que se usarán más de una vez como entradas de una capa de análisis de red. Una vez calculadas las ubicaciones, se puede utilizar el parámetro Usar los campos de ubicación de red en lugar de la geometría de la herramienta Agregar ubicaciones para cargar rápidamente las entidades como ubicaciones de red.

  • También puede usar esta herramienta para volver a calcular las ubicaciones de red que están no ubicadas en la capa de análisis de red mediante un conjunto de opciones de búsqueda distinto. Por ejemplo, si las paradas en la capa de análisis de red de ruta se agregaron inicialmente con una tolerancia de búsqueda de 500 metros y sólo algunas de las paradas quedaron no ubicadas, puede seleccionar las paradas no ubicadas, por ejemplo, usando la herramienta Seleccionar capa por atributo y volver a ejecutar esta herramienta especificando la subcapa de las paradas como las Entidades de entrada con una tolerancia de búsqueda mayor.

  • La herramienta se ejecuta considerablemente más rápido si las clases de entidad utilizadas como fuentes de red en el dataset de red tienen un índice espacial válido y actualizado.

Sintaxis

CalculateLocations_na (in_point_features, in_network_dataset, search_tolerance, search_criteria, {match_type}, {source_ID_field}, {source_OID_field}, {position_field}, {side_field}, {snap_X_field}, {snap_Y_field}, {distance_field}, {snap_Z_field}, {location_field}, {exclude_restricted_elements}, {search_query})
ParámetroExplicaciónTipo de datos
in_point_features

Las entidades de entrada para las que se calcularán las ubicaciones de red.

Debido a que la información de ubicación de red está almacenada en un campo blob (especificado en el parámetro del campo de rangos de ubicación), las entidades de línea y polígono sólo son compatibles con las clases de entidad de geodatabase.

Table View
in_network_dataset

El dataset de red utilizado para calcular las ubicaciones.

Si una subcapa de una capa de análisis de red se utiliza como entidades de entrada, el parámetro se debe establecer en el dataset de red al que hace referencia la capa de análisis de red.

Network Dataset Layer
search_tolerance

La tolerancia de búsqueda para ubicar las entidades de entrada en la red. Las entidades que se encuentran fuera de la tolerancia de búsqueda quedan no ubicadas. El parámetro incluye un valor y unidades para la tolerancia.

El parámetro no se utiliza al calcular las ubicaciones para entidades poligonales o de línea. En tales casos, utilice "#" como el valor de parámetro.

Linear Unit
search_criteria
[[Source, SnapType],...]

Especifica en qué fuentes del dataset de red se buscará para encontrar las ubicaciones y qué partes de la geometría (también conocidas como tipos de alineación) se utilizarán.

El valor de parámetro se especifica como una lista con listas anidadas. La lista anidada está compuesta por dos valores que indican el nombre y el tipo de alineación para cada fuente de red. El tipo de alineación se especifica mediante la palabra clave SHAPE, MIDDLE, END o NONE.

  • SHAPE: el punto se ubicará en el punto más cercano de un elemento en esta fuente de red.
  • MIDDLE: el punto se ubicará en el punto medio más cercano de un elemento en esta fuente de red.
  • END: el punto se ubicará en el extremo más cercano de un elemento en esta fuente de red.
  • NONE: el punto no se ubicará en los elementos de esta fuente de red.
Por ejemplo, cuando se buscan ubicaciones, el valor de parámetro [["Streets","SHAPE"],["Streets_ND_Junctions","NONE"]] especifica que se puede buscar en la forma de la fuente Streets pero no en la fuente Streets_ND_Junctions.

Para especificar varios tipos de alineación para una única fuente de red, utilice una combinación de las palabras clave de tipo de alineación separadas por un guión bajo. Por ejemplo, MIDDLE_END especifica que las ubicaciones se pueden alinear hacia el medio o el final de la fuente de red.

En los datasets de red de geodatabase, los tipos de alineación se pueden especificar para cada subtipo de la fuente de red (["Streets : Local Streets","SHAPE"]).

Cuando se calculan las ubicaciones para entidades poligonales o de línea, solo se utiliza el tipo de alineación SHAPE, incluso si se especifican otros tipos de alineación.

Las fuentes de redes que no se incluyan en esta lista utilizarán su tipo de alineación predeterminado. Lo más seguro es incluir todas las fuentes de redes en la lista y establecer de forma explícita el tipo de alineación para cada una.

Value Table
match_type
(Opcional)
  • MATCH_TO_CLOSEST —Hace concordar las nuevas ubicaciones de red con la fuente de red más cercana entre todas las fuentes que tienen un tipo de alineación especificado en los criterios de búsqueda. Esta es la opción predeterminada.
  • PRIORITY —Hace concordar las nuevas ubicaciones de red con la primera fuente de red que tiene un tipo de alineación especificado en los criterios de búsqueda. La búsqueda de los orígenes se realiza en orden de prioridad y la búsqueda se detiene si la ubicación se encuentra dentro de la tolerancia de búsqueda.

El parámetro no se utiliza al calcular las ubicaciones para entidades poligonales o de línea. En tales casos, utilice "#" como el valor de parámetro.

Boolean
source_ID_field
(Opcional)

El nombre del campo que se creará o actualizará con la Id de origen de la ubicación de red calculada. Un campo llamado SourceID se crea o actualiza de forma predeterminada.

El parámetro no se utiliza al calcular las ubicaciones para entidades poligonales o de línea. En tales casos, utilice "#" como el valor de parámetro.

Field
source_OID_field
(Opcional)

El nombre del campo que se creará o actualizará con la OID de origen de la ubicación de red calculada. Un campo llamado SourceOID se crea o actualiza de forma predeterminada.

El parámetro no se utiliza al calcular las ubicaciones para entidades poligonales o de línea. En tales casos, utilice "#" como el valor de parámetro.

Field
position_field
(Opcional)

El nombre del campo que se creará o actualizará con el porcentaje a lo largo de la ubicación de red calculada. Un campo llamado PosAlong se crea o actualiza de forma predeterminada.

El parámetro no se utiliza al calcular las ubicaciones para entidades poligonales o de línea. En tales casos, utilice "#" como el valor de parámetro.

Field
side_field
(Opcional)

El nombre del campo que se creará o actualizará con el lado del eje en el que se ubica la entidad de punto en la ubicación de red calculada. Un campo llamado SideOfEdge se crea o actualiza de forma predeterminada.

El parámetro no se utiliza al calcular las ubicaciones para entidades poligonales o de línea. En tales casos, utilice "#" como el valor de parámetro.

Field
snap_X_field
(Opcional)

El nombre del campo que se creará o actualizará con la coordenada x de la ubicación de red calculada. Un campo llamado SnapX se crea o actualiza de forma predeterminada.

El parámetro no se utiliza al calcular las ubicaciones para entidades poligonales o de línea. En tales casos, utilice "#" como el valor de parámetro.

Field
snap_Y_field
(Opcional)

El nombre del campo que se creará o actualizará con la coordenada y de la ubicación de red calculada. Un campo llamado SnapY se crea o actualiza de forma predeterminada.

El parámetro no se utiliza al calcular las ubicaciones para entidades poligonales o de línea. En tales casos, utilice "#" como el valor de parámetro.

Field
distance_field
(Opcional)

El nombre del campo que se creará o actualizará con la distancia de la entidad de punto desde la ubicación de red calculada. Un campo llamado Distance se crea o actualiza de forma predeterminada.

El parámetro no se utiliza al calcular las ubicaciones para entidades poligonales o de línea. En tales casos, utilice "#" como el valor de parámetro.

Field
snap_Z_field
(Opcional)

El nombre del campo que se creará o actualizará con la coordenada z de la ubicación de red calculada. Un campo llamado SnapZ se crea o actualiza de forma predeterminada.

El parámetro no se utiliza al calcular las ubicaciones para entidades poligonales o de línea. En tales casos, utilice "#" como el valor de parámetro.

Cuando se calculan ubicaciones para entidades de puntos, el parámetro se utiliza sólo cuando el dataset de red de entrada es compatible con la conectividad basada en los valores de las coordenadas z de las fuentes de red. En todos los otros casos, utilice "#" como el valor de parámetro.

Field
location_field
(Opcional)

El nombre del campo que se creará o actualizará con los rangos de ubicación de las ubicaciones de red calculadas para las entidades de línea o polígono. Un campo llamado Locations se crea o actualiza de forma predeterminada.

El parámetro se utiliza sólo cuando se calculan las ubicaciones para entidades de línea o polígono. Para las entidades de puntos de entrada, utilice "#" como el valor de parámetro.

Field
exclude_restricted_elements
(Opcional)

Este parámetro sólo se aplica cuando las entidades de entrada son de la subcapa de una capa de análisis de red y no son objetos de barrera. En todos los otros casos, utilice "#" como el valor de parámetro.

  • EXCLUDE —Especifica que las ubicaciones de red sólo se colocan en porciones trazables de la red. Esto evita situar ubicaciones de red sobre elementos a los que no puede acceder debido a restricciones o barreras. Antes de reubicar las ubicaciones de red con esta opción, asegúrese de haber agregado todas las barreras de restricción a la capa de análisis de red para obtener los resultados esperados.
  • INCLUDE —Especifica que las ubicaciones de red se colocan en todos los elementos de la red. Las ubicaciones de red que se reubican con esta opción pueden ser inalcanzables durante el proceso de resolución si se colocan en elementos restringidos.
Boolean
search_query
[[Source, Expression],...]
(Opcional)

Especifica una consulta para restringir la búsqueda a un subconjunto de entidades dentro de la clase de entidad de origen. Esto resulta útil si no desea encontrar entidades que puedan resultar inadecuadas para una ubicación de red. Por ejemplo, si está cargando centroides de polígonos y no desea buscar en carreteras locales, puede definir una consulta que busque solo en carreteras principales.

El valor de parámetro se especifica como una lista con listas anidadas. La lista anidada está compuesta por dos valores que indican el nombre y la expresión SQL para todas las fuentes de red. La sintaxis de la expresión SQL difiere levemente según el tipo de clase de entidad de origen de la red. Por ejemplo, si está consultando clases de entidad de origen almacenadas en geodatabases corporativas o de archivos, shapefiles o SDC, encierre los nombres de campo entre comillas dobles: "CFCC". Si está consultando clases de entidad de origen almacenadas en geodatabases personales, encierre los campos entre corchetes: [CFCC].

Si no desea especificar una consulta para una fuente en particular, utilice "#" como el valor para la expresión SQL o excluya el nombre de la fuente y la expresión SQL del valor de parámetro. Si no desea especificar una consulta para todas las fuentes de red, utilice "#" como valor de parámetro.

Por ejemplo, el valor de parámetro [["Streets","\"CFCC\" = 'A15'"], ["Streets_ND_Junctions",""]] especifica una expresión SQL para la clase de entidad de origen Streets pero no especifica ninguna expresión para la clase de entidad de origen Streets_ND_Junctions. Tenga en cuenta que las comillas dobles utilizadas para encerrar el nombre del campo CFCC se separan mediante barras invertidas para evitar un error de análisis del intérprete de Python.

Value Table

Salida derivada

NombreExplicaciónTipo de datos
out_point_feature_class

Muestra de código

Ejemplo 1 de CalculateLocations (ventana de Python)

Calcular ubicaciones para entidades de puntos utilizando sólo los parámetros requeridos.

stores = "C:/Data/SanFrancisco.gdb/Analysis/Hospitals/Analysis/Stores"
network = "C:/Data/SanFrancisco.gdb/Transportation/Streets_ND"
arcpy.na.CalculateLocations(stores, network, "5000 Meters",
                            [["Streets", "SHAPE"],
                            ["Streets_ND_Junctions", "NONE"]])
Ejemplo 2 de CalculateLocations (ventana de Python)

Calcular ubicaciones para entidades de puntos en entidades de calles, excluyendo otras fuentes de red.

warehouses = "C:/Data/Paris.gdb/Analysis/Warehouses"
network = "C:/Data/Paris.gdb/Transportation/ParisMultimodal_ND"
arcpy.na.CalculateLocations(warehouses, network, "5000 Meters",
    [["Metro_Lines", "NONE"], ["Streets", "SHAPE"],
    ["Transfer_Stations", "NONE"], ["Metro_Entrances", "NONE"],
    ["Metro_Stations", "NONE"], ["ParisMultimodal_ND_Junctions", "NONE"]],
    "MATCH_TO_CLOSEST", "SID", "SOID", "PA", "SOE", "SnapX", "SnapY",
    "Distance")
Ejemplo 3 de CalculateLocations (ventana de Python)

Calcular ubicaciones para entidades poligonales.

parks = "C:/Data/SanFrancisco.gdb/Analysis/Hospitals/Basemap/Parks"
network = "C:/Data/SanFrancisco.gdb/Transportation/Streets_ND"
arcpy.na.CalculateLocations(parks, network, "", [["Streets", "SHAPE"],
                            ["Streets_ND_Junctions", "NONE"]],
                            location_field="Locations")
Ejemplo 4 de CalculateLocations (secuencia de comandos independiente)

La siguiente secuencia de comandos de Python muestra cómo utilizar la herramienta CalculateLocations en una secuencia de comandos independiente.

# Name: CalculateLocations_ex04.py
# Description: Calculate network locations for fire stations. Make sure that the 
#              fire stations are not located on the freeways.
# Requirements: Network Analyst Extension 

#Import system modules
import arcpy
from arcpy import env


#Check out the Network Analyst extension license
arcpy.CheckOutExtension("Network")

#Set environment settings
env.workspace = "C:/data/SanFrancisco.gdb"

#Set local variables
inFeatures = "Analysis/FireStations"
inNetworkDataset = "Transportation/Streets_ND"
searchTolerance = "2000 Meters"
searchCriteria = [["Streets","SHAPE"],["Streets_ND_Junctions","NONE"]]
searchQuery = [["Streets",'"FREEWAY" = 0'],["Streets_ND_Junctions",""]]

#Calculate network locations and store them in defaut field names
arcpy.na.CalculateLocations(inFeatures,inNetworkDataset,searchTolerance,
                            searchCriteria,"MATCH_TO_CLOSEST", 
                            exclude_restricted_elements="EXCLUDE",
                            search_query=searchQuery)
print "Script completed successfully."

Entornos

  • Espacio de trabajo actual

Información sobre licencias

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

Temas relacionados

  • Descripción general del conjunto de herramientas Análisis

ArcGIS Desktop

  • Inicio
  • Documentación
  • Soporte

Plataforma ArcGIS

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

Acerca de Esri

  • Quiénes somos
  • Empleo
  • Blog de Esri
  • Conferencia de usuarios
  • Cumbre de desarrolladores
Esri
Díganos su opinión.
Copyright © 2019 Esri. | Privacidad | Legal