概要
ジェネレート、XYZ、またはプロファイル データを格納する ASCII テキスト ファイルに 3D フィーチャをエクスポートします。
使用法
[プロファイル] オプションは、折れ線グラフの生成に使用できるレコードに 3D ラインを変換する 2 列の ASCII ファイルを書き込みます。ソース フィーチャクラスの各ラインは個別のファイルに書き出され、そのファイルの名前にラインの一意の ID が追加されます。ASCII ファイルの各行には、ラインの開始位置から頂点 (D) までの距離とその頂点の標高がこの順序で含まれます。結果として生成される ASCII ファイルをグラフ アプリケーションに読み込むとき、最初の列を使用して X 軸が定義され、2 つ目の列を使用して Y 軸が定義されます。
0 z1D1 z2D2 z3D3 z4
XYZ オプションは、x、y、および z 座標を浮動小数点値として書き込みます。そこでは、各行はポイント レコードを表します。
x1 y1 z1x2 y2 z2x3 y3 z3x4 y4 z4
ジェネレート形式は、ヘッダー行をサポートしていませんが、すべての入力フィーチャを 1 つのファイルに格納します。
- ポイント フィーチャはそれぞれの ID および XYZ 座標とともに格納され、END キーワードは最後の行を示します。
id1 x1 y1 z1id2 x2 y2 z2id3 x3 y3 z3id4 x4 y4 z4END
- ラインおよびポリゴン フィーチャは END キーワードによって区切られ、END キーワードが 2 つ連続していればファイルの末尾であることを示します。
id1x1 y1 z1x2 y2 z2x3 y3 z3x4 y4 z4END id2x1 y1 z1x2 y2 z2END END
- ポイント フィーチャはそれぞれの ID および XYZ 座標とともに格納され、END キーワードは最後の行を示します。
構文
FeatureClassZToASCII(in_feature_class, output_location, out_file, {format}, {delimiter}, {decimal_format}, {digits_after_decimal}, {decimal_separator})
パラメーター | 説明 | データ タイプ |
in_feature_class | 3D ポイント、マルチポイント、ポリライン、またはポリゴンの各フィーチャクラスが ASCII ファイルにエクスポートされます。 | Feature Layer |
output_location | 出力ファイルが書き込まれるフォルダー。 | Folder |
out_file | 生成される ASCII ファイルの名前。 ラインまたはポリゴン フィーチャクラスを XYZ 形式にエクスポートすると、そのファイル名がベース名として使用されます。XYZ 形式はファイルにつき 1 つのラインまたはポリゴンのみをサポートするため、各フィーチャに一意のファイル出力が割り当てられます。マルチパート フィーチャの各パートも個別のファイルに書き出されます。このファイル名には各フィーチャの OID と、各ファイル名を一意にするために必要な追加の文字が付加されます。 | String |
format (オプション) | ASCII ファイルの作成形式を指定します。
| String |
delimiter (オプション) | テキスト ファイル テーブルの列内のエントリの区切りを示す区切り文字を指定します。
| String |
decimal_format (オプション) | 出力ファイルに格納される有効桁数を決定する方法を指定します。
| String |
digits_after_decimal (オプション) | 出力ファイルに書き込まれる浮動小数点値の小数点以下の桁数。このパラメーターは、[10 進表記] パラメーターが [指定された数] (Python では decimal_format=FIXED) に設定されている場合に使用されます。 | Long |
decimal_separator (オプション) | 整数部と小数部を区別する小数記号を指定します。
| String |
派生した出力
名前 | 説明 | データ タイプ |
derived_output | 出力ファイルが書き込まれるフォルダー。 | フォルダー、ファイル |
コードのサンプル
FeatureClassZToASCII (3D フィーチャクラス → ASCII) の例 1 (Python ウィンドウ)
次のサンプルは、Python ウィンドウでこのツールを使用する方法を示しています。
import arcpy
from arcpy import env
arcpy.CheckOutExtension("3D")
env.workspace = "C:/data"
arcpy.FeatureClassZToASCII_3d("LidarPts.shp", "", "ASCII_LidarPts.txt",
"GENERATE", "COMMA", "FIXED", 6, "DECIMAL_POINT")
FeatureClassZToASCII (3D フィーチャクラス → ASCII) の例 2 (スタンドアロン スクリプト)
次のサンプルは、スタンドアロン Python スクリプトでこのツールを使用する方法を示しています。
'''****************************************************************************
Name: FeatureClassZToASCII Example
Description: This script demonstrates how to use the
FeatureClassZToASCII tool to create generate files for all
z-aware point features in a given workspace.
****************************************************************************'''
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'
# List all points in the target workspace
fcList = arcpy.ListFeatureClasses("*", "POINT")
if fcList:
# Set Local Variables
outFolder = "C:/output"
outFormat = "GENERATE"
delimeter = "SPACE"
decimal = "FIXED"
digits = 3
dec_sep = "DECIMAL_POINT"
for fc in fcList:
# Use Describe method to evaluate whether the feature class is z-aware
desc = arcpy.Describe(fc)
if desc.hasZ == True:
# Define the output file name by replacing '.shp' with _ascii.txt
outName = fc.replace('.shp', '') + "_ascii.txt"
#Execute FeatureClassZToASCII_3d
arcpy.FeatureClassZToASCII_3d(fc, outFolder, outName, outFormat, delimeter, decimal, digits, dec_sep)
else:
print "There are no feature classes in the " + env.workspace + " directory."
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)
環境
ライセンス情報
- Basic: 次のものが必要 3D Analyst
- Standard: 次のものが必要 3D Analyst
- Advanced: 次のものが必要 3D Analyst