Utilisation de la géométrie dans Python

Toutes les classes d'entités simples nécessitent un champ de géométrie, généralement nommé Shape (mais pas toujours). La fonction Describe permet de récupérer le nom du champ de géométrie d'une classe d'entités, à l'aide de la propriété shapeFieldName. La valeur du champ de géométrie est un objet géométrie, qui dispose de plusieurs propriétés décrivant l'entité. L'exemple ci-dessous montre comment créer un objet géométrie pour chaque entité linéaire d'une classe d'entités et calculer leur longueur :

Lecture des géométriesEcriture des géométries
import arcpy

inFeatures = "d:/base/data.gdb/roads"

# Create search cursor
#
rows = arcpy.SearchCursor(inFeatures)

# Calculate the total length of all roads
#
length = 0

shapeName = arcpy.Describe(inFeatures).shapeFieldName

# For each row, tally the length of the feature
#
for row in rows:
    feat = row.getValue(shapeName)
    length += feat.length

# Print the total length of all roads
#
print length

Propriété

Explication

area

Surface pour un polygone ; vide pour tous les autres types d'entité.

centroid

Centroïde réel s'il se trouve dans ou sur l'entité ; dans le cas contraire, le point d'étiquette est retourné (revoie un objet point).

extent

Renvoie un objet d'étendue.

firstPoint

Première coordonnée de l'entité ; renvoie un objet point.

hullRectangle

Paires de coordonnées du rectangle d'enveloppe convexe.

isMultipart

True, si le nombre de parties pour cette géométrie est supérieur à un.

labelPoint

Point d'emplacement de l'étiquette ; renvoie un objet point (le point labelPoint figure toujours dans ou sur une entité).

lastPoint

Dernière coordonnée de l'entité ; renvoie un objet point.

length

Longueur de l'entité linéaire ; vide pour les types d'entité point ou multi-points.

partCount

Nombre de parties de géométrie de l'entité.

pointCount

Nombre d'objets point pour la partie de géométrie courante.

trueCentroid

Centre de gravité pour une entité ; renvoie un objet point.

type

Polygone, polyligne, point, multi-points, multipatch, dimension, annotation.

Propriétés de géométrie

Méthode

Explication

getPart({index})

Retourne un tableau d'objets point pour une partie particulière de géométrie ou un tableau contenant plusieurs tableaux, un pour chaque partie.

Méthodes de géométrie

Rubriques connexes


7/10/2012