Convertir la notation de coordonnées (Gestion des données)

Niveau de licence :BasicStandardAdvanced

Récapitulatif

Convertit des notations de coordonnées contenues dans un ou deux champs d'un format de notation à un autre.

En savoir plus sur les formats de notation pris en charge

Utilisation

Syntaxe

ConvertCoordinateNotation_management (in_table, out_featureclass, x_field, y_field, input_coordinate_format, output_coordinate_format, {id_field}, {output_coordinate_system}, {in_coordinate_system})
ParamètreExplicationType de données
in_table

Table qui contient les champs des notations de coordonnées à convertir.

Table View
out_featureclass

Classe d'entités ponctuelles en sortie. La table attributaire contiendra tous les champs de la table en entrée, ainsi que les champs contenant les valeurs converties dans le format en sortie.

Feature Class
x_field

Champ de la table en entrée qui contient la valeur de longitude. Pour les formats DD_2, DD_NUMERIC, DDM_2 et DMS_2, il s'agit du champ de longitude.

Pour DD_1, DDM_1 et DMS_1, ce champ contient les valeurs de latitude et de longitude dans une chaîne unique.

Pour GARS, GEOREF, UTM_ZONES, UTM_BANDS, USNG et MGRS, ce champ contient un système alphanumérique de notation dans un champ de texte unique.

Le paramètre y_field est ignoré lorsqu'un des formats à chaîne unique est choisi.

Field
y_field

Champ de la table en entrée qui contient la valeur de longitude. Pour les formats DD_2, DD_NUMERIC, DDM_2 et DMS_2, il s'agit du champ de longitude.

Pour DD_1, DDM_1 et DMS_1, ce champ contient les valeurs de latitude et de longitude dans une chaîne unique.

Pour GARS, GEOREF, UTM_ZONES, UTM_BANDS, USNG et MGRS, ce champ contient un système alphanumérique de notation dans un champ de texte unique.

Ce paramètre est ignoré lorsqu'un des formats à chaîne unique est choisi.

Field
input_coordinate_format

Format de coordonnées des champs en entrée. La valeur par défaut est DD_2.

  • DD_1Les valeurs de longitude et de latitude figurent dans un champ unique. Deux valeurs sont séparées par un espace, une virgule ou une barre oblique.
  • DD_2Les valeurs de longitude et de latitude figurent dans deux champs distincts.
  • DDM_1Les valeurs de longitude et de latitude figurent dans un champ unique. Deux valeurs sont séparées par un espace, une virgule ou une barre oblique.
  • DDM_2 Les valeurs de longitude et de latitude figurent dans deux champs distincts.
  • DMS_1Les valeurs de longitude et de latitude figurent dans un champ unique. Deux valeurs sont séparées par un espace, une virgule ou une barre oblique.
  • DMS_2Les valeurs de longitude et de latitude figurent dans deux champs distincts.
  • GARSGlobal Area Reference System. Selon la latitude et la longitude, ce format divise et sous-divise le monde en cellules.
  • GEOREFWorld Geographic Reference System. Système basé sur une grille qui divise le monde en quadrangles de 15 degrés, puis procède ensuite à une subdivision en quadrangles plus petits.
  • UTM_ZONESLa lettre N ou S après le numéro de zone UTM désigne uniquement l'hémisphère Nord ou Sud.
  • UTM_BANDSLa lettre après le numéro de zone UTM désigne une des 20 bandes de latitude. N ou S ne désigne pas d'hémisphère.
  • USNGUnited States National Grid. Pratiquement identique à MGRS, mais qui utilise le datum nord-américain de 1983 (NAD83).
  • MGRSMilitary Grid Reference System. Suit les coordonnées UTM et divise le monde en bandes de longitude de 6 degrés et 20 bandes de latitude, mais MGRS subdivise encore davantage les zones de quadrillage en grilles plus petites de 100 000 mètres. Ces grilles de 100 000 mètres sont alors divisées en grilles de 10 000 mètres, 1 000 mètres, 100 mètres, 10 mètres et 1 mètre.
  • SHAPEUniquement disponible lorsque vous sélectionnez une couche d'entités ponctuelles en entrée. Les coordonnées de chaque point permettent de définir le format en sortie.

DD, DDM, DMS et UTM sont également des mots-clés valides. Vous pouvez les entrer dans une boîte de dialogue ou indiquer la valeur dans un script. Toutefois, les mots-clés comprenant des traits de soulignement et un qualificateur donnent plus d'informations sur les valeurs de champs.

String
output_coordinate_format

Format de coordonnées vers lequel les notations en entrée sont converties. La valeur par défaut est DD_2.

  • DD_1Les valeurs de longitude et de latitude figurent dans un champ unique. Deux valeurs sont séparées par un espace, une virgule ou une barre oblique.
  • DD_2Les valeurs de longitude et de latitude figurent dans deux champs distincts.
  • DD_NUMERICLes valeurs de longitude et de latitude sont entrées dans deux champs distincts de type Double. Les valeurs des champs Ouest et Sud sont indiquées par un signe moins. En revanche, avec le format DD_2, les valeurs sont textuelles et les lettres N, S, E et O indiquent les directions.
  • DDM_1Les valeurs de longitude et de latitude figurent dans un champ unique. Deux valeurs sont séparées par un espace, une virgule ou une barre oblique.
  • DDM_2 Les valeurs de longitude et de latitude figurent dans deux champs distincts.
  • DMS_1Les valeurs de longitude et de latitude figurent dans un champ unique. Deux valeurs sont séparées par un espace, une virgule ou une barre oblique.
  • DMS_2Les valeurs de longitude et de latitude figurent dans deux champs distincts.
  • GARSGlobal Area Reference System. Selon la latitude et la longitude, ce format divise et sous-divise le monde en cellules.
  • GEOREFWorld Geographic Reference System. Système basé sur une grille qui divise le monde en quadrangles de 15 degrés, puis procède ensuite à une subdivision en quadrangles plus petits.
  • UTM_ZONESLa lettre N ou S après le numéro de zone UTM désigne uniquement l'hémisphère Nord ou Sud.
  • UTM_BANDSLa lettre après le numéro de zone UTM désigne une des 20 bandes de latitude. N ou S ne désigne pas d'hémisphère.
  • USNGUnited States National Grid. Pratiquement identique à MGRS, mais qui utilise le datum nord-américain de 1983 (NAD83).
  • MGRSMilitary Grid Reference System. Suit les coordonnées UTM et divise le monde en bandes de longitude de 6 degrés et 20 bandes de latitude, mais MGRS subdivise encore davantage les zones de quadrillage en grilles plus petites de 100 000 mètres. Ces grilles de 100 000 mètres sont alors divisées en grilles de 10 000 mètres, 1 000 mètres, 100 mètres, 10 mètres et 1 mètre.
  • SHAPEUniquement disponible lorsque vous sélectionnez une couche d'entités ponctuelles en entrée. Les coordonnées de chaque point permettent de définir le format en sortie.

DD, DDM, DMS et UTM sont également des mots-clés valides. Vous pouvez les entrer dans une boîte de dialogue ou indiquer la valeur dans un script. Toutefois, les mots-clés comprenant des traits de soulignement et un qualificateur donnent plus d'informations sur les valeurs de champs.

String
id_field
(Facultatif)

HéritageHéritage :

Ce paramètre est ignoré, car tous les champs non-système sont transférés vers la table en sortie.

Field
output_coordinate_system
(Facultatif)

Référence spatiale de la classe d'entité en sortie. La valeur par défaut est GCS_WGS_1984.

L'outil projette la sortie sur la référence spatiale spécifiée. Si les systèmes de coordonnées en entrée et en sortie se trouvent dans un datum différent, une transformation par défaut est utilisée en fonction des systèmes de coordonnées de l'entrée et de la sortie, puis de l'étendue des données.

Spatial Reference
in_coordinate_system
(Facultatif)

Référence spatiale des données en entrée. Si la référence spatiale en entrée ne peut pas être obtenue à partir de la table en entrée, GCS_WGS_1984 est utilisé par défaut.

Spatial Reference

Exemple de code

Exemple 1 d'utilisation de l'outil ConvertCoordinateNotation (script autonome)

Utilisation de l'outil ConvertCoordinateNotation avec un champ de format en entrée.

# import arcpy module
import arcpy

# set locals variables
in_tab = r"c:\data\notation.gdb\loc_mgrs"
out_pts = r"c:\data\notation.gdb\loc_final"

# call Convert Coordinate Notation with MGRS as input field.
# leaving out spatial reference parameter will default to WGS 1984 
arcpy.ConvertCoordinateNotation_management(in_tab, out_pts, "m10d", "#", "MGRS", "DD_1")
Exemple 2 d'utilisation de l'outil ConvertCoordinateNotation (script autonome)

Utilisation de l'outil ConvertCoordinateNotation avec deux champs de format en entrée.

# imports
import arcpy

arcpy.env.workspace = r"c:\data\mtf.gdb"

# set parameter values
input_table = 'rit_up_DD'
output_points = 'ritLOC'
x_field = 'LON'
y_field = 'LAT'
input_format = 'DD_2'
output_format = 'GARS'
id_field = 'CITY_NAME'
spatial_ref = arcpy.SpatialReference('WGS 1984')

try:
    arcpy.ConvertCoordinateNotation_management(input_table, output_points, x_field, y_field, 
                                               input_format, output_format, id_field, spatial_ref)
    print(arcpy.GetMessages(0))

except arcpy.ExecuteError:
    print(arcpy.GetMessages(2))
    
except Exception as ex:
    print(ex.args[0])
Exemple 3 d'utilisation de l'outil ConvertCoordinateNotation (script autonome)

Utilisation de l'outil ConvertCoordinateNotation avec les exemples de formats UTM_ZONES et UTM_BANDS.

# imports
import arcpy

arcpy.env.workspace = r"c:\data\ccn.gdb"

# export_utm58 table contains coordinates in UTM_BANDS format 
# where N and S indicate latitude bands, 
# for example, 58S4144921393176 - here 58S is latitude band
input_table = 'export_utm58'

# the coordinate values in output point table will be in UTM_ZONES format
# for example, 58N4144921393176 - note that it is now 58N because
# the point is in UTM 58 North zone
output_points = 'utm_zone18'

spatial_ref = arcpy.SpatialReference('WGS 1984')

try:
    arcpy.ConvertCoordinateNotation_management(input_table, output_points, "LOCS", "", 
                                               "UTM_BANDS", "UTM_ZONES", "", spatial_ref)
    print(arcpy.GetMessages(0))
    
except Exception as ex:
    print(ex.args[0])
Exemple 4 d'utilisation de l'outil ConvertCoordinateNotation (script autonome)

Echantillon ConvertCoordinateNotation qui convertit en valeurs à virgule flottante les valeurs textuelles en sortie exprimées en degrés décimaux. Un signe négatif est utilisé à la place des lettres S et O.

# imports
import arcpy

# output from Convert Coordinate Notation tool
# for DD_2 (and also for DD_1) format, the output values are in string format
# for example, for DD_1, the output values may be '43.63872N 116.24135W'
in_table = r"c:\data\ccn.gdb\ccn_dd1"

# add a field of type DOUBLE to store the numeric longitude value
arcpy.AddField_management(in_table, "DDLonDbl", "DOUBLE")

# now call CalculateField tool to convert the values, 'W' is negative
expr = """def convertToDouble(fldval):
    val = float(fldval[:-1])
    if fldval[-1:] == 'W':
        return val * -1.0
    else:
        return val"""
try:
    # DDLon field contains longitudes in a string field
    arcpy.CalculateField_management(in_table,"DDLonDbl","convertToDouble(!DDLon!)","PYTHON_9.3",expr)
except:
    print arcpy.GetMessages()

    
# add another field to store the numeric longitude value
arcpy.AddField_management(in_table, "DDLatDbl", "DOUBLE")

# call CalculateField again to convert the values, 'S' is negative
expr = """def convertToDouble(fldval):
    val = float(fldval[:-1])
    if fldval[-1:] == 'S':
        return val * -1.0
    else:
        return val"""

try:
    # DDLat field contains latitudes in a string field
    arcpy.CalculateField_management(in_table,"DDLatDbl","convertToDouble(!DDLat!)","PYTHON_9.3",expr)
except:
    print arcpy.GetMessages()

Environnements

Thèmes connexes

Informations de licence

ArcGIS for Desktop Basic: Oui
ArcGIS for Desktop Standard: Oui
ArcGIS for Desktop Advanced: Oui
6/5/2014