Skip to main content
Solved

line on line overlay

  • September 6, 2024
  • 5 replies
  • 116 views

hiyhelg
Contributor
Forum|alt.badge.img+4

 

Dear FME community.

I hoop you will help me with the question I have. It seems simple question, but I could not solve it. I want to find out overlapping pipelines in the same dataset with different owners. I want to have list of the piplines who overlap with each other and who have different owners.

I used line on overlay transformer but I could not get what the result I wanted.

 Any help is apricated and thank you in advance

 

Best answer by bwn

In LineOnLineOverlayer set in Attribute Accumulation

  • List Name: OWNER
  • Selected Attributes: OWNER

 

Send the output of this to ListHistogrammer.  Create Histogram for List: OWNER

 

Send the output of ListHistogrammer to Tester:  If _histogram{1}.value Attribute Has a Value =  Where a line segment that has at least 1 different OWNER.

View original
Did this help you find an answer to your question?

5 replies

mot_fme
Forum|alt.badge.img
  • September 6, 2024

Can you show us the data / what is not working? Would be great to understand more through an example and hopefully we can help.


veschwab
Contributor
Forum|alt.badge.img+11
  • Contributor
  • September 6, 2024

It depends a little on how exactly your lines are overlapping, if they are intersecting or exactly laying on each other or are in close proximity to each other but it looks like they are overlapping.

 

You can try to use the SpatialRelator transformer and use your dataset as both the Requestor and Supplier. 

  • Use "Requestor OGC-Touches Supplier" or "Requestor OGC-Intersects Supplier" or both to test
  • And most importantly choose an ID attribute in your dataset in the “Attribute(s) that Must Differ” so that the same line doesn’t compare itself.

bwn
Evangelist
Forum|alt.badge.img+26
  • Evangelist
  • Best Answer
  • September 6, 2024

In LineOnLineOverlayer set in Attribute Accumulation

  • List Name: OWNER
  • Selected Attributes: OWNER

 

Send the output of this to ListHistogrammer.  Create Histogram for List: OWNER

 

Send the output of ListHistogrammer to Tester:  If _histogram{1}.value Attribute Has a Value =  Where a line segment that has at least 1 different OWNER.


hiyhelg
Contributor
Forum|alt.badge.img+4
  • Author
  • Contributor
  • September 10, 2024
bwn wrote:

In LineOnLineOverlayer set in Attribute Accumulation

  • List Name: OWNER
  • Selected Attributes: OWNER

 

Send the output of this to ListHistogrammer.  Create Histogram for List: OWNER

 

Send the output of ListHistogrammer to Tester:  If _histogram{1}.value Attribute Has a Value =  Where a line segment that has at least 1 different OWNER.

 

 

Thank you for your replay, it  seems a logic answer however the lastpart i have understood it yet.

This what I have done, Still I have not got the result I want. Can you please look at it

Thank you for help!!

 


bwn
Evangelist
Forum|alt.badge.img+26
  • Evangelist
  • September 10, 2024

@hiyhelg , to be able to review, need to see the Transformer Parameter settings.

In FME, you can show this in a Transformer Pop-Out by selecting the Transformer, then pressing Ctrl-Shift-K

The correct Transformers are used.  The reason for no results is either

  • Transformer Parameters not quite set correctly; or
  • There are no overlaps between Lines with different owners, possibly because they are not exactly snapped to each other (Consider using a Snapper if this is the case)

 

Sample Data


 

 

Input to LineOnLineOverlayer , ListHistogrammer, Tester

Outputs the common line segment that has more than 1 Owner

 

​​​

 


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