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

Utilizar objetos de geometría con herramientas de geoprocesamiento

  • Utilizar geometría como entrada
  • Generar objetos de geometría

En muchos flujos de trabajo de geoprocesamiento, puede que necesite ejecutar una operación concreta utilizando información de coordenadas y geometría, pero que no necesariamente desee pasar por el proceso de crear una nueva clase de entidad (temporal), llenar la clase de entidad con cursores, utilizar la clase de entidad y, a continuación, eliminar la clase de entidad temporal. En su lugar, puede utilizar objetos de geometría tanto para la entrada como para la salida con el fin de facilitar el geoprocesamiento. Los objetos de geometría se pueden crear desde cero usando clases Geometry, Multipoint, PointGeometry, Polygon o Polyline.

Utilizar geometría como entrada

En el siguiente ejemplo se crea un objeto de geometría de polígono utilizando una lista de coordenadas x,y. A continuación, se utiliza la herramienta Clip para recortar una clase de entidad con el objeto de geometría de polígono.

import arcpy
# List of coordinates.
coordinates = [
    [2365000, 7355000],
    [2365000, 7455000],
    [2465000, 7455000],
    [2465000, 7355000]]
# Create an array with a point object for each coordinate pair
array = arcpy.Array([arcpy.Point(x, y) for x, y in coordinates])
# Create a polygon geometry object using the array object
boundary = arcpy.Polygon(array, arcpy.SpatialReference(2953))
# Use the geometry to clip an input feature class
arcpy.Clip_analysis('c:/data/rivers.shp', 
                    boundary, 
                    'c:/data/rivers_clipped.shp')

Generar objetos de geometría

Los objetos de geometría de salida se pueden crear estableciendo el resultado de una herramienta de geoprocesamiento en un objeto de geometría vacío. Cuando se ejecuta una herramienta establecida en un objeto de geometría vacío, la herramienta devuelve una lista de objetos de geometría. En el siguiente ejemplo, se utiliza la herramienta Copy Features para devolver una lista de objetos de geometría, que a continuación se puede recorrer para acumular la longitud total de todas las entidades.

import arcpy
# Run the CopyFeatures tool, setting the output to a geometry object.  
#  geometries is returned as a list of geometry objects.
#  
geometries = arcpy.CopyFeatures_management('c:/temp/outlines.shp', arcpy.Geometry())
# Walk through each geometry, totaling the length
#
length = sum([g.length for g in geometries])
print('Total length: {}'.format(length))

Temas relacionados

  • Acceso a datos utilizando cursores
  • Especificar una consulta en Python
  • Leer geometrías
  • Escribir geometrías

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