1#ifndef IGL_DUAL_CONTOURING_H 
    2#define IGL_DUAL_CONTOURING_H 
   34      typename DerivedV::Scalar(
const Eigen::Matrix<typename DerivedV::Scalar,1,3> &)> & f,
 
   36      Eigen::Matrix<typename DerivedV::Scalar,1,3>(
 
   37        const Eigen::Matrix<typename DerivedV::Scalar,1,3> &)> & f_grad,
 
   38    const Eigen::Matrix<typename DerivedV::Scalar,1,3> & min_corner,
 
   39    const Eigen::Matrix<typename DerivedV::Scalar,1,3> & max_corner,
 
   43    const bool constrained,
 
   45    const bool root_finding,
 
   46    Eigen::PlainObjectBase<DerivedV> & V,
 
   47    Eigen::PlainObjectBase<DerivedQ> & Q);
 
   61      typename DerivedV::Scalar(
const Eigen::Matrix<typename DerivedV::Scalar,1,3> &)> & f,
 
   63      Eigen::Matrix<typename DerivedV::Scalar,1,3>(
 
   64        const Eigen::Matrix<typename DerivedV::Scalar,1,3> &)> & f_grad,
 
   65    const Eigen::MatrixBase<DerivedGf> & Gf,
 
   66    const Eigen::MatrixBase<DerivedGV> & GV,
 
   70    const bool constrained,
 
   72    const bool root_finding,
 
   73    Eigen::PlainObjectBase<DerivedV> & V,
 
   74    Eigen::PlainObjectBase<DerivedQ> & Q);
 
   89    const std::function<
typename DerivedV::Scalar(
const Eigen::Matrix<typename DerivedV::Scalar,1,3> &)> & f,
 
   90    const std::function<Eigen::Matrix<typename DerivedV::Scalar,1,3>(
const Eigen::Matrix<typename DerivedV::Scalar,1,3> &)> & f_grad,
 
   91    const Eigen::Matrix<typename DerivedV::Scalar,1,3> & step,
 
   92    const Eigen::MatrixBase<DerivedGf> & Gf,
 
   93    const Eigen::MatrixBase<DerivedGV> & GV,
 
   94    const Eigen::MatrixBase<DerivedGI> & GI,
 
   95    const bool constrained,
 
   97    const bool root_finding,
 
   98    Eigen::PlainObjectBase<DerivedV> & V,
 
   99    Eigen::PlainObjectBase<DerivedQ> & Q);
 
  102#ifndef IGL_STATIC_LIBRARY 
  103#  include "dual_contouring.cpp" 
#define IGL_INLINE
Definition igl_inline.h:15
 
void dual_contouring(const std::function< typename DerivedV::Scalar(const Eigen::Matrix< typename DerivedV::Scalar, 1, 3 > &)> &f, const std::function< Eigen::Matrix< typename DerivedV::Scalar, 1, 3 >(const Eigen::Matrix< typename DerivedV::Scalar, 1, 3 > &)> &f_grad, const Eigen::Matrix< typename DerivedV::Scalar, 1, 3 > &min_corner, const Eigen::Matrix< typename DerivedV::Scalar, 1, 3 > &max_corner, const int nx, const int ny, const int nz, const bool constrained, const bool triangles, const bool root_finding, Eigen::PlainObjectBase< DerivedV > &V, Eigen::PlainObjectBase< DerivedQ > &Q)
Dual contouring to extract a pure quad mesh from differentiable implicit function using a dense grid.