import arcpy
# 设置输入图层路径
polygon_layer = r"村界" # 村界图层
village_layer = r"PolygonZY" # PolygonZY图层
# 创建查询表达式来选择与 村界 相交的 PolygonZY 要素
arcpy.management.SelectLayerByLocation(village_layer, "INTERSECT", polygon_layer)
# 使用 UpdateCursor 遍历 PolygonZY 图层的选中要素并赋值
with arcpy.da.UpdateCursor(village_layer, ["QSDWMC", "SHAPE@", "OID@"]) as cursor:
for row in cursor:
# 获取当前 PolygonZY 要素与 村界 图层相交的要素的 "界线名" 字段值
with arcpy.da.SearchCursor(polygon_layer, ["界线名", "SHAPE@", "OID@"]) as search_cursor:
for search_row in search_cursor:
if row[1].overlaps(search_row[1]) or row[1].within(search_row[1]):
# 将 PolygonZY 的 QSDWMC 字段赋值为 村界 图层的 "界线名" 字段值
row[0] = search_row[0] # 将 "界线名" 字段值赋给 QSDWMC 字段
cursor.updateRow(row) # 更新 PolygonZY 图层的 QSDWMC 字段值
pri
ArcGISPro 将 村界 图层中与 PolygonZY 图层要素相交或包含的要素的 界线名 字段值,赋值给 PolygonZY 的 QSDWMC 字段。核心逻辑是通过空间关系匹配属性值。
最新推荐文章于 2025-04-11 16:21:47 发布