Contraer líneas dobles a línea de centro (Cartografía)
Resumen
Deriva las líneas de centro de las entidades lineales duales (o de doble línea), como carreteras con color de relleno, basado en tolerancias de ancho especificadas.
Ilustración
Uso
-
Esta herramienta está diseñada para pares de líneas paralelas cercanas, como por ejemplo, carreteras con color de relleno de gran escala. Las líneas de centro se crearán sólo entre líneas abiertas que no estén dentro de líneas cerradas, que generalmente son calles. La herramienta no fue ideada para simplificar autopistas de varias vías con intercambios, rampas, pasos elevados y pasos subterráneos o vías férreas con varios recorridos fusionados. En cambio, utilice la herramienta Fusionar carreteras divididas.
-
Esta herramienta no se puede ejecutar dentro de una sesión de edición.
-
La clase de entidad de salida no tendrá los atributos geográficos de las líneas de entrada, pero contendrá los siguientes tres nuevos campos:
- LnType—Contiene los siguientes valores de tipo de línea:
- Valor 1 para líneas de centro derivadas.
- Valor 2 para contornos alrededor de intersecciones relativamente complicadas donde no se generan las líneas de centro, líneas que representan carreteras con un ancho que supera el rango especificado y otras líneas dañadas o sin pares.
- Valor 3 para líneas con color de relleno de origen no definido (generalmente conectan dos intersecciones ubicadas en áreas cercanas que, en realidad, pueden pertenecer a una única intersección más grande).
- LeftLn_FID—Contiene el ID de objeto de la línea de entrada hacia la izquierda de una línea de centro derivada. Este valor de campo será cero para las líneas de LnType 2 y 3.
- RightLn_FID—Contiene el ID de objeto de la línea de entrada hacia la derecha de una línea de centro derivada. Este valor de campo será cero para las líneas de LnType 2 y 3.
Puede utilizar los valores de LnType para seguir inspeccionando las intersecciones no resueltas y carreteras más anchas; y puede usar los campos LeftLn_FID y RightLn_FID junto con la herramienta Campo de unión para transferir los atributos de las líneas de origen a las líneas de centro según sea necesario.
- LnType—Contiene los siguientes valores de tipo de línea:
Sintaxis
Parámetro | Explicación | Tipo de datos |
in_features |
Entidades lineales duales de entrada, como carreteras con color de relleno, desde las que se derivan las líneas de centro. | Feature Layer |
out_feature_class |
La clase de entidad de salida que se creará. | Feature Class |
maximum_width |
Establece el ancho máximo de las entidades lineales duales para derivar la línea de centro. Se debe especificar un valor, el cual debe ser mayor que cero. Puede elegir la unidad que prefiera; el valor predeterminado es la unidad de la entidad. | Linear unit |
minimum_width (Opcional) |
Establece el ancho mínimo de las entidades lineales duales para derivar la línea de centro. El ancho mínimo debe ser mayor o igual a cero y debe ser menor que el ancho máximo. El valor predeterminado es cero. Puede especificar la unidad que prefiera; el valor predeterminado es la unidad de la entidad. | Linear unit |
Ejemplo de código
La siguiente secuencia de comandos de la ventana de Python muestra cómo utilizar la herramienta CollapseDualLinesToCenterline en el modo inmediato.
import arcpy from arcpy import env import arcpy.cartography as CA env.workspace = "C:/data" CA.CollapseDualLinesToCenterline("dual_line_roads.shp", "C:/output/output.gdb/road_centerlines", 50)
La siguiente secuencia de comandos independiente muestra cómo utilizar la herramienta CollapseDualLinesToCenterline.
# Name: CollapseDualLinesToCenterline_Example2.py # Description: Create road centerlines and find buildings within a given distance # Author: ESRI # Import system modules import arcpy from arcpy import env import arcpy.cartography as CA import arcpy.management as DM import arcpy.analysis as AN # Set environment settings env.workspace = "C:/data/Portland.gdb" # Set local variables inRoadCasingsFeatures = "road_casings" inHouseFeatures = "houses" centerlineFeatures = "C:/data/PortlandOutput.gdb/road_centerlines" bufferFeatures = "C:/data/PortlandOutput.gdb/road_buffers" # Create centerlines for road casings. CA.CollapseDualLinesToCenterline(inRoadCasingsFeatures, centerlineFeatures, 80) # Create buffers 100 units from around centerlines. AN.Buffer(centerlineFeatures, bufferFeatures, 100) # Select houses by buffers. DM.SelectLayerByLocation(inHouseFeatures, "intersect", bufferFeatures, 100)