概要
LAS ポイントにフィルターを適用し、サーフェス制御フィーチャの適用をコントロールできる LAS データセット レイヤーを作成します。
使用法
LAS データセット レイヤーは、LIDAR データをフィルタリングした後で解析を実行するために使用できます。たとえば、地表面の測量値を示すクラス コード 2 を対象としてフィルタリングした後、[LAS データセット → ラスター (LAS Dataset To Raster)] ツールの入力として結果レイヤーを使用することで、デジタル標高モデル (DEM) を簡単に作成できます。
メモ:
結果レイヤーは、[レイヤー ファイルの保存 (Save To Layer File)] ツールを使用してレイヤー ファイルとして保存することができます。
構文
arcpy.management.MakeLasDatasetLayer(in_las_dataset, out_layer, {class_code}, {return_values}, {no_flag}, {synthetic}, {keypoint}, {withheld}, {surface_constraints}, {overlap})
パラメーター | 説明 | データ タイプ |
in_las_dataset | 処理対象の LAS データセット。 | LAS Dataset Layer |
out_layer | 作成される LAS データセット レイヤーの名前。バックスラッシュまたはスラッシュを使用して、グループ レイヤーを示すことができます。 | LAS Dataset Layer |
class_code [class_code,...] (オプション) | 分類コードで LAS ポイントをフィルタリングできます。有効な値の範囲は、LAS データセットが参照する LAS ファイルのバージョンがサポートしているクラス コードによって変わります。デフォルトでは、すべてのクラス コードが選択されます。
| String |
return_values [return_values,...] (オプション) | LAS ポイントのフィルタリングに使用するリターン値。値が指定されていない場合は、すべてのリターンが使用されます。
| String |
no_flag (オプション) | 分類フラグが割り当てられていないデータ ポイントを表示および解析のために有効化するかどうかを指定します。
| Boolean |
synthetic (オプション) | Synthetic のフラグが設定されたデータ ポイント、つまり LIDAR 以外のデータ ソースからのポイントを表示および解析のために有効化するかどうかを指定します。
| Boolean |
keypoint (オプション) | モデル キー ポイントのフラグが設定されたデータ ポイント、つまり間引きの対象外の重要な測定値を表示および解析のために有効化するかどうかを指定します。
| Boolean |
withheld (オプション) | Withheld のフラグが設定されたデータ ポイント (通常は、不要なノイズ測定値を示す) を表示および解析のために有効化するかどうかを指定します。
| Boolean |
surface_constraints [surface_constraints,...] (オプション) | レイヤー内で有効化されるサーフェス制御フィーチャの名前。すべてのサーフェス制御がデフォルトで有効となります。 | String |
overlap (オプション) | オーバーラップとしてフラグが設定されたデータ ポイントを表示および解析のために有効化するかどうかを指定します。
| Boolean |
コードのサンプル
次のサンプルは、Python ウィンドウでこのツールを使用する方法を示しています。
arcpy.env.workspace = 'C:/data'
arcpy.MakeLasDatasetLayer_management('Baltimore.lasd', 'Baltimore Layer',
class_code=[2, 6], return_values=['LAST', 'SINGLE'])
次のサンプルは、スタンドアロン Python スクリプトでこのツールを使用する方法を示しています。
'''*********************************************************************
Name: Export Elevation Raster from Ground LAS Measurements
Description: This script demonstrates how to export
ground measurements from LAS files to a raster using a
LAS dataset. This sample is designed to be used as a script
tool.
*********************************************************************'''
# Import system modules
import arcpy
try:
# Set Local Variables
inLas = arcpy.GetParameterAsText(0)
recursion = arcpy.GetParameterAsText(1)
surfCons = arcpy.GetParameterAsText(2)
classCode = arcpy.GetParameterAsText(3)
returnValue = arcpy.GetParameterAsText(4)
spatialRef = arcpy.GetParameterAsText(5)
lasD = arcpy.GetParameterAsText(6)
outRaster = arcpy.GetParameterAsText(7)
cellSize = arcpy.GetParameter(8)
zFactor = arcpy.GetParameter(9)
# Execute CreateLasDataset
arcpy.management.CreateLasDataset(inLas, lasD, recursion, surfCons, sr)
# Execute MakeLasDatasetLayer
lasLyr = arcpy.CreateUniqueName('Baltimore')
arcpy.management.MakeLasDatasetLayer(lasD, lasLyr, classCode, returnValue)
# Execute LasDatasetToRaster
arcpy.conversion.LasDatasetToRaster(lasLyr, outRaster, 'ELEVATION',
'TRIANGULATION LINEAR WINDOW_SIZE 10', 'FLOAT',
'CELLSIZE', cellSize, zFactor)
print(arcpy.GetMessages())
except arcpy.ExecuteError:
print(arcpy.GetMessages())
except Exception as err:
print(err.args[0])
finally:
arcpy.management.Delete(lasLyr)
ライセンス情報
- Basic: はい
- Standard: はい
- Advanced: はい