removeUnreferenced.h 776 B

1234567891011121314151617181920212223242526272829303132
  1. //
  2. // removeUnreferenced.h
  3. // Preview3D
  4. //
  5. // Created by Daniele Panozzo on 17/11/11.
  6. #ifndef IGL_REMOVEUNREFERENCED_H
  7. #define IGL_REMOVEUNREFERENCED_H
  8. #include "igl_inline.h"
  9. #include <Eigen/Core>
  10. namespace igl
  11. {
  12. // [ NV, NF ] = removeUnreferenced( V,F,epsilon )
  13. // Remove unreferenced vertices from V, updating F accordingly
  14. //
  15. // Input:
  16. // V,F: mesh description
  17. //
  18. // Output:
  19. // NV, NF: new mesh without unreferenced vertices
  20. template <typename T>
  21. IGL_INLINE void removeUnreferenced(const Eigen::Matrix<T, Eigen::Dynamic, Eigen::Dynamic> &V, const Eigen::MatrixXi &F, Eigen::Matrix<T, Eigen::Dynamic, Eigen::Dynamic> &NV, Eigen::MatrixXi &NF, Eigen::VectorXi &I);
  22. }
  23. #ifdef IGL_HEADER_ONLY
  24. # include "removeUnreferenced.cpp"
  25. #endif
  26. #endif