当前位置: 首页 > news >正文

ArcGIS中批量获取输入面图层A中各要素的四至点的实现方法

一、背景及意义

在日常工作中,我们经常会需要获取面图层的四至点,我们能否在ArcGIS中直接获取面图层的四至点呢?答案是肯定的,请继续往下看。

二、大体思路

使用字段计算器计算输入面图层A中各面要素的XY的最大值和最小值,使用折点转点功能将图层A中各面要素转为点,选择XY与之前面的XY最大值、最小值相同的对应XY值,这些点就是需要的四至点。

三、具体步骤

1、将输入面图层A使用“复制要素”工具复制到临时gdb;

2、对1中结果使用“添加字段”添加名为“WYBS11”(别名“面唯一标识”,字段类型为“长整型”)的字段,并使用“计算字段器”给“WYBS11”赋唯一编号;

3、对2中结果使用“添加字段”添加名为“East_X”(别名“东至点X”,字段类型为“双精度”)的字段;

4、对3中结果的“East_X”字段使用“字段计算器”,表达式类型选择“PYTHON_9.3”,表达式为“!shape.extent.xmax!”;

5、对4中结果使用“添加字段”添加名为“East_Y”(别名“东至点Y”,字段类型为“双精度”)的字段;

6、对5中结果使用“添加字段”添加名为“West_X”(别名“西至点X”,字段类型为“双精度”)的字段;

7、对6中结果使用“添加字段”添加名为“West_Y”(别名“西至点Y”,字段类型为“双精度”)的字段;

8、对7中结果的“West_X”字段使用“字段计算器”,表达式类型选择“PYTHON_9.3”,表达式为“!shape.extent.xmin!”;

9、对8中结果使用“添加字段”添加名为“South_X”(别名“南至点X”,字段类型为“双精度”)的字段;

10、对9中结果使用“添加字段”添加名为“South_Y”(别名“南至点Y”,字段类型为“双精度”)的字段;

11、对10中结果的“South_Y”字段使用“字段计算器”,表达式类型选择“PYTHON_9.3”,表达式为“!shape.extent.ymin!”;

12、对11中结果使用“添加字段”添加名为“North_X”(别名“北至点X”,字段类型为“双精度”)的字段;

13、对12中结果使用“添加字段”添加名为“North_Y”(别名“北至点Y”,字段类型为“双精度”)的字段;

14、对13中结果的“North_Y”字段使用“字段计算器”,表达式类型选择“PYTHON_9.3”,表达式为“!shape.extent.ymax!”;

15、对14中结果使用“要素折点转点”工具转为点;

16、对15中结果使用“添加XY坐标”;

17、对16中结果添加名为“East_Xpd”(别名为“东至点X判断”,字段类型为“文本型”)字段;

18、对17中结果的“East_Xpd”字段使用“字段计算器”,表达式类型为“PYTHON_9.3”,表达式为“!POINT_X! == !East_X!”;

19、对18中结果添加名为“West_Xpd”(别名为“西至点X判断”,字段类型为“文本型”)字段;

20、对19中结果的“West_Xpd”字段使用“字段计算器”,表达式类型为“PYTHON_9.3”,表达式为“!POINT_X! == !West_X!”;

21、对20中结果添加名为“SouthYpd”(别名为“南至点Y判断”,字段类型为“文本型”)字段;

22、对21中结果的“SouthYpd”字段使用“字段计算器”,表达式类型为“PYTHON_9.3”,表达式为“!POINT_Y! == !South_Y!”;

23、对22中结果添加名为“NorthYpd”(别名为“北至点判断”,字段类型为“文本型”)字段;

24、对23中结果的“NorthYpd”字段使用“字段计算器”,表达式类型为“PYTHON_9.3”,表达式为“!POINT_Y! == !North_Y!”;

25、对24中结果使用“按属性选择图层”工具进行选择,表达式为“East_Xpd = ‘1’”;

26、对25中结果的“East_Y”字段使用“字段计算器”,表达式类型为“VB”,表达式为“[POINT_Y]”;

27、对26中结果使用“按属性选择图层”工具,选择类型选择“CLEAR_SELECTION”;

28、对27中结果使用“按属性选择图层”工具进行选择,表达式为“West_Xpd = ‘1’”;

29、对28中结果的“West_Y”字段使用“字段计算器”,表达式类型为“VB”,表达式为“[POINT_Y]”;

30、对29中结果使用“按属性选择图层”工具,选择类型选择“CLEAR_SELECTION”;

31、对30中结果使用“按属性选择图层”工具进行选择,表达式为“SouthYpd = ‘1’”;

32、对31中结果的“South_X”字段使用“字段计算器”,表达式类型为“VB”,表达式为“[POINT_X]”;

33、对32中结果使用“按属性选择图层”工具,选择类型选择“CLEAR_SELECTION”;

34、对33中结果使用“按属性选择图层”工具进行选择,表达式为“NorthYpd = ‘1’”;

35、对34中结果的“North_X”字段使用“字段计算器”,表达式类型为“VB”,表达式为“[POINT_X]”;

36、对35中结果使用“按属性选择图层”工具,选择类型选择“CLEAR_SELECTION”;

37、对36中结果使用“按属性选择图层”工具进行选择,表达式为“East_Y IS NULL”;

38、对37中结果的“East_Xpd”字段使用“字段计算器”,表达式类型为“VB”,表达式为“NULL”;

39、对38中结果使用“按属性选择图层”工具,选择类型选择“CLEAR_SELECTION”;

40、对39中结果使用“按属性选择图层”工具进行选择,表达式为“West_Y IS NULL”;

41、对40中结果的“West_Xpd”字段使用“字段计算器”,表达式类型为“VB”,表达式为“NULL”;

42、对41中结果使用“按属性选择图层”工具,选择类型选择“CLEAR_SELECTION”;

43、对42中结果使用“按属性选择图层”工具进行选择,表达式为“South_X IS NULL”;

44、对43中结果的“South_Y”字段使用“字段计算器”,表达式类型为“VB”,表达式为“NULL”;

45、对44中结果使用“按属性选择图层”工具,选择类型选择“CLEAR_SELECTION”;

46、对45中结果使用“按属性选择图层”工具进行选择,表达式为“North_X IS NULL”;

47、对46中结果的“North_Y”字段使用“字段计算器”,表达式类型为“VB”,表达式为“NULL”;

48、对47中结果使用“按属性选择图层”工具,选择类型选择“CLEAR_SELECTION”;

49、对48中结果使用“按属性选择图层”工具进行选择,表达式为“East_X IS NOT NULL AND East_Y IS NOT NULL OR West_X IS NOT NULL AND West_Y IS NOT NULL OR South_X IS NOT NULL AND South_Y IS NOT NULL OR North_X IS NOT NULL AND North_Y IS NOT NULL ”;

50、对49中结果使用“删除字段”工具,勾选“East_Xpd、West_Xpd、South_Y、North_Y”;

51、50中结果即为我们需要的输入面图层A的四至点数据。

到这里,我们就得到了需要的结果。

想要获取已做好的工具请联系博主获取。

感谢观看!!!

http://www.xdnf.cn/news/1048879.html

相关文章:

  • 前端面试专栏-主流框架:8.React Hooks原理与使用规范
  • 在idea上打包DolphinScheduler
  • 三次贝塞尔曲线,二次贝塞尔曲线有什么区别
  • 全国产超小体积RK3576核心板,支持RK3576+FPGA,支持AI与实时控制
  • Python OpenGL文字渲染——SDL(高效+无限缩放)
  • 【三刷C语言】数据的存储
  • 动态规划之爬楼梯(二)
  • 行列式的性质 线性代数
  • 【Docker基础】Docker核心概念:命名空间(Namespace)之PID详解
  • springboot3-笔记总结
  • 大小模型协同
  • const 指针
  • Adguard安卓版:全方位广告拦截与隐私保护
  • 函数指针与指针函数:本质区别与高级应用
  • Kubernetes架构解析
  • LeetCode 48. 旋转图像
  • 算法导论第六章:堆排序与优先队列的艺术
  • MySQL进阶篇
  • Redis中的set底层实现
  • LeetCode 高频 SQL 50 题(基础版)之 【子查询】· 下
  • PMP考试中的100个关键点
  • Some chunks are larger than 500 KiB after minification. Consider
  • Java中如何使用lambda表达式分类groupby
  • 面经的疑难杂症
  • 『uniapp』onThemeChange监听主题样式,动态主题不正确生效,样式被覆盖的坑
  • 如何提高电脑打字速度?
  • 前端错误捕获
  • Vue3相关知识3
  • Mysql基础入门\期末速成
  • 微信小程序 路由跳转