[Gmsh] Eliminating geometric duplications in imported geometry

Bernd Hahnebach gmsh at b75.ch
Sat Mar 18 17:07:08 CET 2017


see https://www.freecadweb.org/wiki/Part_BooleanFragments

the CompSolids greated with the tool above work great together with  
GMSH to make connected multi body meshes !

It is even possible to invoke GMSH from within FreeCAD and make  
differet mesh size or mesh groups for the different bodies, by GUI or  
by python :-)

bernd


Zitat von Jeremy Theler <jeremy at seamplex.com>:

> Just to complete, you can also get a compsolid through a boolean
> fragment at FreeCAD. There has been a long discussion on FreeCAD's side.
> See for example first this:
>
> https://forum.freecadweb.org/viewtopic.php?t=13830
>
> And lately this:
>
> https://forum.freecadweb.org/viewtopic.php?t=13830
>
> --
> Jeremy Theler
> www.seamplex.com
>
>
>
> On Sat, 2017-03-18 at 09:46 +0100, Christophe Geuzaine wrote:
>> > On 17 Mar 2017, at 23:24, Bram Sterling  
>> <bram.sterling at ossiumhealth.com> wrote:
>> >
>> > I'm trying to mesh a 3D 2-material construct created in another  
>> program (FreeCAD) and brought into Gmsh by way of a BREP file.   
>> After some troubleshooting downstream, I determined that Gmsh is  
>> turning the two volumes into two disjoint meshes despite their  
>> extensive shared surface.
>> >
>> > Poking around, I suspect the reason for this is that the two  
>> volumes share no elementary geometry.  Instead, the shared lines  
>> and surfaces are duplicated.
>> >
>> > If the original geometry had been defined in a Geo script this  
>> would seem straightforward to fix manually, but it seems a bit more  
>> complicated here, especially as this is bound to come up again with  
>> more complex geometry later.  Is deleting the redundant geometry  
>> and rebuilding other effected parts manually the best option, or is  
>> there a better way?
>> >
>>
>> With a recent nightly build, create a .geo script that does the  
>> following (assuming the brep contains 2 volumes):
>>
>> SetFactory("OpenCASCADE");
>> a() = ShapeFromFile("file.brep");
>> BooleanFragments{ Volume{a(0)}; Delete; }{ Volume{a(1)}; Delete; }
>>
>> Note that you can now directly create your CAD inside Gmsh: see  
>> demos/boolean/*.geo for examples.
>>
>> Christophe
>>
>>
>> >
>> > Thank you,
>> > Bram Sterling
>> > _______________________________________________
>> > gmsh mailing list
>> > gmsh at onelab.info
>> > http://onelab.info/mailman/listinfo/gmsh
>>
>
>
> _______________________________________________
> gmsh mailing list
> gmsh at onelab.info
> http://onelab.info/mailman/listinfo/gmsh
>







More information about the gmsh mailing list