Skip to main content
Solved

Can't merge wallls together in 3d buildings


javierml
Participant
Forum|alt.badge.img+1

Hello everyone,

 

I'm currently imitating this example from FME to generate 3D buildings from 2D polygons, but with my own data. I expected that, being 4 perfect squares, I'd get 24 tiles after running the deaggregator, but instead I have a few more.

It looks like some walls have been wrongly divided. I need to "simplify" these parts into an unique wall or else the appearence setter will not correspond.

 

The issue is that I can't seem to find the transformer or process to do this. I've tried changing the parametres to deaggregator and planarityFIlter, I've tried using Orientor and OrientorExtractor, I've been looking for some patterns in the orientation, surface coordinates or other attributes that could allow me to join them together… but none of them have worked. Has anyone got an idea how to solve this?

BTW the original 2D polygon comes a FGDB and it's a fme_composite_surface by the time the geometrycoercer is run. The behaviour may be different from Mesh Objects, CityGML or Interpolis, which would explain why some solutions I've found didn't work for this case.

Best answer by takashi

Hi ​@javierml ,

I guess that an excess vertex exists on the polygon boundary and it could cause the unexpected result. If so, Generalizer (Algorithm: Douglas) before Extruder might help you to remove the excess from the polygon boundary.

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

2 replies

takashi
Contributor
  • Best Answer
  • April 3, 2025

Hi ​@javierml ,

I guess that an excess vertex exists on the polygon boundary and it could cause the unexpected result. If so, Generalizer (Algorithm: Douglas) before Extruder might help you to remove the excess from the polygon boundary.


javierml
Participant
Forum|alt.badge.img+1
  • Author
  • Participant
  • April 3, 2025

Hi ​@takashi , 

 

Thank you very much! This is what I was looking for. Now just 24 faces are created.

 

 

I think I may have stumbled upon this Generalizer when looking for a solution, but maybe I was too focused on correcting the 3D itself rather than the 2D fooprints from the start! I must also admit that these algorithm methods are too advanced for me to understand them to the fullest.


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