サマリ
入力フィーチャの属性から得られる高さ値を使用して 3D フィーチャを作成します。
使用法
ポイント、マルチポイント、ライン、ポリゴンのジオメトリをサポートします。
各フィーチャの標高は、指定した高さフィールドの値から得られます。ライン フィーチャでは、オプションとして 2 つ目の高さフィールドを指定できます。2 つの高さフィールドを使用すると、各ライン フィーチャは 1 つ目の高さフィールドの Z 値から開始され、2 つ目の高さフィールドの Z 値で終了します。中間にある頂点の高さは、2 つのエンドポイント間の傾斜に基づいて内挿されます。
構文
FeatureTo3DByAttribute_3d (in_features, out_feature_class, height_field, {to_height_field})
パラメータ | 説明 | データ タイプ |
in_features | 3D フィーチャを作成するために使用されるフィーチャ。 | Feature Layer |
out_feature_class | このツールで生成されるフィーチャクラス。 | Feature Class |
height_field | 作成される 3D フィーチャの高さを定義するフィールド。 | Field |
to_height_field (オプション) | オプションの 2 つ目の高さフィールドで、ラインで使用されます。2 つの高さフィールドを使用すると、各ラインは 1 つ目の高さから開始し、2 つ目の高さで終了します (傾斜がつきます)。 | Field |
コードのサンプル
FeatureTo3DByAttribute (属性でフィーチャを 3D に変換) の例 1 (Python ウィンドウ)
次のサンプルは、Python ウィンドウでこのツールを使用する方法を示しています。
import arcpy
from arcpy import env
arcpy.CheckOutExtension('3D')
env.workspace = 'C:/data'
arcpy.FeatureTo3DByAttribute_3d('Points2D.shp', 'Points3D.shp', 'Elevation')
FeatureTo3DByAttribute (属性でフィーチャを 3D に変換) の例 2 (スタンドアロン スクリプト)
次のサンプルは、スタンドアロン Python スクリプトでこのツールを使用する方法を示しています。
'''****************************************************************************
Name: FeatureTo3DByAttribute Example
Description: This script demonstrates how to use the
FeatureTo3DByAttribute tool.
****************************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback
from arcpy import env
try:
# Obtain a license for the ArcGIS 3D Analyst extension
arcpy.CheckOutExtension('3D')
# Set environment settings
env.workspace = 'C:/data'
# Set Local Variables
InFC = 'Points_2D.shp'
Height_Field = 'POPULATION'
# Ensure output has unique name
OutFC = arcpy.CreateUniqueName('Points_3D.shp')
# Execute ConstructSightLines
arcpy.FeatureTo3DByAttribute_3d(InFC, OutFC, Height_Field)
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)
環境
ライセンス情報
- ArcGIS for Desktop Basic: 次のものが必要 3D Analyst
- ArcGIS for Desktop Standard: 次のものが必要 3D Analyst
- ArcGIS for Desktop Advanced: 次のものが必要 3D Analyst