当前位置:网站首页>【ModuleBuilder】GP服务实现SDE中两个图层相交选取
【ModuleBuilder】GP服务实现SDE中两个图层相交选取
2022-06-25 21:57:00 【DORIC.MA】
0 需求
SDE中保存两个要素类,一个是范围线数据,一个是目标要素数据。需要使用GP服务实现一个功能,即指定范围线要素类中的一个要素,自动筛选出目标要素类中与范围线存在相交关系的要素,并返回相交要素的属性信息。
1 思路
需要解决几个问题:
- 使用什么分析方法来判断要素之间的相交关系?
- 如何让
GP服务能调用SDE中的数据?
关于问题1:
判断相交关系最直截了当的方法是使用【分析工具-叠加分析-相交】工具,这种方式没有大问题,但它需要生成中间要素类,并且相对而言耗时较长,不是好的解决方案。一个推荐的方式是使用【数据管理工具-图层与表视图-按空间位置选择图层】工具,该工具同样可实现复杂的空间关系选择,不产生中间要素类且耗时短。
判断相交关系的时候还需要注意一点,在使用【按空间位置选择图层】工具判断相交要素时,与范围线共边的要素类会同样被判定为相交,需要在搜索结果中剔除这种特殊情况。
关于问题2:
调用SDE中的数据的前提是连接SDE,可以生成SDE连接文件保存至特定路径并将该绝对路径指定给GP工具。
2 实现
GP工具流如图所示:

该工具流中,上方支路为目标要素类,下方支路为范围线要素类。两者相交于【按空间位置选择图层】,之后剔除共边要素类,得到目标结果。对各步骤做出详述:
步骤1:指定要素图层
Make Feature Layer工具即指定要素图层,将要素类转为要素图层,使之成为后续【按空间位置选择图层】工具的输入类。
上方支路中Dest_Name作为Make Feature Layer工具的前置条件,表示目标要素类的名字,用于动态地指定使用SDE中那个要素类作为目标要素,可以提升整个GP工具的复用性。
上方支路中Dest是一个字符串变量,用于设置SDE要素类的位置,内容为SDE连接文件及其内部要素类的绝对路径。
上方支路中Make Feature Layer输入变量为Dest,输出Dest_Layer。
上方支路整体思路与上方支路类似,唯一的差别是增加Code变量的输入,该变量用于构造SQL语句从而筛选范围线要素类中特定的一个要素。该变量指定为GP工具的输入参数,确保发布服务后能从前端指定该参数。
步骤2:按位置选择图层
该环节将Dest_Layer和Extent_Layer均选择为输入,空间关系选择INTERSECT。
步骤3:剔除共边要素
输入步骤2的选择结果,空间关系选择【边相交】,再次输入范围线,选择类型选择为【从已选结果中剔除】。将该步骤的处理结果设定为输出参数,确保发布GP服务后前端可获取处理结果。

步骤4:执行工具并发布服务
按部就班完成GP服务发布
3 示例GP工具下载
边栏推荐
- 作为一个程序员我们如何快乐的学习成长进步呢?(个人感悟和技术无关)
- Talk about adapter mode
- Pit resolution encountered using East OCR (compile LAMS)
- 异或运算符简单逻辑运算 a^=b
- Flex & Bison 开始
- ES6-Const常量与数组解构
- Raspberry PI (bullseye) replacement method of Alibaba cloud source
- Global and Chinese oleic acid operation mode and market supply and demand forecast report 2022 ~ 2028
- Cvpr2022 tutorial | machine learning remote sensing processing: agriculture and food security, University of Maryland
- Relinearization in homomorphic encryption (ckks)
猜你喜欢

Chapter 3 use of requests Library
2、一个向量乘它的转置,其几何意义是什么?

ES6-Const常量与数组解构

使用EAST ocr遇到的坑解决方法(编译lanms)
Interview shock 23: talk about thread life cycle and transformation process?

2022-2028 global TFT touch screen industry research and trend analysis report

Record the learning record of the exists keyword once
[email protected]@COLLATION_CONNECTION */"/>.sql数据库导入错误:/*!40101 SET @[email protected]@COLLATION_CONNECTION */
![Lecture 14 of the Blue Bridge Cup -- number theory [exercises]](/img/96/0971909c8bf25820c2d4f520bb83fb.jpg)
Lecture 14 of the Blue Bridge Cup -- number theory [exercises]

荣耀推出积分商城,支持兑换各种荣耀产品
随机推荐
ADB common commands
ES6-Const常量与数组解构
Pit resolution encountered using East OCR (compile LAMS)
Some reflections on preparing for the Blue Bridge Cup
2022年河南省第一届职业技能大赛网络安全项目试题
MySQL数据库常用函数和查询
实战:typora里面如何快捷改变字体颜色(博客分享-完美)-2022.6.25(已解决)
使用EAST ocr遇到的坑解决方法(编译lanms)
c语言与数据库的创建使用
No absurd tea applet - rule change
Three layer architecture + routing experiment
String deformation (string case switching and realization)
App test points
Another breakthrough! Alibaba cloud enters the Gartner cloud AI developer service Challenger quadrant
记|一次exists关键字的学习记录
Use apiccloud AVM multi terminal component to quickly realize the search function in the app
adb常用命令
Thinking while walking
Chapter 3 use of requests Library
Initialization process of gstlibav