[Gmsh] BooleanFragments on tiny scale
Mathias Scheunert
ms79vary at mailserver.tu-freiberg.de
Tue Apr 28 17:49:38 CEST 2020
Dear developers and users,
is there a way, to apply BooleanFragments (and others?) also on a very
tiny scale?
-> Please find attached a MWE, illustrating that this operation fails on
a small scale even with reducing BooleanTolerance (ln 17/18).
Best regards,
Mathias
--
Dr. Mathias Scheunert
Institute of Geophysics and Geoinformatics, TU Bergakademie Freiberg
Gustav-Zeuner-Str. 12, D-09596 Freiberg
Tel.: +493731393630
-------------- next part --------------
SetFactory("OpenCASCADE");
// Create line from points.
pt_id = newp;
Point(pt_id+0) = {-1e-05, 0, 0};
Point(pt_id+1) = {1e-05, 0, 0};
ln_id = newl;
Line(ln_id) = {pt_id+0, pt_id+1};
// Create surfaces.
fc_id = news;
domain_r = 3e-07;
Disk(fc_id+0) = {-5e-06, 0, 0, domain_r};
Disk(fc_id+1) = { 5e-06, 0, 0, 10*domain_r};
// Intersect surfaces with line.
tol = 1e-6; // no cuts at all
//tol = 1e-13; // only large disc is halfed
Geometry.ToleranceBoolean = tol;
frag_ents() = BooleanFragments{Curve{ln_id}; Delete;}{Surface{fc_id+0, fc_id+1}; Delete;};
More information about the gmsh
mailing list