你在这里: 属性 > ListExploder

ListExploder

将每个输入特性上的每个列表成员分解为自己的特性。

将列表中的任何属性复制为特性输出的非列表属性。此外,将原始列表中的属性的元素号添加到特性中。每个特性的输出都有原始输入特性的几何图形的副本。

输入端口

输出端口

参数

属性积累

在某些情况下,特性的非列表属性可能与list爆炸器生成的属性共享相同的名称。例如,考虑具有非列表属性的特性长度和一个列表属性somelist {0} . length,somelist {0} .kind,somelist {1} . length,somelist {1} .kind,……如果somelist是爆炸,特征可能包含两个长度属性—一个来自原始的非列表属性,另一个来自somelist属性列表。如果生成的属性与特性的原始非列表属性共享相同的名称,但不是以几何属性开头fme_,他们被认为是矛盾的。

使用以下参数指定要保留哪些属性的输出特性,以及在发生冲突时要维护哪些属性的值。

使用笔记

  • 如果输入属性和列表元素属性具有相同的名称输入属性将被列表元素属性覆盖。
  • listscalder将无法处理无效列表,例如在条目0处不启动的列表。例如:
有效列表 无效列表
我的列表{0}.attr1 我的列表{1}.attr1
我的列表{1}.attr1 我的列表{2}.attr1
我的列表{2}.attr1 我的列表{3}.attr1
我的列表{3}.attr1 我的列表{4}.attr1

例子

示例1:

如果这个特性进入这个转换器:

somelist {0} . length = 7.3

somelist {0} .kind = ’paved’

somelist {1} . length = 8.4

somelist {1} .kind = ’smooth’

somelist {1}。车道= 2

somelist {2}。长度= 1.1

somelist {2}。kind = ’rough’

another_attr = ' something else '

然后,假定指定的列表名是somelist {}, index属性为element_num,积累模式参数设置为合并后的属性列表,第一个返回的功能如下:

长度= 7.3

类型=“铺”

element_num = 0

another_attr = ' something else '

如果积累模式参数设置为只使用列表属性,第一个返回的功能如下:

长度= 7.3

类型=“铺”

element_num = 0

示例2:

假设你有一个输入具有以下6个属性的特性。(属性列表这里用的是{ID})。

的名字

类型

{0}.dec ID

{0}.hex ID

{1}.dec ID

{1}.hex ID

合并后的属性列表将产生4个属性的元素:

的名字

类型

12月

十六进制

只使用列表属性将产生2个属性的元素:

12月

十六进制

编辑变压器参数

使用一组菜单选项,可以通过引用工作空间中的其他元素来分配transformer参数。更高级的功能,如高级编辑器和算术编辑器,也可以在一些转换器中使用。要访问这些选项的菜单,请单击在可适用的参数旁边。有关更多信息,请参见变压器参数菜单选项

变压器的分类

属性

额外的资源

搜索FME知识中心

有关此变压器的示例和信息,请参阅FME知识中心