Skip to main content

Trying to use the long-awaited 12D Reader but the resulting lists are overwhelming.

Basically, there are pairs of attribute names and values scattered across lists of various depth and ideally regular attributes with values could be constructed.

The attribution in 12D and the resulting lists are bound to different levels of a 12D model. Some attributes belong to the whole model, some to geometries and some to individual vertices. Hence the extensive lists.

Vertex attribution:

 

The best I managed is a sequence of List Exploders to get to the last position of a list and then build the attributes using ListKeyValuePairExtractor - This custom transformer seems to struggle with the long nested lists; works fine with pairs on one level. It ends up with duplicated geometries for each list pair but it could be flattened by Feature merger and Matcher.

Using this approach I need to inspect the lists manually and identify on what level of a list particular pairs are.

Any idea how can this be achieved more efficiently?

Ideally we will have all the attribution for model and individual parts exposed for each feature and the nodal attribution could be extracted to points with attribution of the parent feature. Perhaps this will be an improvement on the reader itself.

Many thanks

 

@janrykr 12D format support was new in 2019. In 2020 we have made further improvements and you has a new parameter "Obtain feature types and attributes from" and has a option called "Dataset Schema" which is also the default option.

Selecting Dataset Schema, the feature attributes will be read in a way that you probably expect as conventional "attribute name : value "


Reply