8#ifndef IGL_COLLAPSE_EDGE_H 
    9#define IGL_COLLAPSE_EDGE_H 
   18#ifndef IGL_COLLAPSE_EDGE_NULL 
   21  #define IGL_COLLAPSE_EDGE_NULL 0 
   53    const Eigen::RowVectorXd & p,
 
   57    Eigen::VectorXi & EMAP,
 
   72    const Eigen::RowVectorXd & p,
 
   73     std::vector<int> & Nsv,
 
   74    const std::vector<int> & Nsf,
 
   75     std::vector<int> & Ndv,
 
   76    const std::vector<int> & Ndf,
 
   80    Eigen::VectorXi & EMAP,
 
   90    const Eigen::RowVectorXd & p,
 
   94    Eigen::VectorXi & EMAP,
 
   96    Eigen::MatrixXi & EI);
 
  140    Eigen::VectorXi & EMAP,
 
  141    Eigen::MatrixXi & EF,
 
  142    Eigen::MatrixXi & EI,
 
  144    Eigen::VectorXi & EQ,
 
  157    Eigen::VectorXi & EMAP,
 
  158    Eigen::MatrixXi & EF,
 
  159    Eigen::MatrixXi & EI,
 
  161    Eigen::VectorXi & EQ,
 
  162    Eigen::MatrixXd & C);
 
  171    Eigen::VectorXi & EMAP,
 
  172    Eigen::MatrixXi & EF,
 
  173    Eigen::MatrixXi & EI,
 
  175    Eigen::VectorXi & EQ,
 
  176    Eigen::MatrixXd & C);
 
  179#ifndef IGL_STATIC_LIBRARY 
  180#  include "collapse_edge.cpp" 
See decimate.h for more details.
 
#define IGL_INLINE
Definition igl_inline.h:15
 
std::function< void(const Eigen::MatrixXd &, const Eigen::MatrixXi &, const Eigen::MatrixXi &, const Eigen::VectorXi &, const Eigen::MatrixXi &, const Eigen::MatrixXi &, const igl::min_heap< std::tuple< double, int, int > > &, const Eigen::VectorXi &, const Eigen::MatrixXd &, const int, const int, const int, const int, const int, const bool)> decimate_post_collapse_callback
Function handle called just after collapse_edge is attempted.
Definition decimate_callback_types.h:164
 
bool collapse_edge(const int e, const Eigen::RowVectorXd &p, Eigen::MatrixXd &V, Eigen::MatrixXi &F, Eigen::MatrixXi &E, Eigen::VectorXi &EMAP, Eigen::MatrixXi &EF, Eigen::MatrixXi &EI, int &e1, int &e2, int &f1, int &f2)
Attempt to collapse a given edge of a mesh.
 
std::priority_queue< T, std::vector< T >, std::greater< T > > min_heap
Templated min heap (reverses sort order of std::priority_queue)
Definition min_heap.h:18
 
std::function< bool(const Eigen::MatrixXd &, const Eigen::MatrixXi &, const Eigen::MatrixXi &, const Eigen::VectorXi &, const Eigen::MatrixXi &, const Eigen::MatrixXi &, const igl::min_heap< std::tuple< double, int, int > > &, const Eigen::VectorXi &, const Eigen::MatrixXd &, const int)> decimate_pre_collapse_callback
Function handle called just before collapse_edge is attempted.
Definition decimate_callback_types.h:122
 
std::function< void(const int, const Eigen::MatrixXd &, const Eigen::MatrixXi &, const Eigen::MatrixXi &, const Eigen::VectorXi &, const Eigen::MatrixXi &, const Eigen::MatrixXi &, double &, Eigen::RowVectorXd &)> decimate_cost_and_placement_callback
Function handle used to control the cost of each edge collapse in igl::decimate.
Definition decimate_callback_types.h:46