Subject: CGAL users discussion list
List archive
- From: "Bart Janssens" <>
- To:
- Subject: Re: [cgal-discuss] K-3D and Nef 3D booleans - (almost) success
- Date: Mon, 3 Sep 2007 22:53:33 +0200
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:sender:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references:x-google-sender-auth; b=s/0ZjxXwze09hScm8GlfDEfRAdJqc/mWKbhQpocwLf7acFnlhcILioI8iw8XPbOcUOLnxrGPfJ/Fix7JilwFbMSFlan52LWj/o/zRNzoIY8ywqYTIL+KRQKBkkHMhnfeXzJdyygE+UXfgZWlHCIqwtxKgq9TrNPKcy09t3JX/Ig=
On 9/3/07, Peter Hachenberger
<>
wrote:
> Hi Bart,
>
> that will be no problem. The code was written for exact geometry and
> there are a few assertion, which test for the exact geometry. I see a
> good chance that you will succeed with your approach, but we need to
> throw out a few assertion. Note, that the same assertions would come up
> when you don't use the SNC_indexed_item, but then removing them won't
> help you. So, just remove this assertion and also remove others that
> come into your way in the class SNC_external_structure.h, but send me a
> list of the removed assertions and ask me if you get assertions in other
> classes.
OK, I removed all the assertions that check the normalised circles,
and it works better. On bigger tests, I get a crash with the trace
below. As attempted solution, I added this check on line 1918 of
SM_overlayer.h:
if(e_below != SHalfedge_handle() && &(*e_below->incident_sface()))
This resulted in a new assertion failing, but no crash:
CGAL assertion: li->circle() == e->circle() at
/usr/local/include/CGAL/Nef_S2/SM_overlayer.h:2008
Thread [1] (Suspended: Signal 'SIGSEGV' received. Description:
Segmentation fault.)
49 std::_List_node_base::hook() 0xb736da89
48 std::list<CGAL::Object_handle, std::allocator<CGAL::Object_handle>
>::_M_insert() at /usr/include/c++/4.1.2/bits/stl_list.h:1140
0xacd91e35
47 std::list<CGAL::Object_handle, std::allocator<CGAL::Object_handle>
>::push_back() at /usr/include/c++/4.1.2/bits/stl_list.h:761
0xacd920ce
46
CGAL::SM_decorator<CGAL::SNC_sphere_map<CGAL::Cartesian<CGAL::threshold_number>,
CGAL::SNC_indexed_items, bool>
>::store_sm_boundary_object<CGAL::CGALi::In_place_list_iterator<CGAL::SNC_in_place_list_svertex<CGAL::SNC_indexed_items::SVertex<CGAL::SNC_structure<CGAL::Cartesian<CGAL::threshold_number>,
CGAL::SNC_indexed_items, bool> > >,
std::allocator<CGAL::SNC_in_place_list_svertex<CGAL::SNC_indexed_items::SVertex<CGAL::SNC_structure<CGAL::Cartesian<CGAL::threshold_number>,
CGAL::SNC_indexed_items, bool> > > > > >() at
/usr/local/include/CGAL/Nef_S2/SM_decorator.h:312 0xacdb9be3
45
CGAL::SM_decorator<CGAL::SNC_sphere_map<CGAL::Cartesian<CGAL::threshold_number>,
CGAL::SNC_indexed_items, bool> >::link_as_isolated_vertex() at
/usr/local/include/CGAL/Nef_S2/SM_decorator.h:341 0xacdb9c8d
44
CGAL::SM_overlayer<CGAL::SM_decorator<CGAL::SNC_sphere_map<CGAL::Cartesian<CGAL::threshold_number>,
CGAL::SNC_indexed_items, bool> >
>::create_face_objects<CGAL::SMO_from_sm<CGAL::SM_overlayer<CGAL::SM_decorator<CGAL::SNC_sphere_map<CGAL::Cartesian<CGAL::threshold_number>,
CGAL::SNC_indexed_items, bool> > >,
std::_List_iterator<CGAL::Sphere_segment<CGAL::Cartesian<CGAL::threshold_number>
> >,
> >CGAL::SM_overlayer<CGAL::SM_decorator<CGAL::SNC_sphere_map<CGAL::Cartesian<CGAL::threshold_number>,
CGAL::SNC_indexed_items, bool> > >::Seg_info>,
CGAL::Negative_halfsphere_geometry<CGAL::Cartesian<CGAL::threshold_number>
> >() at /usr/local/include/CGAL/Nef_S2/SM_overlayer.h:1919 0xacdf1c7b
43
CGAL::SM_overlayer<CGAL::SM_decorator<CGAL::SNC_sphere_map<CGAL::Cartesian<CGAL::threshold_number>,
CGAL::SNC_indexed_items, bool> >
>::subdivide<CGAL::ID_support_handler<CGAL::SNC_indexed_items,
CGAL::SNC_decorator<CGAL::SNC_structure<CGAL::Cartesian<CGAL::threshold_number>,
CGAL::SNC_indexed_items, bool> > > >() at
/usr/local/include/CGAL/Nef_S2/SM_overlayer.h:1574 0xace16514
42
CGAL::SNC_decorator<CGAL::SNC_structure<CGAL::Cartesian<CGAL::threshold_number>,
CGAL::SNC_indexed_items, bool>
>::binop_local_views<CGAL::Nef_polyhedron_3<CGAL::Cartesian<CGAL::threshold_number>,
CGAL::SNC_indexed_items, bool>::AND,
CGAL::ID_support_handler<CGAL::SNC_indexed_items,
CGAL::SNC_decorator<CGAL::SNC_structure<CGAL::Cartesian<CGAL::threshold_number>,
CGAL::SNC_indexed_items, bool> > > >() at
/usr/local/include/CGAL/Nef_3/SNC_decorator.h:706 0xace176dc
41
CGAL::SNC_decorator<CGAL::SNC_structure<CGAL::Cartesian<CGAL::threshold_number>,
CGAL::SNC_indexed_items, bool>
>::binary_operation<CGAL::Nef_polyhedron_3<CGAL::Cartesian<CGAL::threshold_number>,
CGAL::SNC_indexed_items, bool>::AND>() at
/usr/local/include/CGAL/Nef_3/SNC_decorator.h:1027 0xace1f8de
40 CGAL::Nef_polyhedron_3<CGAL::Cartesian<CGAL::threshold_number>,
CGAL::SNC_indexed_items, bool>::intersection() at
/usr/local/include/CGAL/Nef_polyhedron_3.h:912 0xace20e6c
39 CGAL::Nef_polyhedron_3<CGAL::Cartesian<CGAL::threshold_number>,
CGAL::SNC_indexed_items, bool>::operator*() at
/usr/local/include/CGAL/Nef_polyhedron_3.h:964 0xace20f08
38 libk3dbooleans::cgal_boolean::on_create_mesh_topology() at
/home/bartj/d/workspace/k3d/modules/booleans/cgal_boolean_nodes.cpp:101
0xace28e05
regards,
--
Bart
- Re: [cgal-discuss] K-3D and Nef 3D booleans - (almost) success, Bart Janssens, 09/02/2007
- Re: [cgal-discuss] K-3D and Nef 3D booleans - (almost) success, Peter Hachenberger, 09/03/2007
- Re: [cgal-discuss] K-3D and Nef 3D booleans - (almost) success, Bart Janssens, 09/03/2007
- Re: [cgal-discuss] K-3D and Nef 3D booleans - (almost) success, Bart Janssens, 09/08/2007
- Re: [cgal-discuss] K-3D and Nef 3D booleans - (almost) success, Peter Hachenberger, 09/03/2007
Archive powered by MHonArc 2.6.16.