Définir une projection (Gestion des données)

Synthèse

Remplace les informations sur le système de coordonnées (projection cartographique et datum) stockées par un jeu de données. Cet outil a été conçu pour les jeux de données pour lesquels un système de coordonnées inconnu ou incorrect a été défini.

Utilisation

  • Tous les jeux de données géographiques possèdent un système de coordonnées qui est utilisé dans l'ensemble d'ArcGIS pour afficher, mesurer et transformer des données géographiques. Si le système de coordonnées d'un jeu de données est inconnu ou incorrect, vous pouvez utiliser cet outil pour spécifier le système de coordonnées correct.

  • Cet outil se contente de mettre à jour les informations sur le système de coordonnées existant ; il ne modifie pas la géométrie. Pour transformer la géométrie dans un autre système de coordonnées, utilisez l’outil Projeter.

  • Lorsqu’un jeu de données avec un système de coordonnées connu est entré dans cet outil, celui-ci affiche un message d’avertissement mais s’exécute normalement.

  • Toutes les classes d’entités d’un jeu de classes d’entités de géodatabase sont dans le même système de coordonnées. Le système de coordonnées d'un jeu de classes d’entités doit être déterminé à sa création. Une fois qu’un jeu de classes d’entités contient des classes d’entités, son système de coordonnées ne peut plus être modifié.

  • L’outil met à jour le fichier .wld associé d’un fichier CAD ou BIM pour conserver la position géographique après ajustement des données.

Paramètres

ÉtiquetteExplicationType de données
Jeu de données ou classe d’entités en entrée

Jeu de données ou classe d’entités contenant la projection à définir.

Feature Layer;Geodataset
Système de coordonnées

Système de coordonnées à appliquer à l’entrée.

Coordinate System

Sortie obtenue

ÉtiquetteExplicationType de données
Mettre à jour le jeu de données ou la classe d'entités en entrée

Jeu de données géographiques en entrée mis à jour.

Geodataset

arcpy.management.DefineProjection(in_dataset, coor_system)
NomExplicationType de données
in_dataset

Jeu de données ou classe d’entités contenant la projection à définir.

Feature Layer;Geodataset
coor_system

Système de coordonnées à appliquer à l’entrée.

Les valeurs valides sont un objet SpatialReference, un fichier avec une extension .prj ou une représentation de chaîne d’un système de coordonnées.

Coordinate System

Sortie obtenue

NomExplicationType de données
out_dataset

Jeu de données géographiques en entrée mis à jour.

Geodataset

Exemple de code

Exemple d’utilisation de la fonction DefineProjection (fenêtre Python)

Le script de fenêtre Python ci-dessous illustre l'utilisation de la fonction DefineProjection en mode immédiat.

import arcpy
infc = r"C:\data\citylim_unk.shp"
sr = arcpy.SpatialReference("NAD 1983 UTM Zone 11N")
arcpy.DefineProjection_management(infc, sr)
Exemple d'utilisation de l'outil Définir une projection (script autonome)

Le script autonome suivant utilise la fonction DefineProjection pour enregistrer les informations sur le système de coordonnées du jeu de données en entrée.

# Name: DefineProjection.py 
# Description: Records the coordinate system information for the specified input dataset or feature class

# import system modules
import arcpy

# set workspace environment
arcpy.env.workspace = "C:/data"

try:
    # set local variables
    in_dataset = "citylim_unk.shp" #"forest.shp"
    
    # get the coordinate system by describing a feature class
    dsc = arcpy.Describe("citylim_utm11.shp")
    coord_sys = dsc.spatialReference
    
    # run the tool
    arcpy.DefineProjection_management(in_dataset, coord_sys)
    
    # print messages when the tool runs successfully
    print(arcpy.GetMessages(0))
    
except arcpy.ExecuteError:
    print(arcpy.GetMessages(2))
    
except Exception as ex:
    print(ex.args[0])