目录
地形图的计曲线在计曲线注记的位置会断开形成缺口,在入库成DLG数据时,有时候需要将该缺口连接补上,那么面对的将是成千上万个缺口,采用人工连接的话耗时耗力,下面带来一个基于FME实现的计曲线连接工具。
本工具实现了两种连接方式,分别是延长线法和端点连接法,下面将分别介绍,首先来看一下实现效果。关注薇信工众号:“GIS工具乐园”,回复“FME”,获取模板及示例数据下载链接。
本工具基于FME2020.2开发,使用前请自行安装FME2020.2及以上版本的FME软件
☛ FME系列视频教程推荐 ☚
一、实现效果
从下图可以看到连接前后的区别,在计曲线注记的断口处成功实现连接。关注微行公众号:“GIS工具乐园”,持续更新开发技巧分享哦。
二、延长线法实现过程
该方法的总体思路是通过延长计曲线形成交点,然后延长线在交点处打断,最后筛选出正确的延长线与计曲线进行连接。
1.计曲线延长
将计曲线延长指定长度,为便于使用,这里使用参数来传递延伸长度。延长后取用计曲线的首尾延长线,用于下一步处理。
2.查找计曲线注记指定范围内的延长线uuid
首先说明一下,对进入处理流程的所有数据均计算一个uuid作为要素的唯一标识。
查找出计曲线注记在指定范围内的延长线的uuid,然后筛选保留高程值与计曲线注记值一致的延长线uuid,并只保留只有两个延长线uuid的数据,用于下一步处理。
3.筛选出计曲线注记点指定范围内的延长线,并在交点处打断
利用上一步数据,查找出计曲线注记指定范围内符合使用要求的计曲线延长线,并在交点处打断。
4.筛选出与计曲线相交的延长线
筛选与计曲线相交的延长线,即超出交点部分的延长线丢弃不要。
5.延长线连接
将成组的延长线进行连接,然后筛选出由2根延长线连接而成的线。
6.筛选出计曲线注记点指定范围内唯一的延长线
筛选出计曲线注记点指定范围内的唯一延长线,避免连接错误。
7.计曲线连接
基于ELEV高程值属性对计曲线和延长线进行连接。
连接效果如下
三、端点连线法实现过程
该方法的总体思路是提取计曲线的端点,然后通计曲线注记点查找指定范围内的计曲线端点,最后计曲线端点连线。
1.获取计曲线端点
提取出计曲线的首尾端点。
2.查询计曲线注记点指定范围内的计曲线端点uuid
此步骤与延长线法的步骤2类似。
查找出计曲线注记在指定范围内的计曲线端点的uuid,然后筛选保留高程值与计曲线注记值一致的端点uuid,并只保留只有两个端点uuid的数据,用于下一步处理
3.将同属于一个计曲线注记的端点连线
将同属于一个计曲线注记的端点连线。
4.计曲线连接
基于ELEV高程值属性对计曲线和端点连线进行连接。
连接效果如下
四、工具的使用
1.使用运行
对工具运行所需的的值使用参数进行传递,运行使用时,输入相应参数即可。
2.提示信息单独输出
对未能连接的计曲线注记点、计曲线数据单独输出一份,便于对未能连接的计曲线进行人工处理
3.模板总体流程图
五、总结
本工具以优先保障连接正确性为原则,经使用山区数据进行测试,使用延长线法的成功连接数量占总数的80%左右,使用端点连接法的成功连接数量占总数的比例最高可达95%,实际使用中的成功率会因数据及输入延长距离(端点距离)参数有关,可使用不同的参数多运行几次测试出最佳距离。