摘要
在面或多面体输出中生成有关一个或多个点文件的统计信息。
插图
用法
如果选择包含点数据文件的文件夹作为输入,必须输入文件后缀。但对于文件输入,不需要此后缀。
如果没有使用汇总选项,要素属性表中显示的统计信息包括每个输入的点文件的点数、平均点间距、最小 z 值和最大 z 值。每个输入文件都单独生成一行信息。点间距值是通过假设每个输入文件中的点都平均分布在该输入文件的 XY 范围内估算出来的。
每个生成的要素都将包含输入文件的 XY 范围。可将要素创建为 2D 面或提供 3D 边界框(其底部和顶部的 z 值反映了文件中的高程值范围)的拉伸多面体要素。可使用 ArcScene 或 ArcGlobe 以 3D 形式显示多面体。
汇总选项在统计汇总输入文件中每个类代码的信息时十分有用,但由于必须扫描和分析每个文件,代价较高。
点文件信息报告的点间距并不精确,它是一个估计值。所给出的点间距是考察多组文件趋势时的汇总结果。该工具使用粗略的估计值,只是将点数与文件边界框的面积做了比较。如果所检查文件的矩形范围内布满了数据,则精确度最高。对于点主要分布在大型水体上或者研究区域周围的文件,由于只是部分填充了数据,因此,不能生成精确的估计值。
语法
PointFileInformation_3d (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})
参数 | 说明 | 数据类型 |
input [input,...] | 将被分析的一个或多个点数据文件或文件夹。 | Folder; File |
out_feature_class | 将由此工具生成的要素类。 | Feature Class |
in_file_type | 输入文件的格式。
| String |
file_suffix (可选) | 在输入中指定文件夹时导入的文件的后缀。如果提供输入文件夹,则此参数为必填项。 | String |
input_coordinate_system (可选) | 输入数据的坐标系。 | Coordinate System |
folder_recursion (可选) |
当所选输入文件夹中的子文件夹含有数据时,扫描子文件夹。为目录结构中包含的每个文件生成一行输出要素类。
| Boolean |
extrude_geometry (可选) |
指定是创建 2D 面要素类还是创建具有拉伸要素(可反映在每个文件中找到的高程范围)的多面体要素类。
| Boolean |
decimal_separator (可选) | 文本文件中用于区分数字的整数部分与其小数部分的小数分隔符。
| String |
summarize_by_class_code (可选) |
指定结果将按类代码还是 LAS 文件汇总 LAS 文件。
| Boolean |
improve_las_point_spacing (可选) | 提供 LAS 文件中的点间距增强评估,可减少由不规则数据分布导致的过高评估。
| Boolean |
代码实例
PointFileInformation 示例 1(Python 窗口)
下面的示例演示了如何在 Python 窗口中使用此工具。
import arcpy
from arcpy import env
arcpy.CheckOutExtension("3D")
env.workspace = "C:/data"
arcpy.PointFileInformation_3d(env.workspace, "Test.gdb/two_las", "LAS", "las", "Coordinate Systems/Projected Coordinate Systems/UTM/NAD 1983/NAD 1983 UTM Zone 17N.prj", True, True, "DECIMAL_POINT", True)
PointFileInformation 示例 2(独立脚本)
下面的示例演示了如何在独立 Python 脚本中使用此工具。
'''****************************************************************************
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
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"
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)
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)