LandXML vers TIN (3D Analyst)

Niveau de licence :BasicStandardAdvanced

Récapitulatif

Cet outil permet d'importer une ou plusieurs surfaces TIN (Triangulated Irregular Network, réseau triangulé irrégulier) d'un fichier LandXML vers les TIN Esri en sortie.

Utilisation

Syntaxe

LandXMLToTin_3d (in_landxml_path, out_tin_folder, tin_basename, {tinnames})
ParamètreExplicationType de données
in_landxml_path

Fichier LandXML en entrée.

File
out_tin_folder

Dossier dans lequel les TIN en sortie seront créés.

Folder
tin_basename

Nom de base du TIN résultant. Lorsque plusieurs TIN sont exportés à partir du fichier LandXML, le nom de base est utilisé pour définir un nom unique pour chaque TIN en sortie. Si <basename> existe déjà, l'outil n'enregistre rien. Si <basename> n'existe pas mais que <basename>2 existe, l'outil crée <basename> et <basename>2_1, plutôt que <basename>2.

String
tinnames
[name,...]
(Facultatif)

La ou les surfaces TIN LandXML qui seront exportées vers un TIN Esri. Chaque TIN LandXML peut être spécifié par son nom ou sa position d'index dans le fichier LandXML, où le chiffre 1 représente le premier TIN, le chiffre 2 identifie le deuxième, etc.

String

Exemple de code

1er exemple d'utilisation du constructeur LandXMLToTin (fenêtre Python)

L'exemple suivant illustre l'utilisation de cet outil dans la fenêtre Python :

import arcpy
from arcpy import env

arcpy.CheckOutExtension("3D")
env.workspace = "C:/data"
arcpy.LandXMLToTin_3d("surfaces.xml", "TINs", "_", "1;2")
2e exemple d'utilisation du constructeur LandXMLToTin (script autonome)

L'exemple suivant illustre l'utilisation de cet outil dans un script Python autonome :

'''****************************************************************************
Name: LandXMLToTin Example
Description: This script demonstrates how to use the 
             ListFiles method to collect all LandXML (*.xml) files in a 
             workspace as input for the Import3DFiles tool.
****************************************************************************'''
# Import system modules
import arcpy
from arcpy import env
import exceptions, sys, traceback

try:
    # Obtain a license for the ArcGIS 3D Analyst extension
    arcpy.CheckOutExtension("3D")
    # Set environment settings
    env.workspace = "C:/data"
    # Use ListFiles method to grab all xml files (assumedly LandXML files)
    landList = arcpy.ListFiles("*.xml")
    if landList:
        for landFile in landList:
            # Set Local Variables
            outputFolder = "TINs" # The folder that the TINs will be created in
            outputBase = "Madagascar_" # Base name will be applied to all output TINs
            grab = "1" # TIN selection can be chosen by enumerated values (e.g. 1;2)
            # Execute Import3DFiles
            arcpy.LandXMLToTin_3d(landFile, outputFolder, outputBase, grab)
            print "Completed creating TIN(s) from {0}.".format(landFile)
    else:
        "There are no xml files in {0}.".format(env.workspace)

except arcpy.ExecuteError:
    print arcpy.GetMessages()
except:
    # Get the traceback object
    tb = sys.exc_info()[2]
    tbinfo = traceback.format_tb(tb)[0]
    # Concatenate error information into message string
    pymsg = 'PYTHON ERRORS:\nTraceback info:\n{0}\nError Info:\n{1}'\
          .format(tbinfo, str(sys.exc_info()[1]))
    msgs = 'ArcPy ERRORS:\n {0}\n'.format(arcpy.GetMessages(2))
    # Return python error messages for script tool or Python Window
    arcpy.AddError(pymsg)
    arcpy.AddError(msgs)

Environnements

Thèmes connexes

Informations de licence

ArcGIS for Desktop Basic: Requis 3D Analyst
ArcGIS for Desktop Standard: Requis 3D Analyst
ArcGIS for Desktop Advanced: Requis 3D Analyst
6/5/2014