专栏名称: 小猿猴GISer
GIS遥感交流学习
目录
相关文章推荐
51好读  ›  专栏  ›  小猿猴GISer

DeepSeek几秒钟搞定上百个图斑的四至范围,顺便搞了个工具送给大家!

小猿猴GISer  · 公众号  ·  · 2025-02-05 18:06

正文

我向DeepSeek发出请求:

在ArcGIS Pro计算出一个图层下每个图斑的四至坐标,在数据属性表中新建一个字段来保存每个图斑的四至坐标信息,并做个小工具。


于是我看到这样严谨又深度的思考:

首先明确了四至坐标的定义—

嗯,用户让我写一个在ArcGIS Pro中运行的Python代码,用来计算图层中每个图斑的四至坐标,并在属性表里新建字段保存这些信息。好的,首先我需要理解用户的需求。四至坐标通常指的是一个要素的东、西、南、北四个方向的边界坐标,也就是每个要素的最小和最大经纬度或者投影坐标。

然后理顺了操作方法—
首先,我应该考虑如何获取每个要素的边界范围。在ArcPy中,要素的几何对象有extent属性,可以获取到该要素的范围,里面包含了XMin、XMax、YMin、YMax这些属性。这样就能得到每个方向的最大最小值了。
接下来,用户需要在属性表中新建一个字段来保存这些四至信息。这个字段应该是文本类型的,比如字符串类型,用来存储格式化后的坐标信息。可能需要先检查这个字段是否存在,如果不存在的话就新建一个,比如用AddField_management函数。
然后,遍历图层中的每个要素,计算它们的四至坐标,并将这些信息组合成字符串,写入到新建的字段中。这里需要用更新游标(UpdateCursor)来逐行处理每个要素。
......

甚至还注意了很多细节—

字段长度问题: 字段的长度需要足够长,比如100可能不够,特别是如果坐标值很长的话。可能需要设置更大的长度,比如200或者更多。或者根据实际情况调整。

坐标和方向问题: 还需要考虑坐标系的问题,如果数据是地理坐标系,X是经度,Y是纬度,那么西东是X的范围,南北是Y的范围。但如果是投影坐标系,比如UTM,X和Y的单位是米,这时候西东可能对应X的增减,而南北对应Y的增减。

异常情况问题: 需要添加错误处理,比如try-except块,以及处理几何为空的情况,比如使用geom是否为None来判断。


然后给了我一段代码:



我尝试把这段代码做成个小工具,
没想到,真的一下子就成功了!



这里输入要计算四至的数据即可,
然后就会在属性表自动生成一个字段,
记录了这个数据下所有图斑的四至范围!




总体感受:

其实这个案例并不难,
但是DeepSeek严谨的思考,
和细节的把控,
以及代码的简洁高效,
着实令人惊叹!

ArcGIS Pro的批量计算四至工具获取方式:
后台回复: 四至计算



系统学习更多的GIS实用内容,

点击“ 阅读原文 ”或识别下方二维码,

进入学院,成为老铁会员,

数百节实用课程免费畅学!









请到「今天看啥」查看全文