Skip to Content.
Sympa Menu

cgal-discuss - Re: [cgal-discuss] Create a coarse surface mesh produces areas of very small elements

Subject: CGAL users discussion list

List archive

Re: [cgal-discuss] Create a coarse surface mesh produces areas of very small elements


Chronological Thread 
  • From: Andreas Fabri <>
  • To:
  • Subject: Re: [cgal-discuss] Create a coarse surface mesh produces areas of very small elements
  • Date: Wed, 24 May 2023 14:57:22 +0200
  • Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None ; spf=Pass ; spf=None
  • Ironport-data: A9a23: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
  • Ironport-hdrordr: A9a23:4Ax/G6GRo+X9oAKWpLqEdMeALOsnbusQ8zAXPiBKJSC9Afbo8v xG+85rriMc6QxhIE3I9urgBEDtewK7yXcx2/hpAV7AZmnbUQmTQr2KhLGKq1aLdhEWtNQtsp uIGJIOauEYY2IK6foSrDPIcOoI8Z2gz6Htr+Lfw3BxbRgCUc5dxjY8LBmbVnBsTANLHt4YGf Onl7B6jgvlRk9SVP2SIlMsY9Luzue7667OUFo4PFoc0SGrtxmP05KSKWnl4j4uFwx1hY0a2U z+riTFysyYwoyG9iM=
  • Ironport-phdr: A9a23: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 BMq2FMWXA==
  • Ironport-sdr: 646e09b4_NrSJ+tzm6LdWGZ0QUfPhggtKyT09FBuvZ6Q+tiuO09prgQM nTbZGd+0PO3rIt3B6LNOMobD1lHMgthRbdA60nw==

Have a look at this section

https://doc.cgal.org/latest/Mesh_3/index.html#title30


On 5/24/2023 2:56 PM, Andreas Fabri wrote:
Hello,

Our meshing experts don't work today.   My guess is that it has to do with the initialization
of the mesh generation process.   From a point P inside the volume we shoot rays and
the intersection points of the rays with the surface are inserted.   When the point P
is close to the surface you may get two intersection points close on the surface.

Andreas


On 5/24/2023 2:51 PM, Sebastian Bachmann ( via cgal-discuss Mailing List) wrote:
Hi!

This is an image of a set of 20 and I can see this behaviour on 4 of them. On 420.inr it does not happen and the mesh looks good.
The code was compiled against 5.4 (1050401000).

If I look at the imges, I can not see any voxels standing out at the position - at least not more than on other places, where it works fine.
At least from the image, I cannot make out any particular feature that would cause that.

Is there any way to debug this and see what's going on?

Best,
Sebastian

On 24.05.2023 14:34, Sebastien Loriot ( via cgal-discuss Mailing List) wrote:
Do you observe this behavior on all images or only a specific one?
For example, when using 420.inr do you have such an issue?

What could case such an over refinement (provided you are not using master version of CGAL) is if the mesher is trying to respect some
topological criteria (a very tiny handle for example, but that would be surprising in an image).

Best,

Sebastien.

On 5/24/23 14:14, Sebastian Bachmann ( via cgal-discuss Mailing List) wrote:
Hi everyone,

I have an image from which I want to create a coarse surface mesh.
The code I use for that is based upon the example mesh_3D_image_with_features.cpp, however it is adopted to then extract the surface and write an OFF file: https://gist.github.com/reox/0df1f446f0ff9d46e0688b60e8e858b8

As you can see, the Mesh_criteria is set to a really coarse mesh. The input image (attached) I use has a voxel size of around 0.5mm and represents a proximal femur.
Now, for some reason, I get extremely fine triangle elements in certain places (see attached image).

I find that peculiar, as the facet_distance is already quite large, and I thought that this might be the main issue here. I remembered, that also the relative_error_bound in the create_labeled_image_mesh_domain can have an influence, but reducing this rather creates a "spiky" mesh than removing those small elements. (Eventually when it is set to 0.1, the small elements vanish, but then the vertices are all over the place and not on the isosurface anymore...)

Is there anything I missed here, maybe did I use wrong parameters? Or is there another way how I could produce such coarse meshes?

Best,
Sebastian



--
Andreas Fabri, PhD
Chief Officer, GeometryFactory
Editor, The CGAL Project




Archive powered by MHonArc 2.6.19+.

Top of Page