diff --git a/include/igl/bbw/bbw.cpp b/include/igl/bbw/bbw.cpp index ca1fbb032..01a7231ce 100644 --- a/include/igl/bbw/bbw.cpp +++ b/include/igl/bbw/bbw.cpp @@ -70,10 +70,10 @@ IGL_INLINE bool igl::bbw( SparseMatrix L; cotmatrix(V,Ele,L); - MassMatrixType mmtype = MASSMATRIX_VORONOI; + MassMatrixType mmtype = MASSMATRIX_TYPE_VORONOI; if(Ele.cols() == 4) { - mmtype = MASSMATRIX_BARYCENTRIC; + mmtype = MASSMATRIX_TYPE_BARYCENTRIC; } SparseMatrix M; SparseMatrix Mi; diff --git a/include/igl/boundary_vertices_sorted.cpp b/include/igl/boundary_vertices_sorted.cpp index 439a76b45..ab9c21c7d 100755 --- a/include/igl/boundary_vertices_sorted.cpp +++ b/include/igl/boundary_vertices_sorted.cpp @@ -56,7 +56,7 @@ IGL_INLINE void igl::boundary_vertices_sorted( int lastV; lastV = bnd[bnd.size()-1]; - for (int i = 0; i < VF[lastV].size(); i++) + for (int i = 0; i < (int)VF[lastV].size(); i++) { int curr_neighbor = VF[lastV][i]; diff --git a/include/igl/harmonic.cpp b/include/igl/harmonic.cpp index 6d7388e11..3cbe61708 100644 --- a/include/igl/harmonic.cpp +++ b/include/igl/harmonic.cpp @@ -27,11 +27,11 @@ IGL_INLINE bool igl::harmonic( switch(F.cols()) { case 3: - massmatrix(V,F,MASSMATRIX_VORONOI,M); + massmatrix(V,F,MASSMATRIX_TYPE_VORONOI,M); break; case 4: default: - massmatrix(V,F,MASSMATRIX_BARYCENTRIC,M); + massmatrix(V,F,MASSMATRIX_TYPE_BARYCENTRIC,M); break; } invert_diag(M,Mi); diff --git a/include/igl/massmatrix.cpp b/include/igl/massmatrix.cpp index ba956f3f6..fee377f4f 100644 --- a/include/igl/massmatrix.cpp +++ b/include/igl/massmatrix.cpp @@ -28,13 +28,13 @@ IGL_INLINE void igl::massmatrix( MassMatrixType eff_type = type; // Use voronoi of for triangles by default, otherwise barycentric - if(type == MASSMATRIX_DEFAULT) + if(type == MASSMATRIX_TYPE_DEFAULT) { - eff_type = (simplex_size == 3?MASSMATRIX_VORONOI:MASSMATRIX_BARYCENTRIC); + eff_type = (simplex_size == 3?MASSMATRIX_TYPE_VORONOI:MASSMATRIX_TYPE_BARYCENTRIC); } // Not yet supported - assert(type!=MASSMATRIX_FULL); + assert(type!=MASSMATRIX_TYPE_FULL); Matrix MI; Matrix MJ; @@ -63,7 +63,7 @@ IGL_INLINE void igl::massmatrix( switch(eff_type) { - case MASSMATRIX_BARYCENTRIC: + case MASSMATRIX_TYPE_BARYCENTRIC: // diagonal entries for each face corner MI.resize(m*3,1); MJ.resize(m*3,1); MV.resize(m*3,1); MI.block(0*m,0,m,1) = F.col(0); @@ -73,7 +73,7 @@ IGL_INLINE void igl::massmatrix( repmat(dblA,3,1,MV); MV.array() /= 6.0; break; - case MASSMATRIX_VORONOI: + case MASSMATRIX_TYPE_VORONOI: { // diagonal entries for each face corner // http://www.alecjacobson.com/weblog/?p=874 @@ -120,7 +120,7 @@ IGL_INLINE void igl::massmatrix( break; } - case MASSMATRIX_FULL: + case MASSMATRIX_TYPE_FULL: assert(false && "Implementation incomplete"); break; default: @@ -130,7 +130,7 @@ IGL_INLINE void igl::massmatrix( }else if(simplex_size == 4) { assert(V.cols() == 3); - assert(eff_type == MASSMATRIX_BARYCENTRIC); + assert(eff_type == MASSMATRIX_TYPE_BARYCENTRIC); MI.resize(m*4,1); MJ.resize(m*4,1); MV.resize(m*4,1); MI.block(0*m,0,m,1) = F.col(0); MI.block(1*m,0,m,1) = F.col(1); diff --git a/include/igl/massmatrix.h b/include/igl/massmatrix.h index d01577104..867c5a0eb 100644 --- a/include/igl/massmatrix.h +++ b/include/igl/massmatrix.h @@ -5,8 +5,8 @@ // This Source Code Form is subject to the terms of the Mozilla Public License // v. 2.0. If a copy of the MPL was not distributed with this file, You can // obtain one at http://mozilla.org/MPL/2.0/. -#ifndef IGL_MASSMATRIX_H -#define IGL_MASSMATRIX_H +#ifndef IGL_MASSMATRIX_TYPE_H +#define IGL_MASSMATRIX_TYPE_H #include "igl_inline.h" #define EIGEN_YES_I_KNOW_SPARSE_MODULE_IS_NOT_STABLE_YET @@ -18,11 +18,11 @@ namespace igl enum MassMatrixType { - MASSMATRIX_BARYCENTRIC = 0, - MASSMATRIX_VORONOI = 1, - MASSMATRIX_FULL = 2, - MASSMATRIX_DEFAULT = 3, - NUM_MASSMATRIX = 4 + MASSMATRIX_TYPE_BARYCENTRIC = 0, + MASSMATRIX_TYPE_VORONOI = 1, + MASSMATRIX_TYPE_FULL = 2, + MASSMATRIX_TYPE_DEFAULT = 3, + NUM_MASSMATRIX_TYPE = 4 }; // Constructs the mass (area) matrix for a given mesh (V,F). @@ -37,9 +37,9 @@ namespace igl // V #V by dim list of mesh vertex positions // F #F by simplex_size list of mesh faces (must be triangles) // type one of the following ints: - // IGL_MASSMATRIX_BARYCENTRIC barycentric - // IGL_MASSMATRIX_VORONOI voronoi-hybrid {default} - // IGL_MASSMATRIX_FULL full {not implemented} + // MASSMATRIX_TYPE_BARYCENTRIC barycentric + // MASSMATRIX_TYPE_VORONOI voronoi-hybrid {default} + // MASSMATRIX_TYPE_FULL full {not implemented} // Outputs: // M #V by #V mass matrix // diff --git a/include/igl/svd3x3/arap.cpp b/include/igl/svd3x3/arap.cpp index cecb65ab1..905ed2474 100644 --- a/include/igl/svd3x3/arap.cpp +++ b/include/igl/svd3x3/arap.cpp @@ -154,7 +154,7 @@ IGL_INLINE bool igl::arap_precomputation( const double h = data.h; assert(h != 0); SparseMatrix M; - massmatrix(V,F,MASSMATRIX_DEFAULT,data.M); + massmatrix(V,F,MASSMATRIX_TYPE_DEFAULT,data.M); SparseMatrix DQ = 0.5/(h*h)*data.M; Q += DQ; // Dummy external forces diff --git a/include/igl/svd3x3/arap_dof.cpp b/include/igl/svd3x3/arap_dof.cpp index 55ec39baa..589b3955d 100644 --- a/include/igl/svd3x3/arap_dof.cpp +++ b/include/igl/svd3x3/arap_dof.cpp @@ -262,7 +262,7 @@ IGL_INLINE bool igl::arap_dof_precomputation( // Build cotangent laplacian SparseMatrix Mass; //printf("massmatrix()\n"); - massmatrix(V,F,(F.cols()>3?MASSMATRIX_BARYCENTRIC:MASSMATRIX_VORONOI),Mass); + massmatrix(V,F,(F.cols()>3?MASSMATRIX_TYPE_BARYCENTRIC:MASSMATRIX_TYPE_VORONOI),Mass); //cout<<"MIJV=["< M; - igl::massmatrix(V,F,igl::MASSMATRIX_VORONOI,M); + igl::massmatrix(V,F,igl::MASSMATRIX_TYPE_VORONOI,M); const auto & MV = M*V; Eigen::RowVector3d centroid = MV.colwise().sum()/M.diagonal().sum(); Eigen::RowVector3d min_point = V.colwise().minCoeff(); diff --git a/tutorial/203_CurvatureDirections/main.cpp b/tutorial/203_CurvatureDirections/main.cpp index 969883540..f2dd3bb4b 100755 --- a/tutorial/203_CurvatureDirections/main.cpp +++ b/tutorial/203_CurvatureDirections/main.cpp @@ -23,7 +23,7 @@ int main(int argc, char *argv[]) MatrixXd HN; SparseMatrix L,M,Minv; igl::cotmatrix(V,F,L); - igl::massmatrix(V,F,igl::MASSMATRIX_VORONOI,M); + igl::massmatrix(V,F,igl::MASSMATRIX_TYPE_VORONOI,M); igl::invert_diag(M,Minv); // Laplace-Beltrami of position HN = -Minv*(L*V); diff --git a/tutorial/205_Laplacian/main.cpp b/tutorial/205_Laplacian/main.cpp index b6522de29..c60781297 100755 --- a/tutorial/205_Laplacian/main.cpp +++ b/tutorial/205_Laplacian/main.cpp @@ -53,7 +53,7 @@ int main(int argc, char *argv[]) { // Recompute just mass matrix on each step SparseMatrix M; - igl::massmatrix(U,F,igl::MASSMATRIX_VORONOI,M); + igl::massmatrix(U,F,igl::MASSMATRIX_TYPE_VORONOI,M); // Solve (M-delta*L) U = M*U const auto & S = (M - 0.001*L); Eigen::SimplicialLLT > solver(S); diff --git a/tutorial/304_LinearEqualityConstraints/main.cpp b/tutorial/304_LinearEqualityConstraints/main.cpp index 16e36a95d..badc04ef7 100644 --- a/tutorial/304_LinearEqualityConstraints/main.cpp +++ b/tutorial/304_LinearEqualityConstraints/main.cpp @@ -26,7 +26,7 @@ int main(int argc, char *argv[]) // Construct Laplacian and mass matrix SparseMatrix L,M,Minv,Q; igl::cotmatrix(V,F,L); - igl::massmatrix(V,F,igl::MASSMATRIX_VORONOI,M); + igl::massmatrix(V,F,igl::MASSMATRIX_TYPE_VORONOI,M); igl::invert_diag(M,Minv); // Bi-Laplacian Q = L * (Minv * L); diff --git a/tutorial/305_QuadraticProgramming/main.cpp b/tutorial/305_QuadraticProgramming/main.cpp index 465afbde8..5ddaf916a 100644 --- a/tutorial/305_QuadraticProgramming/main.cpp +++ b/tutorial/305_QuadraticProgramming/main.cpp @@ -71,7 +71,7 @@ int main(int argc, char *argv[]) // Construct Laplacian and mass matrix SparseMatrix L,M,Minv; igl::cotmatrix(V,F,L); - igl::massmatrix(V,F,igl::MASSMATRIX_VORONOI,M); + igl::massmatrix(V,F,igl::MASSMATRIX_TYPE_VORONOI,M); //M = (M/M.diagonal().maxCoeff()).eval(); igl::invert_diag(M,Minv); // Bi-Laplacian diff --git a/tutorial/readme.md b/tutorial/readme.md index bfb4179a9..d866bc80a 100644 --- a/tutorial/readme.md +++ b/tutorial/readme.md @@ -206,7 +206,7 @@ Laplace-Beltrami operator [][#meyer_2003]. MatrixXd HN; SparseMatrix L,M,Minv; igl::cotmatrix(V,F,L); -igl::massmatrix(V,F,igl::MASSMATRIX_VORONOI,M); +igl::massmatrix(V,F,igl::MASSMATRIX_TYPE_VORONOI,M); igl::invert_diag(M,Minv); HN = -Minv*(L*V); H = (HN.rowwise().squaredNorm()).array().sqrt();