ArcGIS沿面状图层要素外边缘构建TIN和进行网络分析求最短路径

需求是这样的:

某规划设计单位,需要沿建筑外墙布设线缆(假设要布的是网线)。要求沿楼宇的外墙布线,线路转弯的点为楼宇的转角,邻近楼宇之间需要进行架空连接,且需满足最短路径要求。所提供的数据为楼宇的平面图,为面状要素。

提供的数据如下图:


其中,Building图层为楼宇面,对应图上黄色部分。Frame图层为框面,是为方便后续处理而添加的一个面图层,只保存一个面状要素,该面状要素将楼宇面所有要素包含其中。


处理该问题思路如下:

从结果倒推过程。为进行最短路径分析,最好的办法是构建网络数据集。因要满足路径最短的要求,则相邻点之间的连线应构成不规则三角网。不规则三角网只能沿楼宇面的外围以及在楼宇之间布设,则应将楼宇面排除在构建不规则三角网的原始数据之外。为达到排除楼宇面的目的,我们需要使用一个面来包含所有的楼宇面要素,然后使用楼宇面与这个外包面进行对称差处理,即只取二者差别的部分。


于是,我们开始行动。步骤如下:

1.进行Symmetrical Difference对称差处理,以外包Frame为Input Features,以楼宇面Building为Update Features


2.使用生成的面图层Frame_SymDiff构建不规则三角网(Create TIN)


3.将不规则三角网从三维转换到二维(TIN Triangle)


4.转换后的三角网如图


5.这个不规则三角网是面状的,需要转化为线状的(Polygon To Line)


6.转化之后的结果如下图


7.我们在启动编辑时发现,虽然面已经转成线了,但它是多段线,不是简单线,还不能满足要求


8.于是我们再进行一次转化,将所有多段线在转角处打断(Split Line At Vertices)


9.转化成功后,开启编辑,删除与之前Frame要素四个角点直接相连的线段


10.最终得到一个初步的三角网图层,如下


11.整理一下图层目录,数据集MyDs中只保留最终我们用于构建网络数据集的线图层Triangle_Line_SplitLine,其他过程图层均移到外层去(不移除也不影响我们构建网络数据集,但在选择输入图层的时候需要注意一下)


12.确认已经启用了扩展模块


13.构建网络数据集(按向导创建完成后,将自动进行Build Network Dataset操作)

注意:本例中只按简单规则创建网络数据集,即在任意角点处均可转弯,允许双向通行。而不进行其他复杂规则设置。关于在ArcGIS中创建网络数据集的规则及步骤,请参考ArcGIS官方帮助文档











14.创建完成后的网络数据集如下图。可将其添加到ArcMap中。


15.创建的网络数据集叠加原楼宇面的效果如下图

16.使用该网络数据集,进行简单的两点之间的最短路径分析如下


17.多点分析示例如下


18.添加障碍点、障碍线、障碍面,进行多点分析,示例如下







至此,问题得到圆满解决。后续考虑将这些处理过程脚本化,放到模型构建器里实现,以方便自动化运行及调用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值