Bugs in AABBTree

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

Bugs in AABBTree

Qingnan Zhou
Dear all,

There seems to be a bug that causes CGAL::AABBTree to produce wrong results.  The following code would illustrate the problem:  

It basically compute the center of each face and query the distance between the centroid and the mesh.  Ideally, the query should always return 0 as the distance and the source face index, otherwise the code will print out the face that causes the failure.

typedef CGAL::Cartesian<Real> K;
typedef K::Point_3 CGALPoint;
typedef K::Triangle_3 CGALTriangle;

typedef CGAL::AABB_tree<AABB_triangle_traits> AABBTree;
typedef AABBTree::Point_and_primitive_id Point_and_primitive_id;

...

    AABBTree *coarseTrianglesTree =
        new AABBTree(triangles.begin(), triangles.end());
    coarseTrianglesTree->accelerate_distance_queries();

    size_t count = 0;
    for (auto itr : triangles) {
        CGALPoint c = CGAL::ORIGIN + ((
        (itr[0] - CGAL::ORIGIN) +
        (itr[1] - CGAL::ORIGIN) +
        (itr[2] - CGAL::ORIGIN)) / 3.0);

        Point_and_primitive_id pp = coarseTrianglesTree->closest_point_and_primitive(c);
        size_t face_index = pp.second - triangles.begin();
        double distance = coarseTrianglesTree->squared_distance(c);

        if (distance > 1e-3) {
            std::cout << count << std::endl;
            std::cout << "distance  = " << distance << std::endl;
            std::cout << "face idx  = " << face_index << std::endl;
        }
        count ++;
    }

When running this test on meshes such as "suzanne.obj", the query fails on quite a few faces (the query finds the incorrect face index and gets a distance ~= 10^-3).

We are able to reproduce the error with CGAL 4.4 and CGAL 4.5 on 

Redhat Enterprise Linux server with the following setting:
gcc 4.8.2, gmp 6.0.0 (also tried 4.3.1), mpfr 3.1.2, boost 1.53

CentOS 6.3 with the following setting:
gcc 4.8.2, gmp 6.0.0a, mpfr 3.1.2, boost 1.55.0

Strangely it works on the version compiled by macports.  We have tested CGAL 4.3 and 4.4 on mac.

best,
James
Reply | Threaded
Open this post in threaded view
|

Re: Bugs in AABBTree

Sebastien Loriot (GeometryFactory)
This is most probably a floating point computation issue.

Also have a look here:
http://www.cgal.org/FAQ.html#inexact_NT

Sebastien.


On 11/10/2014 10:04 PM, Qingnan Zhou wrote:

> Dear all,
>
> There seems to be a bug that causes CGAL::AABBTree to produce wrong
> results.  The following code would illustrate the problem:
>
> It basically compute the center of each face and query the distance
> between the centroid and the mesh.  Ideally, the query should always
> return 0 as the distance and the source face index, otherwise the code
> will print out the face that causes the failure.
>
> typedef CGAL::Cartesian<Real> K;
> typedef K::Point_3 CGALPoint;
> typedef K::Triangle_3 CGALTriangle;
>
> typedef CGAL::AABB_tree<AABB_triangle_traits> AABBTree;
> typedef AABBTree::Point_and_primitive_id Point_and_primitive_id;
>
> ...
>
>      AABBTree *coarseTrianglesTree =
>          new AABBTree(triangles.begin(), triangles.end());
>      coarseTrianglesTree->accelerate_distance_queries();
>
>      size_t count = 0;
>      for (auto itr : triangles) {
>          CGALPoint c = CGAL::ORIGIN + ((
>          (itr[0] - CGAL::ORIGIN) +
>          (itr[1] - CGAL::ORIGIN) +
>          (itr[2] - CGAL::ORIGIN)) / 3.0);
>
>          Point_and_primitive_id pp =
> coarseTrianglesTree->closest_point_and_primitive(c);
>          size_t face_index = pp.second - triangles.begin();
>          double distance = coarseTrianglesTree->squared_distance(c);
>
>          if (distance > 1e-3) {
>              std::cout << count << std::endl;
>              std::cout << "distance  = " << distance << std::endl;
>              std::cout << "face idx  = " << face_index << std::endl;
>          }
>          count ++;
>      }
>
> When running this test on meshes such as "suzanne.obj
> <https://www.dropbox.com/s/j1xj8nfy68xpdqc/suzanne_tri.obj?dl=0>", the
> query fails on quite a few faces (the query finds the incorrect face
> index and gets a distance ~= 10^-3).
>
> We are able to reproduce the error with CGAL 4.4 and CGAL 4.5 on
>
> Redhat Enterprise Linux server with the following setting:
> gcc 4.8.2, gmp 6.0.0 (also tried 4.3.1), mpfr 3.1.2, boost 1.53
>
> CentOS 6.3 with the following setting:
> gcc 4.8.2, gmp 6.0.0a, mpfr 3.1.2, boost 1.55.0
>
> Strangely it works on the version compiled by macports.  We have tested
> CGAL 4.3 and 4.4 on mac.
>
> best,
> James


--
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: Bugs in AABBTree

Qingnan Zhou
Hi Sebastien,

Changing the kernel to CGAL::Exact_predicates_inexact_constructions_kernel does not help in this case.  The closest point and primitive returned are still incorrect for many faces.  However, switching to gcc-4.9.2 on linux seems to make the problem go away.  Maybe it is related to how CGAL is built?

Is anyone able to reproduce this problem?  I.e. compute the distance between face center to the mesh for every face and check the distance is 0.  Try it on this mesh: "suzanne.obj"

best,
James

On Wed, Nov 12, 2014 at 2:36 AM, Sebastien Loriot (GeometryFactory) <[hidden email]> wrote:
This is most probably a floating point computation issue.

Also have a look here:
http://www.cgal.org/FAQ.html#inexact_NT

Sebastien.



On 11/10/2014 10:04 PM, Qingnan Zhou wrote:
Dear all,

There seems to be a bug that causes CGAL::AABBTree to produce wrong
results.  The following code would illustrate the problem:

It basically compute the center of each face and query the distance
between the centroid and the mesh.  Ideally, the query should always
return 0 as the distance and the source face index, otherwise the code
will print out the face that causes the failure.

typedef CGAL::Cartesian<Real> K;
typedef K::Point_3 CGALPoint;
typedef K::Triangle_3 CGALTriangle;

typedef CGAL::AABB_tree<AABB_triangle_traits> AABBTree;
typedef AABBTree::Point_and_primitive_id Point_and_primitive_id;

...

     AABBTree *coarseTrianglesTree =
         new AABBTree(triangles.begin(), triangles.end());
     coarseTrianglesTree->accelerate_distance_queries();

     size_t count = 0;
     for (auto itr : triangles) {
         CGALPoint c = CGAL::ORIGIN + ((
         (itr[0] - CGAL::ORIGIN) +
         (itr[1] - CGAL::ORIGIN) +
         (itr[2] - CGAL::ORIGIN)) / 3.0);

         Point_and_primitive_id pp =
coarseTrianglesTree->closest_point_and_primitive(c);
         size_t face_index = pp.second - triangles.begin();
         double distance = coarseTrianglesTree->squared_distance(c);

         if (distance > 1e-3) {
             std::cout << count << std::endl;
             std::cout << "distance  = " << distance << std::endl;
             std::cout << "face idx  = " << face_index << std::endl;
         }
         count ++;
     }

When running this test on meshes such as "suzanne.obj
<https://www.dropbox.com/s/j1xj8nfy68xpdqc/suzanne_tri.obj?dl=0>", the
query fails on quite a few faces (the query finds the incorrect face
index and gets a distance ~= 10^-3).

We are able to reproduce the error with CGAL 4.4 and CGAL 4.5 on

Redhat Enterprise Linux server with the following setting:
gcc 4.8.2, gmp 6.0.0 (also tried 4.3.1), mpfr 3.1.2, boost 1.53

CentOS 6.3 with the following setting:
gcc 4.8.2, gmp 6.0.0a, mpfr 3.1.2, boost 1.55.0

Strangely it works on the version compiled by macports.  We have tested
CGAL 4.3 and 4.4 on mac.

best,
James


--
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: Bugs in AABBTree

Laurent Rineau (CGAL/GeometryFactory)
Le Wednesday 12 November 2014 10:38:03 Qingnan Zhou a écrit :

> Hi Sebastien,
>
> Changing the kernel to CGAL::Exact_predicates_inexact_constructions_kernel
> does not help in this case.  The closest point and primitive returned are
> still incorrect for many faces.  However, switching to gcc-4.9.2 on linux
> seems to make the problem go away.  Maybe it is related to how CGAL is
> built?
>
> Is anyone able to reproduce this problem?  I.e. compute the distance
> between face center to the mesh for every face and check the distance is
> 0.  Try it on this mesh: "suzanne.obj
> <https://www.dropbox.com/s/j1xj8nfy68xpdqc/suzanne_tri.obj?dl=0>"

The computation of a distance is a construction. With the kernel
CGAL::Exact_predicates_inexact_constructions_kernel, then the constructions
are not exact, and thus the computation of a distance is not exact either.
That is expected.

Please explain what sort of problem you want to solve, that is impacted by
this "bug", and we might be able to propose other solutions.

--
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: Bugs in AABBTree

jpanetta
Dear Sebastien and Laurent,

The main point of the example was to show that querying the AABB for a triangle by its centroid is finding the incorrect triangle. The distance printout shows that the error made is many orders of magnitude greater than machine precision (the example mesh bounding box is 26.6x19.2x16.1). You can see a full printout of the large errors here:


Notice that even when the AABB tree gets the correct face, sometimes the distance is not close to zero:
11208
distance  = 0.0363889
face idx  = 11208
(the first number means the centroid of 11208 was queried, and face idx = 11208 means the AABB returned face 11208).

It's difficult to believe this is a simple floating point error; the example mesh doesn't have small or degenerate triangles, and the errors are visually obvious:
(a query and the incorrectly retrieved triangle are outlined).

Furthermore, the results are compiler dependent: when gcc 4.8.2 is used to compile CGAL and the example, both kernels Cartesian<double> and Exact_predicates_inexact_constructions_kernel, give the incorrect AABB results. When gcc 4.9.2 is used to compile CGAL and the example, both kernels give the correct AABB results. It also works to compile CGAL with gcc 4.8.2 but the example with gcc 4.9.2.

-Julian

On Wed, Nov 12, 2014 at 11:03 AM, Laurent Rineau (CGAL/GeometryFactory) <[hidden email]> wrote:
Le Wednesday 12 November 2014 10:38:03 Qingnan Zhou a écrit :
> Hi Sebastien,
>
> Changing the kernel to CGAL::Exact_predicates_inexact_constructions_kernel
> does not help in this case.  The closest point and primitive returned are
> still incorrect for many faces.  However, switching to gcc-4.9.2 on linux
> seems to make the problem go away.  Maybe it is related to how CGAL is
> built?
>
> Is anyone able to reproduce this problem?  I.e. compute the distance
> between face center to the mesh for every face and check the distance is
> 0.  Try it on this mesh: "suzanne.obj
> <https://www.dropbox.com/s/j1xj8nfy68xpdqc/suzanne_tri.obj?dl=0>"

The computation of a distance is a construction. With the kernel
CGAL::Exact_predicates_inexact_constructions_kernel, then the constructions
are not exact, and thus the computation of a distance is not exact either.
That is expected.

Please explain what sort of problem you want to solve, that is impacted by
this "bug", and we might be able to propose other solutions.

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


Reply | Threaded
Open this post in threaded view
|

Re: Bugs in AABBTree

Sebastien Loriot (GeometryFactory)
I compiled the program attached on your input converted to off using
meshlab using
g++-4.8 (Debian 4.8.3-2) 4.8.3
g++-4.7 (Debian 4.7.3-14) 4.7.3
g++-4.6 (Debian 4.6.4-7) 4.6.4
g++-4.4 (Debian 4.4.7-8) 4.4.7
with CGAL-4.5 and all was fine.

Could you give it a try and let us know?

Thanks,

Sebastien.

On 11/12/2014 06:04 PM, Julian Panetta wrote:

> Dear Sebastien and Laurent,
>
> The main point of the example was to show that querying the AABB for a
> triangle by its centroid is finding the incorrect triangle. The distance
> printout shows that the error made is many orders of magnitude greater
> than machine precision (the example mesh bounding box is
> 26.6x19.2x16.1). You can see a full printout of the large errors here:
>
> http://julianpanetta.com/bad.txt
>
> Notice that even when the AABB tree gets the correct face, sometimes the
> distance is not close to zero:
> 11208
> distance  = 0.0363889
> face idx  = 11208
> (the first number means the centroid of 11208 was queried, and face idx
> = 11208 means the AABB returned face 11208).
>
> It's difficult to believe this is a simple floating point error; the
> example mesh doesn't have small or degenerate triangles, and the errors
> are visually obvious:
> http://julianpanetta.com/incorrect_result.png
> (a query and the incorrectly retrieved triangle are outlined).
>
> Furthermore, the results are compiler dependent: when gcc 4.8.2 is used
> to compile CGAL and the example, both kernels Cartesian<double> and
> Exact_predicates_inexact_constructions_kernel, give the incorrect AABB
> results. When gcc 4.9.2 is used to compile CGAL and the example, both
> kernels give the correct AABB results. It also works to compile CGAL
> with gcc 4.8.2 but the example with gcc 4.9.2.
>
> -Julian
>
> On Wed, Nov 12, 2014 at 11:03 AM, Laurent Rineau (CGAL/GeometryFactory)
> <[hidden email] <mailto:[hidden email]>> wrote:
>
>     Le Wednesday 12 November 2014 10:38:03 Qingnan Zhou a écrit :
>     > Hi Sebastien,
>     >
>     > Changing the kernel to CGAL::Exact_predicates_inexact_constructions_kernel
>     > does not help in this case.  The closest point and primitive returned are
>     > still incorrect for many faces.  However, switching to gcc-4.9.2 on linux
>     > seems to make the problem go away.  Maybe it is related to how CGAL is
>     > built?
>     >
>     > Is anyone able to reproduce this problem?  I.e. compute the distance
>     > between face center to the mesh for every face and check the distance is
>     > 0.  Try it on this mesh: "suzanne.obj
>      > <https://www.dropbox.com/s/j1xj8nfy68xpdqc/suzanne_tri.obj?dl=0>"
>
>     The computation of a distance is a construction. With the kernel
>     CGAL::Exact_predicates_inexact_constructions_kernel, then the
>     constructions
>     are not exact, and thus the computation of a distance is not exact
>     either.
>     That is expected.
>
>     Please explain what sort of problem you want to solve, that is
>     impacted by
>     this "bug", and we might be able to propose other solutions.
>
>     --
>     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



AABB_face_graph_triangle_example.cpp (1K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Bugs in AABBTree

Qingnan Zhou
Hi Sebastien,

OK, we have tested your code.  It only fails with gcc 4.8.2 which happens to be the compiler we were using on both linux machines.

gcc version 4.4.7 (GCC) : OK
gcc version 4.7.2 (GCC) : OK
gcc version 4.8.2 (GCC): Failed
gcc version 4.9.2 (GCC): OK

It might have been a bug with gcc 4.8.2.  :(

best,
James

On Wed, Nov 12, 2014 at 3:31 PM, Sebastien Loriot (GeometryFactory) <[hidden email]> wrote:
I compiled the program attached on your input converted to off using
meshlab using
g++-4.8 (Debian 4.8.3-2) 4.8.3
g++-4.7 (Debian 4.7.3-14) 4.7.3
g++-4.6 (Debian 4.6.4-7) 4.6.4
g++-4.4 (Debian 4.4.7-8) 4.4.7
with CGAL-4.5 and all was fine.

Could you give it a try and let us know?

Thanks,

Sebastien.


On 11/12/2014 06:04 PM, Julian Panetta wrote:
Dear Sebastien and Laurent,

The main point of the example was to show that querying the AABB for a
triangle by its centroid is finding the incorrect triangle. The distance
printout shows that the error made is many orders of magnitude greater
than machine precision (the example mesh bounding box is
26.6x19.2x16.1). You can see a full printout of the large errors here:

http://julianpanetta.com/bad.txt

Notice that even when the AABB tree gets the correct face, sometimes the
distance is not close to zero:
11208
distance  = 0.0363889
face idx  = 11208
(the first number means the centroid of 11208 was queried, and face idx
= 11208 means the AABB returned face 11208).

It's difficult to believe this is a simple floating point error; the
example mesh doesn't have small or degenerate triangles, and the errors
are visually obvious:
http://julianpanetta.com/incorrect_result.png
(a query and the incorrectly retrieved triangle are outlined).

Furthermore, the results are compiler dependent: when gcc 4.8.2 is used
to compile CGAL and the example, both kernels Cartesian<double> and
Exact_predicates_inexact_constructions_kernel, give the incorrect AABB
results. When gcc 4.9.2 is used to compile CGAL and the example, both
kernels give the correct AABB results. It also works to compile CGAL
with gcc 4.8.2 but the example with gcc 4.9.2.

-Julian

On Wed, Nov 12, 2014 at 11:03 AM, Laurent Rineau (CGAL/GeometryFactory)
<[hidden email] <mailto:[hidden email]>> wrote:

    Le Wednesday 12 November 2014 10:38:03 Qingnan Zhou a écrit :
    > Hi Sebastien,
    >
    > Changing the kernel to CGAL::Exact_predicates_inexact_constructions_kernel
    > does not help in this case.  The closest point and primitive returned are
    > still incorrect for many faces.  However, switching to gcc-4.9.2 on linux
    > seems to make the problem go away.  Maybe it is related to how CGAL is
    > built?
    >
    > Is anyone able to reproduce this problem?  I.e. compute the distance
    > between face center to the mesh for every face and check the distance is
    > 0.  Try it on this mesh: "suzanne.obj
     > <https://www.dropbox.com/s/j1xj8nfy68xpdqc/suzanne_tri.obj?dl=0>"

    The computation of a distance is a construction. With the kernel
    CGAL::Exact_predicates_inexact_constructions_kernel, then the
    constructions
    are not exact, and thus the computation of a distance is not exact
    either.
    That is expected.

    Please explain what sort of problem you want to solve, that is
    impacted by
    this "bug", and we might be able to propose other solutions.

    --
    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: Bugs in AABBTree

Sebastien Loriot (GeometryFactory)
On 11/12/2014 11:03 PM, Qingnan Zhou wrote:

> Hi Sebastien,
>
> OK, we have tested your code.  It only fails with gcc 4.8.2 which
> happens to be the compiler we were using on both linux machines.
>
> gcc version 4.4.7 (GCC) : OK
> gcc version 4.7.2 (GCC) : OK
> gcc version 4.8.2 (GCC): Failed
> gcc version 4.9.2 (GCC): OK
>
> It might have been a bug with gcc 4.8.2.  :(

Just in case:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58800

Sebastien.

>
> best,
> James
>
> On Wed, Nov 12, 2014 at 3:31 PM, Sebastien Loriot (GeometryFactory)
> <[hidden email] <mailto:[hidden email]>> wrote:
>
>     I compiled the program attached on your input converted to off using
>     meshlab using
>     g++-4.8 (Debian 4.8.3-2) 4.8.3
>     g++-4.7 (Debian 4.7.3-14) 4.7.3
>     g++-4.6 (Debian 4.6.4-7) 4.6.4
>     g++-4.4 (Debian 4.4.7-8) 4.4.7
>     with CGAL-4.5 and all was fine.
>
>     Could you give it a try and let us know?
>
>     Thanks,
>
>     Sebastien.
>
>
>     On 11/12/2014 06:04 PM, Julian Panetta wrote:
>
>         Dear Sebastien and Laurent,
>
>         The main point of the example was to show that querying the AABB
>         for a
>         triangle by its centroid is finding the incorrect triangle. The
>         distance
>         printout shows that the error made is many orders of magnitude
>         greater
>         than machine precision (the example mesh bounding box is
>         26.6x19.2x16.1). You can see a full printout of the large errors
>         here:
>
>         http://julianpanetta.com/bad.__txt
>         <http://julianpanetta.com/bad.txt>
>
>         Notice that even when the AABB tree gets the correct face,
>         sometimes the
>         distance is not close to zero:
>         11208
>         distance  = 0.0363889
>         face idx  = 11208
>         (the first number means the centroid of 11208 was queried, and
>         face idx
>         = 11208 means the AABB returned face 11208).
>
>         It's difficult to believe this is a simple floating point error; the
>         example mesh doesn't have small or degenerate triangles, and the
>         errors
>         are visually obvious:
>         http://julianpanetta.com/__incorrect_result.png
>         <http://julianpanetta.com/incorrect_result.png>
>         (a query and the incorrectly retrieved triangle are outlined).
>
>         Furthermore, the results are compiler dependent: when gcc 4.8.2
>         is used
>         to compile CGAL and the example, both kernels Cartesian<double> and
>         Exact_predicates_inexact___constructions_kernel, give the
>         incorrect AABB
>         results. When gcc 4.9.2 is used to compile CGAL and the example,
>         both
>         kernels give the correct AABB results. It also works to compile CGAL
>         with gcc 4.8.2 but the example with gcc 4.9.2.
>
>         -Julian
>
>         On Wed, Nov 12, 2014 at 11:03 AM, Laurent Rineau
>         (CGAL/GeometryFactory)
>         <[hidden email] <mailto:[hidden email]>
>         <mailto:laurent.rineau@cgal.__org
>         <mailto:[hidden email]>>> wrote:
>
>              Le Wednesday 12 November 2014 10:38:03 Qingnan Zhou a écrit :
>              > Hi Sebastien,
>              >
>              > Changing the kernel to
>         CGAL::Exact_predicates___inexact_constructions_kernel
>              > does not help in this case.  The closest point and
>         primitive returned are
>              > still incorrect for many faces.  However, switching to
>         gcc-4.9.2 on linux
>              > seems to make the problem go away.  Maybe it is related
>         to how CGAL is
>              > built?
>              >
>              > Is anyone able to reproduce this problem?  I.e. compute
>         the distance
>              > between face center to the mesh for every face and check
>         the distance is
>              > 0.  Try it on this mesh: "suzanne.obj
>               >
>         <https://www.dropbox.com/s/__j1xj8nfy68xpdqc/suzanne_tri.__obj?dl=0
>         <https://www.dropbox.com/s/j1xj8nfy68xpdqc/suzanne_tri.obj?dl=0>>"
>
>              The computation of a distance is a construction. With the
>         kernel
>              CGAL::Exact_predicates___inexact_constructions_kernel, then the
>              constructions
>              are not exact, and thus the computation of a distance is
>         not exact
>              either.
>              That is expected.
>
>              Please explain what sort of problem you want to solve, that is
>              impacted by
>              this "bug", and we might be able to propose other solutions.
>
>              --
>              Laurent Rineau, PhD
>              R&D Engineer at GeometryFactory
>         http://www.geometryfactory.__com/ <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
>     <https://sympa.inria.fr/sympa/info/cgal-discuss>
>
>
>


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