使用 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

属性

说明

area

面要素的面积值;对于所有其他要素类型为空

centroid

如果质心位于要素之内或要素之上则为真;否则返回标注点(返回一个点对象)

范围

返回一个范围对象

firstPoint

要素的第一个坐标;返回一个点对象

hullRectangle

凸包矩形的坐标对

isMultipart

如果此几何的部分数大于一,则为真

labelPoint

标注所在的点;返回一个点对象(标注点始终位于要素之内或要素之上)。

lastPoint

要素的最后一个坐标;返回一个点对象

长度

线状要素的长度;对于点和多点要素类型为空

partCount

要素几何部分的数目

pointCount

当前几何部分的点对象数

trueCentroid

要素的重心;返回一个点对象

类型

面、折线、点、多点、多面体、尺寸、注记

几何属性

方法

说明

getPart({index})

返回特定几何部分的点对象数组,或包含多个数组(每个数组对应一个部分)的数组

几何方法

相关主题


7/10/2012