ArcGIS for Desktop

  • Documentation
  • Pricing
  • Support

  • My Profile
  • Help
  • Sign Out
ArcGIS for Desktop

ArcGIS Online

The mapping platform for your organization

ArcGIS for Desktop

A complete professional GIS

ArcGIS for Server

GIS in your enterprise

ArcGIS for Developers

Tools to build location-aware apps

ArcGIS Solutions

Free template maps and apps for your industry

ArcGIS Marketplace

Get apps and data for your organization

  • Documentation
  • Pricing
  • Support
Esri
  • Sign In
user
  • My Profile
  • Sign Out

Help

  • Home
  • Get Started
  • Map
  • Analyze
  • Manage Data
  • Tools
  • More...

Create TIN

Available with 3D Analyst license.

  • Summary
  • Usage
  • Syntax
  • Code Sample
  • Environments
  • Licensing Information

Summary

Creates a triangulated irregular network (TIN) dataset.

Usage

  • TINs used for surface modeling should be constructed using projected coordinate systems. Geographic coordinate systems are not recommended because Delaunay triangulation cannot be guaranteed when the XY coordinates are expressed in angular units, and distance-based calculations, such as slope, volume, and line-of-sight, can produce misleading or incorrect results.

  • Consider resizing the tool's dialog box if the Input Feature Class parameter does not display legibly.

  • Consider capping the number of nodes loaded into the TIN from the input features at a few million to maintain adequate usability and display performance. The maximum number of nodes supported by a TIN varies relative to free, contiguous, memory resources on the system. Ten to fifteen million nodes generally represent the largest size achievable under normal operating conditions on 32-bit Windows platforms. Larger datasets are best represented using a terrain.

Syntax

CreateTin_3d (out_tin, {spatial_reference}, {in_features}, {constrained_delaunay})
ParameterExplanationData Type
out_tin

The TIN dataset that will be generated.

TIN
spatial_reference
(Optional)

The spatial reference of the output TIN.

Coordinate System
in_features
[[in_feature_class, height_field, SF_type, tag_value],...]
(Optional)

Add references to one or more feature classes that will be included in the TIN. For each feature class you'll need to set properties that indicate how it's used to define the surface.

in_feature_class: The feature class whose features will be imported into the TIN.

height_field: The field that specifies the source of elevation values for the features. Any numeric field in the feature's attribute table can be used. If the feature supports z-values, the feature geometry can be read by selecting the Shape.Z option. If no height is desired, specify the keyword <None> to create Z-less features whose elevation would be interpolated from the surface.

SF_type: The surface feature type defines how the geometry imported from the features are incorporated into the triangulation for the surface. Options with hard or soft designation refer to whether the feature edges represent distinct breaks in slope or a gradual change when the triangulated surface gets converted to a raster. The following keywords are available:

  • masspoints —Elevation points that will be imported as nodes
  • hardline or softline —Breaklines that enforce a height value
  • hardclip or softclip —Polygon dataset that defines the boundary of the TIN
  • harderase or softerase — Polygon dataset that defines holes in the interior portions of the TIN
  • hardreplace or softreplace —Polygon dataset that defines areas of constant height
  • hardvaluefill or softvaluefill —Polygon dataset that defines tag values for the triangles based on the integer field specified in the tag_value column

tag_value: The integer field from the attribute table of the feature class that will be used when the surface feature type is set to a value fill option. Tag fill is used as a basic form of triangle attribution whose boundaries are enforced in the triangulation as breaklines. The default option is set to <none>.

Value Table
constrained_delaunay
(Optional)

Specifies the triangulation technique used along the breaklines of the TIN.

  • DELAUNAY —The TIN will use Delaunay conforming triangulation, which may densify each segment of the breaklines to produce multiple triangle edges. This is the default.
  • CONSTRAINED_DELAUNAY —The TIN will use constrained Delaunay triangulation, which will add each segment as a single edge. Delaunay triangulation rules are honored everywhere except along breaklines, which will not get densified.
Boolean

Code Sample

CreateTin example 1 (Python window)

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.CreateTin_3d("NewTIN", "Coordinate Systems/Projected Coordinate Systems/State Plane/NAD 1983 (Feet)/NAD 1983 StatePlane California II FIPS 0402 (Feet).prj", "points.shp Shape.Z masspoints", "constrained_delaunay")
CreateTin example 2 (stand-alone script)

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)

Environments

  • Current Workspace
  • Scratch Workspace
  • Output Coordinate System
  • Extent
  • Geographic Transformations
  • Version

Licensing Information

  • ArcGIS for Desktop Basic: Requires 3D Analyst
  • ArcGIS for Desktop Standard: Requires 3D Analyst
  • ArcGIS for Desktop Advanced: Requires 3D Analyst

Related Topics

  • An overview of the Data Management toolset
  • Fundamentals of Surfaces
  • Surface formats
  • TIN-based surface concepts
  • What is a TIN surface?
  • Fundamentals of creating TIN surfaces
  • Fundamentals of editing TIN surfaces
  • Editing features of a TIN using geoprocessing tools
  • Geoprocessing tools for TIN surfaces
Feedback on this topic?

ArcGIS for Desktop

  • Home
  • Documentation
  • Pricing
  • Support

ArcGIS Platform

  • ArcGIS Online
  • ArcGIS for Desktop
  • ArcGIS for Server
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

About Esri

  • About Us
  • Careers
  • Insiders Blog
  • User Conference
  • Developer Summit
Esri
© Copyright 2016 Environmental Systems Research Institute, Inc. | Privacy | Legal