extract_cells.h 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. #ifndef IGL_CGAL_EXTRACT_CELLS
  2. #define IGL_CGAL_EXTRACT_CELLS
  3. #include "../igl_inline.h"
  4. #include <Eigen/Core>
  5. namespace igl {
  6. namespace cgal {
  7. template<
  8. typename DerivedV,
  9. typename DerivedF,
  10. typename DerivedP,
  11. typename DeriveduE,
  12. typename uE2EType,
  13. typename DerivedEMAP,
  14. typename DerivedC >
  15. IGL_INLINE size_t extract_cells_single_component(
  16. const Eigen::PlainObjectBase<DerivedV>& V,
  17. const Eigen::PlainObjectBase<DerivedF>& F,
  18. const Eigen::PlainObjectBase<DerivedP>& P,
  19. const Eigen::PlainObjectBase<DeriveduE>& uE,
  20. const std::vector<std::vector<uE2EType> >& uE2E,
  21. const Eigen::PlainObjectBase<DerivedEMAP>& EMAP,
  22. Eigen::PlainObjectBase<DerivedC>& cells);
  23. template<
  24. typename DerivedV,
  25. typename DerivedF,
  26. typename DerivedP,
  27. typename DerivedE,
  28. typename DeriveduE,
  29. typename uE2EType,
  30. typename DerivedEMAP,
  31. typename DerivedC >
  32. IGL_INLINE size_t extract_cells(
  33. const Eigen::PlainObjectBase<DerivedV>& V,
  34. const Eigen::PlainObjectBase<DerivedF>& F,
  35. const Eigen::PlainObjectBase<DerivedP>& P,
  36. const Eigen::PlainObjectBase<DerivedE>& E,
  37. const Eigen::PlainObjectBase<DeriveduE>& uE,
  38. const std::vector<std::vector<uE2EType> >& uE2E,
  39. const Eigen::PlainObjectBase<DerivedEMAP>& EMAP,
  40. Eigen::PlainObjectBase<DerivedC>& cells);
  41. template<
  42. typename DerivedV,
  43. typename DerivedF,
  44. typename DerivedC >
  45. IGL_INLINE size_t extract_cells(
  46. const Eigen::PlainObjectBase<DerivedV>& V,
  47. const Eigen::PlainObjectBase<DerivedF>& F,
  48. Eigen::PlainObjectBase<DerivedC>& cells);
  49. }
  50. }
  51. #ifndef IGL_STATIC_LIBRARY
  52. # include "extract_cells.cpp"
  53. #endif
  54. #endif