Subject: CGAL users discussion list
List archive
- From: Sean Hardesty <>
- To:
- Subject: Re: [cgal-discuss] Polygon_mesh_processing::corefine_and_compute_difference
- Date: Wed, 13 Dec 2017 08:33:21 -0600
- Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None ; spf=Pass ; spf=None
- Ironport-phdr: 9a23:B/+F4hxlDhB4pKvXCy+O+j09IxM/srCxBDY+r6Qd2+oSIJqq85mqBkHD//Il1AaPAd2Craocw8Pt8InYEVQa5piAtH1QOLdtbDQizfssogo7HcSeAlf6JvO5JwYzHcBFSUM3tyrjaRsdF8nxfUDdrWOv5jAOBBr/KRB1JuPoEYLOksi7ze+/94HObwlSmDaxfa55IQmrownWqsQYm5ZpJLwryhvOrHtIeuBWyn1tKFmOgRvy5dq+8YB6/ShItP0v68BPUaPhf6QlVrNYFygpM3o05MLwqxbOSxaE62YGXWUXlhpIBBXF7A3/U5zsvCb2qvZx1S+HNsDwULs6Wymt771zRRDqhicJNzA3/mLKhMJukK1WuwiuqwBlzoPOfI2ZKPhzc6XAdt0aX2pBWcNRWjRcDIyidYQPCfcKM+RCoInnulQBswC+BRWsBejyzTJInWH50rc80+g7EQHJxhYgEM8Qv3TPsNX0NLwfUe+wzKbSzDXDa+la1iv66IjNax0sp+yHU7x3ccrU00YvFgXFg02RqYzjJTOV1/4Cv3KV7+p6U++klm0pqxlprzWtycogkJTFipwVx1ze9ih13pw5KNK5RUN9fNWqCoFftzuAOItzWs4iQ39nuCI9yrAevJ60ZikKyJA+yx/RbvyLb5GE4hzsWeuQOzt4i3VleLWwhxa270es0PHzVs6x0FpSrypFlMfDtmwV2hHR5cWLUOZx8lmh1DqV1A3f9PtILE81mKbDLp4u2L8wlp4dsUTZGS/2nV37jLSIeUo+/Oik8eTnba/8ppCBKYB0kR3+M6Q1l8ywBOQ3KAkOX2yB9eug073j+FX1QK9Wgf0ujqnZrJfaKNwHqa62GQBV1p8v5Au+Dze9zNsYgGIHLEledRKcj4npPknOL+riAfe+hVSsijZryOrcMr3vGJWeZkXFi6rrKLZh91ZHmk101sFa/5sSC7cbIfu1VFW2r83dFhZ+Mgq6xKHsB9x5k48fQmmSGbTKDKSHulCB4qcjIvKHeZQOkDf7MfksofD03lEjnlpIRqSg29M3YWq0E+96Mg3NenflhJEBGH0GsxEiXcTljVSDVXhYYHPkDPF03S0yFI/zVdSLfYuqmrHUhCo=
I was able to compile the polyhedron demo and duplicate the results you described. However, I don't understand how I would test for this in my own program. I generated the .off files I sent from CGAL::Surface_mesh - how do I check whether such an object is a polygon soup (as is done in the demo)?
All of the following look okay:
mesh.is_valid() = 1
CGAL::Polygon_mesh_processing::does_bound_a_volume(mesh) = 1
CGAL::Polygon_mesh_processing::does_self_intersect(mesh) = 0
CGAL::Polygon_mesh_processing::is_outward_oriented(mesh) = 1
CGAL::is_closed(mesh) = 1
I wanted to try something from the polygon soup example, like thisAll of the following look okay:
mesh.is_valid() = 1
CGAL::Polygon_mesh_processing::does_bound_a_volume(mesh) = 1
CGAL::Polygon_mesh_processing::does_self_intersect(mesh) = 0
CGAL::Polygon_mesh_processing::is_outward_oriented(mesh) = 1
CGAL::is_closed(mesh) = 1
CGAL::Polygon_mesh_processing::is_polygon_soup_a_polygon_mesh
On Wed, Dec 6, 2017 at 2:24 AM, Sebastien Loriot (GeometryFactory) <> wrote:
When I open you files in the CGAL polyhedron demo, it is telling me that
your meshes are polygon soups (meaning you have non-manifold edges).
If I duplicate those edges to make it a self-intersecting surface
I have the following set of intersecting faces.
Sebastien.
On 12/05/2017 05:22 PM, Sean Hardesty wrote:
I have a collection of meshes that overlap slightly, so I am going through a loop removing overlapping pieces. It works for a while, but eventually I run into trouble. I am calling PMP::corefine_and_compute_difference(CGAL 4.11) on a pair of meshes that satisfy
!CGAL::Polygon_mesh_processing::does_self_intersect
CGAL::Polygon_mesh_processing::does_bound_a_volume
and I get the following:
terminate called after throwing an instance of 'CGAL::Assertion_exception'
what(): CGAL ERROR: assertion violation!
Expr: hedge!=start
File: /usr/local/include/CGAL/Polygon_mesh_processing/internal/Corefinement/Visitor.h
Line: 663
Aborted (core dumped)
They are fairly small, so I wrote them to .off format and attached them to this message. I am aware from your documentation pages that there can be problems with sequential boolean operations, so I am using the kernel with exact predicates and exact constructions. Maybe the precision in the .off format is inadequate to diagnose the problem. I would be grateful for any help that can be provided.
Sincerely,
Sean Hardesty
--
You are currently subscribed to cgal-discuss.
To unsubscribe or access the archives, go to
https://sympa.inria.fr/sympa/info/cgal-discuss
- [cgal-discuss] Polygon_mesh_processing::corefine_and_compute_difference, Sean Hardesty, 12/05/2017
- Re: [cgal-discuss] Polygon_mesh_processing::corefine_and_compute_difference, Sebastien Loriot (GeometryFactory), 12/06/2017
- Re: [cgal-discuss] Polygon_mesh_processing::corefine_and_compute_difference, Sean Hardesty, 12/13/2017
- Re: [cgal-discuss] Polygon_mesh_processing::corefine_and_compute_difference, Sebastien Loriot (GeometryFactory), 12/13/2017
- Re: [cgal-discuss] Polygon_mesh_processing::corefine_and_compute_difference, Biswajit Biswas, 12/13/2017
- Re: [cgal-discuss] Polygon_mesh_processing::corefine_and_compute_difference, Sean Hardesty, 12/14/2017
- Re: [cgal-discuss] Polygon_mesh_processing::corefine_and_compute_difference, Sebastien Loriot (GeometryFactory), 12/14/2017
- Re: [cgal-discuss] Polygon_mesh_processing::corefine_and_compute_difference, Biswajit Biswas, 12/14/2017
- Re: [cgal-discuss] Polygon_mesh_processing::corefine_and_compute_difference, Sebastien Loriot (GeometryFactory), 12/15/2017
- Re: [cgal-discuss] Polygon_mesh_processing::corefine_and_compute_difference, Sean Hardesty, 12/22/2017
- Re: [cgal-discuss] Polygon_mesh_processing::corefine_and_compute_difference, Biswajit Biswas, 12/22/2017
- Re: [cgal-discuss] Polygon_mesh_processing::corefine_and_compute_difference, Sebastien Loriot (GeometryFactory), 12/14/2017
- Re: [cgal-discuss] Polygon_mesh_processing::corefine_and_compute_difference, Sebastien Loriot (GeometryFactory), 12/13/2017
- Re: [cgal-discuss] Polygon_mesh_processing::corefine_and_compute_difference, Sean Hardesty, 12/13/2017
- Re: [cgal-discuss] Polygon_mesh_processing::corefine_and_compute_difference, Sebastien Loriot (GeometryFactory), 12/06/2017
Archive powered by MHonArc 2.6.18.