How to make a mesh manifold.

I'm trying to 'limit dissolve' the mesh in the attached .ifc.
It does not work, because (as i researched) the mesh is non-manifold.
Is there a way to make it 'manifold'?
The steps i've taken, to try, create a fragment mesh--see image below.

steverugiAce

Comments

  • Did you try to merge vertices by distance?

  • @theoryshaw In the 3D Print Toolbox https://docs.blender.org/manual/en/latest/addons/mesh/3d_print_toolbox.html there's a tool to check if a mesh is manifold, and some repair functions to make it manifold.

  • Maybe extract the vertices, and then create a manifod mesh via Delaunay tool software

  • @JanF said:
    Did you try to merge vertices by distance?

    Thanks, yeah, tried this, no go. :\

  • @John said:
    @theoryshaw In the 3D Print Toolbox https://docs.blender.org/manual/en/latest/addons/mesh/3d_print_toolbox.html there's a tool to check if a mesh is manifold, and some repair functions to make it manifold.

    Thanks, but unfortunately this is what I get...

  • @emiliotasso said:
    Maybe extract the vertices, and then create a manifod mesh via Delaunay tool software

    Maybe i did it wrong, but unfortunately it doesn't create an exact match...

  • Ok, can you be more specific about what doesn't work? The mesh is manifold (except obviously for the edges) and limited dissolve/decimate modifier seem to work as expected:

  • @theoryshaw attached is a nearly non-manifold version of your file - according to the 3D-Print toolbox. So much data has been lost it'll be useless, but may highlight some of the most problematic areas. It's from a hybrid effort in Blender and Meshlab, and the procedures I couldn't repeat as I resorted to click and hope.

  • edited June 2024

    @JanF This is what happens on my side when i select...

    I made sure to download the file attached to this forum post too, just to make sure i had the same one you did.

  • Ok, I'm using blender 3.6.1 and an older Blender bim. I'll try to check with the newest version, I think the normals might be flipped. I'll also check which bbim version works, so we can file a bug.

    theoryshaw
  • edited July 2024

    This mesh is WEIRD. Every face is duplicated. Meaning for every triangle there are 2 associated faces, one pointing up, and one pointing down. I suggest you enable "Face Orientation" in the overlays. Faces should either be red, or blue by default. If they're pink, there's a problem. In edit mode select a face, then Select > Select Similar > Normal and increase the value in the lower left panel until pretty much all faces are selected. Then Mesh > Delete > Only faces.

    carlopavtheoryshawMassimoAce
  • That unlocked it! Thanks @Gorgious!

  • @Gorgious said:
    This mesh is WEIRD. Every face is duplicated. Meaning for every triangle there are 2 associated faces, one pointing up, and one pointing down.

    This is a feature, not a bug, in certain visualization workflows. For example Sketchup has an option to export dual-sided faces so that a mesh doesn't "disappear" when the camera is looking at the "bottom" of the mesh (direction of the normal returns light away from the camera, not towards it).

  • edited July 2024

    Yup I do understand why it was done, but I think it is the wrong way to go about it. You're basically doubling the number of triangles (and thus file size and gpu memory) to achieve a feature that can be done by just checking a checkbox that is available in any (good) rendering engine. I think this thread is a good example of why double sided illumination should be handled by the rendering engine and not the topology :) Or at the very least the duplicated faces should not reference the same vertices, this is bound to make any 3D software bug out. I don't think it is even allowed to construct this kind of mesh in Blender, at least not without a python script.

  • edited July 2024

    Confirming that the problem does not exist in Blender 3.6.1+BBIM 0.0.230902:

    Also looking in the ifc file, I see no duplication of the faces. I suspect a Blender BIM bug or some kind of deviation in the file from the ifc standard which the newer BBIM doesn't handle well.

    Reported:
    https://github.com/IfcOpenShell/IfcOpenShell/issues/4985

    theoryshawcarlopavAce
Sign In or Register to comment.