ShapeOp
0.1.0

Plane constraint. Constrains a set of vertices to lie on the same plane. See [1] for more details. More...
#include <Constraint.h>
Public Member Functions  
PlaneConstraint (const std::vector< int > &idI, Scalar weight, const Matrix3X &positions)  
Constraint constructor. More...  
virtual void  project (const Matrix3X &positions, Matrix3X &projections) const overridefinal 
Find the closest configuration from the input positions that satisfy the constraint.  
virtual void  addConstraint (std::vector< Triplet > &triplets, int &idO) const overridefinal 
Add the constraint to the linear system.  
Public Member Functions inherited from ShapeOp::Constraint  
Constraint (const std::vector< int > &idI, Scalar weight)  
Constraint constructor. More...  
std::size_t  nIndices () const 
Number of indices of vertices involved in the constraint.  
Additional Inherited Members  
Static Public Member Functions inherited from ShapeOp::Constraint  
static std::shared_ptr< Constraint >  shapeConstraintFactory (const std::string &ConstraintType, const std::vector< int > &idI, Scalar weight, const Matrix3X &positions) 
Creates a constraint from a string type, a number of indices, a weight and the initial point positions. More...  
Protected Attributes inherited from ShapeOp::Constraint  
std::vector< int >  idI_ 
ids of the vertices involved in this constraint.  
Scalar  weight_ 
weight for the constraint.  
int  idO_ 
location of this constraint in the linear system.  
Plane constraint. Constrains a set of vertices to lie on the same plane. See [1] for more details.
SHAPEOP_INLINE ShapeOp::PlaneConstraint::PlaneConstraint  (  const std::vector< int > &  idI, 
Scalar  weight,  
const Matrix3X &  positions  
) 
Constraint constructor.
idI  Indices of vertices to be projection onto on a plane. 
weight  The weight of the constraint to be added relative to the other constraints. 
positions  The positions of all the n vertices stacked in a 3 by n matrix. 