Public Types | |
enum | ConstraintsType { Linear, NonLinear } |
enum | ConstraintType { Equality, Inequality } |
Public Member Functions | |
BetaFormConstraints () | |
virtual String | className () const |
virtual ConstraintsType | getConstraintsType () const |
virtual ConstraintType | getConstraintType (Int constraint) const |
virtual Int | numConstraints () const |
virtual Int | numEqualityConstraints () const |
virtual Int | numInequalityConstraints () const |
virtual Real | evaluate (Int constraint, const Vector &x, const Vector &a) const |
virtual Vector | evaluate (const Vector &x, const Vector &a) const |
void | addConstraint (ref< BetaFormConstraint > constraint) |
void | setAlphaConstraint (const Vector &alpha) |
bool | isAlphaConstraint () const |
void | clear () |
ref< BetaFormConstraint > | getConstraint (Int i) |
Vector | getBeta (Int i) const |
Vector | getAlpha () const |
Matrix | getBetas () const |
get Matrix of beta column vectors | |
Int | numBetaConstraints () const |
String | toString () const |
< to aid debugging (called by operator<<) | |
Int | size () const |
Real | g (Int i, const Vector &x, const Vector &a) const |
Vector | g (const Vector &x, const Vector &a) const |
virtual bool | isSameKindAs (const ReferencedObject &) const |
virtual bool | isSameKindAs (const Object &) const |
void | reference () const |
bool | unreference () const |
const int | referenceCount () const |
void | enableOnUnreferenceCall (bool enabled) |
virtual void | onUnreference () const |
Protected Types | |
typedef array< ref< BetaFormConstraint > > | ConstraintArray |
Protected Attributes | |
Int | numBetas |
ConstraintArray | constraints |
array of constraints (index corresponds to betas matrix column) | |
Matrix | betas |
columns vectors (no. cols is may be larger than necessary (numBetas)) | |
bool | nonholonomicConstraint |
is there a non-holonomic constraint specified via alpha? | |
Vector | alpha |
alpha form non-holonomic constraint | |
int | _refCount |
bool | onUnreferenceEnabled |
Paper 2 below adds a non-holonomic constraint expressed terms of alpha alpha^T . t = 0
This class represents the constraints in this form.
see 1. "Resolving Kinematic Redundancy with Constraints Using the FSP (Full Space Parameterization) Approach", Francois G. Pin & Faithlyn A. Tulloch, Proceedings of the 1996 IEEE International Conference on Robotics and Automation.
see 2. "Motion Planning for Mobile Manipulators with a Non-Holonomic Constraint Using the FSP (Full Space Marameterization) Method", Francois G. Pin, Kristi A. Morgansen, Faithlyn A. Tulloch, Charles J. Hacker and Kathryn B. Gower, Journal of Robotic Systems 13(11), 723-736 (1996).
Definition at line 62 of file BetaFormConstraints.
|
Definition at line 189 of file BetaFormConstraints. |
|
|
|
|
|
Definition at line 88 of file BetaFormConstraints. References nonholonomicConstraint, and numBetas. |
|
Definition at line 125 of file BetaFormConstraints. References Assert, betas, base::Matrix, numBetas, base::Range, base::matrix< T >::resize(), base::vector< T >::size(), base::matrix< T >::size1(), base::matrix< T >::size2(), and base::Vector. |
|
return the name of the object's class type. Must be defined by derived classes. Implements base::Object. Definition at line 91 of file BetaFormConstraints. |
|
Definition at line 158 of file BetaFormConstraints. References betas, nonholonomicConstraint, numBetas, and base::matrix< T >::resize(). |
|
If enabled, each call to unreference() will also call virtual method onUnreference() Definition at line 115 of file Referenced. References base::Referenced::onUnreferenceEnabled. |
|
Implements robot::control::kinematics::Optimizer::Constraints. Definition at line 113 of file BetaFormConstraints. References betas, nonholonomicConstraint, numBetas, numConstraints(), and base::Vector. |
|
Implements robot::control::kinematics::Optimizer::Constraints. Definition at line 99 of file BetaFormConstraints. References Assert, betas, numBetas, numConstraints(), base::vector< T >::size(), base::matrix< T >::size1(), and base::Vector. |
|
Definition at line 75 of file Optimizer. References robot::control::kinematics::Optimizer::Constraints::evaluate(), and base::Vector. |
|
Definition at line 74 of file Optimizer. References robot::control::kinematics::Optimizer::Constraints::evaluate(), and base::Vector. |
|
Definition at line 162 of file BetaFormConstraints. References nonholonomicConstraint, and base::Vector. |
|
Definition at line 160 of file BetaFormConstraints. References betas, and base::Vector. |
|
get Matrix of beta column vectors
Definition at line 166 of file BetaFormConstraints. References betas, base::Matrix, numBetas, base::Range, and base::matrix< T >::size1(). |
|
Definition at line 159 of file BetaFormConstraints. |
|
Implements robot::control::kinematics::Optimizer::Constraints. Definition at line 93 of file BetaFormConstraints. |
|
Implements robot::control::kinematics::Optimizer::Constraints. Definition at line 94 of file BetaFormConstraints. |
|
Definition at line 155 of file BetaFormConstraints. References nonholonomicConstraint. |
|
|
|
Definition at line 52 of file ReferencedObject. |
|
Definition at line 173 of file BetaFormConstraints. References numBetas. Referenced by toString(). |
|
Implements robot::control::kinematics::Optimizer::Constraints. Definition at line 95 of file BetaFormConstraints. References nonholonomicConstraint, and numBetas. Referenced by evaluate(), and numEqualityConstraints(). |
|
Implements robot::control::kinematics::Optimizer::Constraints. Definition at line 96 of file BetaFormConstraints. References numConstraints(). |
|
Implements robot::control::kinematics::Optimizer::Constraints. Definition at line 97 of file BetaFormConstraints. |
|
Called by unreference() if enabled via enableOnUnreferenceCall(true). Typically overridden in subclasses that wish to know about unreference() calls - for example to handle manually breaking cyclic references Reimplemented in robot::control::ControllableAdaptor::AdaptorControlInterface, and robot::control::ControllableAdaptor. Definition at line 121 of file Referenced. Referenced by base::Referenced::unreference(). |
|
Increment the reference count by one, indicating that this object has another pointer which is referencing it. Definition at line 65 of file Referenced. References base::Referenced::_refCount. |
|
Return the number pointers currently referencing this object. Definition at line 112 of file Referenced. References base::Referenced::_refCount. Referenced by robot::control::ControllableAdaptor::AdaptorControlInterface::onUnreference(). |
|
Definition at line 149 of file BetaFormConstraints. References nonholonomicConstraint, base::vector< T >::reset(), and base::Vector. |
|
Definition at line 69 of file Optimizer. References robot::control::kinematics::Optimizer::Constraints::numConstraints(). |
|
< to aid debugging (called by operator<<)
Reimplemented from robot::control::kinematics::Optimizer::Constraints. Definition at line 176 of file BetaFormConstraints. References nonholonomicConstraint, and numBetaConstraints(). Referenced by robot::control::kinematics::operator<<(). |
|
Decrement the reference count by one, indicating that a pointer to this object is referencing it. If the refence count goes to zero, it is assumed that this object is nolonger referenced and is automatically deleted. Definition at line 81 of file Referenced. References base::Referenced::_refCount, Exception, base::Referenced::onUnreference(), and base::Referenced::onUnreferenceEnabled. |
|
Definition at line 136 of file Referenced. Referenced by base::Referenced::reference(), base::Referenced::referenceCount(), base::Referenced::Referenced(), base::Referenced::unreference(), and base::Referenced::~Referenced(). |
|
alpha form non-holonomic constraint
Definition at line 195 of file BetaFormConstraints. |
|
columns vectors (no. cols is may be larger than necessary (numBetas))
Definition at line 193 of file BetaFormConstraints. Referenced by addConstraint(), clear(), evaluate(), getBeta(), and getBetas(). |
|
array of constraints (index corresponds to betas matrix column)
Definition at line 192 of file BetaFormConstraints. |
|
is there a non-holonomic constraint specified via alpha?
Definition at line 194 of file BetaFormConstraints. Referenced by BetaFormConstraints(), clear(), evaluate(), getAlpha(), isAlphaConstraint(), numConstraints(), setAlphaConstraint(), and toString(). |
|
Definition at line 191 of file BetaFormConstraints. Referenced by addConstraint(), BetaFormConstraints(), clear(), evaluate(), getBetas(), numBetaConstraints(), and numConstraints(). |
|
Definition at line 137 of file Referenced. Referenced by base::Referenced::enableOnUnreferenceCall(), base::Referenced::Referenced(), and base::Referenced::unreference(). |