Resumen
Desplaza puntos o vértices para que coincidan exactamente con los vértices, bordes o extremos de otras entidades. Se puede especificar reglas de alineación para controlar si los vértices de entrada se alinean al vértice, borde o extremo más cercano dentro de una distancia especificada.
Ilustración
Uso
El parámetro Alinear entorno permite alinear los vértices de las entidades de entrada con los vértices, bordes y extremos de varias capas o clases de entidad. Cuando se dan varias reglas de alineación, se les asigna prioridades de la manera siguiente: de arriba a abajo en el diálogo de la herramienta o de izquierda a derecha en los scripts.
Los vértices de las entidades de entrada se alinean al vértice, borde o extremo más cercano dentro de la distancia especificada.
En el parámetro Alinear entorno, es posible designar varias reglas de alineación utilizando la misma capa o clase de entidad con un tipo diferente (END | VERTEX | EDGE).
Si se usa como entrada una capa o clase de entidad con una selección, solo se alinearán los vértices de las entidades seleccionadas.
Cuando se alinean entidades de una clase de entidad con entidades de la misma clase de entidad, la entidad que tenga el Id. de objeto o de entidad más bajo se alineará normalmente con la entidad con el Id. de objeto más alto (campo OBJECTID o campo FID en el caso de los shapefiles). Por ejemplo, si los puntos OBJECTID=1 y OBJECTID=2 se encuentran dentro de la distancia de alineación, el punto con OBJECTID=1 se alineará con la ubicación del punto OBJECTID=2 (y no al revés).
Sintaxis
Snap(in_features, snap_environment)
Parámetro | Explicación | Tipo de datos |
in_features | Las entidades de entrada cuyos vértices se alinearán con los vértices, bordes o extremos de otras entidades. Las entidades de entrada pueden ser puntos, multipuntos, líneas o polígonos. | Feature Layer |
snap_environment [[Features, Type, Distance],...] | Introduzca las clases de entidad o las capas de entidades que contienen las entidades con las que desea alinear. Componentes del entorno de alineación:
Opciones de tipo de entorno de alineación:
| Value Table |
Salida derivada
Nombre | Explicación | Tipo de datos |
out_feature_class | Las entidades de entrada actualizadas. | Clase de entidad |
Muestra de código
Ejemplo 1 de Alinear (ventana de Python)
El siguiente script de la ventana de Python muestra cómo utilizar la herramienta Snap.
import arcpy
arcpy.env.workspace = "C:/data"
arcpy.Snap_edit("climate.shp",
[["Habitat_Analysis.gdb/vegtype", "VERTEX", "30 Feet"],
["Habitat_Analysis.gdb/vegtype", "EDGE", "20 Feet"]])
Ejemplo 2 de Alinear (script independiente)
Alinear los límites de las regiones climáticas a los límites de la capa de vegetación para asegurarse de que el límite común es coincidente
# Name: Snap.py
# Description: Snap climate regions boundary to vegetation layer boundary
# to ensure common boundary is coincident
# import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/data"
# Make backup copy of climate regions feature class, since modification with
# the Editing tools below is permanent
climate = "climate.shp"
climateBackup = "C:/output/Output.gdb/climateBackup"
arcpy.CopyFeatures_management(climate, climateBackup)
# Densify climate regions feature class to make sure there are enough vertices
# to match detail of vegetation layer when layers are snapped
arcpy.Densify_edit(climate, "DISTANCE", "10 Feet")
# Snap climate regions feature class to vegetation layer vertices and edge
veg = "Habitat_Analysis.gdb/vegtype"
# first, snap climate region vertices to the nearest vegetation layer vertex within 30 Feet
snapEnv1 = [veg, "VERTEX", "30 Feet"]
# second, snap climate region vertices to the nearest vegetation layer edge within 20 Feet
snapEnv2 = [veg, "EDGE", "20 Feet"]
arcpy.Snap_edit(climate, [snapEnv1, snapEnv2])
Entornos
Información sobre licencias
- Basic: No
- Standard: Sí
- Advanced: Sí