Эх сурвалжийг харах

is_manifold --> is_edge_manifold

Former-commit-id: 6db94a023619ee3d8b6d002eb386ace20030d28f
Alec Jacobson 11 жил өмнө
parent
commit
9de09e19f6

+ 1 - 1
include/igl/boundary_loop.cpp

@@ -22,7 +22,7 @@ IGL_INLINE void igl::boundary_loop(
   // Actually mesh only needs to be manifold near boundary, so this is
   // over zealous (see gptoolbox's outline_loop for a more general
   // (and probably faster) implementation)
-  assert(is_manifold(V,F) && "Mesh must be manifold");
+  assert(is_edge_manifold(V,F) && "Mesh must be manifold");
   Eigen::MatrixXi TT,TTi;
   std::vector<std::vector<int> > VF, VFi;
   igl::triangle_triangle_adjacency(V,F,TT,TTi);

+ 2 - 2
include/igl/edge_topology.cpp

@@ -7,7 +7,7 @@
 // obtain one at http://mozilla.org/MPL/2.0/.
 #include "edge_topology.h"
 #include <algorithm>
-#include "is_manifold.h"
+#include "is_edge_manifold.h"
 
 
 IGL_INLINE void igl::edge_topology(
@@ -18,7 +18,7 @@ IGL_INLINE void igl::edge_topology(
   Eigen::MatrixXi& EF)
 {
   // Only needs to be edge-manifold
-  assert(igl::is_manifold(V,F));
+  assert(igl::is_edge_manifold(V,F));
   std::vector<std::vector<int> > ETT;
   for(int f=0;f<F.rows();++f)
     for (int i=0;i<3;++i)

+ 5 - 5
include/igl/is_manifold.cpp → include/igl/is_edge_manifold.cpp

@@ -5,12 +5,12 @@
 // 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/.
-#include "is_manifold.h"
+#include "is_edge_manifold.h"
 
 #include <algorithm>
 
 template <typename DerivedV, typename DerivedF>
-IGL_INLINE bool igl::is_manifold(const Eigen::PlainObjectBase<DerivedV>& /*V*/,
+IGL_INLINE bool igl::is_edge_manifold(const Eigen::PlainObjectBase<DerivedV>& /*V*/,
                                  const Eigen::PlainObjectBase<DerivedF>& F)
   {
     std::vector<std::vector<int> > TTT;
@@ -46,8 +46,8 @@ IGL_INLINE bool igl::is_manifold(const Eigen::PlainObjectBase<DerivedV>& /*V*/,
 #ifdef IGL_STATIC_LIBRARY
 // Explicit template specialization
 // generated by autoexplicit.sh
-template bool igl::is_manifold<Eigen::Matrix<float, -1, 3, 1, -1, 3>, Eigen::Matrix<unsigned int, -1, -1, 1, -1, -1> >(Eigen::PlainObjectBase<Eigen::Matrix<float, -1, 3, 1, -1, 3> > const&, Eigen::PlainObjectBase<Eigen::Matrix<unsigned int, -1, -1, 1, -1, -1> > const&);
+template bool igl::is_edge_manifold<Eigen::Matrix<float, -1, 3, 1, -1, 3>, Eigen::Matrix<unsigned int, -1, -1, 1, -1, -1> >(Eigen::PlainObjectBase<Eigen::Matrix<float, -1, 3, 1, -1, 3> > const&, Eigen::PlainObjectBase<Eigen::Matrix<unsigned int, -1, -1, 1, -1, -1> > const&);
 // generated by autoexplicit.sh
-//template bool igl::is_manifold<double>(Eigen::Matrix<double, -1, -1, 0, -1, -1> const&, Eigen::Matrix<int, -1, -1, 0, -1, -1> const&);
-template bool igl::is_manifold<Eigen::Matrix<double, -1, -1, 0, -1, -1>, Eigen::Matrix<int, -1, -1, 0, -1, -1> >(Eigen::PlainObjectBase<Eigen::Matrix<double, -1, -1, 0, -1, -1> > const&, Eigen::PlainObjectBase<Eigen::Matrix<int, -1, -1, 0, -1, -1> > const&);
+//template bool igl::is_edge_manifold<double>(Eigen::Matrix<double, -1, -1, 0, -1, -1> const&, Eigen::Matrix<int, -1, -1, 0, -1, -1> const&);
+template bool igl::is_edge_manifold<Eigen::Matrix<double, -1, -1, 0, -1, -1>, Eigen::Matrix<int, -1, -1, 0, -1, -1> >(Eigen::PlainObjectBase<Eigen::Matrix<double, -1, -1, 0, -1, -1> > const&, Eigen::PlainObjectBase<Eigen::Matrix<int, -1, -1, 0, -1, -1> > const&);
 #endif

+ 4 - 4
include/igl/is_manifold.h → include/igl/is_edge_manifold.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_IS_MANIFOLD_H
-#define IGL_IS_MANIFOLD_H
+#ifndef IGL_IS_EDGE_MANIFOLD_H
+#define IGL_IS_EDGE_MANIFOLD_H
 #include "igl_inline.h"
 
 #include <Eigen/Core>
@@ -21,12 +21,12 @@ namespace igl
   // Known Bugs:
   //  Does not check for non-manifold vertices
   template <typename DerivedV, typename DerivedF>
-  IGL_INLINE bool is_manifold(const Eigen::PlainObjectBase<DerivedV>& V,
+  IGL_INLINE bool is_edge_manifold(const Eigen::PlainObjectBase<DerivedV>& V,
                               const Eigen::PlainObjectBase<DerivedF>& F);
 }
 
 #ifndef IGL_STATIC_LIBRARY
-#  include "is_manifold.cpp"
+#  include "is_edge_manifold.cpp"
 #endif
 
 #endif

+ 3 - 3
include/igl/triangle_triangle_adjacency.cpp

@@ -7,7 +7,7 @@
 // obtain one at http://mozilla.org/MPL/2.0/.
 #include "triangle_triangle_adjacency.h"
 
-#include <igl/is_manifold.h>
+#include <igl/is_edge_manifold.h>
 #include <algorithm>
 
 template <typename Scalar, typename Index>
@@ -76,7 +76,7 @@ IGL_INLINE void igl::triangle_triangle_adjacency(const Eigen::PlainObjectBase<Sc
                         const Eigen::PlainObjectBase<Index>& F,
                         Eigen::PlainObjectBase<Index>& TT)
 {
-  //assert(igl::is_manifold(V,F));
+  //assert(igl::is_edge_manifold(V,F));
   std::vector<std::vector<int> > TTT;
 
   triangle_triangle_adjacency_preprocess(V,F,TTT);
@@ -90,7 +90,7 @@ IGL_INLINE void igl::triangle_triangle_adjacency(const Eigen::PlainObjectBase<Sc
                         Eigen::PlainObjectBase<Index>& TT,
                         Eigen::PlainObjectBase<Index>& TTi)
 {
-  //assert(igl::is_manifold(V,F));
+  //assert(igl::is_edge_manifold(V,F));
   std::vector<std::vector<int> > TTT;
 
   triangle_triangle_adjacency_preprocess(V,F,TTT);