An AxisPlaneConstraint defined in the Frame local coordinate system. More...
Public Member Functions | |
virtual | ~LocalConstraint () |
Virtual destructor. | |
virtual void | constrainRotation (Quaternion &rotation, Frame *const frame) |
When rotationConstraintType() is AxisPlaneConstraint::AXIS, constrain rotation to be a rotation around an axis whose direction is defined in the Frame local coordinate system by rotationConstraintDirection(). | |
virtual void | constrainTranslation (Vec &translation, Frame *const frame) |
Depending on translationConstraintType(), constrain translation to be along an axis or limited to a plane defined in the Frame local coordinate system by translationConstraintDirection(). | |
Public Member Functions inherited from AxisPlaneConstraint | |
AxisPlaneConstraint () | |
Default constructor. | |
virtual | ~AxisPlaneConstraint () |
Virtual destructor. | |
void | setTranslationConstraint (Type type, const Vec &direction) |
Simply calls setTranslationConstraintType() and setTranslationConstraintDirection(). | |
void | setTranslationConstraintType (Type type) |
Sets the Type() of the translationConstraintType(). | |
void | setTranslationConstraintDirection (const Vec &direction) |
Defines the translationConstraintDirection(). | |
Type | translationConstraintType () const |
Returns the translation constraint Type(). | |
Vec | translationConstraintDirection () const |
Returns the direction used by the translation constraint. | |
void | setRotationConstraint (Type type, const Vec &direction) |
Simply calls setRotationConstraintType() and setRotationConstraintDirection(). | |
void | setRotationConstraintType (Type type) |
Set the Type() of the rotationConstraintType(). | |
void | setRotationConstraintDirection (const Vec &direction) |
Defines the rotationConstraintDirection(). | |
Type | rotationConstraintType () const |
Returns the rotation constraint Type(). | |
Vec | rotationConstraintDirection () const |
Returns the axis direction used by the rotation constraint. | |
Public Member Functions inherited from Constraint | |
virtual | ~Constraint () |
Virtual destructor. | |
Additional Inherited Members | |
Public Types inherited from AxisPlaneConstraint | |
enum | Type { FREE, AXIS, PLANE, FORBIDDEN } |
Type lists the different types of translation and rotation constraints that are available. More... | |
Detailed Description
An AxisPlaneConstraint defined in the Frame local coordinate system.
The translationConstraintDirection() and rotationConstraintDirection() are expressed in the Frame local coordinate system (see Frame::referenceFrame()).
See the constrainedFrame example for an illustration.
Definition at line 279 of file constraint.h.
Constructor & Destructor Documentation
|
inlinevirtual |
Member Function Documentation
|
virtual |
When rotationConstraintType() is AxisPlaneConstraint::AXIS, constrain rotation
to be a rotation around an axis whose direction is defined in the Frame local coordinate system by rotationConstraintDirection().
Reimplemented from AxisPlaneConstraint.
Definition at line 144 of file constraint.cpp.
References Vec::projectOnAxis(), AxisPlaneConstraint::rotationConstraintDirection(), and AxisPlaneConstraint::rotationConstraintType().
Depending on translationConstraintType(), constrain translation
to be along an axis or limited to a plane defined in the Frame local coordinate system by translationConstraintDirection().
Reimplemented from AxisPlaneConstraint.
Definition at line 120 of file constraint.cpp.
References Vec::projectOnAxis(), Vec::projectOnPlane(), Quaternion::rotate(), Frame::rotation(), AxisPlaneConstraint::translationConstraintDirection(), and AxisPlaneConstraint::translationConstraintType().
The documentation for this class was generated from the following files:
- worldsim/3rdParts/qglviewer/constraint.h
- worldsim/3rdParts/qglviewer/constraint.cpp