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

Polígono a línea

  • Resumen
  • Ilustración
  • Uso
  • Sintaxis
  • Muestra de código
  • Entornos
  • Información de licenciamiento

Resumen

Crea una clase de entidad que contiene líneas convertidas a partir de límites de polígonos con o sin consideración de los polígonos adyacentes.

Ilustración

Ilustración de Polígono a línea

Uso

  • Si la casilla de verificación Identificar y guardar la información de adyacencia de polígonos está activada (neighbor_option con el valor IDENTIFY_NEIGHBORS en Python), se analiza la relación de adyacencia de polígonos. Como se ilustra arriba, los límites se convierten en líneas, tomando en cuenta los segmentos comunes o que se cruzan; se agregan dos nuevos campos, LEFT_FID y RIGHT_FID, a la clase de entidad de salida y en ellos se almacenan los Id. de entidad de los polígonos de entrada existentes a la izquierda y la derecha de cada línea de salida. Los atributos de las entidades de entrada no se mantendrán en la clase de entidad de salida. Las siguientes situaciones le ayudarán a comprender con más detalle el proceso y la salida:

    • En una geometría de polígono, el límite exterior se almacena siempre en el sentido de las agujas del reloj. Si el polígono tiene un agujero, el límite del agujero (o interior) siempre se almacena en el sentido contrario a las agujas del reloj. Por tanto, para un polígono sin ningún vecino a la izquierda (fuera) de este límite exterior ni a la izquierda (dentro) del límite del orificio, las líneas resultantes tendrán el valor -1 para LEFT_FID y el Id. de entidad poligonal como RIGHT_FID.
    • Si un polígono contiene otro polígono, se genera una línea de salida en el sentido de las agujas del reloj para representar el límite compartido, su LEFT_FID contiene el Id. de la entidad poligonal exterior y RIGHT_FID contiene el Id. de la entidad poligonal interior.
    • Si dos polígonos comparten una parte de sus límites, se generará una línea de salida que representará el segmento compartido. El sentido de la línea será arbitrario; LEFT_FID y RIGHT_FID reciben los Id. de las entidades poligonales izquierda o derecha, según corresponda.
    • Si un polígono se superpone con otro polígono, se generan dos líneas de salida que representan dos veces a cada límite que se cruza: la primera línea representa el límite exterior de uno de los polígonos superpuestos; por tanto, su LEFT_FID es el Id. de entidad del polígono que cruza y su RIGHT_FID será su propio Id. de entidad poligonal; la segunda línea estará en el sentido opuesto, dividiendo así el otro polígono; por tanto, sus valores LEFT_FID y RIGHT_FID serán los mismos que los del otro Id. de entidad poligonal.
    • Los multipartes de los polígonos de entrada no se mantienen; todas las líneas de salida son de parte simple.

    En el caso de las entidades de entrada de curva paramétrica (verdadera), las líneas de salida siguen siendo curvas verdaderas, incluso si se dividen. Esto no se aplica a los datos de shapefile.

    Esta opción utiliza un proceso de ordenamiento en teselas para controlar datasets muy grandes, a fin de mejorar el rendimiento y la escalabilidad. Para más información, consulte Procesamiento en mosaico de datasets grandes.

  • Si la casilla de verificación Identificar y guardar la información de adyacencia de polígonos está desactivada (neighbor_option con el valor IGNORE_NEIGHBORS en Python), se omite la relación de adyacencia de polígonos. Cada límite de polígono de entrada se escribirá como una entidad de línea encerrada. Un polígono multiparte se convertirá en una línea multiparte en la salida. Los atributos de las entidades de entrada se mantendrán en la clase de entidad de salida. Se agrega a la salida un nuevo campo, ORIG_FID, que contiene los Id. de entidad de entrada de cada línea.

Sintaxis

arcpy.management.PolygonToLine(in_features, out_feature_class, {neighbor_option})
ParámetroExplicaciónTipo de datos
in_features

Las entidades de entrada que deben ser polígonos.

Feature Layer
out_feature_class

La clase de entidad de línea de salida.

Feature Class
neighbor_option
(Opcional)

Especifica si se debe identificar y almacenar la información de adyacencia del polígono.

  • IDENTIFY_NEIGHBORS —La relación de polígono adyacente se identificará y se almacenará en la salida. Si se comparten los límites entre los distintos segmentos de un polígono y otros polígonos distintos, el límite se dividirá de forma tal que cada segmento que esté compartido en forma única se convertirá en una línea con sus dos Id. de entidad (FID) de polígonos adyacentes almacenados en la salida. Esta es la opción predeterminada.
  • IGNORE_NEIGHBORS —Se ignorarán las relaciones de polígonos adyacentes; cada límite de polígono se convertirá en una entidad de línea con el Id. de identidad de polígono original almacenado en la salida.
Boolean

Muestra de código

Ejemplo 1 de PolygonToLine (ventana de Python)

El siguiente script de la ventana de Python demuestra cómo utilizar la función PolygonToLine en modo inmediato.

import arcpy
arcpy.env.workspace = "C:/data"
arcpy.PolygonToLine_management("Habitat_Analysis.gdb/vegtype", 
                               "C:/output/Output.gdb/vegtype_lines",
                               "IGNORE_NEIGHBORS")
Ejemplo 2 de PolygonToLine (script independiente)

El siguiente script independiente es un ejemplo simple de cómo aplicar la función PolygonToLine en un entorno de scripts.

# Name: PolygonToLine_Example2.py
# Description: Use PolygonToLine function to convert polygons to lines,
#              and report how many shared or overlapping boundary lines
#              were found.
# import system modules 
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/data/landcovers.gdb"
 
# Create variables for the input and output feature classes
inFeatureClass = "bldgs"
outFeatureClass = "bldgs_lines"
 
# Run PolygonToLine to convert polygons to lines using default neighbor_option
arcpy.PolygonToLine_management(inFeatureClass, outFeatureClass)
# Select lines that have LEFT_FID values greater than -1
arcpy.MakeFeatureLayer_management(outFeatureClass, "selection_lyr", 
                                  "\"LEFT_FID\" > -1")
result = arcpy.GetCount_management("selection_lyr")
if result[0] == "0":
    print("No overlapping or shared boundary lines were found.")
else:
    print("{} overlapping or shared boundary lines were found.".format(result[0]))

Entornos

  • Espacio de trabajo actual
  • Espacio de trabajo temporal
  • Valor Z de salida predeterminado
  • Resolución M
  • Tolerancia M
  • Palabra clave CONFIG de salida
  • Dominio Z de salida
  • Sistema de coordenadas de salida
  • Extensión
  • La salida tiene valores M
  • La salida tiene valores Z
  • Cuadrícula espacial de salida 1
  • Cuadrícula espacial de salida 2
  • Cuadrícula espacial de salida 3
  • Resolución XY
  • Tolerancia XY
  • Resolución Z
  • Tolerancia Z

Información de licenciamiento

  • Basic: No
  • Standard: No
  • Advanced: Sí

Temas relacionados

  • Descripción general del conjunto de herramientas Entidades

ArcGIS Desktop

  • Inicio
  • Documentación
  • Soporte

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • 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 © 2021 Esri. | Privacidad | Legal