概要
空間特性またはジオメトリック特性および各フィーチャの位置 (長さや面積、X、Y、Z、M 座標など) を示す新しい属性フィールドを入力フィーチャに追加します。
使用法
[ジオメトリ プロパティ] パラメーターに指定されているオプションに応じて、1 つまたは複数の属性フィールドが入力フィーチャに追加されます。入力フィーチャにそのフィールドがすでに存在している場合、そのフィールドの値が上書きされます。各ジオメトリ プロパティについて、追加されるフィールドを確認するには、次の表をご参照ください。
ジオメトリ プロパティ 追加されるフィールド 面積
POLY_AREA: ポリゴンの面積。
AREA_GEODESIC
AREA_GEO: 測地線に基づくポリゴンの面積。
CENTROID
CENTROID_X: 重心点の X 座標。
CENTROID_Y: 重心点の Y 座標。
CENTROID_Z: 重心点の Z 座標。このフィールドは、入力フィーチャが Z 値対応である場合にのみ追加されます。
CENTROID_M: 重心点の M 座標。このフィールドは、入力フィーチャが M 値対応である場合にのみ追加されます。
CENTROID_INSIDE
INSIDE_X: 入力フィーチャ内部または入力フィーチャ上の中心点の X 座標。
INSIDE_Y: 入力フィーチャ内部または入力フィーチャ上の中心点の Y 座標。
INSIDE_Z: 入力フィーチャ内部または入力フィーチャ上の中心点の Z 座標。このフィールドは、入力フィーチャが Z 値対応である場合にのみ追加されます。
INSIDE_M: 入力フィーチャ内部または入力フィーチャ上の中心点の M 座標。このフィールドは、入力フィーチャが M 値対応である場合にのみ追加されます。
EXTENT
EXT_MIN_X: フィーチャの X 座標の最小値。
EXT_MIN_Y: フィーチャの Y 座標の最小値。
EXT_MAX_X: フィーチャの X 座標の最大値。
EXT_MAX_Y: フィーチャの Y 座標の最大値。
長さ
LENGTH: ラインの長さ。
LENGTH_GEODESIC
LENGTH_GEO: 測地線に基づくラインの長さ。
LENGTH_3D
LENGTH_3D: ラインの 3D 長さ。
LINE_BEARING
BEARING: ラインの始点から終点までの方位。値は 0 ~ 360 です。0 は北、90 は東、180 は南、270 は西を意味します。
LINE_START_MID_END
START_X: ラインまたはポリゴン境界線の最初のポイントの X 座標。
START_Y: ラインまたはポリゴン境界線の最初のポイントの Y 座標。
START_Z: ラインまたはポリゴン境界線の最初のポイントの Z 座標。このフィールドは、入力フィーチャが Z 値対応である場合にのみ追加されます。
START_M: ラインまたはポリゴン境界線の最初のポイントの M 座標。このフィールドは、入力フィーチャが M 値対応である場合にのみ追加されます。
MID_X: ラインまたはポリゴン境界線の長さに沿った中間点の X 座標。
MID_Y: ラインまたはポリゴン境界線の長さに沿った中間点の Y 座標。
MID_Z: ラインまたはポリゴン境界線の長さに沿った中間点の Z 座標。このフィールドは、入力フィーチャが Z 値対応である場合にのみ追加されます。
MID_M: ラインまたはポリゴン境界線の長さに沿った中間点の M 座標。このフィールドは、入力フィーチャが M 値対応である場合にのみ追加されます。
END_X: ラインまたはポリゴン境界線の最後のポイントの X 座標。
END_Y: ラインまたはポリゴン境界線の最後のポイントの Y 座標。
END_Z: ラインまたはポリゴン境界線の最後のポイントの Z 座標。このフィールドは、入力フィーチャが Z 値対応である場合にのみ追加されます。
END_M: ラインまたはポリゴン境界線の最後のポイントの M 座標。このフィールドは、入力フィーチャが M 値対応である場合にのみ追加されます。
PART_COUNT
PART_COUNT: フィーチャを構成するパート数。
PERIMETER_LENGTH
PERIMETER: ポリゴンの周囲または境界線の長さ。
PERIMETER_LENGTH_GEODESIC
PERIM_GEO: 測地線に基づくポリゴンの周囲または境界線の長さ。
POINT_COUNT
PNT_COUNT: フィーチャを構成するポイント数。
POINT_X_Y_Z_M
POINT_X: ポイントの X 座標。
POINT_Y: ポイントの Y 座標。
POINT_Z: ポイントの Z 座標。このフィールドは、入力フィーチャが Z 値対応である場合にのみ追加されます。
POINT_M: ポイントの M 座標。このフィールドは、入力フィーチャが M 値対応である場合にのみ追加されます。
座標系が指定されている場合は、[長さの単位] および [面積単位] パラメーターで違う単位が選択されていない限り、長さと面積の計算はその座標系の単位となります。
このツールによって追加される属性フィールドは、フィーチャ レイヤーに追加できるフィールドによく似ています。フィールド値を上書きしたり、フィールドを削除したり、フィールド名を変更したりできます。これらのフィールドの値は、編集後に自動的に再計算されません。フィーチャを編集する場合は、このツールを再度実行して、フィールド値を更新する必要があります。
入力フィーチャに選択セットがある場合、選択されたフィーチャだけが追加フィールド内で計算された値を持ち、他のすべてのフィーチャは NULL 値を持ちます。
このツールは、ポイント、マルチポイント、ポリライン、ポリゴン、アノテーション フィーチャクラスに対して機能します。アノテーションは、ポリゴン フィーチャクラスとして扱われます。
注意:
このツールを実行すると、入力データが変更されます。詳しい説明および不適切なデータの変更を防ぐための方法については、「出力データセットを作成しないツール」をご参照ください。
構文
AddGeometryAttributes(Input_Features, Geometry_Properties, {Length_Unit}, {Area_Unit}, {Coordinate_System})
パラメーター | 説明 | データ タイプ |
Input_Features | 長さ、面積、X、Y、Z、M 座標などのプロパティを格納するため、新しい属性フィールドがこの入力フィーチャに追加されます。 | Feature Layer |
Geometry_Properties [Geometry_Properties,...] | 計算して新しい属性フィールドに入力される、ジオメトリまたは形状のプロパティを特定します。
| String |
Length_Unit (オプション) | 長さを計算する単位。
| String |
Area_Unit (オプション) | 面積を計算する単位。
| String |
Coordinate_System (オプション) | 座標、長さ、および面積が計算される座標系。デフォルトでは、入力フィーチャの座標系が使用されます。 | Coordinate System |
派生した出力
名前 | 説明 | データ タイプ |
Modified_Input_Features | 更新された入力フィーチャ。 | フィーチャ レイヤー |
コードのサンプル
次の Python ウィンドウ スクリプトは、AddGeometryAttributesツールの使用方法を示しています。
import arcpy
arcpy.env.workspace = r"C:\data\City.gdb"
arcpy.AddGeometryAttributes_management("roads", "LENGTH;LINE_START_MID_END")
各ライン フィーチャの表示範囲枠を取得し、その範囲内で 10 x 10 のグリッドを構築します。
# Name: GridCreation.py
# import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = r"C:\data\City.gdb"
arcpy.env.outputCoordinateSystem = arcpy.Describe("roads").spatialReference
# Set local variables
in_features = "roads"
properties = "EXTENT"
length_unit = ""
area_unit = ""
coordinate_system = ""
# Generate the extent coordinates using Add Geometry Properties tool
arcpy.AddGeometryAttributes_management(in_features, properties, length_unit,
area_unit,
coordinate_system)
# Use Search Cursor to walk through each feature and generate grids
with arcpy.da.SearchCursor(in_features, ["OID@", "EXT_MIN_X", "EXT_MIN_Y",
"EXT_MAX_X", "EXT_MAX_Y"]) as sCur:
for row in sCur:
minX, minY, maxX, maxY = row[1], row[2], row[3], row[4]
arcpy.CreateFishnet_management("fishnet_{0}".format(row[0]),
number_rows = 10,
number_columns = 10,
template = "{0} {1} {2} {3}".format(minX, maxX, minY, maxY),
origin_coord = "{0} {1}".format(minX, minY),
y_axis_coord = "{0} {1}".format(minX, maxY),
corner_coord = "{0} {1}".format(maxX, maxY),
geometry_type = "POLYGON",
labels = "NO_LABELS")
環境
ライセンス情報
- Basic: はい
- Standard: はい
- Advanced: はい