自定义转换器的应用(二)——面内填充点

原文发布时间:2011-04-27

 作者:跑

联系QQ:44295133

  
    1、案例

有的时候,我们做数据格式转换,还必须兼顾制图符号化的实现。比如,AutoCAD的图案填充(hatch)作为一个多边形要素,转入ArcGIS后,在不作专题符号显示的情况下,内部填充点符号是丢失的。此外,不同软件平台其符号化机制不同,或者符号库彼此不兼容,也可能造成符号化实现的困难。

前面的博文已经提过,FME具有一定的辅助制图功能,下面将以植被面为例来说明这一点。《1:500  1:1000  1:2000地形图图式》(GB/T 20257.1—2007)规定,植被面填充符号按10×10mm整列式分布,即通称的“品”字形。如下



2 、实施

考虑到该工具需具备一定的通用性,这里把实现该功能的模块制作成自定义转换器。


下面大致讲一下配置情况,为便于分步骤说明,在画布作了标签。

  
        2.1、获取参数

发布这个参数的用意在于,针对不同的类型的多边形可能间距是不一样的。




2.2   切片、偏移复制




值得一提的是,切片(2DGridReplacer)格网距离必须为常数,或Group BY所引用的参数,否则运行报错。

  

2.3    叠加分析


这里有两个输出端:其一point,_overlaps>0部分即为所需填充点;其二area,_overlaps=0部分为未能包含填充点的面,需进一步提取。

此外,由于切片生成的点完全继承了相应面的属性,在叠加分析的时候按照要素ID字段分组,将大幅提高效率。

2.4 、输出

这里保留了两个输出端,并且在此之前已移除了中间转换器处理所增加的不必要字段。自此,我们得到了满足要求的填充点。

  
    3、思考

在叠加分析阶段,会存在一些未能包含填充点的面。而之所以会存在这种现象,是因为有些面范围过小,或宽度过窄(小于分布间隔),而通过切片得到的点,其位置又是固定的(相对而言)。在本案例中,这部分面在后期是通过InsidePointReplacer得到单点,在制图表达方面还存在不足。

fmepedia也有一个类似的案例<RelativeTiler - fmepedia>,供大家探讨。








猜你喜欢

转载自blog.csdn.net/fmechina/article/details/80969275