|
@@ -29,7 +29,6 @@ TEST(intrinsic_delaunay_triangulation, two_triangles)
|
|
|
Eigen::MatrixXd lext;
|
|
|
igl::edge_lengths(V,F,lext);
|
|
|
test_common::assert_near(l,lext,1e-10);
|
|
|
-
|
|
|
}
|
|
|
|
|
|
TEST(intrinsic_delaunay_triangulation, skewed_grid)
|
|
@@ -58,7 +57,7 @@ TEST(intrinsic_delaunay_triangulation, peaks)
|
|
|
{
|
|
|
Eigen::MatrixXd V2;
|
|
|
Eigen::MatrixXi F_in;
|
|
|
- igl::triangulated_grid(6,6,V2,F_in);
|
|
|
+ igl::triangulated_grid(20,20,V2,F_in);
|
|
|
Eigen::MatrixXd V(V2.rows(),3);
|
|
|
for(int v=0;v<V.rows();v++)
|
|
|
{
|
|
@@ -79,61 +78,46 @@ TEST(intrinsic_delaunay_triangulation, peaks)
|
|
|
Eigen::MatrixXi E,uE;
|
|
|
Eigen::VectorXi EMAP;
|
|
|
std::vector<std::vector<int> > uE2E;
|
|
|
- igl::intrinsic_delaunay_triangulation(
|
|
|
- l_in, F_in, l, F, E, uE, EMAP, uE2E);
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+ igl::intrinsic_delaunay_triangulation(l_in,F_in,l,F,E,uE,EMAP,uE2E);
|
|
|
Eigen::Matrix<bool,Eigen::Dynamic,3> D;
|
|
|
const Eigen::Matrix<bool,Eigen::Dynamic,3> D_gt =
|
|
|
Eigen::Matrix<bool,Eigen::Dynamic,3>::Constant(F.rows(),F.cols(),true);
|
|
|
igl::is_intrinsic_delaunay(l,F,uE2E,D);
|
|
|
test_common::assert_eq(D,D_gt);
|
|
|
+}
|
|
|
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
+TEST(intrinsic_delaunay_triangulation,tet)
|
|
|
+{
|
|
|
+ const Eigen::MatrixXd V = (Eigen::MatrixXd(4,3)<<
|
|
|
+ 10, 4,7,
|
|
|
+ 5, 9,0,
|
|
|
+ 8, 8,8,
|
|
|
+ 1,10,9).finished();
|
|
|
+ const Eigen::MatrixXi F_in = (Eigen::MatrixXi(4,3)<<
|
|
|
+ 0,1,2,
|
|
|
+ 0,2,3,
|
|
|
+ 0,3,1,
|
|
|
+ 1,3,2).finished();
|
|
|
+ const Eigen::Matrix<bool,Eigen::Dynamic,3> D_before =
|
|
|
+ (Eigen::Matrix<bool,Eigen::Dynamic,3>(4,3)<<
|
|
|
+ 1,1,1,
|
|
|
+ 1,0,1,
|
|
|
+ 1,1,0,
|
|
|
+ 1,1,1).finished();
|
|
|
+ Eigen::Matrix<bool,Eigen::Dynamic,3> D;
|
|
|
+ Eigen::MatrixXd l_in;
|
|
|
+ igl::edge_lengths(V,F_in,l_in);
|
|
|
+ igl::is_intrinsic_delaunay(l_in,F_in,D);
|
|
|
+ test_common::assert_eq(D,D_before);
|
|
|
+ Eigen::MatrixXd l;
|
|
|
+ Eigen::MatrixXi F;
|
|
|
+ Eigen::MatrixXi E,uE;
|
|
|
+ Eigen::VectorXi EMAP;
|
|
|
+ std::vector<std::vector<int> > uE2E;
|
|
|
+ igl::intrinsic_delaunay_triangulation(l_in,F_in,l,F,E,uE,EMAP,uE2E);
|
|
|
|
|
|
+ const Eigen::Matrix<bool,Eigen::Dynamic,3> D_after =
|
|
|
+ Eigen::Matrix<bool,Eigen::Dynamic,3>::Constant(F.rows(),F.cols(),true);
|
|
|
+ igl::is_intrinsic_delaunay(l,F,uE2E,D);
|
|
|
+ test_common::assert_eq(D,D_after);
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|