Polygon

Récapitulatif

A Polygon object is a closed shape defined by a connected sequence of x,y coordinate pairs.

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

Polygon (inputs, {spatialReference}, {hasZ}, {hasM})
ParamètreExplicationType de données
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

Polygon example

Create a polyline feature class from scratch.

import arcpy

# A list of features and coordinate pairs
#
coordList = [[[1,2], [2,4], [3,7]],
            [[6,8], [5,7], [7,2], [9,5]]]

# Create empty Point and Array objects
#
point = arcpy.Point()
array = arcpy.Array()

# A list that will hold each of the Polygon objects 
# 
featureList = []

for feature in coordList:
    # For each coordinate pair, set the x,y properties and add to the 
    #  Array object.
    #
    for coordPair in feature:
        point.X = coordPair[0]
        point.Y = coordPair[1]
        array.add(point)

    # Add the first point of the array in to close off the polygon
    #
    array.add(array.getObject(0))

    # Create a Polygon object based on the array of points
    #
    polygon = arcpy.Polygon(array)

    # Clear the array for future use
    #
    array.removeAll()

    # Append to the list of Polygon objects
    #
    featureList.append(polygon)

# Create a copy of the Polygon objects, by using featureList as input to 
#  the CopyFeatures tool.
#
arcpy.CopyFeatures_management(featureList, "c:/geometry/polygons.shp")

Rubriques connexes


7/10/2012