Thanks! Best regards, Songt.
jeremy theler <[email protected]> 于2020年2月25日周二 上午7:06写道: > > https://dev.opencascade.org/doc/overview/html/occt_user_guides__boolean_operations.html > > -- > jeremy theler > www.seamplex.com > > On Mon, Feb 24, 2020, 19:01 tao song <[email protected]> wrote: >> >> Dear Christophe, >> It's really solved my problem, and i'm looking forward to the new algorithm! >> Is there any introduction about bool function, like BooleanFragments, >> the introduction is vague in gmsh manual. >> Thank you very much. >> >> Best regards, >> Songt. >> >> Christophe Geuzaine <[email protected]> 于2020年2月24日周一 上午3:42写道: >> >> > >> > >> > Dear Songt, >> > >> > Very thin (or very long) cylinders have very anisotropic parametric >> > representations in OpenCASCADE. When the ratio is sufficiently large you >> > run into floating point tolerance issues in the mesh generation process. >> > >> > With OpenCASCADE cylinders, the workaround is to segment the cylinders in >> > several parts. Attached is a modified version of your file that shows one >> > way of doing it: >> > >> > >> > >> > Christophe >> > >> > PS: once the new hxt algorithm supports Fields (hopefully later this >> > year), 3D meshing time for very refined meshes will be dramatically >> > decreased. >> > >> > >> > > On 23 Feb 2020, at 17:52, tao song <[email protected]> wrote: >> > > >> > > Dear all, >> > > While i meshing a model with small cylinder in a huge domain, if the >> > > filed is not given, it gives me an error "No elements in volume x", >> > > where x denote the small cylinder volume, and if the field is used, >> > > the gmsh blocked and finally crashed. >> > > How can i get the right mesh of this kind of model (small cylinder in >> > > a huge domain)? I want the whole domain and the small cylinder both >> > > are meshed. >> > > >> > > Kind regards, >> > > Songt. >> > > >> > > The code i used: >> > > --------------------------- >> > > SetFactory("OpenCASCADE"); >> > > >> > > Point(1) = {0,0,0}; Point(2) = {0,0,-40}; >> > > Line(1) = {1,2}; >> > > >> > > Box(1)={-50,-50,-50,100,100,100}; >> > > Cylinder(2) = {0, 0, 0, 0, 0, -40, 0.01, 2*Pi}; >> > > //Cylinder(2) = {0, 0, 0, 0, 0, -40, 1, 2*Pi}; >> > > BooleanDifference(3) = { Volume{1}; Delete; }{ Volume{2}; }; >> > > //Coherence; >> > > Physical Volume ( "c",11 ) = {1}; >> > > Physical Volume ( "d",12 ) = {2}; >> > > >> > > len = 0.001; >> > > Field[1] = Distance; >> > > Field[1].NNodesByEdge = 100; >> > > Field[1].EdgesList = {1}; >> > > >> > > Field[2] = Threshold; >> > > Field[2].IField = 1; >> > > Field[2].LcMin = len*5; >> > > Field[2].LcMax = 20; >> > > Field[2].DistMin = 200*len; >> > > Field[2].DistMax = 30; >> > > Field[3] = Min; >> > > Field[3].FieldsList = {2}; >> > > Background Field = 3; >> > > --------------------------- >> > > >> > > _______________________________________________ >> > > gmsh mailing list >> > > [email protected] >> > > http://onelab.info/mailman/listinfo/gmsh >> > >> > — >> > Prof. Christophe Geuzaine >> > University of Liege, Electrical Engineering and Computer Science >> > http://www.montefiore.ulg.ac.be/~geuzaine >> > >> > >> > >> >> _______________________________________________ >> gmsh mailing list >> [email protected] >> http://onelab.info/mailman/listinfo/gmsh _______________________________________________ gmsh mailing list [email protected] http://onelab.info/mailman/listinfo/gmsh
