span8
span4
作为概念的证明,我想使用FME来查找不连接、不接触或不靠近任何其他线的线。贴近度将由用户定义。把线保持在另一条线的10米以内。我无法找到一个现有的答案,所以我张贴我的解决方案。我的灵感来自@redgeographics答案:
https://knowledge.亚搏在线safe.com/questions/42455/lines-connected.html
第一个解决方案有两个预处理选项。根据需要缓冲输入行的数量来处理分支。这显然会创建多边形。或者使用LineExtender完成类似的工作。与LineExtender的不同之处在于两端扩展的方向(参见文档)。
然后将预处理结果发送到SpatialRelator的请求者和提供者端口。选择交集和触摸测试(不管您使用的是缓冲线还是扩展线)。选择ObjectID(或其他主键)作为必须不同的属性。_related_candidate值为0(0)的结果表示没有连接的行。可以使用测试器过滤要保留的数据,或者过滤不需要的行,以便对源数据执行删除fme_db_operation。
第二个解决方案是在CandidatesOnly模式下使用NeighborFinder。设置一个最大的距离,包括或排除不相交/不接触的线,为您想要的公差。匹配的端口将包含要保留的特性。未匹配的候选端口不仅仅包含不需要的行。我不知道为什么,但是我对NeighborFinder不是很熟悉所以可能有一个设置我需要调整一下。这个解决方案更优雅,因为它不涉及对输入数据进行任何修改。
我已经将测试数据附加到压缩的ShapeFile中。
一个解决方案可能是使用一个10米半径的Snapper,然后是一个网络拓扑计算器,如中所述https://knowledge.亚搏在线safe.com/questions/42455/lines-connected.html
©2019安全亚搏在线软件公司法律