テレイン解像度範囲の変更 (Change Terrain Resolution Bounds) (3D Analyst)

3D Analyst のライセンスで利用可能。

サマリー

指定したテレイン データセットでフィーチャクラスに適用するピラミッド レベルを変更します。

使用法

  • ピラミッド解像度範囲は、標高点として指定されていないサーフェス タイプでのみ割り当てることができます。

  • 新しいピラミッドを使用する場合、または現在の範囲で表示パフォーマンスが十分でない場合は、テレイン フィーチャの解像度範囲を調整することを検討してください。

  • この操作を行っても、テレイン データセットは無効にはならないため、[Build Terrain (テレインの構築)] ツールを使用してテレイン データセットを再構築する必要はありません。

パラメーター

ラベル説明データ タイプ
入力テレイン

処理されるテレイン データセット。

Terrain Layer
入力フィーチャクラス

テレインが参照するフィーチャクラスによって、そのピラミッド レベルの解像度が変更されます。

String
ピラミッド 解像度の下限
(オプション)

選択したフィーチャクラスの新しいピラミッド レベル解像度の下限です。

Double
ピラミッド解像度の上限
(オプション)

選択したフィーチャクラスの新しいピラミッド レベル解像度の上限です。

Double
オーバービューに適用
(オプション)

フィーチャクラスをテレイン データセットの概観図に適用するかどうかを指定します。

  • オン - テレイン データセットの概観図の表示にフィーチャクラスを適用します。これがデフォルトです。
  • オフ - テレイン データセットの概観図の表示からフィーチャクラスを除外します。
Boolean

派生した出力

ラベル説明データ タイプ
更新された入力テレイン

更新されたテレイン。

テレイン レイヤー

arcpy.ddd.ChangeTerrainResolutionBounds(in_terrain, feature_class, {lower_pyramid_resolution}, {upper_pyramid_resolution}, {overview})
名前説明データ タイプ
in_terrain

処理されるテレイン データセット。

Terrain Layer
feature_class

テレインが参照するフィーチャクラスによって、そのピラミッド レベルの解像度が変更されます。

String
lower_pyramid_resolution
(オプション)

選択したフィーチャクラスの新しいピラミッド レベル解像度の下限です。

Double
upper_pyramid_resolution
(オプション)

選択したフィーチャクラスの新しいピラミッド レベル解像度の上限です。

Double
overview
(オプション)

フィーチャクラスをテレイン データセットの概観図に適用するかどうかを指定します。

  • OVERVIEW テレイン データセットの概観図の表示にフィーチャクラスを適用します。これがデフォルトです。
  • NO_OVERVIEWテレイン データセットの概観図の表示からフィーチャクラスを除外します。
Boolean

派生した出力

名前説明データ タイプ
derived_out_terrain

更新されたテレイン。

テレイン レイヤー

コードのサンプル

ChangeTerrainResolutionBounds (テレイン解像度範囲の変更) の例 1 (Python ウィンドウ)

次のサンプルは、Python ウィンドウでこのツールを使用する方法を示しています。

import arcpy
from arcpy import env

env.workspace = 'C:/data'
arcpy.ddd.ChangeTerrainResolutionBounds('sample.gdb\featuredataset/terrain',
                                       'breaklines', 2.5, 7.5)
ChangeTerrainResolutionBounds (テレイン解像度範囲の変更) の例 2 (スタンドアロン スクリプト)

次のサンプルは、スタンドアロン Python スクリプトでこのツールを使用する方法を示しています。

'''****************************************************************************
Name: Update Terrain
Description: This script demonstrates how to update a terrain dataset
             with new elevation measurements obtained from Lidar by
             importing LAS files to multipoint features, then appending the
             new points to another multipoint feature that participates in a
             terrain. The terrain's pyramids are modified to optimize its
             draw speed.
****************************************************************************'''
# Import system modules
import arcpy

try:
    # Set environment settings
    arcpy.env.workspace = "C:/data"

    # Set Variables
    inTerrain = "sample.gdb/featuredataset/terrain"
    currentPts = "existing_points"
    lasFiles = ['las/NE_Philly.las',
                'las/NW_Philly.las']
    newPts = 'in_memory/update_pts'
    # Define spatial reference of LAS files using factory code
    # for NAD_1983_StatePlane_Pennsylvania_South
    lasSR = arcpy.SpatialReference(2272)

    arcpy.AddMessage("Converting LAS files to multipoint features...")
    arcpy.ddd.LASToMultipoint(lasFiles, newPts, 1.5, 2, 1,
                              'INTENSITY', lasSR)

    arcpy.AddMessage("Appending LAS points to {0}..."\
                     .format(currentPts))
    arcpy.ddd.AppendTerrainPoints(inTerrain, currentPts, newPts)

    arcpy.AddMessage("Changing terrain pyramid reference scales...")
    arcpy.ddd.ChangeTerrainReferenceScale(inTerrain, 1000, 500)
    arcpy.ddd.ChangeTerrainReferenceScale(inTerrain, 2500, 2000)

    arcpy.AddMessage("Adding terrain pyramid level...")
    arcpy.ddd.AddTerrainPyramidLevel(inTerrain, "", "4 4500")

    arcpy.AddMessage("Changing pyramid resolution bounds for breaklines...")
    arcpy.ddd.ChangeTerrainResolutionBounds(inTerrain, "breaklines", 5, 4)

    arcpy.AddMessage("Building terrain...")
    arcpy.ddd.BuildTerrain(inTerrain)

    arcpy.AddMessage("Completed updates.")

except arcpy.ExecuteError:
    print(arcpy.GetMessages())
except Exception as err:
    print(err)

関連トピック