[Gmsh] Silently created boundary entities

Banks, Stephen (Energy, Clayton North) Stephen.Banks at csiro.au
Mon Dec 14 07:35:43 CET 2020


I am using Gmsh v4.8.0. When I create a NURBS surface by calling the gmsh/model/occ/addBSplineSurface function in the Gmsh API, the function silently adds points and lines (presumably to create the boundary entities):

  1.  What is the recommended method to identify these silently added entities? Is it to call gmsh/model/occ/getEntities before and after calling addBSplineSurface to see what has been added?
  2.  Is it possible to replace these boundary entities (lines and points) so that I can get the topology correct?

After reading the comments in the makeTrimmedSurface() function, found in the Gmsh source code file GModelIO_OCC.cpp, I suspect (2) has been attempted in the past, but abandoned in preference for relying upon Geometry.Tolerance and Geometry.ToleranceBoolean to allow operations to succeed for topologically different yet geometrically identical (to within tolerance) entities. Is this correct?

My motivation for asking is I have been constructing geometry using the Gmsh API OpenCASCADE kernel functions, then synchronising, then calling gmsh/fltk/run to experiment with how I should control the Gmsh API. For some reason, the FLTK graphical user interface is not allowing me to successfully add a volume, which I have presumed to be due to incorrect topology (as my original approach for constructing a geometry resulted in lots of geometrically identical entities). As such, I have been put in effort to avoid geometrically identical entities to get the topology I want, but the addBSplineSurface is preventing me from being successful.

Many thanks,

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://onelab.info/pipermail/gmsh/attachments/20201214/fa1af9e8/attachment.html>

More information about the gmsh mailing list