taoNode Class Reference
[Dynamics]

node class for articulated body dynamics

This implements taoDNode for articulated body dynamics. More...

#include <taoNode.h>

Inheritance diagram for taoNode:

Inheritance graph
[legend]
Collaboration diagram for taoNode:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 taoNode ()
 taoNode (taoDNode *parent, deFrame *home)
virtual ~taoNode ()
virtual void sync (deFrame *local)
virtual taoJointgetJointList ()
virtual deVector6velocity ()
virtual deVector6acceleration ()
virtual void getFrameGraphics (deFrame *Tog)
 global frame for graphics display
virtual deFrameframeHome ()
virtual deFrameframeLocal ()
virtual deFrameframeGlobal ()
 global frame for the dynamics computation
virtual deFloatmass ()
virtual deVector3center ()
virtual deMatrix3inertia ()
virtual deVector6force ()
virtual void zeroForce ()
virtual void addForce (const deVector6 *f)
virtual void updateFrame ()
virtual void integrate (deFloat dt)
virtual void setDParent (taoDNode *n)
virtual taoDNodegetDParent ()
virtual void setDChild (taoDNode *n)
virtual taoDNodegetDChild ()
virtual void setDSibling (taoDNode *n)
virtual taoDNodegetDSibling ()
virtual void addJoint (taoJoint *joint)
virtual void addABNode ()
virtual void unlink ()
virtual void link (taoDNode *parent, deFrame *home)
virtual void deleteJointABNode ()
virtual void linearVelocity (deVector3 *Vie, const deVector3 *Pie)
virtual void linearAcceleration (deVector3 *Aie, const deVector3 *Pie)
virtual void impulse (const deVector3 *Pie, const deVector3 *Yie)
 computes new velocity given impulse
virtual void impulseDist (const deVector3 *Pie, const deVector3 *Yie)
 computes new position given pseudo impulse
virtual void force (const deVector3 *Pie, const deVector3 *Fie)
 computes new force given force

Detailed Description

node class for articulated body dynamics

This implements taoDNode for articulated body dynamics.

See also:
taoCNode, taoDNode, taoDynamics


Constructor & Destructor Documentation

taoNode::taoNode  ) 
 

taoNode::taoNode taoDNode parent,
deFrame home
 

taoNode::~taoNode  )  [virtual]
 


Member Function Documentation

deVector6 * taoNode::acceleration  )  [virtual]
 

Remarks:
expressed in local frame

Implements taoDNode.

void taoNode::addABNode  )  [virtual]
 

virtual void taoNode::addForce const deVector6 f  )  [inline, virtual]
 

Remarks:
expressed in local frame

Implements taoDNode.

void taoNode::addJoint taoJoint joint  )  [virtual]
 

virtual deVector3* taoNode::center  )  [inline, virtual]
 

Returns:
center of gravity in local frame

Implements taoDNode.

void taoNode::deleteJointABNode  )  [virtual]
 

void taoNode::force const deVector3 Pie,
const deVector3 Fie
[virtual]
 

computes new force given force

This method replaces the accumulated force with the given force.

Remarks:
replaces the internal force with a new force
Precondition:
A, F
Postcondition:
F
  • Pie - contact point expressed in local frame.
  • Fie - force at the contact point expressed in local frame.
    Note:
    this method replaces the internal force in the node.

Reimplemented from taoCNode.

virtual deVector6* taoNode::force  )  [inline, virtual]
 

Remarks:
expressed in local frame

Implements taoDNode.

virtual deFrame* taoNode::frameGlobal  )  [inline, virtual]
 

global frame for the dynamics computation

Note:
for taoNodeRB, this is the center of mass frame.

for taoNode, this is the same frame getFrameGraphics()

Implements taoCNode.

virtual deFrame* taoNode::frameHome  )  [inline, virtual]
 

Returns:
home frame

Implements taoDNode.

virtual deFrame* taoNode::frameLocal  )  [inline, virtual]
 

Returns:
local frame

Implements taoDNode.

virtual taoDNode* taoNode::getDChild  )  [inline, virtual]
 

Returns:
first child node

Implements taoDNode.

virtual taoDNode* taoNode::getDParent  )  [inline, virtual]
 

Returns:
parent node

Implements taoDNode.

virtual taoDNode* taoNode::getDSibling  )  [inline, virtual]
 

Returns:
next sibling node

Implements taoDNode.

virtual void taoNode::getFrameGraphics deFrame Tog  )  [inline, virtual]
 

global frame for graphics display

Note:
for taoNodeRB, this is the graphics origin frame without the offset.

for taoNodeRB, setFrameGraphics() should be used to set this frame.

for taoNode, this is the same frame as frameGlobal()

Return values:
Fg is filled with the frame info for graphics sync.

Implements taoCNode.

virtual taoJoint* taoNode::getJointList  )  [inline, virtual]
 

Implements taoDNode.

void taoNode::impulse const deVector3 Pie,
const deVector3 Yie
[virtual]
 

computes new velocity given impulse

This method changes velocity instantaneously by applying the given impulse.

Remarks:
do not use ddQ after this call
Precondition:
T, Q, V, dQ, Y
Postcondition:
V, dQ
  • Pie - contact point expressed in local frame.
  • Yie - impulse at the contact point expressed in local frame.

Reimplemented from taoCNode.

void taoNode::impulseDist const deVector3 Pie,
const deVector3 Yie
[virtual]
 

computes new position given pseudo impulse

This method changes position and orientation instantaneously by applying the given pseudo impulse.

  • Pie - contact point expressed in local frame.
  • Yie - pseudo impulse at the contact point expressed in local frame.

Reimplemented from taoCNode.

virtual deMatrix3* taoNode::inertia  )  [inline, virtual]
 

Returns:
inertia tensor at the origin of local frame

Implements taoDNode.

void taoNode::integrate deFloat  dt  )  [virtual]
 

Implements taoDNode.

void taoNode::linearAcceleration deVector3 Aie,
const deVector3 Pie
[virtual]
 

Returns:
Aie
Remarks:
expressed in local frame

Reimplemented from taoCNode.

void taoNode::linearVelocity deVector3 Vie,
const deVector3 Pie
[virtual]
 

Returns:
Vie
Remarks:
expressed in local frame

Reimplemented from taoCNode.

void taoNode::link taoDNode parent,
deFrame home
[virtual]
 

virtual deFloat* taoNode::mass  )  [inline, virtual]
 

Returns:
global frame

mass

Implements taoDNode.

virtual void taoNode::setDChild taoDNode n  )  [inline, virtual]
 

Implements taoDNode.

virtual void taoNode::setDParent taoDNode n  )  [inline, virtual]
 

virtual void taoNode::setDSibling taoDNode n  )  [inline, virtual]
 

void taoNode::sync deFrame local  )  [virtual]
 

Implements taoDNode.

void taoNode::unlink  )  [virtual]
 

void taoNode::updateFrame  )  [virtual]
 

Implements taoDNode.

deVector6 * taoNode::velocity  )  [virtual]
 

Remarks:
expressed in local frame

Implements taoDNode.

virtual void taoNode::zeroForce  )  [inline, virtual]
 

Implements taoDNode.


The documentation for this class was generated from the following files:
Generated on Sun Apr 9 22:12:46 2006 for TAO by  doxygen 1.4.6-NO