Projeter (Gestion des données)
Récapitulatif
Projette des données spatiales d'un système de coordonnées vers un autre.
Utilisation
Si la classe d'entités en entrée ou le jeu de données a un système de coordonnées Inconnu ou non spécifié, vous pouvez spécifier le système de coordonnées du jeu de données en entrée avec le paramètre Système de coordonnées en entrée. Cela vous permet de spécifier le système de coordonnées des données sans devoir modifier les données en entrée (ce qui peut ne pas être possible si l'entrée est en lecture seule). Vous pouvez également utiliser l'outil Définir une projection pour attribuer définitivement un système de coordonnées au jeu de données.
-
Tous les types de classes d'entités (classe d'entités de géodatabase, classe d'entités de couverture, classe d'entités SDC, fichier de formes), jeux de classes d'entités d'une géodatabse et couches d'entités dans les applications ArcGIS (ArcMap, ArcScene et ArcGlobe), sont des entrées valides.
-
Les couvertures, les couvertures VPF, les jeux de données raster et les catalogues d'images ne sont pas pris en charge comme entrées par cet outil. Pour projeter une couverture, utilisez l'outil Projeter contenu dans la boîte à outils Couverture. Utilisez l'outil Projeter un raster pour projeter des jeux de données raster.
Le paramètre Transformation géographique de l'outil est facultatif. Lorsqu'aucune transformation géographique ou de datum n'est requise, aucune liste déroulante n'apparaît sur le paramètre, qui reste vide. Lorsqu'une transformation est requise, une liste déroulante est générée basée sur les datum en entrée et en sortie et une transformation par défaut est choisie.
- Par exemple, une transformation géographique n'est pas obligatoire lorsque vous projetez GCS_North_American_1983 sur NAD_1983_UTM_Zone_12N, car les systèmes de coordonnées en entrée et en sortie possèdent tous deux un datum NAD_1983. Lorsque vous effectuez une projection de GCS_North_American_1983 sur WGS_1984_UTM_Zone_12N, une transformation géographique s'avère toutefois nécessaire, car le système de coordonnées en entrée utilise le datum NAD_1983 alors que le système de coordonnées en sortie utilise le datum WGS_1984.
- Remarque :
Les transformations sont bidirectionnelles. Par exemple, si vous convertissez des données de WGS 1984 en NAD 1927, vous pouvez choisir une transformation appelée NAD_1927_to_WGS_1984_3 et l'outil l'appliquera correctement.
- Pour obtenir une liste de transformations et leur domaine d'utilisation, consultez l'article de la base de connaissances suivant : 21327 (http://resources.arcgis.com/content/kbase? fa=articleShow&d=21327)
-
in_memory n'est pas un espace de travail valide pour le jeu de données en sortie.
-
Lors de la projection des types de données complexes répertoriés ci-dessous, certaines opérations doivent être effectuées sur les données résultantes :
- Jeu de classes d'entités contenant un jeu de données réseau : le jeu de données réseau doit être reconstruit.
- Jeu de classes d'entités contenant une topologie : revalidez l'étendue entière de la topologie.
-
Si l'entrée est impliqué dans des classes de relations (comme avec l'annotation liée à une entité), la classe de relations est transférée vers la sortie. L'exception à cette règle concerne les tables autonomes.
-
Selon les coordonnées et l'horizon de l'entité en entrée (étendue valide) du système de coordonnées en sortie, le multi-points, la ligne et le polygone peuvent être découpés ou fractionnés en plusieurs parties dans le cadre de leur projection.
Syntaxe
Paramètre | Explication | Type de données |
in_dataset |
Classe d'entités, couche d'entités ou jeu de données d'entité à projeter. | Feature Layer; Feature Dataset |
out_dataset |
Jeu de données en sortie dans lequel les résultats seront enregistrés. | Geodataset |
out_coor_system | Les valeurs valides sont un fichier avec une extension .prj (les fichiers .prj fournis avec ArcGIS sont disponibles dans le répertoire d'installation d'ArcGIS dans le dossier Système de coordonnées) ou une représentation de chaîne d'un système de coordonnées. Cette représentation de chaîne peut être générée en ajoutant une variable de système de coordonnées à ModelBuilder, en définissant la valeur de la variable à votre gré, puis en exportant le modèle vers un script Python. La chaîne peut alors être copiée depuis le script Python. | Coordinate System |
transform_method (Facultatif) | Cette méthode peut être utilisée pour convertir des données entre deux systèmes de coordonnées géographiques ou datums. Ce paramètre initialement facultatif peut être requis si les systèmes de coordonnées en entrée et en sortie ont des données différentes. Les transformations sont bidirectionnelles. Par exemple, si vous convertissez des données de WGS 1984 en NAD 1927, vous pouvez choisir une transformation appelée NAD_1927_to_WGS_1984_3 et l'outil l'appliquera correctement. | String |
in_coor_system (Facultatif) |
Système de coordonnées du jeu de données d'entité ou de la classe d'entités en entrée. Ce paramètre est activé lorsque l'entrée a un système de coordonnées inconnu ou non spécifié. Cela vous permet de spécifier le système de coordonnées des données sans devoir modifier les données en entrée (ce qui peut ne pas être possible si l'entrée est en lecture seule). | Coordinate System |
Exemple de code
Le script de fenêtre Python suivant illustre l'utilisation de l'outil Projeter en mode immédiat.
import arcpy input_features = "C:/data/input/projections.gdb/wells" output_features_class = "C:/data/output/wells_UTM11N.shp" install_dir = arcpy.GetInstallInfo()['InstallDir'] out_coordinate_system = os.path.join(install_dir, r"Coordinate Systems/Projected Coordinate Systems/UTM/NAD 1983/NAD 1983 UTM Zone 11N.prj") arcpy.Project_management(input_features, output_features_class, out_coordinate_system)
Le script autonome suivant illustre l'utilisation de l'outil Projeter dans un script autonome.
# Name: Project_Example2.py # Description: Project all feature classes in a geodatabase # Requirements: os module # Import system modules import arcpy import os # Set environment settings arcpy.env.workspace = "C:/data/Redlands.gdb" # Set local variables outWorkspace = "c:/data/Redlands_utm_11.gdb" # Use ListFeatureClasses to generate a list of inputs for infc in arcpy.ListFeatureClasses(): # Determine if the input has a defined coordinate system, can't project it if it does not dsc = arcpy.Describe(infc) if dsc.spatialReference.Name == "Unknown": print ('skipped this fc due to undefined coordinate system: ' + infc) else: # Determine the new output feature class path and name outfc = os.path.join(outWorkspace, infc) # Set output coordinate system outCS = arcpy.SpatialReference('NAD 1983 UTM Zone 11N') arcpy.Project_management(infc, outfc, outCS)