Skip to Content.
Sympa Menu

cgal-discuss - Re: [cgal-discuss] Uneven implicit surface result

Subject: CGAL users discussion list

List archive

Re: [cgal-discuss] Uneven implicit surface result


Chronological Thread 
  • From: Mariette Yvinec <>
  • To:
  • Subject: Re: [cgal-discuss] Uneven implicit surface result
  • Date: Tue, 18 Aug 2009 09:13:18 +0200

I think that there is some mistake.
You are not talking about the same parameter.
Pierre was obviously talking about the third parameter
in the creator of the Implicit_surface_3
and not about the third meshing criteria ....

There is a third parameter in this creator
which sets the precision
with which points on the surface are computed.
Implicit_surface_3<Traits, Function> surface ( Function f, Sphere_3 bounding_sphere, FT error_bound = FT(1e-3));
This parameter is relative to the radius
of the bounding sphere and has a default value of 1e-03.
Implicit_surface_3<Traits, Function> surface ( Function f, Sphere_3 bounding_sphere, FT error_bound = FT(1e-3));
You need to take care that the resulting error bound
(i. e. error_bound times radius of bounding sphere) is no more
than about 1/10 times the distance bound meshing criteria,
and this might be the source of yoour troubles.


Graham Macpherson wrote:
Hello Pierre,

That parameter was at 0.001 in my initial post, if I change it to 0.0008 it triples the number of points on the surface (they form in clumps, not uniformly distributed), but there is exactly the same magnitude of radius error.

If I make it 0.0005, my PC runs out of memory (8GB RAM) before it completes.

If I make it 0.1, I get essentially the same result as 0.001.

Regards,

Graham


On Friday 14 August 2009 14:27:32 Pierre Alliez wrote:
hi Graham,

have your tried tuning the third parameter if the surface? the relative
precision of the dichotomy mechanism to find the intersection?

Pierre Alliez
INRIA Sophia Antipolis - Mediterranee
Project-team GEOMETRICA
http://www-sop.inria.fr/members/Pierre.Alliez/
Tel: +33 4 92 38 76 77
Fax: +33 4 97 15 53 95

Graham Macpherson a écrit :
Hello,

I'm meshing surfaces using the implicit surface mesher and testing it
with simple smooth shapes. Using the example

examples/Surface_mesher/mesh_an_implicit_function.cpp

I've created a fairly fine surface of a sphere using the criteria:

30.0, // angular bound
0.01, // radius bound
0.001 // distance bound

The surface is not smooth - it has an "orange peel" look. Plotting the
radius of each vertex of the triangulation shows the magnitude of error
of the triangulation point positions from the expected radius of 1:

fineSphereSurfaceWithRadius.png

Creating a coarse surface with criteria

30.0, // angular bound
0.1, // radius bound
0.1 // distance bound

Results in:

coarseSphereSurfaceWithRadius.png

where the magnitude of vertex error is similar, but in the fine case, the
same radial vertex position error in a smaller triangle creates a bigger
error in the normal direction, hence the uneven look.

Is this the result that is expected? and is there anything that I can do
to improve the conformance of the triangulation points to the expected
sphere function? Am I missing a tolerance adjustment somewhere?

It isn't a write precision/truncation problem, as I've set the precision
of the ofstream to 15.

Thanks,

Graham




------------------------------------------------------------------------


------------------------------------------------------------------------


--
Mariette Yvinec
Geometrica project team
INRIA Sophia-Antipolis





Archive powered by MHonArc 2.6.16.

Top of Page