一些函数的用法和注意事项(六)——Intersector函数和LineJoiner函数
原文发布时间:2010-08-01
作者:毛毛虫
Intersector函数
计算所有输入要素间的相交,在任何相交的地方打断线和多边形。函数参数如下:
当Split Self-Intersecting Features选择Yes是,输出为从交点打断的一条条的线段,如果Split Self-Intersecting Features选择No,则输出的仍为原来的多边形。如果Separate Collinear Segments选择yes,则被交点分割的多边形的公共的边被计算两次(上图中输出为12条线,有四条公共边,计算两次,此时的Overlap Count Attribute属性值为2),否则计算一次(上图中输出为8条线,公共边只计算一次,此时的Overlap Count Attribute属性值为1)。
如果输入要素是个含洞的多边形,那么每个洞的起始点都会在Node端口输出,洞的边界线会在INTERSECTED端口输出。
LineJoiner函数
是几条相交的较短的线连接为一条较长的线的函数。当在有三个或更多重叠的地方时,线会被打断。函数属性如下:
参数:Break Across Groups
Yes:函数会从所有的要素的分组中考虑所有的点。
No:每一组会考虑各自重要的点。
如果分组时,Break Across Groups选择No,则结果如下(在交点处没有打断):
如果选择Yes,则结果如下(在交点处被打断):
参数:Preserve Original Orientation
这个参数控制线是否可以逆转来创建更长的线。如果先的方向不重要,选择Yes。
参数:Break Loops
这个参数指定任何输出(或输入)闭合为环,应该被打断为两段。
如图:下面这个图是由三个线段组成:
如果Break Loops选项选择No,则处理后的效果为(是一个闭合环):
如果Break Loops选项选择Yes,则处理后的效果为(闭合环被打断为两条线段):
指定了输入要素包含顶点类型:
End noded意味着在连接线时,只考虑起点和终点,其它点忽略。
Vertex noded意味着连接线时考虑所有的顶点。
下图中一条线交与红色的线内部一点:
Input Feature Topology选择End noded,处理后的效果与原始图形相同。
Input Feature Topology选择Vertex noded后,处理效果如下(原图中红色的线在交点处被打散为两条线):