ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Aide
  • Sign Out
ArcGIS Desktop

ArcGIS Online

La plateforme cartographique de votre organisation

ArcGIS Desktop

Un SIG professionnel complet

ArcGIS Enterprise

SIG dans votre entreprise

ArcGIS for Developers

Outils de création d'applications de localisation

ArcGIS Solutions

Modèles d'applications et de cartes gratuits pour votre secteur d'activité

ArcGIS Marketplace

Téléchargez des applications et des données pour votre organisation.

  • Documentation
  • Support
Esri
  • Se connecter
user
  • Mon profil
  • Déconnexion

ArcMap

  • Accueil
  • Commencer
  • Carte
  • Analyser
  • Gérer les données
  • Outils
  • Extensions

Utilisation de classes dans Python

  • Utilisation de classes avec les outils de géotraitement

Une classe est analogue à un plan architectural. Le plan fournit la structure pour une création. Les classes permettent de créer des objets, souvent nommés instances. Les classes ArcPy, telles que les classes SpatialReference et Extent, sont souvent utilisées comme raccourcis vers des paramètres d'outil de géotraitement complets qui présenteraient autrement un équivalent de chaîne plus compliqué.

ArcPy inclut plusieurs classes, notamment SpatialReference, ValueTable et Point. Une fois instanciées, leurs propriétés et méthodes peuvent être utilisées. Les classes disposent d'une ou plusieurs méthodes appelées des constructeurs. Un constructeur est une méthode permettant d'initialiser une nouvelle instance d'une classe. Dans l'exemple ci-dessous, SpatialReference(prjFile) est le constructeur de classe, c'est-à-dire qu'il crée l'objet spatialRef en lisant un fichier de projection.

import arcpy

prjFile = "c:/projections/North America Equidistant Conic.prj"
spatialRef = arcpy.SpatialReference(prjFile)

Comme la plupart des autres classes, SpatialReference contient plusieurs méthodes et propriétés. Dans le cadre de l'exemple précédent, vous pouvez accéder aux propriétés de spatialRef.

import arcpy

prjFile = "c:/projections/North America Equidistant Conic.prj"
spatialRef = arcpy.SpatialReference(prjFile)

# Print the SpatialReference's name, and type
#
print(spatialRef.name)
print(spatialRef.type)

Les classes peuvent être utilisées à plusieurs reprises. Dans l'exemple suivant, deux objets ponctuels uniques sont créés à l'aide de la classe Point.

import arcpy

pointA = arcpy.Point(2.0, 4.5)
pointB = arcpy.Point(3.0, 7.0)
Remarque :

La fonction CreateObject peut également permettre de créer plusieurs des objets qui peuvent être créés à l'aide de classes. Toutefois, l'utilisation de classes est à la fois plus facile et plus lisible.

Utilisation de classes avec les outils de géotraitement

Les paramètres d'un outil sont généralement définis à l'aide de simples chaînes de texte. Vous pouvez spécifier les noms de jeux de données, les chemins, les mots-clés, les noms de champs, les tolérances et les noms de domaines à l'aide d'une chaîne entre guillemets.

Certains paramètres sont plus difficiles à définir à l'aide de chaînes simples ; ils sont plus complexes et nécessitent de nombreuses propriétés. Au lieu d'utiliser des chaînes de texte longues et compliquées pour définir ces paramètres, vous pouvez utiliser des classes (par exemple, les classes SpatialReference, ValueTable et Point). La documentation de chaque outil contient un exemple de script illustrant comment chaque paramètre de l'outil est défini et utilisé.

Dans l'exemple suivant, un objet SpatialReference est créé et utilisé pour définir le système de coordonnées en sortie d'une nouvelle classe d'entités créée à l'aide de l'outil CreateFeatureClass.

import arcpy

inputWorkspace = "c:/temp"
outputName =  "rivers.shp"

prjFile = "c:/projections/North America Equidistant Conic.prj"
spatialRef = arcpy.SpatialReference(prjFile)

# Run CreateFeatureclass using the spatial reference object
#
arcpy.CreateFeatureclass_management(inputWorkspace, outputName, "POLYLINE", 
                                    spatial_reference=spatialRef)

La chaîne équivalente pour ce paramètre ressemble à ceci : PROJCS['North_America_Equidistant_Conic',GEOGCS['GCS_North_American_1983',DATUM['D_North_American_1983',SPHEROID['GRS_1980',6378137.0,298.257222101]],PRIMEM['Greenwich',0.0],UNIT['Degree',0.0174532925199433]],PROJECTION['Equidistant_Conic'],PARAMETER['False_Easting',0.0],PARAMETER['False_Northing',0.0],PARAMETER['Central_Meridian',-96.0],PARAMETER['Standard_Parallel_1',20.0],PARAMETER['Standard_Parallel_2',60.0],PARAMETER['Latitude_Of_Origin',40.0],UNIT['Meter',1.0]];IsHighPrecision

Rubriques connexes

  • Utilisation d'outils dans Python
  • Utilisation de fonctions dans Python

ArcGIS Desktop

  • Accueil
  • Documentation
  • Support

ArcGIS Platform

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

A propos d'Esri

  • A propos de la société
  • Carrières
  • Blog d’Esri
  • Conférence des utilisateurs
  • Sommet des développeurs
Esri
Donnez-nous votre avis.
Copyright © 2019 Esri. | Confidentialité | Légal