Documentation


X3DTK::X3D::FrameNode Class Reference

#include <frameNode.h>

Inheritance diagram for X3DTK::X3D::FrameNode:

X3DTK::X3D::EngineNode animal::Engine Frame X3DTK::X3D::X4DNode X3DGroupingNode X3DBoundedObject List of all members.

Detailed Description

This class represents a frame node which allows to control the frame of a X3DTK::X3D::Transform.

This x3d node has to have only one X3DTK::X3D::Transform parent and to have no child in the X3DTK::MainScene::x3dscene. This class implements the animal::Engine::draw() and animal::Engine::getBoundingBox(). Inherit from this class if you want to move the asssociated X3DTK::X3D::Transform. Thus implement animal::Engine::move() and animal::Engine::init()

Examples:

qtapp.cpp.

Definition at line 28 of file frameNode.h.

Public Member Functions

 FrameNode ()
 Constructor.

 ~FrameNode ()
 Destructor.

void updateFrame ()
 Update the qglviewer::frame parent from the parent.

void updateTransform ()
 Update the X3DTK::X3D::Transform parent from the qglviewer::frame parent.

void updateFrameNode ()
 Update the X3DTK::X3D::FrameNode from its attributes changed by X3DTK::Qt::X3DTransformQt.

void declareOutputs (X3D_X3DNodeList &list)
Virtual methods from animal::Engine
virtual void init ()
 Init the engine when loading the x3d graph.

virtual void draw ()
 Draw the object.

virtual void updateBoundingBox ()
 Update the bounding box of the object.


Public Attributes

SFVec3f translation
SFRotation rotation
SFVec3f scale
SFRotation scaleOrientation
SFVec3f center
float swollen
 Swollen the FrameNode::size.


Protected Member Functions

virtual void getBoundingBox (float &minX, float &minY, float &minZ, float &maxX, float &maxY, float &maxZ)
 Compute the bounding box of the object.


Protected Attributes

Transform * x3dTransformNode
 The associated X3DTK::X3D::Transform.


Private Member Functions

void drawCone (float radius, float height, int nbSub)
void drawCylinder (float radius, float length, int nbSub)

Private Attributes

float size
 Fit the drawing bounding box and the axis of this FrameNode to all the bounded chilren of FrameNode::x3dTransform, save this FrameNode.


Constructor & Destructor Documentation

X3DTK::X3D::FrameNode::FrameNode  ) 
 

Constructor.

Definition at line 11 of file frameNode.cpp.

X3DTK::X3D::FrameNode::~FrameNode  ) 
 

Destructor.

Definition at line 24 of file frameNode.cpp.


Member Function Documentation

void X3DTK::X3D::FrameNode::declareOutputs X3D_X3DNodeList list  )  [virtual]
 

Reimplemented from X3DTK::X3D::EngineNode.

Definition at line 344 of file frameNode.cpp.

References X3DTK::X3D::X3D_X3DNodeList, and x3dTransformNode.

void X3DTK::X3D::FrameNode::draw  )  [virtual]
 

Draw the object.

Reimplemented from animal::Engine.

Definition at line 54 of file frameNode.cpp.

void X3DTK::X3D::FrameNode::drawCone float  radius,
float  height,
int  nbSub
[private]
 

Definition at line 272 of file frameNode.cpp.

void X3DTK::X3D::FrameNode::drawCylinder float  radius,
float  length,
int  nbSub
[private]
 

Definition at line 310 of file frameNode.cpp.

void X3DTK::X3D::FrameNode::getBoundingBox float &  minX,
float &  minY,
float &  minZ,
float &  maxX,
float &  maxY,
float &  maxZ
[protected, virtual]
 

Compute the bounding box of the object.

Reimplemented from animal::Engine.

Definition at line 164 of file frameNode.cpp.

References swollen, and x3dTransformNode.

Referenced by updateBoundingBox().

void X3DTK::X3D::FrameNode::init  )  [virtual]
 

Init the engine when loading the x3d graph.

Reimplemented from animal::Engine.

Definition at line 29 of file frameNode.cpp.

References center, animal::Engine::init(), rotation, scale, scaleOrientation, translation, updateFrame(), and x3dTransformNode.

void X3DTK::X3D::FrameNode::updateBoundingBox  )  [virtual]
 

Update the bounding box of the object.

Implements X3DTK::X3D::EngineNode.

Definition at line 155 of file frameNode.cpp.

References getBoundingBox().

void X3DTK::X3D::FrameNode::updateFrame  ) 
 

Update the qglviewer::frame parent from the parent.

Definition at line 231 of file frameNode.cpp.

References x3dTransformNode.

Referenced by init(), and updateFrameNode().

void X3DTK::X3D::FrameNode::updateFrameNode  ) 
 

Update the X3DTK::X3D::FrameNode from its attributes changed by X3DTK::Qt::X3DTransformQt.

Definition at line 259 of file frameNode.cpp.

References center, rotation, scale, scaleOrientation, translation, updateFrame(), and x3dTransformNode.

Referenced by X3DTK::Qt::X3DTransformQt::update().

void X3DTK::X3D::FrameNode::updateTransform  ) 
 

Update the X3DTK::X3D::Transform parent from the qglviewer::frame parent.

Definition at line 244 of file frameNode.cpp.

References x3dTransformNode.


Member Data Documentation

SFVec3f X3DTK::X3D::FrameNode::center
 

Definition at line 90 of file frameNode.h.

Referenced by X3DTK::Qt::createTransformQWidget(), init(), and updateFrameNode().

SFRotation X3DTK::X3D::FrameNode::rotation
 

Definition at line 87 of file frameNode.h.

Referenced by X3DTK::Qt::createTransformQWidget(), init(), and updateFrameNode().

SFVec3f X3DTK::X3D::FrameNode::scale
 

Definition at line 88 of file frameNode.h.

Referenced by X3DTK::Qt::createTransformQWidget(), init(), and updateFrameNode().

SFRotation X3DTK::X3D::FrameNode::scaleOrientation
 

Definition at line 89 of file frameNode.h.

Referenced by X3DTK::Qt::createTransformQWidget(), init(), and updateFrameNode().

float X3DTK::X3D::FrameNode::size [private]
 

Fit the drawing bounding box and the axis of this FrameNode to all the bounded chilren of FrameNode::x3dTransform, save this FrameNode.

Definition at line 102 of file frameNode.h.

float X3DTK::X3D::FrameNode::swollen
 

Swollen the FrameNode::size.

Definition at line 92 of file frameNode.h.

Referenced by X3DTK::Qt::createFrameQWidget(), and getBoundingBox().

SFVec3f X3DTK::X3D::FrameNode::translation
 

Definition at line 86 of file frameNode.h.

Referenced by X3DTK::Qt::createTransformQWidget(), init(), and updateFrameNode().

Transform* X3DTK::X3D::FrameNode::x3dTransformNode [protected]
 

The associated X3DTK::X3D::Transform.

Definition at line 96 of file frameNode.h.

Referenced by declareOutputs(), getBoundingBox(), init(), updateFrame(), updateFrameNode(), and updateTransform().


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