Skip to main content
Solved

Find Line connected ( begin and end )

  • September 22, 2020
  • 6 replies
  • 228 views

danilo_fme
Evangelist
Forum|alt.badge.img+45

Hi All,

 

I'm try to find the best way to analyse the begin and end of line and check if this line is connected in the both vertices ( begin and end ).

 

As you can see in image bellow, the line number 3 is connected in the begin and end of the line.

And the others line are not.

Lines_Connected

A DGN file is attached.

 

Thanks in Advance,

Danilo

Best answer by jdh

The way I have done this in the past is a TopologyBuilder (Generate List from Input Edges), on the nodes port test which nodes have only one edge (aka dangle node) based on the number of elements in the edge list (ListElementCounter).

 

FeatureMerger/FeatureJoiner (x2) the filtered nodes with the lines from the Edge port.

the _node_number of the Node should match either the _from_node or the _to_node of the Edge.

Alternatively the _edgeList{}.fme_arc_id of the Node should match the _edge_id of the Edge (ListBasedFeatureMerger)

 

The exact way you set it up will depend on whether you want to identify isolated vs dangle, or if the line orientation is important.

 

 

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

6 replies

jdh
Contributor
Forum|alt.badge.img+28
  • Contributor
  • Best Answer
  • September 22, 2020

The way I have done this in the past is a TopologyBuilder (Generate List from Input Edges), on the nodes port test which nodes have only one edge (aka dangle node) based on the number of elements in the edge list (ListElementCounter).

 

FeatureMerger/FeatureJoiner (x2) the filtered nodes with the lines from the Edge port.

the _node_number of the Node should match either the _from_node or the _to_node of the Edge.

Alternatively the _edgeList{}.fme_arc_id of the Node should match the _edge_id of the Edge (ListBasedFeatureMerger)

 

The exact way you set it up will depend on whether you want to identify isolated vs dangle, or if the line orientation is important.

 

 


david_r
Celebrity
  • September 23, 2020
jdh wrote:

The way I have done this in the past is a TopologyBuilder (Generate List from Input Edges), on the nodes port test which nodes have only one edge (aka dangle node) based on the number of elements in the edge list (ListElementCounter).

 

FeatureMerger/FeatureJoiner (x2) the filtered nodes with the lines from the Edge port.

the _node_number of the Node should match either the _from_node or the _to_node of the Edge.

Alternatively the _edgeList{}.fme_arc_id of the Node should match the _edge_id of the Edge (ListBasedFeatureMerger)

 

The exact way you set it up will depend on whether you want to identify isolated vs dangle, or if the line orientation is important.

 

 

Yup, same for me. Works well.

There is also the MRF2DDangleRemover, but it's an extra-cost 3rd party license so it's probably not available to most FME users.


danilo_fme
Evangelist
Forum|alt.badge.img+45
  • Author
  • Evangelist
  • September 24, 2020
jdh wrote:

The way I have done this in the past is a TopologyBuilder (Generate List from Input Edges), on the nodes port test which nodes have only one edge (aka dangle node) based on the number of elements in the edge list (ListElementCounter).

 

FeatureMerger/FeatureJoiner (x2) the filtered nodes with the lines from the Edge port.

the _node_number of the Node should match either the _from_node or the _to_node of the Edge.

Alternatively the _edgeList{}.fme_arc_id of the Node should match the _edge_id of the Edge (ListBasedFeatureMerger)

 

The exact way you set it up will depend on whether you want to identify isolated vs dangle, or if the line orientation is important.

 

 

Hi @jdh​ 

This sequence of transformer was formidable. Thanks your help!

Danilo


danilo_fme
Evangelist
Forum|alt.badge.img+45
  • Author
  • Evangelist
  • September 24, 2020
david_r wrote:

Yup, same for me. Works well.

There is also the MRF2DDangleRemover, but it's an extra-cost 3rd party license so it's probably not available to most FME users.

Thanks @david_r​ This a interesting tip.


Forum|alt.badge.img+1
  • March 26, 2022

Hi jdh, can you post a screenshot of the TopologyBuilder settings for this?


jdh
Contributor
Forum|alt.badge.img+28
  • Contributor
  • March 28, 2022
osdev wrote:

Hi jdh, can you post a screenshot of the TopologyBuilder settings for this?

TopologyBuillderYou can add additional attributes, but it is not strictly needed. The _edges list will contain fme_arc_angle, fme_arc_id and fme_direction in additional to whatever attributes you select.

 

Use the ListElementCounter to get the number of edges on the node, if it's only 1, then it's a dangle node.


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