Python でのジオメトリの操作

すべてのシンプル フィーチャクラスにはジオメトリ フィールドが必要です。通常、このフィールドの名前は Shape です(そうでない場合もあります)。Describe 関数を使用して、フィーチャクラスからジオメトリ フィールドの名前を取得できます。このためには shapeFieldName プロパティを使用します。ジオメトリ フィールドの値はジオメトリ オブジェクトで、ジオメトリ オブジェクトにはそのフィーチャを表すいくつかのプロパティがあります。次の例では、フィーチャクラス内のライン フィーチャごとにジオメトリ オブジェクトを作成し、その長さを合計する方法を示します。

ジオメトリの読み取りジオメトリの書き込み
import arcpy

inFeatures = "d:/base/data.gdb/roads"

# Create search cursor
#
rows = arcpy.SearchCursor(inFeatures)

# Calculate the total length of all roads
#
length = 0

shapeName = arcpy.Describe(inFeatures).shapeFieldName

# For each row, tally the length of the feature
#
for row in rows:
    feat = row.getValue(shapeName)
    length += feat.length

# Print the total length of all roads
#
print length

プロパティ

説明

面積

ポリゴンの面積。他のすべてのフィーチャ タイプの場合は空。

centroid

フィーチャ内またはフィーチャ上にある場合は、真の重心。そうでなければ、ラベル ポイントを返します(ポイント オブジェクトを返す)。

extent

範囲オブジェクトを返します。

firstPoint

フィーチャの最初の座標。ポイント オブジェクトを返します。

hullRectangle

凸包長方形の座標ペア。

isMultipart

このジオメトリのパート数が複数ならば True。

labelPoint

ラベルの位置を示すポイント。ポイント オブジェクトを返します(labelPoint は常にフィーチャ内またはフィーチャ上にあります)。

lastPoint

フィーチャの最後の座標。ポイント オブジェクトを返します。

長さ

線形フィーチャの長さ。ポイント、マルチポイントのフィーチャタイプの場合は空。

partCount

フィーチャのジオメトリ パートの数。

pointCount

ジオメトリの現在のパートを構成するポイント オブジェクトの数。

trueCentroid

フィーチャの重心。ポイント オブジェクトを返します。

type

ポリゴン、ポリライン、ポイント、マルチポイント、マルチパッチ、ディメンション、アノテーション。

ジオメトリのプロパティ

方法

説明

getPart({index})

特定のジオメトリ パートを構成するポイント オブジェクトの配列、または複数の配列(パートごとに 1 つずつ)を含む配列を返します。

ジオメトリ メソッド

関連項目


7/10/2012