span8
span4
我有点功能与重复,有时三倍或更多。但是对于每个点,我们可能有不同值的属性。我的目标是只有一个唯一的点,但保留所有的属性。因此我使用了Matcher(启用了generate list),然后将ListConcatenator连接到SingleMatched输出。这是完美的工作,我现在只有唯一的点,我设置了计数器选项,所以我知道有多少点,这个点代表。如果我点击检查器中的一个点,a可以看到所有的属性并展开嵌套列表。对于某些点,我有多达6个列表。我想要实现的是能够导出point到feature类,并从列表中保留所有嵌套的属性。这有可能吗?类似于暴露嵌套列表。
提前谢谢,
Dilson
你没有提到你的写作格式。但是,除非格式支持XML这样的层次结构,否则不太可能像FME那样支持列表。那么,您的格式/软件如何处理具有多个值的特性呢?
就像@gio就是说,可以将值连接到一个字符串中,也可以将所有值写到一个单独的表中,并使用外键创建连接。
或者,您可以为每个值创建新的属性。例如,假设我有一个代表森林的点。在那片森林里,我想记录树木的种类,有橡树、枫树和松树。所以我有:
Mylist {0}。TreeType= oak Mylist{1}.TreeType= maple Mylist{2}.TreeType= pine
你可以做的是把它们重命名为多个属性,所以你有:
1号树=橡树2号树=枫树3号树=松树
这是另一种处理方法。您可以使用简单的AttributeRenamer,也可以在自定义转换器中创建一个循环(使用ListElementCounter查找需要循环的次数,使用ListIndexer提取属性)。
如果它是基于XML的格式,那么让我们知道,我认为可以为每个特性创建多个记录。
您不能将列表放入您所知道的属性中。
然后,您的选项是将连接的数据结构放在一个字符串中,并存储在一个属性中(listconcatenator等)。
或者将列表与几何图形分开。
用几何图形保存特性的id。
爆炸列表,并将其保存为某种表格形式,以满足您(或您使用的软件喜好)
然后总是可以通过键(ID)访问数据。
就像空间数据库一样。
亲爱的所有,@gio@MarkAt亚搏在线Safe@takashi
非常感谢您的所有输入,它帮助我澄清了很多问题。
我实现了接近我所寻找的使用匹配器/爆炸者列表然后聚合器。同样的结果可以用ListConcatenator最后将属性连接起来。我也测试了他的建议@takashi它还通过暴露属性和重命名来工作,这是我最初的工作方式。但这可能会导致我有太多的属性。因为一些点只有一个子类型,但是其他点可能有多达5个子类型。
很抱歉没有准确地提到格式。我写点功能类到一个Esri FGDB
亲切的问候,
亲爱的所有,@gio@MarkAt亚搏在线Safe@takashi
非常感谢您的所有输入,它帮助我澄清了很多问题。
我实现了接近我所寻找的使用匹配器/爆炸者列表然后聚合器。同样的结果可以用ListConcatenator最后将属性连接起来。我也测试了他的建议@takashi它还通过暴露属性和重命名来工作,这是我最初的工作方式。但这可能会导致我有太多的属性。因为一些点只有一个子类型,但是其他点可能有多达5个子类型。
很抱歉没有准确地提到格式。我写点功能类到一个Esri FGDB
亲切的问候,
在某些情况下,可以使用BulkAttributeRenamer (Action: Regular Expression Replace)将结构化列表属性的各个元素有效地转换为非列表属性。如果在以前的转换器中公开列表元素,BulkAttriuteRenamer将自动公开目标属性名称。
嗨@gio
谢谢你的回答,我认为这是可能做的事情,如解释在这个文件。或者直接暴露它来使用属性creator。但也许是我的版本,我用的是FME 2014 SPhttps://docs.亚搏在线safe.com/fme/html/FME_Desktop_Documentation/FME_Transformers/!List_Attributes/Understanding-List-Attributes.htm
是的,我也知道连接。所以,我将尝试爆炸和工作只与分隔表。
亲切的问候
©2019安全亚搏在线软件公司法律