palRevoluteLink Class Reference

#include <palLinks.h>

Inheritance diagram for palRevoluteLink:

palLink

List of all members.

Public Member Functions

virtual void Init (palBodyBase *parent, palBodyBase *child, Float x, Float y, Float z, Float axis_x, Float axis_y, Float axis_z)
virtual void SetLimits (Float lower_limit_rad, Float upper_limit_rad)
virtual void GetPosition (palVector3 &pos)
virtual Float GetAngle ()
virtual Float GetAngularVelocity ()
virtual void ApplyTorque (Float torque)
virtual void ApplyAngularImpulse (Float torque)


Detailed Description

A Revolute Link A revolute link (also known as a hinge) provides one degree of rotational freedom for the constraint. The link connects two bodies, at a given position, and rotates around a specified axis.
hinge.jpg
The diagram illustrates two geometries central positions, and the central pivot point of the revolute link. The arrow in the diagram illustrates the axis about which the link can rotate.

Member Function Documentation

void palRevoluteLink::ApplyAngularImpulse ( Float  torque  )  [virtual]

Applies a torque to act on the link

void palRevoluteLink::ApplyTorque ( Float  torque  )  [virtual]

Applies a torque to act on the link

Float palRevoluteLink::GetAngle (  )  [virtual]

Gets the current angle (in radians) between the two connected bodies.

Returns:
Angle (radians) between the two connected bodies.

Float palRevoluteLink::GetAngularVelocity (  )  [virtual]

Gets the current angular velocity

void palRevoluteLink::GetPosition ( palVector3 &  pos  )  [virtual]

Retrieves the position of the link as a 3 dimensional vector.

Parameters:
pos A three dimensional vector representing the links position

void palRevoluteLink::Init ( palBodyBase parent,
palBodyBase child,
Float  x,
Float  y,
Float  z,
Float  axis_x,
Float  axis_y,
Float  axis_z 
) [virtual]

Initializes the revolute link.

Parameters:
parent The "parent" body to connect
child The "child" body to connect
x The x position of the link's center
y The y position of the link's center
z The z position of the link's center
axis_x The vector about which the link rotates. (x)
axis_y The vector about which the link rotates. (y)
axis_z The vector about which the link rotates. (z)

void palRevoluteLink::SetLimits ( Float  lower_limit_rad,
Float  upper_limit_rad 
) [virtual]

Constrains the movement of the revolute link. This limits the ammount of movement of the link.

Parameters:
lower_limit_rad The lower angular limit of movement. (raidans)
upper_limit_rad The upper angular limit of movement. (raidans)


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

Generated on Mon Aug 31 13:58:02 2009 for pal by  doxygen 1.5.7.1