Délimiter la zone de données d'un TIN (3D Analyst)

Récapitulatif

Redéfinit la zone de données, ou zone d'interpolation, d'un réseau triangulé irrégulier (TIN) à partir de la longueur du segment de triangle.

Pour en savoir plus sur la fonction Délimiter la zone de données d'un TIN (3D Analyst)

Illustration

Illustration de l'outil Délimiter la zone de données d'un TIN

Utilisation

Syntaxe

DelineateTinDataArea_3d (in_tin, max_edge_length, {method})
ParamètreExplicationType de données
in_tin

The input TIN.

TIN Layer
max_edge_length

Les triangles dont au moins une arête excède la longueur <max_edge_length> sont masqués en tant que NODATA. Ils ne sont pas présentés dans des cartes et ne sont pas utilisés dans une analyse de surface telle que l'interpolation. La longueur correspond à la distance 2D.

Double
method
(Facultatif)

Méthode utilisée pour délimiter la zone de données du TIN.

  • PERIMETER_ONLYSe répète sur les triangles à partir de l'étendue extérieure du TIN et s'arrête avant que l'itération actuelle des arêtes du triangle de contour ne dépasse la valeur Longueur de segment maximale. Il s'agit du paramétrage par défaut.
  • ALLClassifie l'intégralité de la collection de triangles TIN selon la longueur d'arête.
String

Exemple de code

1er exemple d'utilisation de l'outil DelineateTINDataArea (fenêtre Python)

The following sample demonstrates the use of this tool in the Python window:

import arcpy
from arcpy import env

arcpy.CheckOutExtension("3D")
env.workspace = "C:/data"
arcpy.DelineateTinDataArea_3d("elevation", 10, "PERIMETER_ONLY")
2e exemple d'utilisation de l'outil DelineateTINDataArea (script autonome)

The following sample demonstrates the use of this tool in a stand-alone Python script:

'''****************************************************************************
Name: Define Data Boundary of LAS File
Description: This script demonstrates how to delineate data boundaries of 
             LAS files with irregularly clustered points. It is intended for 
             use as a script tool with one input LAS file.
****************************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback

# Set local variables
inLas = arcpy.GetParameterAsText(0) #input LAS file
ptSpacing = arcpy.GetParameterAsText(1) # LAS point spacing
classCode = arcpy.GetParameterAsText(2) # List of integers
returnValue = arcpy.GetParameterAsText(3) # List of strings
outTin = arcpy.GetParameterAsText(4) # TIN created to delineate data area
outBoundary = arcpy.GetParameterAsText(5) # Polygon boundary file

try:
    arcpy.CheckOutExtension("3D")
    # Execute LASToMultipoint
    arcpy.AddMessage("Creating multipoint features from LAS...")
    lasMP = arcpy.CreateUniqueName('lasMultipoint', 'in_memory')
    arcpy.ddd.LASToMultipoint(inLas, LasMP, ptSpacing, class_code, 
                             "ANY_RETURNS", "", sr, inFormat, zfactor)
    # Execute CreateTin
    arcpy.AddMessage("Creating TIN dataset...")
    arcpy.ddd.CreateTin(outTin, sr, "{0} Shape.Z masspoints"\
                       .format(lasMP), "Delaunay")
    # Execute CopyTin
    arcpy.AddMessage("Copying TIN to delineate data boundary...")
    arcpy.ddd.CopyTin(outTin, "{0}_copy".format(outTin))
    # Execute DelineateTinDataArea
    arcpy.AddMessage("Delineating TIN boundary...")
    maxEdge = ptSpacing * 4
    arcpy.ddd.DelineateTinDataArea(outTin, maxEdge, "PERIMETER_ONLY")
    # Execute TinDomain
    arcpy.AddMessage("Exporting data area to polygon boundary...")
    arcpy.ddd.TinDomain(outTin, outBoundary, "POLYGON")
    arcpy.AddMessage("Finished")
    arcpy.CheckInExtension("3D")
        
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

Rubriques connexes

Informations de licence

ArcView : Obligatoire 3D Analyst
ArcEditor : Obligatoire 3D Analyst
ArcInfo : Obligatoire 3D Analyst

7/10/2012