79 const Eigen::PlainObjectBase<Eigen::MatrixXd>&,
80 const Eigen::PlainObjectBase<Eigen::VectorXi>&,
81 const Eigen::PlainObjectBase<Eigen::MatrixXi>&,
82 Eigen::PlainObjectBase<Eigen::MatrixXd>&)> ;
97 const Eigen::PlainObjectBase<Eigen::MatrixXd>& P,
98 const Eigen::PlainObjectBase<Eigen::VectorXi>& SC,
99 const Eigen::PlainObjectBase<Eigen::MatrixXi>& S,
100 Eigen::PlainObjectBase<Eigen::MatrixXd>& projP);
116 const Eigen::PlainObjectBase<Eigen::MatrixXd>& P,
117 const Eigen::PlainObjectBase<Eigen::VectorXi>& SC,
118 const Eigen::PlainObjectBase<Eigen::MatrixXi>& S,
119 Eigen::PlainObjectBase<Eigen::MatrixXd>& projP);
144 const Eigen::PlainObjectBase<DerivedP>& P,
145 const Eigen::PlainObjectBase<DerivedSC>& SC,
146 const Eigen::PlainObjectBase<DerivedS>& S,
147 const Eigen::PlainObjectBase<DerivedS>& E,
148 const Eigen::PlainObjectBase<DerivedSC>& b,
149 const Eigen::PlainObjectBase<Derivedw>& wShape,
150 const Eigen::PlainObjectBase<Derivedw>& wSmooth,
171 const Eigen::PlainObjectBase<DerivedP>& bc,
172 const std::function<
bool(
const Eigen::PlainObjectBase<DerivedP>&,
const Eigen::PlainObjectBase<DerivedSC>&,
const Eigen::PlainObjectBase<DerivedS>&, Eigen::PlainObjectBase<DerivedP>&)>& local_projection,
173 const Eigen::PlainObjectBase<DerivedP>& P0,
175 const bool quietIterations,
176 Eigen::PlainObjectBase<DerivedP>& P);
180#ifndef IGL_STATIC_LIBRARY
181#include "shapeup.cpp"
#define IGL_INLINE
Definition igl_inline.h:15
bool shapeup_identity_projection(const Eigen::PlainObjectBase< Eigen::MatrixXd > &P, const Eigen::PlainObjectBase< Eigen::VectorXi > &SC, const Eigen::PlainObjectBase< Eigen::MatrixXi > &S, Eigen::PlainObjectBase< Eigen::MatrixXd > &projP)
This projection does nothing but render points into projP.
bool shapeup_solve(const Eigen::PlainObjectBase< DerivedP > &bc, const std::function< bool(const Eigen::PlainObjectBase< DerivedP > &, const Eigen::PlainObjectBase< DerivedSC > &, const Eigen::PlainObjectBase< DerivedS > &, Eigen::PlainObjectBase< DerivedP > &)> &local_projection, const Eigen::PlainObjectBase< DerivedP > &P0, const ShapeupData &sudata, const bool quietIterations, Eigen::PlainObjectBase< DerivedP > &P)
This function solve the shapeup project optimization.
bool shapeup_regular_face_projection(const Eigen::PlainObjectBase< Eigen::MatrixXd > &P, const Eigen::PlainObjectBase< Eigen::VectorXi > &SC, const Eigen::PlainObjectBase< Eigen::MatrixXi > &S, Eigen::PlainObjectBase< Eigen::MatrixXd > &projP)
the projection assumes that the sets are vertices of polygons in cyclic order
bool shapeup_precomputation(const Eigen::PlainObjectBase< DerivedP > &P, const Eigen::PlainObjectBase< DerivedSC > &SC, const Eigen::PlainObjectBase< DerivedS > &S, const Eigen::PlainObjectBase< DerivedS > &E, const Eigen::PlainObjectBase< DerivedSC > &b, const Eigen::PlainObjectBase< Derivedw > &wShape, const Eigen::PlainObjectBase< Derivedw > &wSmooth, ShapeupData &sudata)
This function precomputation the necessary matrices for the ShapeUp process, and prefactorizes them.
std::function< bool(const Eigen::PlainObjectBase< Eigen::MatrixXd > &, const Eigen::PlainObjectBase< Eigen::VectorXi > &, const Eigen::PlainObjectBase< Eigen::MatrixXi > &, Eigen::PlainObjectBase< Eigen::MatrixXd > &)> shapeup_projection_function
Every function here defines a local projection for ShapeUp, and must have the following structure to ...
Definition shapeup.h:82
Parameters and precomputed data for ShapeUp.
Definition shapeup.h:31
Eigen::SparseMatrix< double > At
Definition shapeup.h:41
Eigen::SparseMatrix< double > Q
Definition shapeup.h:41
double closeCoeff
Definition shapeup.h:39
Eigen::SparseMatrix< double > DSmooth
Definition shapeup.h:41
Eigen::MatrixXd P
Definition shapeup.h:33
min_quad_with_fixed_data< double > solver_data
Definition shapeup.h:42
Eigen::SparseMatrix< double > DShape
Definition shapeup.h:41
Eigen::SparseMatrix< double > DClose
Definition shapeup.h:41
double shapeCoeff
Definition shapeup.h:39
Eigen::VectorXi b
Definition shapeup.h:36
ShapeupData()
Definition shapeup.h:43
double pTolerance
Definition shapeup.h:38
int maxIterations
Definition shapeup.h:37
Eigen::SparseMatrix< double > A
Definition shapeup.h:41
Eigen::VectorXi SC
Definition shapeup.h:34
Eigen::SparseMatrix< double > W
Definition shapeup.h:41
double smoothCoeff
Definition shapeup.h:39
Eigen::MatrixXi S
Definition shapeup.h:35
Parameters and precomputed values for min_quad_with_fixed.
Definition min_quad_with_fixed.h:166