template<typename DerivedV, typename DerivedF, typename DerivedM>
class igl::MissMatchCalculator< DerivedV, DerivedF, DerivedM >
template<typename DerivedV , typename DerivedF , typename DerivedM >
85 :
90 {
95 }
const Eigen::PlainObjectBase< DerivedV > & V
Definition cross_field_missmatch.cpp:28
std::vector< std::vector< int > > VFi
Definition cross_field_missmatch.cpp:39
const Eigen::PlainObjectBase< DerivedV > & PD2
Definition cross_field_missmatch.cpp:31
std::vector< bool > V_border
Definition cross_field_missmatch.cpp:37
DerivedV N
Definition cross_field_missmatch.cpp:33
DerivedF TTi
Definition cross_field_missmatch.cpp:42
DerivedF TT
Definition cross_field_missmatch.cpp:41
const Eigen::PlainObjectBase< DerivedF > & F
Definition cross_field_missmatch.cpp:29
const Eigen::PlainObjectBase< DerivedV > & PD1
Definition cross_field_missmatch.cpp:30
std::vector< std::vector< int > > VF
Definition cross_field_missmatch.cpp:38
IGL_INLINE void vertex_triangle_adjacency(const typename DerivedF::Scalar n, const Eigen::MatrixBase< DerivedF > &F, std::vector< std::vector< VFType > > &VF, std::vector< std::vector< VFiType > > &VFi)
Definition vertex_triangle_adjacency.cpp:12
IGL_INLINE void per_face_normals(const Eigen::MatrixBase< DerivedV > &V, const Eigen::MatrixBase< DerivedF > &F, const Eigen::MatrixBase< DerivedZ > &Z, Eigen::PlainObjectBase< DerivedN > &N)
Definition per_face_normals.cpp:13
IGL_INLINE std::vector< bool > is_border_vertex(const Eigen::PlainObjectBase< DerivedV > &V, const Eigen::PlainObjectBase< DerivedF > &F)
Definition is_border_vertex.cpp:14
IGL_INLINE void triangle_triangle_adjacency(const Eigen::MatrixBase< DerivedF > &F, Eigen::PlainObjectBase< DerivedTT > &TT, Eigen::PlainObjectBase< DerivedTTi > &TTi)
Definition triangle_triangle_adjacency.cpp:116
References igl::MissMatchCalculator< DerivedV, DerivedF, DerivedM >::F, igl::is_border_vertex(), igl::MissMatchCalculator< DerivedV, DerivedF, DerivedM >::N, igl::per_face_normals(), igl::triangle_triangle_adjacency(), igl::MissMatchCalculator< DerivedV, DerivedF, DerivedM >::TT, igl::MissMatchCalculator< DerivedV, DerivedF, DerivedM >::TTi, igl::MissMatchCalculator< DerivedV, DerivedF, DerivedM >::V, igl::MissMatchCalculator< DerivedV, DerivedF, DerivedM >::V_border, igl::vertex_triangle_adjacency(), igl::MissMatchCalculator< DerivedV, DerivedF, DerivedM >::VF, and igl::MissMatchCalculator< DerivedV, DerivedF, DerivedM >::VFi.
template<typename DerivedV , typename DerivedF , typename DerivedM >
98 {
100 for (
size_t i=0;i<
F.
rows();i++)
101 {
102 for (int j=0;j<3;j++)
103 {
104 if (((
int)i)==
TT(i,j) ||
TT(i,j) == -1)
105 Handle_MMatch(i,j)=0;
106 else
108 }
109 }
110 }
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Index rows() const
Definition PlainObjectBase.h:151
EIGEN_DEVICE_FUNC Derived & setConstant(Index size, const Scalar &val)
Definition CwiseNullaryOp.h:341
int MissMatchByCross(const int f0, const int f1)
compute the mismatch between 2 faces
Definition cross_field_missmatch.cpp:47
References igl::MissMatchCalculator< DerivedV, DerivedF, DerivedM >::F, igl::MissMatchCalculator< DerivedV, DerivedF, DerivedM >::MissMatchByCross(), Eigen::PlainObjectBase< Derived >::rows(), Eigen::PlainObjectBase< Derived >::setConstant(), and igl::MissMatchCalculator< DerivedV, DerivedF, DerivedM >::TT.
Referenced by igl::cross_field_missmatch().
template<typename DerivedV , typename DerivedF , typename DerivedM >
compute the mismatch between 2 faces
49 {
54
56 dir1Rot.normalize();
57
58
59
60
61
62
63
64
65 double angle_diff = atan2(dir1Rot.dot(
PD2.row(f0)),dir1Rot.dot(
PD1.row(f0)));
66
67
68
70 int i=(int)std::floor((angle_diff/step)+0.5);
71 int k=0;
72 if (i>=0)
73 k=i%4;
74 else
75 k=(-(3*i))%4;
76 return k;
77 }
The matrix class, also used for vectors and row-vectors.
Definition Matrix.h:180
const double PI
Definition PI.h:16
IGL_INLINE Eigen::Matrix< Scalar, 3, 3 > rotation_matrix_from_directions(const Eigen::Matrix< Scalar, 3, 1 > v0, const Eigen::Matrix< Scalar, 3, 1 > v1)
Definition rotation_matrix_from_directions.cpp:14
Coord step(const Coord &crd, Dir d)
Definition MarchingSquares.hpp:137
References igl::MissMatchCalculator< DerivedV, DerivedF, DerivedM >::N, igl::MissMatchCalculator< DerivedV, DerivedF, DerivedM >::PD1, igl::MissMatchCalculator< DerivedV, DerivedF, DerivedM >::PD2, igl::PI, and igl::rotation_matrix_from_directions().
Referenced by igl::MissMatchCalculator< DerivedV, DerivedF, DerivedM >::calculateMissmatch().