Étiquette | Explication | Type de données |
Table en entrée | Table en entrée ou fichier texte. Les entités ponctuelles sont également valides. | Table View |
Classe d’entités en sortie | 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 |
Champ X (longitude) | Champ de la table en entrée qui contient la valeur de longitude. Pour les options DD 2, DD numérique, DDM 2 et DMS 2 du paramètre Format de coordonnées en entrée, il s’agit du champ de longitude. Pour les options DD 1, DDM 1 et DMS 1, ce champ contient les valeurs de latitude et de longitude dans une chaîne unique. Pour les options Gars, Georef, Georef 16, Zones UTM, Bandes UTM, USNG, USNG 16, MGRS et MGRS 16, ce champ contient une notation alphanumérique dans un champ de texte unique. | Field |
Champ Y (latitude) | Champ de la table en entrée qui contient la valeur de latitude. Pour les options DD 2, DD numérique, DDM 2 et DMS 2 du paramètre Format de coordonnées en entrée, il s’agit du champ de latitude. Ce paramètre est inactif lorsque l’un des formats à chaîne unique est choisi. | Field |
Format de coordonnées en entrée | Spécifie le format de coordonnées des champs en entrée. 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 |
Format de coordonnées en sortie | Spécifie le format de coordonnées vers lequel les notations en entrée seront converties. 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 (Facultatif) | Ce paramètre n’est plus utilisé, car tous les champs sont transférés vers la table en sortie. | Field |
Système de coordonnées en sortie (Facultatif) |
Référence spatiale de la classe d’entités 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 sera utilisée en fonction des systèmes de coordonnées de l’entrée, de la sortie et de l’étendue des données. | Spatial Reference |
Système de coordonnées en entrée (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 sera utilisé par défaut. | Coordinate System |
Exclure les enregistrements avec une notation non valide (Facultatif) | Indique si les enregistrements avec une notation non valide doivent être exclus.
| Boolean |
Synthèse
Convertir des notations de coordonnées contenues dans un ou deux champs d’un format de notation à un autre.
Utilisation
Le système de coordonnées des valeurs stockées dans les valeurs Champ X (longitude) et Champ Y (latitude) est spécifié via le paramètre Système de coordonnées en entrée. Par défaut, il s’agit de GCS_WGS_1984. Si la table en entrée est une classe d’entités, le système de coordonnées des entités en entrée est utilisé par défaut.
Les formats suivants sont pris en charge :
- Degrés décimaux (DD)
- Degrés Minutes Décimales (DDM)
- Degrés Minutes Secondes (DMS)
- Global Area Reference System (GARS)
- World Geographic Reference System (GEOREF et GEOREF 16)
- Universal Transverse Mercator (UTM)
- United States National Grid (USNG et USNG 16)
- Military Grid Reference System (MGRS et MGRS 16)
Pour les options DD 1, DDM 1 et DMS 1 du paramètre Format de coordonnées en entrée, les valeurs de latitude et de longitude doivent représenter une localisation concaténée et stockée dans un champ unique.
Pour les options DD 2, DDM 2 et DMS 2, les valeurs de latitude et de longitude sont représentées par deux champs distincts.
Pour l’option DD numérique, les valeurs de latitude et de longitude sont stockées dans deux champs distincts de type double.
Pour les options Gars, Georef, Georef 16, Zones UTM, Bandes UTM, USNG, USNG 16, MGRS et MGRS 16, les valeurs sont des formats de coordonnées à chaîne unique, ce qui signifie que les coordonnées figurent dans un seul champ.
Pour les paramètres Format de coordonnées en entrée et Format de coordonnées en sortie, les options MGRS 16 (par exemple, 11SLT7858811533670379), USNG 16 et Georef 16 ont une précision plus élevée (16 chiffres) que les options équivalentes MGRS (par exemple, 11SLT78588115), USNG et Georef (8 chiffres).
Tous les champs de la table en entrée, y compris le champ OID et les champs de format en entrée, sont transférés vers la classe d’entités ponctuelles en sortie. Les valeurs du champ OID permettent de différencier les notations valides converties si le paramètre Exclure les enregistrements avec une notation non valide est activé.
Les noms de champ en sortie sont appariés au nom de la notation de coordonnées en sortie. Par exemple, si le format en sortie est MGRS, le nouveau nom de champ en sortie sera MGRS.
Si un champ portant le même nom que le champ en entrée existe déjà dans la sortie, le nom du champ copié se verra ajouter un numéro unique.
Désactivez le paramètre Exclure les enregistrements avec une notation non valide pour conserver les informations concernant tous les enregistrements en entrée. L’outil Vérifier les géométries permet d’identifier les enregistrements comportant des notations non valides.
Si des enregistrements comportent des notations non valides, les messages envoyés par l’outil indiqueront le chemin d’accès au fichier journal contenant les ID de tous les enregistrements non valides.
L’outil Ajouter des coordonnées XY permet d’ajouter les deux champs POINT_X et POINT_Y à la classe d’entités ponctuelles en sortie. Ces champs contiennent les coordonnées d’un point dans l’unité du système de coordonnées de la classe d’entités.
L’outil peut convertir les notations numériques DD, DMS et DDM sous d’autres formats de sortie tant que les valeurs en entrée au format DD, DMS et DDM ne contiennent aucune lettre.
Paramètres
arcpy.management.ConvertCoordinateNotation(in_table, out_featureclass, x_field, y_field, input_coordinate_format, output_coordinate_format, {id_field}, {spatial_reference}, {in_coor_system}, {exclude_invalid_records})
Nom | Explication | Type de données |
in_table | Table en entrée ou fichier texte. Les entités ponctuelles sont également valides. | 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 options DD_2, DD_NUMERIC, DDM_2 et DMS_2 du paramètre input_coordinate_format, il s’agit du champ de longitude. Pour les options DD_1, DDM_1 et DMS_1, ce champ contient les valeurs de latitude et de longitude dans une chaîne unique. Pour les options GARS, GEOREF, GEOREF16, UTM_ZONES, UTM_BANDS, USNG, USNG16, MGRS et MGRS16, ce champ contient un système alphanumérique de notation dans un champ de texte unique. | Field |
y_field | Champ de la table en entrée qui contient la valeur de latitude. Pour les options DD_2, DD_NUMERIC, DDM_2 et DMS_2 du paramètre input_coordinate_format, il s’agit du champ de longitude. Ce paramètre est ignoré lorsque l’un des formats à chaîne unique est choisi. | Field |
input_coordinate_format | Spécifie le format de coordonnées des champs en entrée.
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 | Spécifie le format de coordonnées vers lequel les notations en entrée seront converties.
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) | Ce paramètre est ignoré, car tous les champs sont transférés vers la table en sortie. | Field |
spatial_reference (Facultatif) |
Référence spatiale de la classe d’entités 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 sera utilisée en fonction des systèmes de coordonnées de l’entrée, de la sortie et de l’étendue des données. | Spatial Reference |
in_coor_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 sera utilisé par défaut. | Coordinate System |
exclude_invalid_records (Facultatif) | Indique si les enregistrements avec une notation non valide doivent être exclus.
| Boolean |
Exemple de code
Le script autonome ci-dessous illustre l’utilisation de la fonction 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")
Le script autonome ci-dessous illustre l’utilisation de la fonction 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])
Le script autonome ci-dessous illustre l’utilisation de la fonction ConvertCoordinateNotation avec les 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])
Le script autonome ci-dessous illustre l’utilisation de la fonction ConvertCoordinateNotation pour convertir en valeurs à virgule flottante les valeurs textuelles en sortie exprimées en degrés décimaux. Un signe moins 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"""
# DDLon field contains longitudes in a string field
arcpy.CalculateField_management(in_table,"DDLonDbl","convertToDouble(!DDLon!)","PYTHON_9.3",expr)
# 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"""
# DDLat field contains latitudes in a string field
arcpy.CalculateField_management(in_table,"DDLatDbl","convertToDouble(!DDLat!)","PYTHON_9.3",expr)
Environnements
Rubriques connexes
Vous avez un commentaire à formuler concernant cette rubrique ?