mirror of https://github.com/CGAL/cgal
fix values due to the diagonal change in degenerate triangulation
This commit is contained in:
parent
147b313cc8
commit
cfec3bb0cc
|
|
@ -30,7 +30,7 @@ int main(int, char**)
|
||||||
|
|
||||||
std::set<face_descriptor> fs;
|
std::set<face_descriptor> fs;
|
||||||
auto selected_faces = make_boolean_property_map(fs);
|
auto selected_faces = make_boolean_property_map(fs);
|
||||||
fs.insert(*(faces(sm).begin()));
|
fs.insert(Polygon_mesh::Face_index(190));
|
||||||
CGAL::expand_face_selection(fs, sm, 1, selected_faces, CGAL::Emptyset_iterator());
|
CGAL::expand_face_selection(fs, sm, 1, selected_faces, CGAL::Emptyset_iterator());
|
||||||
std::cout << fs.size() << " faces in the range" << std::endl;
|
std::cout << fs.size() << " faces in the range" << std::endl;
|
||||||
assert(fs.size() == 4);
|
assert(fs.size() == 4);
|
||||||
|
|
|
||||||
|
|
@ -393,31 +393,31 @@ void test()
|
||||||
|
|
||||||
// -> closed mesh, true/true
|
// -> closed mesh, true/true
|
||||||
PMP::clip(tm1, K::Plane_3(-1,0,0,0), params::use_compact_clipper(true).clip_volume(true));
|
PMP::clip(tm1, K::Plane_3(-1,0,0,0), params::use_compact_clipper(true).clip_volume(true));
|
||||||
assert(faces(tm1).size() == 12);
|
assert(faces(tm1).size() == 14);
|
||||||
assert(CGAL::is_closed(tm1));
|
assert(CGAL::is_closed(tm1));
|
||||||
|
|
||||||
// -> closed mesh, false/true
|
// -> closed mesh, false/true
|
||||||
PMP::clip(tm1, K::Plane_3(-1,0,0,0), params::use_compact_clipper(false).clip_volume(true));
|
PMP::clip(tm1, K::Plane_3(-1,0,0,0), params::use_compact_clipper(false).clip_volume(true));
|
||||||
assert(faces(tm1).size() == 12);
|
assert(faces(tm1).size() == 14);
|
||||||
assert(CGAL::is_closed(tm1));
|
assert(CGAL::is_closed(tm1));
|
||||||
|
|
||||||
// -> closed mesh, true/false
|
// -> closed mesh, true/false
|
||||||
PMP::clip(tm1, K::Plane_3(-1,0,0,0), params::use_compact_clipper(true).clip_volume(false));
|
PMP::clip(tm1, K::Plane_3(-1,0,0,0), params::use_compact_clipper(true).clip_volume(false));
|
||||||
assert(faces(tm1).size() == 12);
|
assert(faces(tm1).size() == 14);
|
||||||
assert(CGAL::is_closed(tm1));
|
assert(CGAL::is_closed(tm1));
|
||||||
|
|
||||||
// -> closed mesh, false/false
|
// -> closed mesh, false/false
|
||||||
PMP::clip(tm1, K::Plane_3(1,0,0,-1), params::use_compact_clipper(false).clip_volume(false));
|
PMP::clip(tm1, K::Plane_3(1,0,0,-1), params::use_compact_clipper(false).clip_volume(false));
|
||||||
assert(faces(tm1).size() == 10);
|
assert(faces(tm1).size() == 12);
|
||||||
assert(!CGAL::is_closed(tm1));
|
assert(!CGAL::is_closed(tm1));
|
||||||
|
|
||||||
// -> open mesh true/true
|
// -> open mesh true/true
|
||||||
PMP::clip(tm1, K::Plane_3(-1,0,0,0), params::use_compact_clipper(true).clip_volume(true));
|
PMP::clip(tm1, K::Plane_3(-1,0,0,0), params::use_compact_clipper(true).clip_volume(true));
|
||||||
assert(faces(tm1).size() == 10);
|
assert(faces(tm1).size() == 12);
|
||||||
|
|
||||||
// -> open mesh true/false
|
// -> open mesh true/false
|
||||||
PMP::clip(tm1, K::Plane_3(-1,0,0,0), params::use_compact_clipper(true).clip_volume(false));
|
PMP::clip(tm1, K::Plane_3(-1,0,0,0), params::use_compact_clipper(true).clip_volume(false));
|
||||||
assert(faces(tm1).size() == 10);
|
assert(faces(tm1).size() == 12);
|
||||||
|
|
||||||
// -> open mesh false/false
|
// -> open mesh false/false
|
||||||
PMP::clip(tm1, K::Plane_3(-1,0,0,0), params::use_compact_clipper(false).clip_volume(false));
|
PMP::clip(tm1, K::Plane_3(-1,0,0,0), params::use_compact_clipper(false).clip_volume(false));
|
||||||
|
|
@ -539,7 +539,7 @@ void test()
|
||||||
TriangleMesh tm1;
|
TriangleMesh tm1;
|
||||||
std::ifstream("data-coref/open_large_cube.off") >> tm1;
|
std::ifstream("data-coref/open_large_cube.off") >> tm1;
|
||||||
PMP::clip(tm1, K::Plane_3(0,0,-1,1), CGAL::parameters::use_compact_clipper(true));
|
PMP::clip(tm1, K::Plane_3(0,0,-1,1), CGAL::parameters::use_compact_clipper(true));
|
||||||
assert(vertices(tm1).size()==176);
|
assert(vertices(tm1).size()==178);
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
|
|
@ -553,7 +553,7 @@ void test()
|
||||||
TriangleMesh tm1;
|
TriangleMesh tm1;
|
||||||
std::ifstream("data-coref/open_large_cube.off") >> tm1;
|
std::ifstream("data-coref/open_large_cube.off") >> tm1;
|
||||||
PMP::clip(tm1, K::Plane_3(0,0,-1,1), CGAL::parameters::use_compact_clipper(true).allow_self_intersections(true));
|
PMP::clip(tm1, K::Plane_3(0,0,-1,1), CGAL::parameters::use_compact_clipper(true).allow_self_intersections(true));
|
||||||
assert(vertices(tm1).size()==176);
|
assert(vertices(tm1).size()==178);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -802,11 +802,11 @@ void test_isocuboid()
|
||||||
assert(meshes.size() == 10);
|
assert(meshes.size() == 10);
|
||||||
//if the order is not deterministc, put the num_vertices in a list and check
|
//if the order is not deterministc, put the num_vertices in a list and check
|
||||||
//if the list does contain all those numbers.
|
//if the list does contain all those numbers.
|
||||||
assert(num_vertices(meshes[0]) == 2657);
|
assert(num_vertices(meshes[0]) == 2663);
|
||||||
assert(num_vertices(meshes[1]) == 131 );
|
assert(num_vertices(meshes[1]) == 131 );
|
||||||
assert(num_vertices(meshes[2]) == 32 );
|
assert(num_vertices(meshes[2]) == 32 );
|
||||||
assert(num_vertices(meshes[3]) == 123 );
|
assert(num_vertices(meshes[3]) == 125 );
|
||||||
assert(num_vertices(meshes[4]) == 220 );
|
assert(num_vertices(meshes[4]) == 224 );
|
||||||
assert(num_vertices(meshes[5]) == 107 );
|
assert(num_vertices(meshes[5]) == 107 );
|
||||||
assert(num_vertices(meshes[6]) == 121 );
|
assert(num_vertices(meshes[6]) == 121 );
|
||||||
assert(num_vertices(meshes[7]) == 56 );
|
assert(num_vertices(meshes[7]) == 56 );
|
||||||
|
|
@ -836,8 +836,8 @@ void test_isocuboid()
|
||||||
for (int i=0; i<4; ++i)
|
for (int i=0; i<4; ++i)
|
||||||
sizes.insert(vertices(meshes[i]).size());
|
sizes.insert(vertices(meshes[i]).size());
|
||||||
|
|
||||||
assert(sizes.count(22)==1);
|
assert(sizes.count(20)==1);
|
||||||
assert(sizes.count(23)==1);
|
assert(sizes.count(21)==1);
|
||||||
assert(sizes.count(7)==1);
|
assert(sizes.count(7)==1);
|
||||||
assert(sizes.count(4)==1);
|
assert(sizes.count(4)==1);
|
||||||
|
|
||||||
|
|
@ -852,7 +852,7 @@ void test_isocuboid()
|
||||||
assert(meshes.size() == 2);
|
assert(meshes.size() == 2);
|
||||||
//if the order is not deterministc, put the num_vertices in a list and check
|
//if the order is not deterministc, put the num_vertices in a list and check
|
||||||
//if the list does contain all those numbers.
|
//if the list does contain all those numbers.
|
||||||
assert(vertices(meshes[0]).size() == 22);
|
assert(vertices(meshes[0]).size() == 20);
|
||||||
assert(vertices(meshes[1]).size() == 4);
|
assert(vertices(meshes[1]).size() == 4);
|
||||||
}
|
}
|
||||||
int main()
|
int main()
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue