Documentation


X3DTK::X3D::EngineNode Class Reference

#include <EngineNode.h>

Inheritance diagram for X3DTK::X3D::EngineNode:

X3DTK::X3D::X4DNode X3DGroupingNode X3DBoundedObject X3DTK::X3D::AnimalEngineNode< AnimalEngine > X3DTK::X3D::AnimalEngineNode< AMassSpringEngine > X3DTK::X3D::AnimalEngineNode< AMorphingEngine > X3DTK::X3D::DeformableOctreeNode X3DTK::X3D::EngineGroupNode X3DTK::X3D::FrameNode X3DTK::X3D::MassSpringNode X3DTK::X3D::MorphingNode X3DTK::X3D::DeformableOctreeParticleSystemNode List of all members.

Public Types

enum  Behavior { KINEMATICS, DYNAMICS, COLLISION }
 kind of action performed by the engine. More...


Public Member Functions

 EngineNode ()
virtual ~EngineNode ()
virtual void declareOutputs (X3D_X3DNodeList &)
 append the nodes modified by the engine to the given list of nodes

virtual void draw ()
virtual void updateBoundingBox ()=0
virtual void init ()
virtual void postInit ()
virtual void close ()
virtual void postClose ()
virtual void keyPressedEvent (animal::KeyEvent *)
virtual void mouseDoubleClickEvent (animal::MouseEvent *)
 Deal with mouse double-click event.

virtual void mouseMoveEvent (animal::MouseEvent *)
 Deal with mouse move event.

virtual void mousePressEvent (animal::MouseEvent *)
 Deal with mouse press event.

virtual void mouseReleaseEvent (animal::MouseEvent *)
 Deal with mouse release event.

virtual animal::ConstrainedItempickPoint (float *, float *, float)
 Pick along a line.

virtual void reset ()
virtual void postReset ()
virtual void animate (float dt)
virtual void postAnimate (float dt)
Behavior behavior () const
 type of action performed by the node.


Public Attributes

bool m_animate
 the node is animated iff m_draw


Protected Attributes

EngineNodem_parentEngine
Behavior m_behavior

Member Enumeration Documentation

enum X3DTK::X3D::EngineNode::Behavior
 

kind of action performed by the engine.

Kinematics engines will be applied first, then the dynamics engines, then the collision engines. Default is KINEMATICS.

Enumeration values:
KINEMATICS 
DYNAMICS 
COLLISION 

Definition at line 43 of file EngineNode.h.


Constructor & Destructor Documentation

X3DTK::X3D::EngineNode::EngineNode  ) 
 

Definition at line 21 of file EngineNode.cpp.

X3DTK::X3D::EngineNode::~EngineNode  )  [virtual]
 

Definition at line 31 of file EngineNode.cpp.


Member Function Documentation

void X3DTK::X3D::EngineNode::animate float  dt  )  [virtual]
 

This method is called during the tob-down traversal of the node tree.

Reimplemented in X3DTK::X3D::AnimalEngineNode< AnimalEngine >, X3DTK::X3D::DeformableOctreeNode, X3DTK::X3D::DeformableOctreeParticleSystemNode, X3DTK::X3D::EngineGroupNode, X3DTK::X3D::AnimalEngineNode< AMassSpringEngine >, and X3DTK::X3D::AnimalEngineNode< AMorphingEngine >.

Definition at line 61 of file EngineNode.cpp.

EngineNode::Behavior X3DTK::X3D::EngineNode::behavior  )  const
 

type of action performed by the node.

Definition at line 74 of file EngineNode.cpp.

References m_behavior.

Referenced by X3DTK::X3D::EngineRemoverVisitor::enterNode(), and X3DTK::X3D::EngineLoaderVisitor::enterNode().

virtual void X3DTK::X3D::EngineNode::close  )  [inline, virtual]
 

Reimplemented in X3DTK::X3D::MorphingNode, and X3DTK::X3D::MassSpringNode.

Definition at line 64 of file EngineNode.h.

void X3DTK::X3D::EngineNode::declareOutputs X3D_X3DNodeList  )  [virtual]
 

append the nodes modified by the engine to the given list of nodes

Reimplemented in X3DTK::X3D::DeformableOctreeNode, X3DTK::X3D::MorphingNode, X3DTK::X3D::FrameNode, and X3DTK::X3D::MassSpringNode.

Definition at line 34 of file EngineNode.cpp.

References X3DTK::X3D::X3D_X3DNodeList.

Referenced by X3DTK::MainScene::buildGL().

virtual void X3DTK::X3D::EngineNode::draw  )  [inline, virtual]
 

Reimplemented from X3DTK::X3D::X4DNode.

Reimplemented in X3DTK::X3D::AnimalEngineNode< AnimalEngine >, X3DTK::X3D::DeformableOctreeNode, X3DTK::X3D::DeformableOctreeParticleSystemNode, X3DTK::X3D::EngineGroupNode, X3DTK::X3D::FrameNode, X3DTK::X3D::AnimalEngineNode< AMassSpringEngine >, and X3DTK::X3D::AnimalEngineNode< AMorphingEngine >.

Definition at line 52 of file EngineNode.h.

virtual void X3DTK::X3D::EngineNode::init  )  [inline, virtual]
 

Reimplemented from X3DTK::X3D::X4DNode.

Reimplemented in X3DTK::X3D::AnimalEngineNode< AnimalEngine >, X3DTK::X3D::EngineGroupNode, X3DTK::X3D::MorphingNode, X3DTK::X3D::FrameNode, X3DTK::X3D::MassSpringNode, X3DTK::X3D::AnimalEngineNode< AMassSpringEngine >, and X3DTK::X3D::AnimalEngineNode< AMorphingEngine >.

Definition at line 58 of file EngineNode.h.

virtual void X3DTK::X3D::EngineNode::keyPressedEvent animal::KeyEvent  )  [inline, virtual]
 

Reimplemented in X3DTK::X3D::AnimalEngineNode< AnimalEngine >, X3DTK::X3D::AnimalEngineNode< AMassSpringEngine >, and X3DTK::X3D::AnimalEngineNode< AMorphingEngine >.

Definition at line 70 of file EngineNode.h.

virtual void X3DTK::X3D::EngineNode::mouseDoubleClickEvent animal::MouseEvent  )  [inline, virtual]
 

Deal with mouse double-click event.

Reimplemented in X3DTK::X3D::AnimalEngineNode< AnimalEngine >, X3DTK::X3D::AnimalEngineNode< AMassSpringEngine >, and X3DTK::X3D::AnimalEngineNode< AMorphingEngine >.

Definition at line 74 of file EngineNode.h.

virtual void X3DTK::X3D::EngineNode::mouseMoveEvent animal::MouseEvent  )  [inline, virtual]
 

Deal with mouse move event.

Reimplemented in X3DTK::X3D::AnimalEngineNode< AnimalEngine >, X3DTK::X3D::AnimalEngineNode< AMassSpringEngine >, and X3DTK::X3D::AnimalEngineNode< AMorphingEngine >.

Definition at line 77 of file EngineNode.h.

virtual void X3DTK::X3D::EngineNode::mousePressEvent animal::MouseEvent  )  [inline, virtual]
 

Deal with mouse press event.

Reimplemented in X3DTK::X3D::AnimalEngineNode< AnimalEngine >, X3DTK::X3D::AnimalEngineNode< AMassSpringEngine >, and X3DTK::X3D::AnimalEngineNode< AMorphingEngine >.

Definition at line 80 of file EngineNode.h.

virtual void X3DTK::X3D::EngineNode::mouseReleaseEvent animal::MouseEvent  )  [inline, virtual]
 

Deal with mouse release event.

Reimplemented in X3DTK::X3D::AnimalEngineNode< AnimalEngine >, X3DTK::X3D::AnimalEngineNode< AMassSpringEngine >, and X3DTK::X3D::AnimalEngineNode< AMorphingEngine >.

Definition at line 83 of file EngineNode.h.

virtual animal::ConstrainedItem* X3DTK::X3D::EngineNode::pickPoint float *  ,
float *  ,
float 
[inline, virtual]
 

Pick along a line.

Reimplemented in X3DTK::X3D::AnimalEngineNode< AnimalEngine >, X3DTK::X3D::DeformableOctreeNode, X3DTK::X3D::DeformableOctreeParticleSystemNode, X3DTK::X3D::AnimalEngineNode< AMassSpringEngine >, and X3DTK::X3D::AnimalEngineNode< AMorphingEngine >.

Definition at line 86 of file EngineNode.h.

void X3DTK::X3D::EngineNode::postAnimate float  dt  )  [virtual]
 

This method is called during the bottom-up traversal of the node tree.

Reimplemented in X3DTK::X3D::AnimalEngineNode< AnimalEngine >, X3DTK::X3D::DeformableOctreeNode, X3DTK::X3D::DeformableOctreeParticleSystemNode, X3DTK::X3D::AnimalEngineNode< AMassSpringEngine >, and X3DTK::X3D::AnimalEngineNode< AMorphingEngine >.

Definition at line 68 of file EngineNode.cpp.

virtual void X3DTK::X3D::EngineNode::postClose  )  [inline, virtual]
 

Definition at line 67 of file EngineNode.h.

virtual void X3DTK::X3D::EngineNode::postInit  )  [inline, virtual]
 

Reimplemented from X3DTK::X3D::X4DNode.

Reimplemented in X3DTK::X3D::DeformableOctreeNode, and X3DTK::X3D::DeformableOctreeParticleSystemNode.

Definition at line 61 of file EngineNode.h.

void X3DTK::X3D::EngineNode::postReset  )  [virtual]
 

Reimplemented in X3DTK::X3D::AnimalEngineNode< AnimalEngine >, X3DTK::X3D::AnimalEngineNode< AMassSpringEngine >, and X3DTK::X3D::AnimalEngineNode< AMorphingEngine >.

Definition at line 54 of file EngineNode.cpp.

X3DTK::X3D::EngineNode::reset  )  [virtual]
 

This method is called during the tob-down traversal of the node tree.

Reimplemented in X3DTK::X3D::AnimalEngineNode< AnimalEngine >, X3DTK::X3D::EngineGroupNode, X3DTK::X3D::AnimalEngineNode< AMassSpringEngine >, and X3DTK::X3D::AnimalEngineNode< AMorphingEngine >.

Definition at line 47 of file EngineNode.cpp.

virtual void X3DTK::X3D::EngineNode::updateBoundingBox  )  [pure virtual]
 

Implemented in X3DTK::X3D::DeformableOctreeNode, X3DTK::X3D::EngineGroupNode, X3DTK::X3D::MorphingNode, X3DTK::X3D::FrameNode, and X3DTK::X3D::MassSpringNode.


Member Data Documentation

bool X3DTK::X3D::EngineNode::m_animate
 

the node is animated iff m_draw

Definition at line 96 of file EngineNode.h.

Referenced by X3DTK::Qt::createEngineNodeQWidget().

Behavior X3DTK::X3D::EngineNode::m_behavior [protected]
 

Definition at line 100 of file EngineNode.h.

Referenced by behavior().

EngineNode* X3DTK::X3D::EngineNode::m_parentEngine [protected]
 

Definition at line 99 of file EngineNode.h.


The documentation for this class was generated from the following files:
Generated on Thu Dec 23 13:52:35 2004 by doxygen 1.3.6