2019FME博客大赛——FME对道路和水系相对拓扑关系检查

参赛单元:传统GIS数据处理

作者:姚金明、翟秀娟

单位:山东省国土测绘院 第二测绘院

 

地理框架数据更新中,更新完成后的道路与水系、居民地以及植被之间的相互拓扑检查是数据质量检查的重点,但道路与水系、道路与居民地的拓扑检查结果数据量往往非常大,尤其道路与水系数据的拓扑检查,检查结果一般都比较海量。水系与道路拓扑检查的结果有些是桥梁,但大部分都是拓扑错误,这时就需要人工比对,但面对较大的结果数据量,对比检查是一个巨大的工程。我们就想到利用FME软件去批量处理或是筛选掉不需要对比的拓扑检查数据,以此为背景利用FME模板来处理拓扑检查数据,从而减少工作量。

 

应用源数据

道路数据、水系面

源数据预处理

首先做道路与水系面的裁剪(Clip)处理,即得到道路与水系面数据的拓扑检查数据,拓扑检查结果如下图所示,图1-1。

                                                                    图1-1 水系与道路部分拓扑检查结果展示

解决方案

1)思路

利用拓扑检查数据与水系线的夹角关系筛选拓扑数据,如与水系线呈90°左右夹角的拓扑数据在理论上是桥梁,并不是人工更新中产生的拓扑错误,而拓扑数据与水系中心线的夹角较小时,则说明很可能是道路与水系面产生了拓扑错误,从而进行进一步的筛选。我们现在需要做的即是用FME生成水系中心线与拓扑数据的夹角,以便筛选待处理的拓扑数据。

2)操作

  • 在arcgis里面处理道路与水系面的拓扑错误,生成拓扑数据,并作为源数据。
  • 启动FME Workbench,Generate Workspace(生成新的工作空间)>Readers(读模块)>Writer(写模块),设置数据格式为bBASE(DBF),即.dbf格式,再选择源数据(拓扑数据和水系中心线数据)。
  • 第一阶段,提取疑似桥内水系中心线。在画布中添加一个Bufferer转换器,拓扑数据连接Bufferer转换器,之后再连接Clipper转换器的Clipper接口,同时水系中心线数据也连接Clipper转换器的Clippee接口,最后Clipper转换器的Inside输出端连接Deaggregator转换器的Deaggregatedde的输入端,图1-2。

                                                                      图1-2第一阶段提取疑似桥内水系中心线处理

用到的原理有:Bufferer转换器是用通过指定宽度填充原始要素的几何图形并替代要素的几何图形;输出的几何图形中每个点距离原始几何图形的距离是指定的;Clipper转换器是执行一个几何裁剪操作;Deaggregator转换器是把聚合要素分解成各个组成部分。

通过这一步的操作可以把疑似桥内的水系中心线提取出来。

  • 第二阶段,角度计算。在上一步的基础上把拓扑数据和炸开的水系中心线数据分别连接到AzimuthCalculator转换器,两个数据分别经过AzimuthCalculator转换器处理后,再连接AttributeKeeper转换器,最后连接AttributeKeeper转换器,最后连接AttributeRenamer转换器。

这一步中运用到的原理有主要有:AzimuthCalculator转换器计算直线与水平线和竖直线方向的夹角,当线要素非直线时,转换器去折线的首尾点相连构成的直线,线要素经过该转换器,从AZIMUTH端口输出的要素将会增加两个字段,即acAngle、acAzimuth分别为线要素与水平方向的夹角和竖直方向的夹角;AttributeKeeper转换器是从要素中移除所有属性和列表属性,属性列表中选择的属性除外;AttributeRenamer转换器是对指定的属性进行重命名、删除或创建操作。

这一步的计算主要是为了计算道路和水系中心线在水平方向上自身的角度,计算模型如图1-3。

 

                                                                                图1-3角度计算模型

  • 第三阶段,临近查找和夹角计算。经过NeighborFinder转换器、AttributeKeeper转换器以及AttributeCreator转换器,可以将上一步计算出的角度,并以拓扑道路数据为基础,水系中心线为候选数据,将距离拓扑道路数据最近的水系中心线的角度属性赋予拓扑数据属性列表中,。夹角计算主要使用AttributeCreator转换器计算两临近线的夹角,并用TestFilter转换器,设置一定的条件,筛选不同范围值的拓扑道路和水系中心线夹角,用AttributeRounder转换器赋予角度值属性到相应的某个小数位,输出数据,如图1-4。

                                                                                   图1-4结果输出
成果展示

通过FME软件计算转换,可以得到拓扑数据与水系中心线的夹角值,选取一定角度值,查看两者的空间关系,可以发现夹角度数小于15°的两直线,基本可以断定是道路与水系面存在拓扑错误关系,两线夹角度数大于15°的,可以发现基本为道路经过水系面的桥梁,结果如下图所示,图1-5。经过角度选取可以筛选出真正存在拓扑错误的道路,在进一步处理,从而减少工作量。

                                                                                      图1-5 结果显示

 

 

 

  • 0
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值