Résumé
Ajoute des champs attributaires aux entités en entrée représentant les caractéristiques spatiales ou géométriques ainsi que l'emplacement de chaque entité, tels que la longueur ou la surface et les coordonnées x, y, z et m.
Utilisation
Un ou plusieurs champs attributaires sont ajoutés aux entités en entrée selon les options spécifiées dans le paramètre Propriétés de géométrie. Si les champs existent déjà dans les entités en entrée, les valeurs qu’ils contiennent sont remplacées. Reportez-vous au tableau suivant afin de déterminer les champs ajoutés pour chaque propriété de géométrie :
Propriété de géométrie Champ ajouté SURFACE
POLY_AREA: surface du polygone.
AREA_GEODESIC
AREA_GEO: surface géodésique de préservation de la forme du polygone.
CENTROID
CENTROID_X: coordonnée x du centroïde.
CENTROID_Y: coordonnée y du centroïde.
CENTROID_Z: coordonnée z du centroïde. Ce champ est ajouté uniquement si les entités en entrée prennent en charge les valeurs z.
CENTROID_M: coordonnée m du centroïde. Ce champ est ajouté uniquement si les entités en entrée prennent en charge les valeurs m.
CENTROID_INSIDE
INSIDE_X: coordonnée x d'un point central dans ou sur l'entité en entrée.
INSIDE_Y: coordonnée y d'un point central dans ou sur l'entité en entrée.
INSIDE_Z: coordonnée z d'un point central dans ou sur l'entité en entrée. Ce champ est ajouté uniquement si les entités en entrée prennent en charge les valeurs z.
INSIDE_M: coordonnée m d'un point central dans ou sur l'entité en entrée. Ce champ est ajouté uniquement si les entités en entrée prennent en charge les valeurs m.
EXTENT
EXT_MIN_X: coordonnée x minimale de l'entité.
EXT_MIN_Y: coordonnée y minimale de l'entité.
EXT_MAX_X: coordonnée x maximale de l'entité.
EXT_MAX_Y: coordonnée y maximale de l'entité.
LONGUEUR
LENGTH: longueur de la ligne.
LENGTH_GEODESIC
LENGTH_GEO: longueur géodésique de préservation de la forme de la ligne.
LENGTH_3D
LENGTH_3D: longueur 3D de la ligne.
LINE_BEARING
BEARING: relèvement du début à la fin de la ligne. Les valeurs sont comprises entre 0 et 360, 0 correspondant au Nord, 90 à l'Est, 180 au Sud et 270 à l'Ouest.
LINE_START_MID_END
START_X: coordonnée x du premier point de la ligne ou de la bordure du polygone.
START_Y: coordonnée y du premier point de la ligne ou de la bordure du polygone.
START_Z: coordonnée z du premier point de la ligne ou de la bordure du polygone. Ce champ est ajouté uniquement si les entités en entrée prennent en charge les valeurs z.
START_M: coordonnée m du premier point de la ligne ou de la bordure du polygone. Ce champ est ajouté uniquement si les entités en entrée prennent en charge les valeurs m.
MID_X: coordonnée x du point situé au milieu de la ligne ou de la bordure du polygone.
MID_Y: coordonnée y du point situé au milieu de la ligne ou de la bordure du polygone.
MID_Z: coordonnée z du point situé au milieu de la ligne ou de la bordure du polygone. Ce champ est ajouté uniquement si les entités en entrée prennent en charge les valeurs z.
MID_M: coordonnée m du point situé au milieu de la ligne ou de la bordure du polygone. Ce champ est ajouté uniquement si les entités en entrée prennent en charge les valeurs m.
END_X: coordonnée x du dernier point de la ligne ou de la bordure du polygone.
END_Y: coordonnée y du dernier point de la ligne ou de la bordure du polygone.
END_Z: coordonnée z du dernier point de la ligne ou de la bordure du polygone. Ce champ est ajouté uniquement si les entités en entrée prennent en charge les valeurs z.
END_M: coordonnée m du dernier point de la ligne ou de la bordure du polygone. Ce champ est ajouté uniquement si les entités en entrée prennent en charge les valeurs m.
PART_COUNT
PART_COUNT: nombre de parties qui composent l'entité.
PERIMETER_LENGTH
PERIMETER : longueur du périmètre ou de la bordure du polygone.
PERIMETER_LENGTH_GEODESIC
PERIM_GEO : longueur géodésique de préservation de la forme de la bordure ou du périmètre du polygone.
POINT_COUNT
PNT_COUNT : nombre de points qui composent l'entité.
POINT_X_Y_Z_M
POINT_XCoordonnée x du point.
POINT_YCoordonnée y du point.
POINT_ZCoordonnée z du point. Ce champ est ajouté uniquement si les entités en entrée prennent en charge les valeurs z.
POINT_M : coordonnée m du point. Ce champ est ajouté uniquement si les entités en entrée prennent en charge les valeurs m.
Les calculs de longueur et de surface sont exprimés dans les unités du système de coordonnées spécifié, sauf si vous sélectionnez des unités différentes dans les paramètres Length Unit (Unité de longueur) et Area Unit (Unité de surface).
Les champs attributaires ajoutés par cet outil sont similaires à ceux que vous pouvez ajouter à une couche d'entités. Vous pouvez remplacer les valeurs de champ, ou supprimer ou renommer les champs. Les valeurs de ces champs ne sont pas automatiquement recalculées une fois les mises à jour terminées. Si vous modifiez les entités, vous devez à nouveau exécuter cet outil pour mettre à jour les valeurs de champ.
Si les entités en entrée comportent une sélection, seules les valeurs des entités sélectionnées sont calculées dans les champs ajoutés ; toutes les autres entités sont nulles.
Cet outil fonctionne avec les classes d’entités ponctuelles, multipoints, polylignes, surfaciques et annotations. L'annotation est traitée comme une classe d'entités surfaciques.
Syntaxe
arcpy.management.AddGeometryAttributes(Input_Features, Geometry_Properties, {Length_Unit}, {Area_Unit}, {Coordinate_System})
Paramètre | Explication | Type de données |
Input_Features | Entités en entrée auxquelles les nouveaux champs attributaires sont ajoutés pour stocker les propriétés, telles que la longueur, la surface ou les coordonnées x, y, z et m. | Feature Layer |
Geometry_Properties [Geometry_Properties,...] | Spécifie les propriétés de géométrie ou de forme à calculer dans les nouveaux champs attributaires.
| String |
Length_Unit (Facultatif) | Spécifie l'unité dans laquelle les longueurs sont calculées.
| String |
Area_Unit (Facultatif) | Spécifie l'unité dans laquelle la surface est calculée.
| String |
Coordinate_System (Facultatif) | Système de coordonnées dans lequel sont calculées les coordonnées, la longueur et la surface. Le système de coordonnées des entités en entrée est utilisé par défaut. | Coordinate System |
Sortie dérivée
Nom | Explication | Type de données |
Modified_Input_Features | Entités en entrée mises à jour. | Feature Layer |
Exemple de code
Exemple d'utilisation de l'outil AddGeometryAttributes (fenêtre Python)
Le script de fenêtre Python ci-dessous illustre l'utilisation de l'outil AddGeometryAttributes.
import arcpy
arcpy.env.workspace = r"C:\data\City.gdb"
arcpy.AddGeometryAttributes_management("roads", "LENGTH;LINE_START_MID_END")
Exemple d'utilisation de l'outil AddGeometryAttributes (script autonome)
Calculez le rectangle d'emprise de chaque entité linéaire et générez une grille de 10 x 10 dans cette emprise.
# Name: GridCreation.py
# import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = r"C:\data\City.gdb"
arcpy.env.outputCoordinateSystem = arcpy.Describe("roads").spatialReference
# Set local variables
in_features = "roads"
properties = "EXTENT"
length_unit = ""
area_unit = ""
coordinate_system = ""
# Generate the extent coordinates using Add Geometry Properties tool
arcpy.AddGeometryAttributes_management(in_features, properties, length_unit,
area_unit, coordinate_system)
# Use Search Cursor to walk through each feature and generate grids
with arcpy.da.SearchCursor(in_features, ["OID@", "EXT_MIN_X", "EXT_MIN_Y",
"EXT_MAX_X", "EXT_MAX_Y"]) as sCur:
for row in sCur:
minX, minY, maxX, maxY = row[1], row[2], row[3], row[4]
arcpy.CreateFishnet_management("fishnet_{0}".format(row[0]),
number_rows = 10,
number_columns = 10,
template = "{} {} {} {}".format(minX, maxX, minY, maxY),
origin_coord = "{} {}".format(minX, minY),
y_axis_coord = "{} {}".format(minX, maxY),
corner_coord = "{} {}".format(maxX, maxY),
geometry_type = "POLYGON",
labels = "NO_LABELS")
Environnements
Informations de licence
- Basic: Oui
- Standard: Oui
- Advanced: Oui