examples and tests updating for LCC after deprecation of global functions.

This commit is contained in:
Guillaume Damiand 2016-03-09 18:48:29 +01:00
parent 4a5ee86271
commit fb4bc44829
5 changed files with 135 additions and 128 deletions

View File

@ -49,7 +49,7 @@ void display_voronoi(LCC_3& alcc, Dart_handle adart)
while( !toremove.empty() ) while( !toremove.empty() )
{ {
CGAL::remove_cell<LCC_3, 3>(alcc, toremove.top()); alcc.remove_cell<3>(toremove.top());
toremove.pop(); toremove.pop();
} }

View File

@ -122,6 +122,12 @@ namespace CGAL {
using Base::free_mark; using Base::free_mark;
using Base::get_new_mark; using Base::get_new_mark;
using Base::insert_cell_0_in_cell_1;
using Base::insert_cell_0_in_cell_2;
using Base::insert_dangling_cell_1_in_cell_2;
using Base::insert_cell_1_in_cell_2;
using Base::insert_cell_2_in_cell_3;
Linear_cell_complex_base() : Base() Linear_cell_complex_base() : Base()
{} {}
@ -502,7 +508,7 @@ namespace CGAL {
Dart_handle make_segment(Vertex_attribute_handle h0, Dart_handle make_segment(Vertex_attribute_handle h0,
Vertex_attribute_handle h1) Vertex_attribute_handle h1)
{ {
Dart_handle d1 = make_edge(*this); Dart_handle d1 = this->make_edge();
set_vertex_attribute_of_dart(d1,h0); set_vertex_attribute_of_dart(d1,h0);
set_vertex_attribute_of_dart(beta(d1, 2),h1); set_vertex_attribute_of_dart(beta(d1, 2),h1);
@ -769,7 +775,8 @@ namespace CGAL {
* @return a dart handle to the new vertex containing p. * @return a dart handle to the new vertex containing p.
*/ */
template <unsigned int i> template <unsigned int i>
Dart_handle insert_point_in_cell(Dart_handle dh, const Point& p, bool update_attributes = true) Dart_handle insert_point_in_cell(Dart_handle dh, const Point& p,
bool update_attributes = true)
{ {
CGAL_static_assertion(1<=i && i<=2); CGAL_static_assertion(1<=i && i<=2);
if (i==1) return insert_point_in_cell_1(dh, p, update_attributes); if (i==1) return insert_point_in_cell_1(dh, p, update_attributes);

View File

@ -177,7 +177,7 @@ bool test_LCC_2()
// Removal operations // Removal operations
trace_test_begin(); trace_test_begin();
CGAL::remove_cell<LCC,1>(lcc, dh11); lcc.template remove_cell<1>(dh11);
if ( !check_number_of_cells_2(lcc, 12, 16, 10, 2) ) if ( !check_number_of_cells_2(lcc, 12, 16, 10, 2) )
return false; return false;
@ -191,13 +191,13 @@ bool test_LCC_2()
for ( typename std::vector<Dart_handle>::iterator for ( typename std::vector<Dart_handle>::iterator
it=toremove.begin(), itend=toremove.end(); it!=itend; ++it ) it=toremove.begin(), itend=toremove.end(); it!=itend; ++it )
CGAL::remove_cell<LCC,1>(lcc, *it); lcc.template remove_cell<1>(*it);
toremove.clear(); toremove.clear();
if ( !check_number_of_cells_2(lcc, 11, 13, 8, 2) ) if ( !check_number_of_cells_2(lcc, 11, 13, 8, 2) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::remove_cell<LCC,0>(lcc, dh9); lcc.template remove_cell<0>(dh9);
if ( !check_number_of_cells_2(lcc, 10, 12, 8, 2) ) if ( !check_number_of_cells_2(lcc, 10, 12, 8, 2) )
return false; return false;
@ -210,13 +210,13 @@ bool test_LCC_2()
for ( typename std::vector<Dart_handle>::iterator for ( typename std::vector<Dart_handle>::iterator
it=toremove.begin(), itend=toremove.end(); it!=itend; ++it ) it=toremove.begin(), itend=toremove.end(); it!=itend; ++it )
CGAL::remove_cell<LCC,1>(lcc, *it); lcc.template remove_cell<1>(*it);
toremove.clear(); toremove.clear();
if ( !check_number_of_cells_2(lcc, 9, 9, 6, 2) ) if ( !check_number_of_cells_2(lcc, 9, 9, 6, 2) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::remove_cell<LCC,0>(lcc, dh7); lcc.template remove_cell<0>(dh7);
if ( !check_number_of_cells_2(lcc, 8, 8, 6, 2) ) if ( !check_number_of_cells_2(lcc, 8, 8, 6, 2) )
return false; return false;
@ -226,8 +226,8 @@ bool test_LCC_2()
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::remove_cell<LCC,2>(lcc, dh6); lcc.template remove_cell<2>(dh6);
CGAL::remove_cell<LCC,2>(lcc, dh5); lcc.template remove_cell<2>(dh5);
if ( !check_number_of_cells_2(lcc, 4, 3, 4, 1) ) if ( !check_number_of_cells_2(lcc, 4, 3, 4, 1) )
return false; return false;
@ -242,9 +242,9 @@ bool test_LCC_2()
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::remove_cell<LCC,1>(lcc, dh1); lcc.template remove_cell<1>(dh1);
CGAL::remove_cell<LCC,1>(lcc, dh2); lcc.template remove_cell<1>(dh2);
CGAL::remove_cell<LCC,1>(lcc, dh3); lcc.template remove_cell<1>(dh3);
if ( !check_number_of_cells_2(lcc, 0, 0, 0, 0) ) if ( !check_number_of_cells_2(lcc, 0, 0, 0, 0) )
return false; return false;

View File

@ -172,14 +172,14 @@ bool test_LCC_3()
// Removal operations // Removal operations
trace_test_begin(); trace_test_begin();
CGAL::remove_cell<LCC,0>(lcc, dh15); lcc.template remove_cell<0>(dh15);
if ( !check_number_of_cells_3(lcc, 19, 29, 19, 4, 3) ) if ( !check_number_of_cells_3(lcc, 19, 29, 19, 4, 3) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::remove_cell<LCC,1>(lcc, lcc.beta(dh14, 2, 1)); lcc.template remove_cell<1>(lcc.beta(dh14, 2, 1));
CGAL::remove_cell<LCC,1>(lcc, lcc.beta(dh14, 0)); lcc.template remove_cell<1>(lcc.beta(dh14, 0));
CGAL::remove_cell<LCC,1>(lcc, dh14); lcc.template remove_cell<1>(dh14);
if ( !check_number_of_cells_3(lcc, 18, 26, 17, 4, 3) ) if ( !check_number_of_cells_3(lcc, 18, 26, 17, 4, 3) )
return false; return false;
@ -189,13 +189,13 @@ bool test_LCC_3()
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::remove_cell<LCC,3>(lcc, dh13); lcc.template remove_cell<3>(dh13);
CGAL::remove_cell<LCC,3>(lcc, dh12); lcc.template remove_cell<3>(dh12);
if ( !check_number_of_cells_3(lcc, 13, 17, 10, 2, 2) ) if ( !check_number_of_cells_3(lcc, 13, 17, 10, 2, 2) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::remove_cell<LCC,1>(lcc, dh11); lcc.template remove_cell<1>(dh11);
if ( !check_number_of_cells_3(lcc, 12, 16, 10, 2, 2) ) if ( !check_number_of_cells_3(lcc, 12, 16, 10, 2, 2) )
return false; return false;
@ -209,13 +209,13 @@ bool test_LCC_3()
for ( typename std::vector<Dart_handle>::iterator for ( typename std::vector<Dart_handle>::iterator
it=toremove.begin(), itend=toremove.end(); it!=itend; ++it ) it=toremove.begin(), itend=toremove.end(); it!=itend; ++it )
CGAL::remove_cell<LCC,1>(lcc, *it); lcc.template remove_cell<1>(*it);
toremove.clear(); toremove.clear();
if ( !check_number_of_cells_3(lcc, 11, 13, 8, 2, 2) ) if ( !check_number_of_cells_3(lcc, 11, 13, 8, 2, 2) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::remove_cell<LCC,0>(lcc, dh9); lcc.template remove_cell<0>(dh9);
if ( !check_number_of_cells_3(lcc, 10, 12, 8, 2, 2) ) if ( !check_number_of_cells_3(lcc, 10, 12, 8, 2, 2) )
return false; return false;
@ -228,13 +228,13 @@ bool test_LCC_3()
for ( typename std::vector<Dart_handle>::iterator for ( typename std::vector<Dart_handle>::iterator
it=toremove.begin(), itend=toremove.end(); it!=itend; ++it ) it=toremove.begin(), itend=toremove.end(); it!=itend; ++it )
CGAL::remove_cell<LCC,1>(lcc, *it); lcc.template remove_cell<1>(*it);
toremove.clear(); toremove.clear();
if ( !check_number_of_cells_3(lcc, 9, 9, 6, 2, 2) ) if ( !check_number_of_cells_3(lcc, 9, 9, 6, 2, 2) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::remove_cell<LCC,0>(lcc, dh7); lcc.template remove_cell<0>(dh7);
if ( !check_number_of_cells_3(lcc, 8, 8, 6, 2, 2) ) if ( !check_number_of_cells_3(lcc, 8, 8, 6, 2, 2) )
return false; return false;
@ -244,8 +244,8 @@ bool test_LCC_3()
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::remove_cell<LCC,2>(lcc, dh6); lcc.template remove_cell<2>(dh6);
CGAL::remove_cell<LCC,2>(lcc, dh5); lcc.template remove_cell<2>(dh5);
if ( !check_number_of_cells_3(lcc, 4, 3, 4, 1, 1) ) if ( !check_number_of_cells_3(lcc, 4, 3, 4, 1, 1) )
return false; return false;
@ -260,35 +260,35 @@ bool test_LCC_3()
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::remove_cell<LCC,1>(lcc, dh1); lcc.template remove_cell<1>(dh1);
CGAL::remove_cell<LCC,1>(lcc, dh2); lcc.template remove_cell<1>(dh2);
CGAL::remove_cell<LCC,1>(lcc, dh3); lcc.template remove_cell<1>(dh3);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
// Edge contraction // Edge contraction
trace_test_begin(); trace_test_begin();
dh1 = lcc.create_dart(Point(0,0,0)); dh1 = lcc.create_dart(Point(0,0,0));
CGAL::contract_cell<LCC,1>(lcc,dh1); lcc.template contract_cell<1>(dh1);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
trace_test_begin(); trace_test_begin();
dh1 = make_loop(lcc, Point(0,0,0)); dh1 = make_loop(lcc, Point(0,0,0));
CGAL::contract_cell<LCC,1>(lcc,dh1); lcc.template contract_cell<1>(dh1);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
trace_test_begin(); trace_test_begin();
dh1 = lcc.make_segment(Point(0,0,0),Point(1,0,0)); dh1 = lcc.make_segment(Point(0,0,0),Point(1,0,0));
CGAL::contract_cell<LCC,1>(lcc,dh1); lcc.template contract_cell<1>(dh1);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
trace_test_begin(); trace_test_begin();
dh1 = lcc.make_segment(Point(0,0,0),Point(1,0,0)); dh1 = lcc.make_segment(Point(0,0,0),Point(1,0,0));
lcc.template sew<1>(dh1, dh1); lcc.template sew<1>(dh1, dh1);
CGAL::contract_cell<LCC,1>(lcc,dh1); lcc.template contract_cell<1>(dh1);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
@ -296,26 +296,26 @@ bool test_LCC_3()
dh1 = lcc.make_segment(Point(0,0,0),Point(1,0,0)); dh1 = lcc.make_segment(Point(0,0,0),Point(1,0,0));
lcc.template sew<1>(dh1, dh1); lcc.template sew<1>(dh1, dh1);
lcc.template sew<1>(lcc.beta(dh1, 2), lcc.beta(dh1, 2)); lcc.template sew<1>(lcc.beta(dh1, 2), lcc.beta(dh1, 2));
CGAL::contract_cell<LCC,1>(lcc,dh1); lcc.template contract_cell<1>(dh1);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
trace_test_begin(); trace_test_begin();
dh1 = lcc.make_triangle(Point(5,5,3),Point(7,5,3),Point(6,6,3)); dh1 = lcc.make_triangle(Point(5,5,3),Point(7,5,3),Point(6,6,3));
dh2 = lcc.beta(dh1,0); dh3 = lcc.beta(dh1,1); dh2 = lcc.beta(dh1,0); dh3 = lcc.beta(dh1,1);
CGAL::contract_cell<LCC,1>(lcc,dh1); lcc.template contract_cell<1>(dh1);
if ( !check_number_of_cells_3(lcc, 2, 2, 1, 1, 1) || if ( !check_number_of_cells_3(lcc, 2, 2, 1, 1, 1) ||
!CGAL::is_face_combinatorial_polygon(lcc, dh2, 2) ) !lcc.is_face_combinatorial_polygon(dh2, 2) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,dh2); lcc.template contract_cell<1>(dh2);
if ( !check_number_of_cells_3(lcc, 1, 1, 1, 1, 1) || if ( !check_number_of_cells_3(lcc, 1, 1, 1, 1, 1) ||
!CGAL::is_face_combinatorial_polygon(lcc, dh3, 1) ) !lcc.is_face_combinatorial_polygon(dh3, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,dh3); lcc.template contract_cell<1>(dh3);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
@ -324,19 +324,19 @@ bool test_LCC_3()
dh2 = lcc.make_triangle(Point(5,4,3),Point(7,4,3),Point(6,3,3)); dh2 = lcc.make_triangle(Point(5,4,3),Point(7,4,3),Point(6,3,3));
lcc.template sew<3>(dh1, dh2); dh2 = lcc.beta(dh1, 0); dh3 = lcc.beta(dh1, 1); lcc.template sew<3>(dh1, dh2); dh2 = lcc.beta(dh1, 0); dh3 = lcc.beta(dh1, 1);
CGAL::contract_cell<LCC,1>(lcc,dh1); lcc.template contract_cell<1>(dh1);
if ( !check_number_of_cells_3(lcc, 2, 2, 1, 2, 1) || if ( !check_number_of_cells_3(lcc, 2, 2, 1, 2, 1) ||
!CGAL::is_face_combinatorial_polygon(lcc, dh2, 2) ) !lcc.is_face_combinatorial_polygon(dh2, 2) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,dh2); lcc.template contract_cell<1>(dh2);
if ( !check_number_of_cells_3(lcc, 1, 1, 1, 2, 1) || if ( !check_number_of_cells_3(lcc, 1, 1, 1, 2, 1) ||
!CGAL::is_face_combinatorial_polygon(lcc, dh3, 1) ) !lcc.is_face_combinatorial_polygon(dh3, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,dh3); lcc.template contract_cell<1>(dh3);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
@ -348,27 +348,27 @@ bool test_LCC_3()
dh2 = lcc.beta(dh2, 1); dh2 = lcc.beta(dh2, 1);
dh3 = lcc.beta(dh1, 1); dh3 = lcc.beta(dh1, 1);
CGAL::contract_cell<LCC,1>(lcc,dh1); lcc.template contract_cell<1>(dh1);
if ( !check_number_of_cells_3(lcc, 4, 4, 2, 2, 2) ) if ( !check_number_of_cells_3(lcc, 4, 4, 2, 2, 2) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,lcc.beta(dh2, 1)); lcc.template contract_cell<1>(lcc.beta(dh2, 1));
if ( !check_number_of_cells_3(lcc, 3, 3, 2, 2, 2) ) if ( !check_number_of_cells_3(lcc, 3, 3, 2, 2, 2) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,dh2); lcc.template contract_cell<1>(dh2);
if ( !check_number_of_cells_3(lcc, 2, 2, 1, 1, 1) ) if ( !check_number_of_cells_3(lcc, 2, 2, 1, 1, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,lcc.beta(dh3, 1)); lcc.template contract_cell<1>(lcc.beta(dh3, 1));
if ( !check_number_of_cells_3(lcc, 1, 1, 1, 1, 1) ) if ( !check_number_of_cells_3(lcc, 1, 1, 1, 1, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,dh3); lcc.template contract_cell<1>(dh3);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
@ -380,27 +380,27 @@ bool test_LCC_3()
dh2 = lcc.beta(dh2, 1); dh2 = lcc.beta(dh2, 1);
dh3 = lcc.beta(dh1, 1); dh3 = lcc.beta(dh1, 1);
CGAL::contract_cell<LCC,1>(lcc,lcc.beta(dh2, 1)); lcc.template contract_cell<1>(lcc.beta(dh2, 1));
if ( !check_number_of_cells_3(lcc, 3, 4, 2, 1, 1) ) if ( !check_number_of_cells_3(lcc, 3, 4, 2, 1, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,lcc.beta(dh3, 1)); lcc.template contract_cell<1>(lcc.beta(dh3, 1));
if ( !check_number_of_cells_3(lcc, 2, 3, 2, 1, 1) ) if ( !check_number_of_cells_3(lcc, 2, 3, 2, 1, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,dh2); lcc.template contract_cell<1>(dh2);
if ( !check_number_of_cells_3(lcc, 1, 2, 2, 1, 1) ) if ( !check_number_of_cells_3(lcc, 1, 2, 2, 1, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,dh3); lcc.template contract_cell<1>(dh3);
if ( !check_number_of_cells_3(lcc, 1, 1, 2, 1, 1) ) if ( !check_number_of_cells_3(lcc, 1, 1, 2, 1, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,dh1); lcc.template contract_cell<1>(dh1);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
@ -420,27 +420,27 @@ bool test_LCC_3()
dh2 = lcc.beta(dh2,1); dh2 = lcc.beta(dh2,1);
dh3 = lcc.beta(dh1,1); dh3 = lcc.beta(dh1,1);
CGAL::contract_cell<LCC,1>(lcc,dh1); lcc.template contract_cell<1>(dh1);
if ( !check_number_of_cells_3(lcc, 4, 4, 2, 4, 2) ) if ( !check_number_of_cells_3(lcc, 4, 4, 2, 4, 2) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,lcc.beta(dh2,1)); lcc.template contract_cell<1>(lcc.beta(dh2,1));
if ( !check_number_of_cells_3(lcc, 3, 3, 2, 4, 2) ) if ( !check_number_of_cells_3(lcc, 3, 3, 2, 4, 2) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,dh2); lcc.template contract_cell<1>(dh2);
if ( !check_number_of_cells_3(lcc, 2, 2, 1, 2, 1) ) if ( !check_number_of_cells_3(lcc, 2, 2, 1, 2, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,lcc.beta(dh3,1)); lcc.template contract_cell<1>(lcc.beta(dh3,1));
if ( !check_number_of_cells_3(lcc, 1, 1, 1, 2, 1) ) if ( !check_number_of_cells_3(lcc, 1, 1, 1, 2, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,dh3); lcc.template contract_cell<1>(dh3);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
@ -458,27 +458,27 @@ bool test_LCC_3()
dh2 = lcc.beta(dh2,1); dh2 = lcc.beta(dh2,1);
dh3 = lcc.beta(dh1,1); dh3 = lcc.beta(dh1,1);
CGAL::contract_cell<LCC,1>(lcc,lcc.beta(dh2,1)); lcc.template contract_cell<1>(lcc.beta(dh2,1));
if ( !check_number_of_cells_3(lcc, 3, 4, 2, 3, 1) ) if ( !check_number_of_cells_3(lcc, 3, 4, 2, 3, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,lcc.beta(dh3,1)); lcc.template contract_cell<1>(lcc.beta(dh3,1));
if ( !check_number_of_cells_3(lcc, 2, 3, 2, 3, 1) ) if ( !check_number_of_cells_3(lcc, 2, 3, 2, 3, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,dh2); lcc.template contract_cell<1>(dh2);
if ( !check_number_of_cells_3(lcc, 1, 2, 2, 3, 1) ) if ( !check_number_of_cells_3(lcc, 1, 2, 2, 3, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,dh3); lcc.template contract_cell<1>(dh3);
if ( !check_number_of_cells_3(lcc, 1, 1, 2, 3, 1) ) if ( !check_number_of_cells_3(lcc, 1, 1, 2, 3, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,dh1); lcc.template contract_cell<1>(dh1);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
@ -492,22 +492,22 @@ bool test_LCC_3()
dh2 = lcc.beta(dh2, 2,1,1,2); dh2 = lcc.beta(dh2, 2,1,1,2);
lcc.template sew<3>(dh1,dh2); lcc.template sew<3>(dh1,dh2);
CGAL::contract_cell<LCC,1>(lcc,lcc.beta(dh1,0)); lcc.template contract_cell<1>(lcc.beta(dh1,0));
if ( !check_number_of_cells_3(lcc, 11, 19, 11, 2, 1) ) if ( !check_number_of_cells_3(lcc, 11, 19, 11, 2, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,lcc.beta(dh1,1,1)); lcc.template contract_cell<1>(lcc.beta(dh1,1,1));
if ( !check_number_of_cells_3(lcc, 10, 18, 11, 2, 1) ) if ( !check_number_of_cells_3(lcc, 10, 18, 11, 2, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,lcc.beta(dh1,1)); lcc.template contract_cell<1>(lcc.beta(dh1,1));
if ( !check_number_of_cells_3(lcc, 9, 17, 11, 2, 1) ) if ( !check_number_of_cells_3(lcc, 9, 17, 11, 2, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,1>(lcc,dh1); lcc.template contract_cell<1>(dh1);
if ( !check_number_of_cells_3(lcc, 10, 16, 10, 2, 2 ) ) if ( !check_number_of_cells_3(lcc, 10, 16, 10, 2, 2 ) )
return false; return false;
lcc.clear(); lcc.clear();
@ -515,19 +515,19 @@ bool test_LCC_3()
// Face contraction // Face contraction
trace_test_begin(); trace_test_begin();
dh1 = lcc.create_dart(Point(0,0,0)); dh1 = lcc.create_dart(Point(0,0,0));
CGAL::contract_cell<LCC,2>(lcc,dh1); lcc.template contract_cell<2>(dh1);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
trace_test_begin(); trace_test_begin();
dh1 = make_loop<LCC>(lcc, Point(0,0,0)); dh1 = make_loop<LCC>(lcc, Point(0,0,0));
CGAL::contract_cell<LCC,2>(lcc,dh1); lcc.template contract_cell<2>(dh1);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
trace_test_begin(); trace_test_begin();
dh1 = lcc.make_segment(Point(0,0,0),Point(1,0,0)); dh1 = lcc.make_segment(Point(0,0,0),Point(1,0,0));
CGAL::contract_cell<LCC,2>(lcc,dh1); lcc.template contract_cell<2>(dh1);
if ( !check_number_of_cells_3(lcc, 1, 1, 1, 1, 1) ) if ( !check_number_of_cells_3(lcc, 1, 1, 1, 1, 1) )
return false; return false;
lcc.clear(); lcc.clear();
@ -535,7 +535,7 @@ bool test_LCC_3()
trace_test_begin(); trace_test_begin();
dh1 = lcc.make_segment(Point(0,0,0),Point(1,0,0)); dh1 = lcc.make_segment(Point(0,0,0),Point(1,0,0));
lcc.template sew<1>(dh1, dh1); lcc.template sew<1>(dh1, dh1);
CGAL::contract_cell<LCC,2>(lcc,dh1); lcc.template contract_cell<2>(dh1);
if ( !check_number_of_cells_3(lcc, 1, 1, 1, 1, 1) ) if ( !check_number_of_cells_3(lcc, 1, 1, 1, 1, 1) )
return false; return false;
lcc.clear(); lcc.clear();
@ -544,7 +544,7 @@ bool test_LCC_3()
dh1 = lcc.make_segment(Point(0,0,0),Point(1,0,0)); dh1 = lcc.make_segment(Point(0,0,0),Point(1,0,0));
lcc.template sew<1>(dh1, dh1); lcc.template sew<1>(dh1, dh1);
lcc.template sew<1>(lcc.beta(dh1,2), lcc.beta(dh1,2)); lcc.template sew<1>(lcc.beta(dh1,2), lcc.beta(dh1,2));
CGAL::contract_cell<LCC,2>(lcc,dh1); lcc.template contract_cell<2>(dh1);
if ( !check_number_of_cells_3(lcc, 1, 1, 1, 1, 1) ) if ( !check_number_of_cells_3(lcc, 1, 1, 1, 1, 1) )
return false; return false;
lcc.clear(); lcc.clear();
@ -553,12 +553,12 @@ bool test_LCC_3()
dh1 = make_face_two_edges(lcc, Point(0,0,0), Point(1,0,0)); dh1 = make_face_two_edges(lcc, Point(0,0,0), Point(1,0,0));
dh2 = make_face_two_edges(lcc, Point(0,0,1), Point(1,0,1)); dh2 = make_face_two_edges(lcc, Point(0,0,1), Point(1,0,1));
lcc.template sew<2>(dh1, dh2); lcc.template sew<2>(dh1, dh2);
CGAL::contract_cell<LCC,2>(lcc,dh1); lcc.template contract_cell<2>(dh1);
if ( !check_number_of_cells_3(lcc, 2, 2, 1, 1, 1) ) if ( !check_number_of_cells_3(lcc, 2, 2, 1, 1, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,2>(lcc,dh2); lcc.template contract_cell<2>(dh2);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
@ -569,12 +569,12 @@ bool test_LCC_3()
lcc.template sew<2>(dh1, dh2); lcc.template sew<2>(dh1, dh2);
lcc.template sew<2>(lcc.beta(dh2,1), dh3); lcc.template sew<2>(lcc.beta(dh2,1), dh3);
CGAL::contract_cell<LCC,1>(lcc,lcc.beta(dh2,0)); lcc.template contract_cell<1>(lcc.beta(dh2,0));
if ( !check_number_of_cells_3(lcc, 4, 6, 3, 1, 1) ) if ( !check_number_of_cells_3(lcc, 4, 6, 3, 1, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,2>(lcc,dh2); lcc.template contract_cell<2>(dh2);
if ( !check_number_of_cells_3(lcc, 4, 5, 2, 1, 1) ) if ( !check_number_of_cells_3(lcc, 4, 5, 2, 1, 1) )
return false; return false;
lcc.clear(); lcc.clear();
@ -582,7 +582,7 @@ bool test_LCC_3()
trace_test_begin(); trace_test_begin();
dh1 = lcc.create_dart(Point(0,0,0)); dh1 = lcc.create_dart(Point(0,0,0));
lcc.template sew<3>(dh1, lcc.create_dart(Point(1,0,0))); lcc.template sew<3>(dh1, lcc.create_dart(Point(1,0,0)));
CGAL::contract_cell<LCC,2>(lcc,dh1); lcc.template contract_cell<2>(dh1);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
@ -590,7 +590,7 @@ bool test_LCC_3()
dh1 = make_loop(lcc, Point(0,0,0)); dh1 = make_loop(lcc, Point(0,0,0));
dh2 = make_loop(lcc, Point(0,0,1)); dh2 = make_loop(lcc, Point(0,0,1));
lcc.template sew<3>(dh1, dh2); lcc.template sew<3>(dh1, dh2);
CGAL::contract_cell<LCC,2>(lcc,dh1); lcc.template contract_cell<2>(dh1);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
@ -598,7 +598,7 @@ bool test_LCC_3()
dh1 = lcc.make_segment(Point(0,0,0),Point(1,0,0)); dh1 = lcc.make_segment(Point(0,0,0),Point(1,0,0));
lcc.template sew<3>(dh1, lcc.make_segment(Point(0,0,1),Point(1,0,1))); lcc.template sew<3>(dh1, lcc.make_segment(Point(0,0,1),Point(1,0,1)));
lcc.template sew<3>(lcc.beta(dh1,2),lcc.beta(dh1,3,2)); lcc.template sew<3>(lcc.beta(dh1,2),lcc.beta(dh1,3,2));
CGAL::contract_cell<LCC,2>(lcc,dh1); lcc.template contract_cell<2>(dh1);
if ( !check_number_of_cells_3(lcc, 2, 1, 1, 2, 1) ) if ( !check_number_of_cells_3(lcc, 2, 1, 1, 2, 1) )
return false; return false;
lcc.clear(); lcc.clear();
@ -609,7 +609,7 @@ bool test_LCC_3()
dh2 = lcc.make_segment(Point(0,0,1),Point(1,0,1)); dh2 = lcc.make_segment(Point(0,0,1),Point(1,0,1));
lcc.template sew<1>(dh2, dh2); lcc.template sew<1>(dh2, dh2);
lcc.template sew<3>(dh1, dh2); lcc.template sew<3>(dh1, dh2);
CGAL::contract_cell<LCC,2>(lcc,dh1); lcc.template contract_cell<2>(dh1);
if ( !check_number_of_cells_3(lcc, 2, 2, 2, 2, 2) ) if ( !check_number_of_cells_3(lcc, 2, 2, 2, 2, 2) )
return false; return false;
lcc.clear(); lcc.clear();
@ -623,7 +623,7 @@ bool test_LCC_3()
lcc.template sew<1>(lcc.beta(dh2,2), lcc.beta(dh2,2)); lcc.template sew<1>(lcc.beta(dh2,2), lcc.beta(dh2,2));
lcc.template sew<3>(dh1, dh2); lcc.template sew<3>(dh1, dh2);
lcc.template sew<3>(lcc.beta(dh1,2), lcc.beta(dh2,2)); lcc.template sew<3>(lcc.beta(dh1,2), lcc.beta(dh2,2));
CGAL::contract_cell<LCC,2>(lcc,dh1); lcc.template contract_cell<2>(dh1);
if ( !check_number_of_cells_3(lcc, 1, 1, 1, 2, 1) ) if ( !check_number_of_cells_3(lcc, 1, 1, 1, 2, 1) )
return false; return false;
lcc.clear(); lcc.clear();
@ -636,12 +636,12 @@ bool test_LCC_3()
make_face_two_edges(lcc, Point(0,0,1), Point(1,0,1))); make_face_two_edges(lcc, Point(0,0,1), Point(1,0,1)));
lcc.template sew<3>(dh2, lcc.template sew<3>(dh2,
make_face_two_edges(lcc, Point(1,0,1), Point(1,0,2))); make_face_two_edges(lcc, Point(1,0,1), Point(1,0,2)));
CGAL::contract_cell<LCC,2>(lcc,dh1); lcc.template contract_cell<2>(dh1);
if ( !check_number_of_cells_3(lcc, 2, 2, 1, 2, 1) ) if ( !check_number_of_cells_3(lcc, 2, 2, 1, 2, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,2>(lcc,dh2); lcc.template contract_cell<2>(dh2);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
@ -654,12 +654,12 @@ bool test_LCC_3()
lcc.template sew<3>(dh2, lcc.template sew<3>(dh2,
make_face_two_edges(lcc, Point(1,0,1), Point(1,0,2))); make_face_two_edges(lcc, Point(1,0,1), Point(1,0,2)));
lcc.template sew<2>(lcc.beta(dh1,3), lcc.beta(dh2,3)); lcc.template sew<2>(lcc.beta(dh1,3), lcc.beta(dh2,3));
CGAL::contract_cell<LCC,2>(lcc,dh1); lcc.template contract_cell<2>(dh1);
if ( !check_number_of_cells_3(lcc, 2, 2, 1, 2, 1) ) if ( !check_number_of_cells_3(lcc, 2, 2, 1, 2, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,2>(lcc,dh2); lcc.template contract_cell<2>(dh2);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
@ -677,12 +677,12 @@ bool test_LCC_3()
Point(6,0,4))); Point(6,0,4)));
lcc.template sew<2>(lcc.beta(dh1,3), lcc.beta(dh2,3)); lcc.template sew<2>(lcc.beta(dh1,3), lcc.beta(dh2,3));
lcc.template sew<2>(lcc.beta(dh2,1,3), lcc.beta(dh3,3)); lcc.template sew<2>(lcc.beta(dh2,1,3), lcc.beta(dh3,3));
CGAL::contract_cell<LCC,1>(lcc,lcc.beta(dh2,0)); lcc.template contract_cell<1>(lcc.beta(dh2,0));
if ( !check_number_of_cells_3(lcc, 4, 6, 3, 2, 1) ) if ( !check_number_of_cells_3(lcc, 4, 6, 3, 2, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,2>(lcc,dh2); lcc.template contract_cell<2>(dh2);
if ( !check_number_of_cells_3(lcc, 4, 5, 2, 2, 1) ) if ( !check_number_of_cells_3(lcc, 4, 5, 2, 2, 1) )
return false; return false;
lcc.clear(); lcc.clear();
@ -690,19 +690,19 @@ bool test_LCC_3()
// Volume contraction // Volume contraction
trace_test_begin(); trace_test_begin();
dh1 = lcc.create_dart(Point(0,0,0)); dh1 = lcc.create_dart(Point(0,0,0));
CGAL::contract_cell<LCC,3>(lcc,dh1); lcc.template contract_cell<3>(dh1);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
trace_test_begin(); trace_test_begin();
dh1 = make_loop<LCC>(lcc, Point(0,0,0)); dh1 = make_loop<LCC>(lcc, Point(0,0,0));
CGAL::contract_cell<LCC,3>(lcc,dh1); lcc.template contract_cell<3>(dh1);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
trace_test_begin(); trace_test_begin();
dh1 = lcc.make_segment(Point(0,0,0),Point(1,0,0)); dh1 = lcc.make_segment(Point(0,0,0),Point(1,0,0));
CGAL::contract_cell<LCC,3>(lcc,dh1); lcc.template contract_cell<3>(dh1);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
@ -710,7 +710,7 @@ bool test_LCC_3()
dh1 = lcc.make_segment(Point(0,0,0),Point(1,0,0)); dh1 = lcc.make_segment(Point(0,0,0),Point(1,0,0));
lcc.template sew<1>(dh1, dh1); lcc.template sew<1>(dh1, dh1);
lcc.template sew<1>(lcc.beta(dh1,2), lcc.beta(dh1,2)); lcc.template sew<1>(lcc.beta(dh1,2), lcc.beta(dh1,2));
CGAL::contract_cell<LCC,3>(lcc,dh1); lcc.template contract_cell<3>(dh1);
if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_3(lcc, 0, 0, 0, 0, 0) )
return false; return false;
lcc.clear(); lcc.clear();
@ -725,36 +725,36 @@ bool test_LCC_3()
dh2 = lcc.beta(dh2, 2,1,1,2); dh2 = lcc.beta(dh2, 2,1,1,2);
lcc.template sew<3>(dh1,dh2); lcc.template sew<3>(dh1,dh2);
CGAL::contract_cell<LCC,1>(lcc,lcc.beta(dh2,2,1)); lcc.template contract_cell<1>(lcc.beta(dh2,2,1));
CGAL::contract_cell<LCC,1>(lcc,lcc.beta(dh2,2,0)); lcc.template contract_cell<1>(lcc.beta(dh2,2,0));
CGAL::contract_cell<LCC,1>(lcc,lcc.beta(dh2,1,1,2,0)); lcc.template contract_cell<1>(lcc.beta(dh2,1,1,2,0));
CGAL::contract_cell<LCC,1>(lcc,lcc.beta(dh2,1,1,2,1)); lcc.template contract_cell<1>(lcc.beta(dh2,1,1,2,1));
if ( !check_number_of_cells_3(lcc, 8, 16, 11, 2, 1) ) if ( !check_number_of_cells_3(lcc, 8, 16, 11, 2, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,2>(lcc,lcc.beta(dh2,0,2)); lcc.template contract_cell<2>(lcc.beta(dh2,0,2));
if ( !check_number_of_cells_3(lcc, 8, 15, 10, 2, 1 ) ) if ( !check_number_of_cells_3(lcc, 8, 15, 10, 2, 1 ) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,2>(lcc,lcc.beta(dh2,1,1,2)); lcc.template contract_cell<2>(lcc.beta(dh2,1,1,2));
if ( !check_number_of_cells_3(lcc, 8, 14, 9, 2, 1 ) ) if ( !check_number_of_cells_3(lcc, 8, 14, 9, 2, 1 ) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,2>(lcc,lcc.beta(dh2,1,2)); lcc.template contract_cell<2>(lcc.beta(dh2,1,2));
if ( !check_number_of_cells_3(lcc, 8, 13, 8, 2, 1 ) ) if ( !check_number_of_cells_3(lcc, 8, 13, 8, 2, 1 ) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,2>(lcc,lcc.beta(dh2,2)); lcc.template contract_cell<2>(lcc.beta(dh2,2));
if ( !check_number_of_cells_3(lcc, 8, 12, 7, 2, 1 ) ) if ( !check_number_of_cells_3(lcc, 8, 12, 7, 2, 1 ) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,3>(lcc,dh2); lcc.template contract_cell<3>(dh2);
if ( !check_number_of_cells_3(lcc, 8, 12, 6, 1, 1 ) ) if ( !check_number_of_cells_3(lcc, 8, 12, 6, 1, 1 ) )
return false; return false;
lcc.clear(); lcc.clear();
@ -774,36 +774,36 @@ bool test_LCC_3()
dh2 = lcc.beta(dh2, 2,1,1,2); dh2 = lcc.beta(dh2, 2,1,1,2);
lcc.template sew<3>(dh1,dh2); lcc.template sew<3>(dh1,dh2);
CGAL::contract_cell<LCC,1>(lcc,lcc.beta(dh2,2,1)); lcc.template contract_cell<1>(lcc.beta(dh2,2,1));
CGAL::contract_cell<LCC,1>(lcc,lcc.beta(dh2,2,0)); lcc.template contract_cell<1>(lcc.beta(dh2,2,0));
CGAL::contract_cell<LCC,1>(lcc,lcc.beta(dh2,1,1,2,0)); lcc.template contract_cell<1>(lcc.beta(dh2,1,1,2,0));
CGAL::contract_cell<LCC,1>(lcc,lcc.beta(dh2,1,1,2,1)); lcc.template contract_cell<1>(lcc.beta(dh2,1,1,2,1));
if ( !check_number_of_cells_3(lcc, 12, 24, 16, 3, 1) ) if ( !check_number_of_cells_3(lcc, 12, 24, 16, 3, 1) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,2>(lcc,lcc.beta(dh2,0,2)); lcc.template contract_cell<2>(lcc.beta(dh2,0,2));
if ( !check_number_of_cells_3(lcc, 12, 23, 15, 3, 1 ) ) if ( !check_number_of_cells_3(lcc, 12, 23, 15, 3, 1 ) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,2>(lcc,lcc.beta(dh2,1,1,2)); lcc.template contract_cell<2>(lcc.beta(dh2,1,1,2));
if ( !check_number_of_cells_3(lcc, 12, 22, 14, 3, 1 ) ) if ( !check_number_of_cells_3(lcc, 12, 22, 14, 3, 1 ) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,2>(lcc,lcc.beta(dh2,1,2)); lcc.template contract_cell<2>(lcc.beta(dh2,1,2));
if ( !check_number_of_cells_3(lcc, 12, 21, 13, 3, 1 ) ) if ( !check_number_of_cells_3(lcc, 12, 21, 13, 3, 1 ) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,2>(lcc,lcc.beta(dh2,2)); lcc.template contract_cell<2>(lcc.beta(dh2,2));
if ( !check_number_of_cells_3(lcc, 12, 20, 12, 3, 1 ) ) if ( !check_number_of_cells_3(lcc, 12, 20, 12, 3, 1 ) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::contract_cell<LCC,3>(lcc,dh2); lcc.template contract_cell<3>(dh2);
if ( !check_number_of_cells_3(lcc, 12, 20, 11, 2, 1 ) ) if ( !check_number_of_cells_3(lcc, 12, 20, 11, 2, 1 ) )
return false; return false;
lcc.clear(); lcc.clear();

View File

@ -183,14 +183,14 @@ bool test_LCC_4()
toremove.push( it ); toremove.push( it );
while ( !toremove.empty() ) while ( !toremove.empty() )
{ {
CGAL::remove_cell<LCC,1>(lcc, toremove.top()); lcc.template remove_cell<1>(toremove.top());
toremove.pop(); toremove.pop();
} }
if ( !check_number_of_cells_4(lcc, 20, 28, 16, 3, 3, 3) ) if ( !check_number_of_cells_4(lcc, 20, 28, 16, 3, 3, 3) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::remove_cell<LCC,0>(lcc, dh16); lcc.template remove_cell<0>(dh16);
if ( !check_number_of_cells_4(lcc, 19, 27, 16, 3, 3, 3) ) if ( !check_number_of_cells_4(lcc, 19, 27, 16, 3, 3, 3) )
return false; return false;
@ -200,14 +200,14 @@ bool test_LCC_4()
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::remove_cell<LCC,0>(lcc, dh15); lcc.template remove_cell<0>(dh15);
if ( !check_number_of_cells_4(lcc, 19, 29, 19, 4, 3, 3) ) if ( !check_number_of_cells_4(lcc, 19, 29, 19, 4, 3, 3) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::remove_cell<LCC,1>(lcc, lcc.beta(dh14,2,1)); lcc.template remove_cell<1>(lcc.beta(dh14,2,1));
CGAL::remove_cell<LCC,1>(lcc, lcc.beta(dh14,0)); lcc.template remove_cell<1>(lcc.beta(dh14,0));
CGAL::remove_cell<LCC,1>(lcc, dh14); lcc.template remove_cell<1>(dh14);
if ( !check_number_of_cells_4(lcc, 18, 26, 17, 4, 3, 3) ) if ( !check_number_of_cells_4(lcc, 18, 26, 17, 4, 3, 3) )
return false; return false;
@ -217,13 +217,13 @@ bool test_LCC_4()
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::remove_cell<LCC,3>(lcc, dh13); lcc.template remove_cell<3>(dh13);
CGAL::remove_cell<LCC,3>(lcc, dh12); lcc.template remove_cell<3>(dh12);
if ( !check_number_of_cells_4(lcc, 13, 17, 10, 2, 2, 2) ) if ( !check_number_of_cells_4(lcc, 13, 17, 10, 2, 2, 2) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::remove_cell<LCC,1>(lcc, dh11); lcc.template remove_cell<1>(dh11);
if ( !check_number_of_cells_4(lcc, 12, 16, 10, 2, 2, 2) ) if ( !check_number_of_cells_4(lcc, 12, 16, 10, 2, 2, 2) )
return false; return false;
@ -235,14 +235,14 @@ bool test_LCC_4()
toremove.push( it ); toremove.push( it );
while ( !toremove.empty() ) while ( !toremove.empty() )
{ {
CGAL::remove_cell<LCC,1>(lcc, toremove.top()); lcc.template remove_cell<1>(toremove.top());
toremove.pop(); toremove.pop();
} }
if ( !check_number_of_cells_4(lcc, 11, 13, 8, 2, 2, 2) ) if ( !check_number_of_cells_4(lcc, 11, 13, 8, 2, 2, 2) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::remove_cell<LCC,0>(lcc, dh9); lcc.template remove_cell<0>(dh9);
if ( !check_number_of_cells_4(lcc, 10, 12, 8, 2, 2, 2) ) if ( !check_number_of_cells_4(lcc, 10, 12, 8, 2, 2, 2) )
return false; return false;
@ -254,14 +254,14 @@ bool test_LCC_4()
toremove.push( it ); toremove.push( it );
while ( !toremove.empty() ) while ( !toremove.empty() )
{ {
CGAL::remove_cell<LCC,1>(lcc, toremove.top()); lcc.template remove_cell<1>(toremove.top());
toremove.pop(); toremove.pop();
} }
if ( !check_number_of_cells_4(lcc, 9, 9, 6, 2, 2, 2) ) if ( !check_number_of_cells_4(lcc, 9, 9, 6, 2, 2, 2) )
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::remove_cell<LCC,0>(lcc, dh7); lcc.template remove_cell<0>(dh7);
if ( !check_number_of_cells_4(lcc, 8, 8, 6, 2, 2, 2) ) if ( !check_number_of_cells_4(lcc, 8, 8, 6, 2, 2, 2) )
return false; return false;
@ -271,8 +271,8 @@ bool test_LCC_4()
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::remove_cell<LCC,2>(lcc, dh6); lcc.template remove_cell<2>(dh6);
CGAL::remove_cell<LCC,2>(lcc, dh5); lcc.template remove_cell<2>(dh5);
if ( !check_number_of_cells_4(lcc, 4, 3, 4, 1, 1, 1) ) if ( !check_number_of_cells_4(lcc, 4, 3, 4, 1, 1, 1) )
return false; return false;
@ -287,9 +287,9 @@ bool test_LCC_4()
return false; return false;
trace_test_begin(); trace_test_begin();
CGAL::remove_cell<LCC,1>(lcc, dh1); lcc.template remove_cell<1>(dh1);
CGAL::remove_cell<LCC,1>(lcc, dh2); lcc.template remove_cell<1>(dh2);
CGAL::remove_cell<LCC,1>(lcc, dh3); lcc.template remove_cell<1>(dh3);
if ( !check_number_of_cells_4(lcc, 0, 0, 0, 0, 0, 0) ) if ( !check_number_of_cells_4(lcc, 0, 0, 0, 0, 0, 0) )
return false; return false;