Point File Information (3D Analyst)

Summary

Generates statistical information about one or more point files in a polygon or multipatch output.

Illustration

Point file information output

Usage

  • When a folder containing point data files is selected as input, the File Suffix must be entered. However, this is not needed for file inputs.

  • When the summarize option is not used, the statistical information presented in the feature attribute table consists of the point count, average point spacing, z-minimum, and z-maximum of each point file entered. A separate row is created for each input file encountered. The point spacing is an estimate that assumes the points within the input file are evenly spaced over the XY extent of each input file.

  • Each resulting feature will encompass the XY extent of an input file. The features can be created as 2D polygons or extruded multipatch features that provide a 3D bounding box with z-values at the base and top reflecting the range of elevation values found in the file. The multipatch can be visualized in 3D using ArcScene or ArcGlobe.

  • The summarize option is useful to statistically summarize information for each class code in the input file but is expensive, as each file must be scanned and analyzed.

  • The point spacing reported by Point File Information is not exact; it is an estimate. The point spacing given is a summary when looking at trends for collections of files. The tool uses a rough estimate that compares the area of the file's bounding box with the point count. It is most accurate when the rectangular extent of the file being examined is filled with data. Files with points over large water bodies or on the perimeter of a study area, only partially occupied with data, will not produce accurate estimates.

Syntax

arcpy.3d.PointFileInformation(input, out_feature_class, in_file_type, {file_suffix}, {input_coordinate_system}, {folder_recursion}, {extrude_geometry}, {decimal_separator}, {summarize_by_class_code}, {improve_las_point_spacing})
ParameterExplanationData Type
input
[input,...]

Any combination of folders and files storing point records that will be analyzed.

In the tool dialog window, a folder can also be specified as an input by selecting the desired folder in Windows Explorer and dragging it into the parameter's input box.

File; Folder
out_feature_class

The feature class that will be produced by this tool.

Feature Class
in_file_type

Specifies the format of the input files.

  • LASLidar data storage format defined by the American Society of Photogrammetry and Remote Sensing (ASPRS).
  • XYZXYZ file.
  • XYZIXYZI file.
  • GENERATEGENERATE file.
String
file_suffix
(Optional)

The suffix of the files to be imported when a folder is specified in the input. This parameter is required if an input folder is provided.

String
input_coordinate_system
(Optional)

The coordinate system of the input data.

Coordinate System
folder_recursion
(Optional)

Specifies whether data in subfolders will be used to generate results. The tool scans subfolders when an input folder is selected containing data in a subfolders directory. The output feature class will be generated with a row for each file encountered in the directory structure.

  • NO_RECURSIONOnly the data found in the input folder will be used to generate the results. This is the default.
  • RECURSIONAny data found in the input folder and its subdirectories will be used to generate results.
Boolean
extrude_geometry
(Optional)

Specifies whether the output will be created as a 2D polygon or multipatch feature class with extruded features that reflect the elevation range found in each file.

  • NO_EXTRUSIONThe output will be created as a 2D polygon feature class. This is the default.
  • EXTRUSIONThe output will be created as a multipatch feature class.
Boolean
decimal_separator
(Optional)

The decimal character used in the text file to differentiate the integer of a number from its fractional part.

  • DECIMAL_POINTA point is used as the decimal character. This is the default.
  • DECIMAL_COMMAA comma is used as the decimal character.
String
summarize_by_class_code
(Optional)

Specifies whether the results will summarize LAS files per class code or per LAS file.

  • NO_SUMMARIZEEach output feature will represent all the class codes found in a lidar file. This is the default.
  • SUMMARIZEEach output feature will represent a single class code found in a lidar file.
Boolean
improve_las_point_spacing
(Optional)

Specifies whether enhanced assessment of the point spacing in LAS files, which can reduce over-estimation caused by irregular data distribution, will be used.

  • LAS_SPACINGRegular point spacing estimate is used for LAS files, where the extent is equally divided by the number of points. This is the default.
  • NO_LAS_SPACINGBinning will be used to obtain a more precise point spacing estimate for LAS files. This may increase the tool's execution time.
Boolean

Derived Output

NameExplanationData Type
min_point_spacing

The average point spacing.

Double

Code sample

PointFileInformation example 1 (Python window)

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

arcpy.env.workspace = "C:/data"
arcpy.PointFileInformation_3d('las_files', "Test.gdb/two_las", 
                              in_file_type="LAS", file_suffix="las", 
                              input_coordinate_system="NAD 1983 UTM Zone 17N.prj", 
                              decimal_separator="DECIMAL_POINT")
PointFileInformation example 2 (stand-alone script)

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

'''****************************************************************************
Name: PointFileInformation Example
Description: This script demonstrates how to use the 
             PointFileInformation tool to create an output file that contains
             all LAS files under a parent folder.
****************************************************************************'''
# Import system modules
import arcpy

# Set environment settings
arcpy.env.workspace = "C:/data"
lidarList = arcpy.ListFiles("*.las")
if lidarList:
    # Set Local Variables
    outputFC = "Test.gdb/output_las_info"
    prj = "Coordinate Systems/Geographic Coordinate Systems/World/WGS 1984.prj"
    extrudeGeom = True # Indicates whether to create extruded geometry shapes
    sumClass = True # Indicates whether to summarize output by class code
    decSep = "DECIMAL_POINT" # Identifies the decimal separator
    
    #Execute PointFileInformation
    arcpy.PointFileInformation_3d(lidarList, outputFC, "LAS", "las", prj, 
                                "", extrudeGeom, decSep, sumClass)
    print("Finished executing Point File Information.")
else:
    print("There are no LAS files in {0}.".format(env.workspace))

Licensing information

  • Basic: Requires 3D Analyst
  • Standard: Requires 3D Analyst
  • Advanced: Requires 3D Analyst

Related topics