Hi,
 
thank you for your answer.
 
> What you mean by keeping the surface structure? The topology of one mesh
> or the order of the triangles? If i get it right you need to repair
> multiple touching surfaces and that you need to repair both in the same
> way, which is currently not implemented.
 
I did not get what you mean by “repair both in the same way”…
 
By keeping the surface structure, I mean that the surfaces should not be collapsed into one, as is the case for stl format AFAIK. A cube, for example, has 6 outer surfaces, and those should also be 6 different surfaces in the mesh file (with identical nodes at the edges, of course). So it is not at the triangle level, but at the surface level that the structure must be preserved when the repair is done.
 
As an example, imagine two cubes, one on top of the other, but shifted in horizontal direction (see attachment: Test_partial_2D_mesh.png). The common interface between both is a part of the bottom surface of the upper cube, and a part of the upper surface of the lower cube. gmsh cannot do the merge at the interface, so it would create two overlapping nonconformal meshes (attachment: Test_partial_2D_interface.png). The triangles and nodes at the interface would not be identical. Now I would need a tool which detects the overlap at the interface and repairs it. The result would have to be that the interface is cut out from the upper surface of the lower and the bottom surface of the upper cube, and the holes replaced by a new surface common to both cubes.  At the lines limiting the interface, the meshes must share nodes (attachment: Test_partial_2D_clean.png).
I hope that this makes clear what I want to do.
 
Would OpenFlipper be able to do this? If not, do you have a hint where else I could look?
 
Thanks,
 
Matthias
 
 
 


_____________________________________________________________________
ERBE Elektromedizin GmbH
Firmensitz: 72072 Tuebingen
Geschaeftsfuehrer: Christian O. Erbe, Reiner Thede
Registergericht: Stuttgart HRB 380137