Question about Mesh_3

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Question about Mesh_3

Zesen Qian
Hi list,

I have several question about Mesh_3.

1. I'm generating isosurface by implicit function. It requires that
the center of the sphere be inside of the mesh. The question is, given
an arbitrary mesh, how can I find such a point?

2. Due to the first problem(I guess), the mesher seems to be sampling
a lot at a specific spot on the surface, making the mesh very dense at
that spot. While the generated mesh is self-intersection free by
construction, the exported .off is not(because of the precision
issue). I have set the precision to 17-digits and it doesn't help. I
guess one approach is to give a lower bound on the facet_size, but I
coudln't find such a parameter. Another approach is to simplify the
mesh, but I'm worried this might lose some details of the mesh.

Best,
Zesen

--
You are currently subscribed to cgal-discuss.
To unsubscribe or access the archives, go to
https://sympa.inria.fr/sympa/info/cgal-discuss


Reply | Threaded
Open this post in threaded view
|

Re: Question about Mesh_3

Laurent Rineau (CGAL/GeometryFactory)
Le Tuesday, June 5, 2018 7:47:50 PM CEST Zesen Qian a écrit :
> Hi list,
>
> I have several question about Mesh_3.
>
> 1. I'm generating isosurface by implicit function. It requires that
> the center of the sphere be inside of the mesh. The question is, given
> an arbitrary mesh, how can I find such a point?

Hi,

You talk at the same time about an implicit function and a mesh. What is
actually your input?

> 2. Due to the first problem(I guess), the mesher seems to be sampling
> a lot at a specific spot on the surface, making the mesh very dense at
> that spot. While the generated mesh is self-intersection free by
> construction, the exported .off is not(because of the precision
> issue). I have set the precision to 17-digits and it doesn't help. I
> guess one approach is to give a lower bound on the facet_size, but I
> coudln't find such a parameter. Another approach is to simplify the
> mesh, but I'm worried this might lose some details of the mesh.

That is probably related. The default initialization of the mesh is done by
shooting random ray around a point (and that point is the center of the
sphere by default). If that point is close to the iso-surface, then ray
shootings will produces initial points that are very close.

--
Laurent Rineau, PhD
R&D Engineer at GeometryFactory           http://www.geometryfactory.com/
Release Manager of the CGAL Project       http://www.cgal.org/




--
You are currently subscribed to cgal-discuss.
To unsubscribe or access the archives, go to
https://sympa.inria.fr/sympa/info/cgal-discuss


Reply | Threaded
Open this post in threaded view
|

Re: Question about Mesh_3

andreas.fabri

Hi Zesen Qian,

As Laurent pointed out the algorithm for finding initial points has
potential for improvement.

If you have a polyhedral surface then taking some vertices which
are not too close to each other might be a good seeding.

https://gist.github.com/afabri/1bbf46c6fd4f742bd982

Best,
Andreas

On 6/6/2018 5:41 PM, Laurent Rineau (CGAL/GeometryFactory) wrote:
Le Tuesday, June 5, 2018 7:47:50 PM CEST Zesen Qian a écrit :
Hi list,

I have several question about Mesh_3.

1. I'm generating isosurface by implicit function. It requires that
the center of the sphere be inside of the mesh. The question is, given
an arbitrary mesh, how can I find such a point?
Hi,

You talk at the same time about an implicit function and a mesh. What is 
actually your input?

2. Due to the first problem(I guess), the mesher seems to be sampling
a lot at a specific spot on the surface, making the mesh very dense at
that spot. While the generated mesh is self-intersection free by
construction, the exported .off is not(because of the precision
issue). I have set the precision to 17-digits and it doesn't help. I
guess one approach is to give a lower bound on the facet_size, but I
coudln't find such a parameter. Another approach is to simplify the
mesh, but I'm worried this might lose some details of the mesh.
That is probably related. The default initialization of the mesh is done by 
shooting random ray around a point (and that point is the center of the 
sphere by default). If that point is close to the iso-surface, then ray 
shootings will produces initial points that are very close.


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

phone: +33.492.954.912    skype: andreas.fabri