要素类经过编辑之后,【OBJECTID】字段会变得不规律。应部分网友要求,做了这个从上到下、从左到右排序的工具。
不过后来在ArcGIS Pro中发现了一个【排序】工具,已经可以完美实现这个功能需求,发现自己做了个白工。
不过做了不能白做,而且和【排序】工具相比还是有点优势,不用打开工具箱,输入参数,还是会更方便一点,因此还是水一篇。
一、要实现的功能
如上图所示,在待处理的要素上右键单击,在弹出的右键列表中,点击【CC工具箱——从上至下从左至右排序】按钮即可。
生成结果和原来的对比如下:
打开要素类的标注,标注【OBJECTID】字段。
左侧为处理前的要素,没有规律。
右侧为处理后的要素,【OBJECTID】字段实现了从上到下、从左到右排序。
二、实现流程
发现【排序】工具后,我把原来的代码全删了。直接调用【排序】工具,因此代码量很少,基本没什么东西。
// 排序
Arcpy.Sort(ly.Name, gdb + @"\sort_fc", "Shape ASCENDING", "UL");
// 更新要素
Arcpy.CopyFeatures(gdb + @"\sort_fc", fc_path, true);
核心代码就两行,真是感觉写了个寂寞。
【排序】工具会生成新的要素,用【复制要素】工具再覆盖回来即可。
三、工具文件分享
我把工具都集合成工具箱,不再单独放单个工具,可以到这里下载完整工具箱,会不断更新:
【ArcGIS Pro二次开发】:CC工具箱https://blog.csdn.net/xcc34452366/article/details/131506345PS:可以直接点击...bin\Debug\net6.0-windows\下的.esriAddinX文件直接安装。