// // removeUnreferenced.h // Preview3D // // Created by Daniele Panozzo on 17/11/11. #ifndef RemoveUnreferenced_h #define RemoveUnreferenced_h #include namespace igl { // [ NV, NF ] = removeUnreferenced( V,F,epsilon ) // Remove unreferenced vertices from V, updating F accordingly // // Input: // V,F: mesh description // // Output: // NV, NF: new mesh without unreferenced vertices void removeUnreferenced(const Eigen::MatrixXd &V, const Eigen::MatrixXi &F, Eigen::MatrixXd &NV, Eigen::MatrixXi &NF, Eigen::VectorXi &I); } // Implementation inline void igl::removeUnreferenced(const Eigen::MatrixXd &V, const Eigen::MatrixXi &F, Eigen::MatrixXd &NV, Eigen::MatrixXi &NF, Eigen::VectorXi &I) { // Mark referenced vertices Eigen::MatrixXi mark = Eigen::MatrixXi::Zero(V.rows(),1); for(int i=0; i