8#ifndef IGL_COPYLEFT_MARCHINGCUBES_H 
    9#define IGL_COPYLEFT_MARCHINGCUBES_H 
   10#include "../igl_inline.h" 
   39    template <
typename DerivedValues, 
typename DerivedPo
ints, 
typename DerivedVertices, 
typename DerivedFaces>
 
   41        const Eigen::MatrixBase<DerivedValues> &values,
 
   42        const Eigen::MatrixBase<DerivedPoints> &points,
 
   46        const double isovalue,
 
   47        Eigen::PlainObjectBase<DerivedVertices> &vertices,
 
   48        Eigen::PlainObjectBase<DerivedFaces> &faces);
 
   51    template <
typename DerivedValues, 
typename DerivedPo
ints, 
typename DerivedVertices, 
typename DerivedFaces>
 
   53      const Eigen::MatrixBase<DerivedValues> &values,
 
   54      const Eigen::MatrixBase<DerivedPoints> &points,
 
   58      Eigen::PlainObjectBase<DerivedVertices> &vertices,
 
   59      Eigen::PlainObjectBase<DerivedFaces> &faces);
 
   63      typename DerivedValue, 
 
   64      typename DerivedPoint,
 
   65      typename DerivedPoints, 
 
   66      typename DerivedVertices, 
 
   67      typename DerivedFaces>
 
   69        const std::function< DerivedValue(
const DerivedPoint & ) > & value_fun,
 
   70        const Eigen::MatrixBase<DerivedPoints> &points,
 
   74        const double isovalue, 
 
   75        Eigen::PlainObjectBase<DerivedVertices> &vertices,
 
   76        Eigen::PlainObjectBase<DerivedFaces> &faces);
 
   94    template <
typename DerivedValues, 
typename DerivedPo
ints, 
typename DerivedVertices, 
typename DerivedIndices, 
typename DerivedFaces>
 
   96      const Eigen::MatrixBase<DerivedValues> &values,
 
   97      const Eigen::MatrixBase<DerivedPoints> &points,
 
   98      const Eigen::MatrixBase<DerivedIndices> &indices,
 
   99      const double isovalue,
 
  100      Eigen::PlainObjectBase<DerivedVertices> &vertices,
 
  101      Eigen::PlainObjectBase<DerivedFaces> &faces);
 
  104    template <
typename DerivedValues, 
typename DerivedPo
ints, 
typename DerivedVertices, 
typename DerivedIndices, 
typename DerivedFaces>
 
  106      const Eigen::MatrixBase<DerivedValues> &values,
 
  107      const Eigen::MatrixBase<DerivedPoints> &points,
 
  108      const Eigen::MatrixBase<DerivedIndices> &indices,
 
  109      Eigen::PlainObjectBase<DerivedVertices> &vertices,
 
  110      Eigen::PlainObjectBase<DerivedFaces> &faces);
 
  114#ifndef IGL_STATIC_LIBRARY 
  115#  include "marching_cubes.cpp" 
#define IGL_INLINE
Definition igl_inline.h:15
 
void marching_cubes(const Eigen::MatrixBase< DerivedValues > &values, const Eigen::MatrixBase< DerivedPoints > &points, const unsigned x_res, const unsigned y_res, const unsigned z_res, const double isovalue, Eigen::PlainObjectBase< DerivedVertices > &vertices, Eigen::PlainObjectBase< DerivedFaces > &faces)
Performs marching cubes reconstruction on a grid defined by values, and points, and generates a mesh ...