Geometry

Récapitulatif

Geometry objects define a spatial location and an associated geometric shape.

Discussion

Dans de nombreux workflows de géotraitement, vous devez éventuellement exécuter une opération spécifique à l'aide d'informations sur les coordonnées et la géométrie, sans vouloir nécessairement créer une nouvelle classe d'entités (temporaire), la remplir avec des curseurs, l'utiliser, puis la supprimer. Les objets géométrie peuvent alors être utilisés en entrée et en sortie afin de simplifier le géotraitement. Les objets géométrie peuvent être entièrement créés à l'aide des classes Geometry, Multipoint, PointGeometry, Polygon ou Polyline.

Syntaxe

Geometry (geometry, inputs, {spatialReference}, {hasZ}, {hasM})
ParamètreExplicationType de données
geometry

The geometry type: point, polygon, polyline, or multipoint.

String
inputs

The coordinates used to create the object. The datatype can be either Point or Array objects.

Object
spatialReference

The spatial reference of the new geometry.

(La valeur par défaut est None)

SpatialReference
hasZ

The Z state: True for geometry if Z is enabled and False if it is not.

(La valeur par défaut est False)

Boolean
hasM

The M state: True for geometry if M is enabled and False if it is not.

(La valeur par défaut est False)

Boolean

Propriétés

PropriétéExplicationType de données
area
(Lecture seule)

The area of a polygon feature. Empty for all other feature types.

Double
centroid
(Lecture seule)

The true centroid if it is within or on the feature; otherwise, the label point is returned. Returns a point object.

Point
extent
(Lecture seule)

The extent of the geometry.

Extent
firstPoint
(Lecture seule)

The first coordinate point of the geometry.

Point
hullRectangle
(Lecture seule)

A space-delimited string of the coordinate pairs of the convex hull rectangle.

String
isMultipart
(Lecture seule)

True, if the number of parts for this geometry is more than one.

Boolean
labelPoint
(Lecture seule)

The point at which the label is located. The labelPoint is always located within or on a feature.

Point
lastPoint
(Lecture seule)

The last coordinate of the feature.

Point
length
(Lecture seule)

The length of the linear feature. Zero for point, multipoint feature types.

Double
partCount
(Lecture seule)

The number of geometry parts for the feature.

Integer
pointCount
(Lecture seule)

The total number of points for the feature.

Integer
trueCentroid
(Lecture seule)

The center of gravity for a feature.

Point
type
(Lecture seule)

The geometry type: polygon, polyline, point, multipoint, multipatch, dimension, annotation.

String

Vue d'ensemble des méthodes

MéthodeExplication
contains (second_geometry)

Indique si la géométrie de base contient la géométrie de comparaison.

contains est le contraire de within.

Only True relationships are shown in this illustration.

Relations contains possibles
crosses (second_geometry)

Indique si les deux géométries s'intersectent dans une géométrie de type de forme inférieure.

Deux polylignes se croisent si elles partagent uniquement des points, dont au moins un n'est pas une extrémité. Une polyligne et un polygone se croisent s'ils partagent une polyligne ou un point (pour une ligne verticale) à l'intérieur du polygone qui n'est pas équivalent à la polyligne entière.

Only True relationships are shown in this illustration.

Relations crosses possibles
disjoint (second_geometry)

Indique si la géométrie de base et la géométrie de comparaison n'ont aucun point en commun.

Deux géométries s'intersectent si la propriété disjoint renvoie False.

Only True relationships are shown in this illustration.

Relations disjoint possibles
equals (second_geometry)

Indicates if the base and comparison geometries are of the same shape type and define the same set of points in the plane. This is a 2D comparison only; M and Z values are ignored.

Only True relationships are shown in this illustration.

Possible equals relationships
getPart ({index})

Returns an array of point objects for a particular part of geometry or an array containing a number of arrays, one for each part.

overlaps (second_geometry)

Indique si l'intersection des deux géométries possède le même type de forme que l'une des géométries en entrée et qu'elle n'est pas équivalente à l'une des géométries en entrée.

Only True relationships are shown in this illustration.

Relations overlaps possibles
touches (second_geometry)

Indique si les limites des géométries s'intersectent.

Deux géométries se touchent lorsque l'intersection des géométries n'est pas vide, mais que l'intersection de leurs intérieurs est vide. Par exemple, un point touche une polyligne uniquement s'il coïncide avec l'une des extrémités de la polyligne.

Only True relationships are shown in this illustration.

Relations touches possibles
within (second_geometry)

Indique si la géométrie de base se trouve dans la géométrie de comparaison.

within est l'opérateur contraire de contains.

Only True relationships are shown in this illustration.

Relations within possibles

Méthodes

contains (second_geometry)
ParamètreExplicationType de données
second_geometry

A second geometry.

Object
Valeur renvoyée
Type de donnéesExplication
Boolean

Une valeur booléenne renvoyée True indique que cette géométrie contient la deuxième géométrie.

crosses (second_geometry)
ParamètreExplicationType de données
second_geometry

A second geometry.

Object
Valeur renvoyée
Type de donnéesExplication
Boolean

Une valeur booléenne renvoyée True indique que les deux géométries s'intersectent dans une géométrie de type de forme inférieure.

disjoint (second_geometry)
ParamètreExplicationType de données
second_geometry

A second geometry.

Object
Valeur renvoyée
Type de donnéesExplication
Boolean

Une valeur booléenne renvoyée True indique que les deux géométries n'ont aucun point en commun.

equals (second_geometry)
ParamètreExplicationType de données
second_geometry

A second geometry.

Object
Valeur renvoyée
Type de donnéesExplication
Boolean

A return Boolean value of True indicates that the two geometries are of the same shape type and define the same set of points in the plane.

getPart ({index})
ParamètreExplicationType de données
index

The index position of the geometry.

Integer
Valeur renvoyée
Type de donnéesExplication
Array

getPart returns an array of point objects for a particular part of the geometry if an index is specified. If an index is not specified, an array containing an array of point objects for each geometry part is returned.

overlaps (second_geometry)
ParamètreExplicationType de données
second_geometry

A second geometry.

Object
Valeur renvoyée
Type de donnéesExplication
Boolean

Une valeur booléenne renvoyée True indique que l'intersection des deux géométries a la même dimension que l'une des géométries en entrée.

touches (second_geometry)
ParamètreExplicationType de données
second_geometry

A second geometry.

Object
Valeur renvoyée
Type de donnéesExplication
Boolean

Une valeur booléenne renvoyée True indique que les limites des géométries s'intersectent.

within (second_geometry)
ParamètreExplicationType de données
second_geometry

A second geometry.

Object
Valeur renvoyée
Type de donnéesExplication
Boolean

Une valeur booléenne renvoyée True indique que cette géométrie est contenue dans la deuxième géométrie.

Exemple de code

Geometry example

When you set the output parameter of a geoprocessing tool to a empty Geometry object, the tool will return a list of Geometry objects.

import arcpy

# Create an empty Geometry object
#
g = arcpy.Geometry()

# Run the CopyFeatures tool, setting the output to the geometry object.  GeometryList
#  is returned as a list of geometry objects.
#  
geometryList = arcpy.CopyFeatures_management("c:/data/streets.shp", g)

# Walk through each geometry, totalling the length
#
length = 0
for geometry in geometryList:
    length += geometry.length

print "Total length: %f" % length


Rubriques connexes


7/10/2012