Point (arcpy)
Récapitulatif
The point object is used frequently with cursors. Point features return a single point object instead of an array of point objects. All other feature types—polygon, polyline, and multipoint—return an array of point objects or an array containing multiple arrays of point objects if the feature has multiple parts.
Discussion
A Point is not a geometry class, but is commonly used to construct geometry. In the example below, a Point is used to create a PointGeometry object.
point = arcpy.Point(25282, 43770)
ptGeometry = arcpy.PointGeometry(point)
Syntaxe
Paramètre | Explication | Type de données |
X |
The X coordinate of the point. (La valeur par défaut est 0.0) | Double |
Y |
The Y coordinate of the point. (La valeur par défaut est 0.0) | Double |
Z |
The Z coordinate of the point. (La valeur par défaut est None) | Double |
M |
The M value of the point. (La valeur par défaut est None) | Double |
ID |
The shape ID of the point. (La valeur par défaut est 0) | Integer |
Propriétés
Propriété | Explication | Type de données |
ID (Lecture/écriture) |
An integer used to uniquely identify the point. | Integer |
M (Lecture/écriture) |
The measure value of the point. | Double |
X (Lecture/écriture) |
The horizontal coordinate of the point. | Double |
Y (Lecture/écriture) |
The vertical coordinate of the point. | Double |
Z (Lecture/écriture) |
The elevation value of the point. | Double |
Vue d'ensemble des méthodes
Méthode | Explication |
clone (point_object) |
Clone the point object. |
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. |
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. |
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. |
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. |
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. |
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. |
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. |
Méthodes
Paramètre | Explication | Type de données |
point_object |
A point object. | Point |
Paramètre | Explication | Type de données |
second_geometry |
A second geometry. | Object |
Type de données | Explication |
Boolean |
Une valeur booléenne renvoyée True indique que cette géométrie contient la deuxième géométrie. |
Paramètre | Explication | Type de données |
second_geometry |
A second geometry. | Object |
Type de données | Explication |
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. |
Paramètre | Explication | Type de données |
second_geometry |
A second geometry. | Object |
Type de données | Explication |
Boolean | Une valeur booléenne renvoyée True indique que les deux géométries n'ont aucun point en commun. |
Paramètre | Explication | Type de données |
second_geometry |
A second geometry. | Object |
Type de données | Explication |
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. |
Paramètre | Explication | Type de données |
second_geometry |
A second geometry. | Object |
Type de données | Explication |
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. |
Paramètre | Explication | Type de données |
second_geometry |
A second geometry. | Object |
Type de données | Explication |
Boolean | Une valeur booléenne renvoyée True indique que les limites des géométries s'intersectent. |
Paramètre | Explication | Type de données |
second_geometry |
A second geometry. | Object |
Type de données | Explication |
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
Create Point object and display its properties.
import arcpy
# Create point object
#
pnt = arcpy.Point(2000, 2500)
# Print point properties
print("Point properties:")
print(" ID: {0}".format(pnt.ID))
print(" X: {0}".format(pnt.X))
print(" Y: {0}".format(pnt.Y))
Examine point objects in polygon array object, returned from geometry object.
import arcpy
# Create cursor to retrieve Hawaii shape
#
fc = "c:/data/Hawaii.shp"
cur = arcpy.da.SearchCursor(fc, ["SHAPE@"])
for row in cur:
# Get the geometry object from the shape field
#
print("Number of Hawaiian islands: {0}".format(row[0].partCount))
# GetPart returns an array of point objects for each part.
#
for island in row[0].getPart():
print("Vertices in island: {0}".format(island.count))
for pnt in island:
print("X: {0}, Y: {1})".format(pnt.X, pnt.Y))