Skip to main content
Solved

Removing Redundant 'stacked' Vertexes From Lines

  • April 27, 2023
  • 6 replies
  • 47 views

ecx
Supporter
Forum|alt.badge.img+5
  • Supporter
  • 31 replies

Hello,

 

See picture below for example, I wish to remove the green vertex while ensuring that the end point vertexes remain.

 

I need to remove these as they are treated as being stacked, which is causing major issues with my ESRI Utility Network Model.

 

These points are within < 0.001m of each other.

I have tried using a generalizer, which is not appropriate for this situation, as the lines become much too generalised. I wish to only remove these vertexes that are treated as being stacked upon each other.

 

I have also tried using the geometryValidator -> issue to detect: remove consecutive points without success.

 

What other ways can I remove these points? I have thought about creating a custom set of transformers that could do the job, i.e. Find all vertexes -> identify any vertexes that are connected to other Line st/end points or any devices (as I want to keep these) -> find vertexes that are within 0.001m of each other -> single match these -> output. Although with this custom method I have no clue how to re-feed in the vertexes into the lines to update them.

 

Any help would be appreciated.

Thanks

 

 

image 

Best answer by ecx

I ended up doing this, which I think will do the job.

image

This post is closed to further activity.
It may be an old question, an answered question, an implemented idea, or a notification-only post.
Please check post dates before relying on any information in a question or answer.
For follow-up or related questions, please post a new question or idea.
If there is a genuine update to be made, please contact us and request that the post is reopened.

6 replies

david_r
Celebrity
  • 8391 replies
  • April 27, 2023

Did you look at the Generalizer? Note that there are some algorithms that are better suited for topologies than others, see the help section.


jdh
Contributor
Forum|alt.badge.img+36
  • Contributor
  • 2001 replies
  • April 27, 2023

Are these vertexes within a line, or pseudonodes between two lines that should be joined?

In the former, a generalizer should work, in the latter, look at the LineCombiner.


ecx
Supporter
Forum|alt.badge.img+5
  • Author
  • Supporter
  • 31 replies
  • April 27, 2023

Did you look at the Generalizer? Note that there are some algorithms that are better suited for topologies than others, see the help section.

My lines (which are water utility pipes) require all vertexes to remain in their exact position as they are often gps positioned, apart from specifically the 'stacked' vertexes which need to be removed. I've had a look at the generaliser and it seems to simplify the geometry too much.

 

I dont think its appropriate to this situation unless you can suggest a specific algorithm type to use which fits my requirements?


ecx
Supporter
Forum|alt.badge.img+5
  • Author
  • Supporter
  • 31 replies
  • April 27, 2023

Are these vertexes within a line, or pseudonodes between two lines that should be joined?

In the former, a generalizer should work, in the latter, look at the LineCombiner.

These are vertexes within the same line, can you suggest a algorithm to use with the generaliser that can solve for the specific issue of removing 'stacked' vertexes?


ecx
Supporter
Forum|alt.badge.img+5
  • Author
  • Supporter
  • 31 replies
  • Best Answer
  • April 27, 2023

I ended up doing this, which I think will do the job.

image


jdh
Contributor
Forum|alt.badge.img+36
  • Contributor
  • 2001 replies
  • April 28, 2023

These are vertexes within the same line, can you suggest a algorithm to use with the generaliser that can solve for the specific issue of removing 'stacked' vertexes?

Either the douglas or the thin algorithms should work in your case if the generalization tolerance is small enough. In the case of douglas you can even set the tolerance to zero.