Skip to main content
Question

How to Linejoin based on seperate attributes


Hello!

 

 

I'm trying to linejoin the linework in a map I'm working on. There are many segmented lines, which should be uniform lines. I work in Geology and the linework I'm working on represents Faults and Contacts. I only want lines to join where three attributes are the same (I dont want specific types of faults/contacts joining lines or faults and contacts to join lines etc.).

 

 

For example, I would want where feature_class = Fault, feature_type = Sinstral Fault and feature_confidense = Approximate to join lines,

 

 

However, I would not want these lines to join lines with feature_class = Fault, feature_type = Sinstral Fault and feature_confidense = Inferred as the feature_confidense is different.

 

 

In total I have 40 different possible combinations of these three attributes I want to linejoin only within their own combination.

 

 

I've developed a method to individually seperate the different possible combinations of these three attributes manually in my mapping program and linejoin them individually, however, it is time consuming, tedious and has a high margin for error. If anyone has any suggestions of how I could do this without having to individually seperate the layers and by using tools in FME(or any other suggestions) it would be much appreciated!

 

 

Thanks for the help!

4 replies

fmelizard
Safer
Forum|alt.badge.img+19
  • Safer
  • April 18, 2013
Hi,

 

You could try to test for the combinations ( one way would be to concatenate the attribute values and test them or use the brand new attribute creator IF THEN ELSE  combo in FME 2013 SP1) and create unique values per combination.

 

After that use the unique value in the line joiner.

 

Hope this helps.

 

 


mark2atsafe
Safer
Forum|alt.badge.img+46
  • Safer
  • April 18, 2013
Use a LineJoiner transformer with a Group-By set to the attribute(s). Then lines will only be joined together where the Group-By attributes are all the same value.

 

 

Hope this helps

 

 

Mark

david_r
Celebrity
  • April 18, 2013
Hi,

 

 

If you have issues with some segments not joining, consider also inserting a Snapper with a suitable tolerance and the same Group By as the LineJoiner.

 

 

This will ensure that all the segments line up perfectly for the LineJoiner, which will ignore non-contiguous segments. 

 

 

David

  • November 28, 2014
Hi all, I've the same issue: I want to join segments using an attribute created by concatenation of others. With the linejoiner if I select that attribute only it works, but I want to keep all the others attributes. If I select the remaining ones the linejoiner keeps all segments separated. My aim is to obtain unique segments with same attributes, it should "merge" or "union" together the different segments using the concatenated attribute.

 

Thanks in advance,

 

Andrea

Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings