8#ifndef IGL_TRIANGLE_TRIANGLE_ADJACENCY_H
9#define IGL_TRIANGLE_TRIANGLE_ADJACENCY_H
42 template <
typename DerivedF,
typename DerivedTT,
typename DerivedTTi>
44 const Eigen::MatrixBase<DerivedF>& F,
45 Eigen::PlainObjectBase<DerivedTT>& TT,
46 Eigen::PlainObjectBase<DerivedTTi>& TTi);
48 template <
typename DerivedF,
typename DerivedTT>
50 const Eigen::MatrixBase<DerivedF>& F,
51 Eigen::PlainObjectBase<DerivedTT>& TT);
58 template <
typename DerivedF,
typename TTT_type>
60 const Eigen::MatrixBase<DerivedF>& F,
61 std::vector<std::vector<TTT_type> >& TTT);
70 template <
typename DerivedF,
typename TTT_type,
typename DerivedTT>
72 const Eigen::MatrixBase<DerivedF>& F,
73 std::vector<std::vector<TTT_type> >& TTT,
74 Eigen::PlainObjectBase<DerivedTT>& TT);
83 template <
typename DerivedF,
typename TTT_type,
typename DerivedTTi>
85 const Eigen::MatrixBase<DerivedF>& F,
86 std::vector<std::vector<TTT_type> >& TTT,
87 Eigen::PlainObjectBase<DerivedTTi>& TTi);
102 const Eigen::MatrixBase<DerivedF> & F,
103 std::vector<std::vector<std::vector<TTIndex> > > & TT,
104 std::vector<std::vector<std::vector<TTiIndex> > > & TTi);
106 template <
typename DerivedF,
typename TTIndex>
108 const Eigen::MatrixBase<DerivedF> & F,
109 std::vector<std::vector<std::vector<TTIndex> > > & TT);
119 const Eigen::MatrixBase<DerivedF> & F,
120 const bool construct_TTi,
121 std::vector<std::vector<std::vector<TTIndex> > > & TT,
122 std::vector<std::vector<std::vector<TTiIndex> > > & TTi);
135 typename DerivedEMAP,
140 const Eigen::MatrixBase<DerivedE> & E,
141 const Eigen::MatrixBase<DerivedEMAP> & EMAP,
142 const std::vector<std::vector<uE2EType > > & uE2E,
143 const bool construct_TTi,
144 std::vector<std::vector<std::vector<TTIndex> > > & TT,
145 std::vector<std::vector<std::vector<TTiIndex> > > & TTi);
154 typename DerivedEMAP,
160 const Eigen::MatrixBase<DerivedEMAP> & EMAP,
161 const Eigen::MatrixBase<DeriveduEC> & uEC,
162 const Eigen::MatrixBase<DeriveduEE> & uEE,
163 const bool construct_TTi,
164 std::vector<std::vector<std::vector<TTIndex> > > & TT,
165 std::vector<std::vector<std::vector<TTiIndex> > > & TTi);
168#ifndef IGL_STATIC_LIBRARY
169# include "triangle_triangle_adjacency.cpp"
#define IGL_INLINE
Definition igl_inline.h:15
void triangle_triangle_adjacency_extractTT(const Eigen::MatrixBase< DerivedF > &F, std::vector< std::vector< TTT_type > > &TTT, Eigen::PlainObjectBase< DerivedTT > &TT)
Extract the face adjacencies for triangle_triangle_adjacency.
void triangle_triangle_adjacency_extractTTi(const Eigen::MatrixBase< DerivedF > &F, std::vector< std::vector< TTT_type > > &TTT, Eigen::PlainObjectBase< DerivedTTi > &TTi)
Extract the face adjacencies indices for triangle_triangle_adjacency.
void triangle_triangle_adjacency_preprocess(const Eigen::MatrixBase< DerivedF > &F, std::vector< std::vector< TTT_type > > &TTT)
Preprocessing for triangle_triangle_adjacency.
void triangle_triangle_adjacency(const Eigen::MatrixBase< DerivedF > &F, Eigen::PlainObjectBase< DerivedTT > &TT, Eigen::PlainObjectBase< DerivedTTi > &TTi)
Constructs the triangle-triangle adjacency matrix for a given mesh (V,F).