免费视频|新人指南|投诉删帖|广告合作|地信网APP下载

楼主: William4251
收起左侧

[二次开发] Arcgis 的python二次开发 三调国土空间规划一键转换工具箱

    [复制链接]

0

主题

1478

铜板

4

好友

助理工程师

Rank: 5Rank: 5

积分
142
发表于 2021-8-30 10:37 | 显示全部楼层
谢谢分享
回复

使用道具 举报

0

主题

771

铜板

4

好友

技术员

Rank: 3Rank: 3

积分
88
发表于 2021-8-31 18:52 | 显示全部楼层
感谢分享
回复

使用道具 举报

0

主题

2万

铜板

3

好友

传奇会员

Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30

积分
52512

宣传勋章

发表于 2021-10-8 11:48 | 显示全部楼层
1111111111
回复 支持 反对

使用道具 举报

2

主题

1337

铜板

2

好友

工程师

Rank: 7Rank: 7Rank: 7

积分
414
发表于 2021-10-8 16:29 | 显示全部楼层
谢谢分享~~~谢谢分享~~~谢谢分享~~~
回复 支持 反对

使用道具 举报

2

主题

1829

铜板

1

好友

助理工程师

Rank: 5Rank: 5

积分
111
发表于 2021-10-9 08:20 | 显示全部楼层
谢谢分享~~~谢谢分享~~~谢谢分享~~~
回复 支持 反对

使用道具 举报

2

主题

1万

铜板

10

好友

至尊VIP

Rank: 24Rank: 24Rank: 24Rank: 24Rank: 24Rank: 24

积分
990
发表于 2021-10-14 14:27 | 显示全部楼层
求助大神


Traceback (most recent call last):
  File "<string>", line 2, in <module>
  File "c:\program files (x86)\arcgis\desktop10.2\arcpy\arcpy\management.py", line 3052, in AddField
    raise e
ExecuteError: 执行失败。参数无效。
ERROR 000313: 字段名称的长度不能超过 10

执行(AddField)失败。
QQ图片20211014142613.png
回复 支持 反对

使用道具 举报

5

主题

4402

铜板

3

好友

高级工程师

Rank: 9Rank: 9Rank: 9

积分
983
发表于 2021-10-14 17:03 | 显示全部楼层
楼上那个字段名称过长的 是SHP文件吧 把文件放到GDB或者MDB里试试 10.2以前的SHP字段名可以5个汉字,之后的版本是3个汉字
回复 支持 反对

使用道具 举报

5

主题

4402

铜板

3

好友

高级工程师

Rank: 9Rank: 9Rank: 9

积分
983
发表于 2021-10-14 17:16 | 显示全部楼层
不知道你是哪个地区的,国家版的用地用海分类指南中明确了三调工作分类和用地用海分类的对应关系,有一对一,一对多等多种情况,对面脚本能自动实现的规划应该是一对一的条件,其他条件最好的表达方式应该是转换到当地最可能最多的那一类并加标记,这种是脱离不了人工判读的
实现的时候可以做成字典
table = arcpy.SearchCursor(bz_excel)
for row in table:
    dzb_table[row.dlbm] = [row.ydbm,row.ydmc]

这种就是三调地类与用地用海分类生成字典的一种方式
然后用更新游标,对用地用海分类赋值就行了
rows = arcpy.UpdateCursor(DLTB)
for row in rows:
    row.ydbm = dzb_table[sd][0]
    row.ydmc = dzb_table[sd][1]
    rows.updateRow(row)

还有就是用地用海分类的一级类二级类三级类的表达上 和三调的表达有一些不同 并不是全都有二级类和三级类 所以一般会在一个分类字段里同时存在三个级另分类的表达方式,市级数据库规范中现状用地用海XZYDYH层也只有一个用地用海分类字段的设计 如果想要所有分级全建可以在字典的EXCEL中多做几列,然后在更新数据的时候多写几个赋值 也可以用代码长度做条件截取不同的位数给一级二级三级分类 再用匹配的方式赋值分类名称。
回复 支持 反对

使用道具 举报

0

主题

2434

铜板

1

好友

至尊VIP

Rank: 24Rank: 24Rank: 24Rank: 24Rank: 24Rank: 24

积分
60
QQ
发表于 2021-10-19 09:07 | 显示全部楼层
谢谢分享!!!!
回复

使用道具 举报

2

主题

1120

铜板

6

好友

技术员

Rank: 3Rank: 3

积分
83
 楼主| 发表于 2021-10-26 14:14 | 显示全部楼层
hunterlcg 发表于 2021-10-14 17:16
不知道你是哪个地区的,国家版的用地用海分类指南中明确了三调工作分类和用地用海分类的对应关系,有一对一 ...

首先确实只能解决一部分三调转换的问题,有一些需要人工转换的我留了空值,其次除了一对一还有一些是多对一,所以就没有用字典,因为无法一一对应,其他的就如你说的那样。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

在线客服
快速回复 返回顶部 返回列表