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

ArcMap

  • Home
  • Get Started
  • Map
  • Analyze
  • Manage Data
  • Tools
  • Extensions

LAS Dataset To TIN

  • Summary
  • Illustration
  • Usage
  • Syntax
  • Code sample
  • Environments
  • Licensing information

Summary

Exports a triangulated irregular network (TIN) from a LAS dataset.

Illustration

LAS Dataset to TIN

Usage

  • When a LAS dataset is specified as input, all the data points in the LAS files it references will be processed. A subset of lidar data can also be selected by its classification codes, classification flags, and return values by applying the desired LAS point filters through a LAS dataset layer. Filters can be defined through the layer properties dialog or the Make LAS Dataset Layer tool.

  • The LAS dataset layer can also be used to control the enforcement of surface constraint features that may be referenced by the LAS dataset.

  • Consider using a Window Size thinning type (thinning_type = "WINDOW_SIZE" in Python) when you need a more predictable control of how LAS points are thinned in the generation of the output TIN.

Syntax

LasDatasetToTin_3d (in_las_dataset, out_tin, {thinning_type}, {thinning_method}, {thinning_value}, {max_nodes}, {z_factor})
ParameterExplanationData Type
in_las_dataset

The LAS dataset to process.

LAS Dataset Layer
out_tin

The TIN dataset that will be generated.

TIN
thinning_type
(Optional)

Specifies the technique used for selecting a subset of LAS data points that would be exported to TIN.

  • NONE —No thinning is applied. This is the default.
  • RANDOM —Randomly selects LAS data points based on the corresponding thinning_method selection and thinning_value entry.
  • WINDOW_SIZE —Divides the LAS dataset into square tiles defined by the thinning_value, then selects LAS points using the thinning_method.
String
thinning_method
(Optional)

Specifies the technique used for reducing the LAS data points, which impacts the interpretation of the Thinning Value. The available options depend on the selected Thinning Type.

  • PERCENT —Thinning value will reflect a percentage of points in the LAS dataset.
  • NODE_COUNT —Thinning value will reflect the total number of nodes that are allowed in the output.
  • MIN —LAS data point with the lowest elevation in each window size areas
  • MAX —Selects LAS data point with the highest elevation in each of the automatically determined window size areas.
  • CLOSEST_TO_MEAN —Selects LAS data point whose elevation is closest to the average value found in the automatically determined window size areas.

Specifies the technique used for reducing the LAS data points, which impacts the interpretation of the thinning_value. The available options depend on the selected thinning_type.

  • PERCENT — The thinning_value will reflect a percentage of the total points in the LAS dataset. This option is only available when thinning_type = "RANDOM".
  • NODE_COUNT —The thinning_value will reflect the total number of nodes that are allowed in the output. This option is only available when thinning_type = "RANDOM".
  • MIN —Selects the LAS point with the lowest elevation in each window size area. This option is only available when thinning_type = "WINDOW_SIZE".
  • MAX —Selects the LAS point with the highest elevation in each window size area. This option is only available when thinning_type = "WINDOW_SIZE".
  • CLOSEST_TO_MEAN —Selects the LAS point whose elevation is closest to the average value of all LAS points in each window size areas. This option is only available when thinning_type = "WINDOW_SIZE".
String
thinning_value
(Optional)

If thinning_type = "WINDOW_SIZE" this value represents the sampling area of that the LAS dataset will be divided by.

If thinning_type = "RANDOM" and thinning_method = "PERCENT", this value represents the percent of points from the LAS dataset that will be exported to the TIN.

If thinning_type = "RANDOM" and thinning_method = "NODE_COUNT", this value represents the total number of LAS points that can be exported to the TIN.

Double
max_nodes
(Optional)

The maximum number of nodes permitted in the output TIN. The default is 5 million.

Double
z_factor
(Optional)

The factor by which Z values will be multiplied. This is typically used to convert Z linear units to match XY linear units. The default is 1, which leaves elevation values unchanged.

Double

Code sample

LasDatasetToTin 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.LasDatasetToTin_3d('se_baltimore.lasd', 'se_bmore', 'RANDOM', 15, 3.28)
LasDatasetToTin example 2 (stand-alone script)

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

'''**********************************************************************
Name: LAS Dataset to TIN Example
Description: Create a TIN using bare earth lidar measurements. This 
             script is designed for use as a script tool.
**********************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback

# Set Local Variables
lasD = arcpy.GetParameterAsText(0)
inLas = arcpy.GetParameterAsText(1) #input las files
surfCons = arcpy.GetParameterAsText(2) #input surface constraints
sr = arcpy.GetParameter(3) #spatial reference of las dataset
outTin = arcpy.GetParameterAsText(4)
thinningType = arcpy.GetParameterAsText(5)
thinningMethod = arcpy.GetParameterAsText(6)
thinningValue = arcpy.GetParameter(7)
zFactor = arcpy.GetParameter(8)

try:
    arcpy.CheckOutExtension('3D')
    # Execute CreateLasDataset
    arcpy.management.CreateLasDataset(inLas, lasD, 'RECURSION', surfCons, sr)
    lasLyr = arcpy.CreateUniqueName('lasdToTin', 'in_memory')
    classCode = 2
    returnValue = 'LAST'
    # Execute MakeLasDatasetLayer
    arcpy.management.MakeLasDatasetLayer(lasD, lasLyr, classCode, returnValue)
    # Define extent of the area of interest
    env.extent(1426057, 606477, 1449836, 623246)
    # Execute LasDatasetToTin
    arcpy.ddd.LasDatasetToTin(lasLyr, outTin, thinningType, 
                              thinningMethod, thinningValue, zFactor)
    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
  • Extent
  • Output Coordinate System
  • 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

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
Tell us what you think.
© Copyright 2016 Environmental Systems Research Institute, Inc. | Privacy | Legal