ConstantAngle Class Reference

One constraint equation. More...

#include <Constraint.h>

Inheritance diagram for ConstantAngle:
Constraint PIMPLHandle< Constraint, ConstraintImpl, true >

List of all members.

Public Member Functions

 ConstantAngle (MobilizedBody &baseBody_B, const UnitVec3 &defaultAxis_B, MobilizedBody &followerBody_F, const UnitVec3 &defaultAxis_F, Real angle=Pi/2)
ConstantAnglesetAxisDisplayLength (Real)
ConstantAnglesetAxisDisplayWidth (Real)
Real getAxisDisplayLength () const
Real getAxisDisplayWidth () const
ConstantAnglesetDefaultBaseAxis (const UnitVec3 &)
ConstantAnglesetDefaultFollowerAxis (const UnitVec3 &)
ConstantAnglesetDefaultAngle (Real)
MobilizedBodyIndex getBaseMobilizedBodyIndex () const
MobilizedBodyIndex getFollowerMobilizedBodyIndex () const
const UnitVec3getDefaultBaseAxis () const
const UnitVec3getDefaultFollowerAxis () const
Real getDefaultAngle () const
const UnitVec3getBaseAxis (const State &) const
const UnitVec3getFollowerAxis (const State &) const
Real getAngle (const State &) const
Real getPositionError (const State &) const
Real getVelocityError (const State &) const
Real getAccelerationError (const State &) const
Real getMultiplier (const State &) const
Real getTorqueOnFollowerBody (const State &) const
 SimTK_INSERT_DERIVED_HANDLE_DECLARATIONS (ConstantAngle, ConstantAngleImpl, Constraint)

Detailed Description

One constraint equation.

This constraint enforces that a vector fixed to one body (the "base body") must maintain a fixed angle with respect to a vector fixed on the other body (the "follower body"). That is, we have a single constraint equation that prohibits rotation about the mutual perpendicular to the two vectors.

This constraint is enforced by an internal scalar torque applied equal and opposite on each body, about the mutual perpendicular to the two vectors.

The assembly condition is the same as the run-time constraint: the bodies must be rotated until the vectors have the right angle between them.


Constructor & Destructor Documentation

ConstantAngle ( MobilizedBody baseBody_B,
const UnitVec3 defaultAxis_B,
MobilizedBody followerBody_F,
const UnitVec3 defaultAxis_F,
Real  angle = Pi/2 
)

Member Function Documentation

Real getAccelerationError ( const State  )  const
Real getAngle ( const State  )  const
Real getAxisDisplayLength (  )  const
Real getAxisDisplayWidth (  )  const
const UnitVec3& getBaseAxis ( const State  )  const
MobilizedBodyIndex getBaseMobilizedBodyIndex (  )  const
Real getDefaultAngle (  )  const
const UnitVec3& getDefaultBaseAxis (  )  const
const UnitVec3& getDefaultFollowerAxis (  )  const
const UnitVec3& getFollowerAxis ( const State  )  const
MobilizedBodyIndex getFollowerMobilizedBodyIndex (  )  const
Real getMultiplier ( const State  )  const
Real getPositionError ( const State  )  const
Real getTorqueOnFollowerBody ( const State  )  const
Real getVelocityError ( const State  )  const
ConstantAngle& setAxisDisplayLength ( Real   ) 
ConstantAngle& setAxisDisplayWidth ( Real   ) 
ConstantAngle& setDefaultAngle ( Real   ) 
ConstantAngle& setDefaultBaseAxis ( const UnitVec3  ) 
ConstantAngle& setDefaultFollowerAxis ( const UnitVec3  ) 
SimTK_INSERT_DERIVED_HANDLE_DECLARATIONS ( ConstantAngle  ,
ConstantAngleImpl  ,
Constraint   
)

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

Generated on Wed Dec 30 11:05:13 2009 for SimTKcore by  doxygen 1.6.1