#include #include TEST_CASE("signed_distance: single_tet", "[igl]") { Eigen::MatrixXd V(4,3); V<< 0,0,0, 1,0,0, 0,1,0, 0,0,1; Eigen::MatrixXi F(4,3); F<< 0,1,3, 0,2,1, 0,3,2, 1,2,3; Eigen::MatrixXd P(1,3); P<<0.5,0.5,0.5; for(const igl::SignedDistanceType type : { igl::SIGNED_DISTANCE_TYPE_PSEUDONORMAL , igl::SIGNED_DISTANCE_TYPE_WINDING_NUMBER, igl::SIGNED_DISTANCE_TYPE_DEFAULT , igl::SIGNED_DISTANCE_TYPE_UNSIGNED , igl::SIGNED_DISTANCE_TYPE_FAST_WINDING_NUMBER }) { Eigen::VectorXd S; Eigen::VectorXi I; Eigen::MatrixXd C,N; igl::signed_distance( P,V,F,type,S,I,C,N); Eigen::VectorXd Sexact (1,1);Sexact<::min(); double upper_bound = std::numeric_limits::max(); Eigen::MatrixX2i E2 = E; Eigen::MatrixX3i F3 = F; igl::signed_distance(P2,V2,E2,type,lower_bound,upper_bound,S,I,C2,N2); igl::signed_distance(P3,V3,F3,type,lower_bound,upper_bound,S,I,C3,N3); igl::signed_distance(PX2,VX2,E,type,lower_bound,upper_bound,S,I,C,N); igl::signed_distance(PX3,VX3,F,type,lower_bound,upper_bound,S,I,C,N); }