libigl v2.5.0
Loading...
Searching...
No Matches
igl::ArapDOFData< LbsMatrixType, SSCALAR > Struct Template Reference

Structure that contains fields for all precomputed data or data that needs to be remembered at update. More...

#include <arap_dof.h>

Public Types

typedef Eigen::Matrix< SSCALAR, Eigen::Dynamic, Eigen::Dynamic > MatrixXS
 Matrix with SSCALAR type.
 

Public Member Functions

 ArapDOFData ()
 

Public Attributes

igl::ARAPEnergyType energy
 Type of arap energy we're solving.
 
Eigen::Matrix< int, Eigen::Dynamic, 1 > fixed_dim
 List of indices of fixed transformation entries.
 
std::vector< Eigen::MatrixXd > CSM_M
 List of precomputed covariance scatter matrices multiplied by lbs matrices.
 
int n
 Number of mesh vertices.
 
int m
 Number of weight functions.
 
int dim
 Number of dimensions.
 
int effective_dim
 Effective dimensions.
 
Eigen::Matrix< int, Eigen::Dynamic, 1 > interpolated
 List of indices into C of positional constraints.
 
std::vector< bool > free_mask
 Mask of free variables.
 
LbsMatrixType Q
 Full quadratic coefficients matrix before lagrangian (should be dense)
 
MatrixXS M_FullSolve
 Full solve matrix that contains also conversion from rotations to the right hand side, i.e., solves Poisson transformations just from rotations and positional constraints.
 
MatrixXS CSM
 Precomputed condensed matrices (3x3 commutators folded to 1x1):
 
bool print_timings
 Print timings at each update.
 
bool with_dynamics
 dynamics
 
double h
 Time step.
 
MatrixXS L0
 #handles * dim * dim+1 list of transformation entries from previous solve
 
MatrixXS Lvel0
 "Velocity"
 
MatrixXS fext
 #V by dim matrix of external forces
 
LbsMatrixType Mass_tilde
 Mass_tilde: MT * Mass * M.
 
Eigen::MatrixXd fgrav
 Force due to gravity (premultiplier)
 
Eigen::Vector3d grav_dir
 Direction of gravity.
 
double grav_mag
 Magnitude of gravity.
 
MatrixXS Pi_1
 Π1 from the paper.
 

Detailed Description

template<typename LbsMatrixType, typename SSCALAR>
struct igl::ArapDOFData< LbsMatrixType, SSCALAR >

Structure that contains fields for all precomputed data or data that needs to be remembered at update.

include/igl/arap_dof.h

Member Typedef Documentation

◆ MatrixXS

template<typename LbsMatrixType , typename SSCALAR >
typedef Eigen::Matrix<SSCALAR, Eigen::Dynamic, Eigen::Dynamic> igl::ArapDOFData< LbsMatrixType, SSCALAR >::MatrixXS

Matrix with SSCALAR type.

Constructor & Destructor Documentation

◆ ArapDOFData()

template<typename LbsMatrixType , typename SSCALAR >
igl::ArapDOFData< LbsMatrixType, SSCALAR >::ArapDOFData ( )
inline

Member Data Documentation

◆ energy

template<typename LbsMatrixType , typename SSCALAR >
igl::ARAPEnergyType igl::ArapDOFData< LbsMatrixType, SSCALAR >::energy

Type of arap energy we're solving.

◆ fixed_dim

template<typename LbsMatrixType , typename SSCALAR >
Eigen::Matrix<int,Eigen::Dynamic,1> igl::ArapDOFData< LbsMatrixType, SSCALAR >::fixed_dim

List of indices of fixed transformation entries.

◆ CSM_M

template<typename LbsMatrixType , typename SSCALAR >
std::vector<Eigen::MatrixXd> igl::ArapDOFData< LbsMatrixType, SSCALAR >::CSM_M

List of precomputed covariance scatter matrices multiplied by lbs matrices.

◆ n

template<typename LbsMatrixType , typename SSCALAR >
int igl::ArapDOFData< LbsMatrixType, SSCALAR >::n

Number of mesh vertices.

◆ m

template<typename LbsMatrixType , typename SSCALAR >
int igl::ArapDOFData< LbsMatrixType, SSCALAR >::m

Number of weight functions.

◆ dim

template<typename LbsMatrixType , typename SSCALAR >
int igl::ArapDOFData< LbsMatrixType, SSCALAR >::dim

Number of dimensions.

◆ effective_dim

template<typename LbsMatrixType , typename SSCALAR >
int igl::ArapDOFData< LbsMatrixType, SSCALAR >::effective_dim

Effective dimensions.

◆ interpolated

template<typename LbsMatrixType , typename SSCALAR >
Eigen::Matrix<int,Eigen::Dynamic,1> igl::ArapDOFData< LbsMatrixType, SSCALAR >::interpolated

List of indices into C of positional constraints.

◆ free_mask

template<typename LbsMatrixType , typename SSCALAR >
std::vector<bool> igl::ArapDOFData< LbsMatrixType, SSCALAR >::free_mask

Mask of free variables.

◆ Q

template<typename LbsMatrixType , typename SSCALAR >
LbsMatrixType igl::ArapDOFData< LbsMatrixType, SSCALAR >::Q

Full quadratic coefficients matrix before lagrangian (should be dense)

◆ M_FullSolve

template<typename LbsMatrixType , typename SSCALAR >
MatrixXS igl::ArapDOFData< LbsMatrixType, SSCALAR >::M_FullSolve

Full solve matrix that contains also conversion from rotations to the right hand side, i.e., solves Poisson transformations just from rotations and positional constraints.

◆ CSM

template<typename LbsMatrixType , typename SSCALAR >
MatrixXS igl::ArapDOFData< LbsMatrixType, SSCALAR >::CSM

Precomputed condensed matrices (3x3 commutators folded to 1x1):

◆ print_timings

template<typename LbsMatrixType , typename SSCALAR >
bool igl::ArapDOFData< LbsMatrixType, SSCALAR >::print_timings

Print timings at each update.

◆ with_dynamics

template<typename LbsMatrixType , typename SSCALAR >
bool igl::ArapDOFData< LbsMatrixType, SSCALAR >::with_dynamics

dynamics

◆ h

template<typename LbsMatrixType , typename SSCALAR >
double igl::ArapDOFData< LbsMatrixType, SSCALAR >::h

Time step.

◆ L0

template<typename LbsMatrixType , typename SSCALAR >
MatrixXS igl::ArapDOFData< LbsMatrixType, SSCALAR >::L0

#handles * dim * dim+1 list of transformation entries from previous solve

◆ Lvel0

template<typename LbsMatrixType , typename SSCALAR >
MatrixXS igl::ArapDOFData< LbsMatrixType, SSCALAR >::Lvel0

"Velocity"

◆ fext

template<typename LbsMatrixType , typename SSCALAR >
MatrixXS igl::ArapDOFData< LbsMatrixType, SSCALAR >::fext

#V by dim matrix of external forces

◆ Mass_tilde

template<typename LbsMatrixType , typename SSCALAR >
LbsMatrixType igl::ArapDOFData< LbsMatrixType, SSCALAR >::Mass_tilde

Mass_tilde: MT * Mass * M.

◆ fgrav

template<typename LbsMatrixType , typename SSCALAR >
Eigen::MatrixXd igl::ArapDOFData< LbsMatrixType, SSCALAR >::fgrav

Force due to gravity (premultiplier)

◆ grav_dir

template<typename LbsMatrixType , typename SSCALAR >
Eigen::Vector3d igl::ArapDOFData< LbsMatrixType, SSCALAR >::grav_dir

Direction of gravity.

◆ grav_mag

template<typename LbsMatrixType , typename SSCALAR >
double igl::ArapDOFData< LbsMatrixType, SSCALAR >::grav_mag

Magnitude of gravity.

◆ Pi_1

template<typename LbsMatrixType , typename SSCALAR >
MatrixXS igl::ArapDOFData< LbsMatrixType, SSCALAR >::Pi_1

Π1 from the paper.


The documentation for this struct was generated from the following file: