#include <mc_tvm/CoMInConvexFunction.h>
Public Types | |
using | Output = tvm::function::abstract::Function::Output |
Public Member Functions | |
CoMInConvexFunction (const mc_rbdyn::Robot &robot) | |
void | addPlane (tvm::geometry::PlanePtr plane) |
void | reset () |
const mc_rbdyn::Robot & | robot () const noexcept |
const std::vector< tvm::geometry::PlanePtr > & | planes () noexcept |
tvm::geometry::Plane & | plane (size_t i) noexcept |
Eigen::VectorXd & | selector () noexcept |
const Eigen::VectorXd & | selector () const noexcept |
Protected Member Functions | |
void | updateValue () |
void | updateVelocity () |
void | updateJacobian () |
void | updateNormalAcceleration () |
Protected Attributes | |
mc_tvm::CoM & | com_ |
std::vector< tvm::geometry::PlanePtr > | planes_ |
Eigen::VectorXd | selector_ |
This function computes the distance of the CoM to a set of planes.
By providing a consistent set of planes, the function can be used to keep the CoM in a convex region of space.
using mc_tvm::CoMInConvexFunction::Output = tvm::function::abstract::Function::Output |
mc_tvm::CoMInConvexFunction::CoMInConvexFunction | ( | const mc_rbdyn::Robot & | robot | ) |
Constructor
By default, this function computes nothing
void mc_tvm::CoMInConvexFunction::addPlane | ( | tvm::geometry::PlanePtr | plane | ) |
Add a plane.
This will add one dimension to the function output. This new value is the distance to that plane.
|
inlinenoexcept |
Access a pane at the given index
|
inlinenoexcept |
Access the planes used by this function
void mc_tvm::CoMInConvexFunction::reset | ( | ) |
Remove all planes
|
inlinenoexcept |
Access the robot this function uses
|
inlinenoexcept |
Access the selector (const)
|
inlinenoexcept |
Access the selector
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Set of planes
|
protected |
Selector