テレインの基準縮尺を変更 (Change Terrain Reference Scale) (3D Analyst)

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

サマリー

テレイン ピラミッド レベルに関連付けられた基準縮尺を変更します。

使用法

パラメーター

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

処理対象のテレイン データセット。

Terrain Layer
旧基準縮尺

既存のピラミッド レベルの基準縮尺です。

Long
新基準縮尺

ピラミッド レベルの新しい基準縮尺です。

Long

派生した出力

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

更新されたテレイン。

テレイン レイヤー

arcpy.ddd.ChangeTerrainReferenceScale(in_terrain, old_refscale, new_refscale)
名前説明データ タイプ
in_terrain

処理対象のテレイン データセット。

Terrain Layer
old_refscale

既存のピラミッド レベルの基準縮尺です。

Long
new_refscale

ピラミッド レベルの新しい基準縮尺です。

Long

派生した出力

名前説明データ タイプ
derived_out_terrain

更新されたテレイン。

テレイン レイヤー

コードのサンプル

ChangeTerrainReferenceScale (テレインの基準縮尺を変更) の例 1 (Python ウィンドウ)

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

arcpy.env.workspace = 'C:/data'
arcpy.ChangeTerrainReferenceScale_3d('terrain.gdb/terrainFDS/terrain1', 
                                   1000, 2000)
ChangeTerrainReferenceScale (テレインの基準縮尺を変更) の例 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.AppendTerrainPoints_3d(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.ChangeTerrainResolutionBounds_3d(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)

ライセンス情報

  • Basic: 次のものが必要 3D Analyst
  • Standard: 次のものが必要 3D Analyst
  • Advanced: 次のものが必要 3D Analyst

関連トピック