GLBHand Class Reference
[Module to draw a BarrettHand in OpenGL]

Class for drawing an OpenGL BarrettHand. More...

#include <glbhand.h>

Collaboration diagram for GLBHand:

Collaboration graph
[legend]

Public Member Functions

void draw (GLenum mode=GL_RENDER)
 Draws the OpenGL modell.
 GLBHand ()
 Constructor.
void initGL ()
 Initializes the OpenGL part of the hand modell.
void initModell ()
 Initializes the modell for usage.
void initTriMesh ()
 Initializes the Mesh (which is needed for the collision part).
void setForce (const int &finger, const double &force)
 Sets force that should be displayed at finger.
void setJoints (double *jointValues)
 Sets the joint values for all values of the BarrettHand.
void setSpread (const float &spread)
 Sets joint Angle for Spread joint.
 ~GLBHand ()
 Destructor.

Data Fields

GLBarrettBase Base
 Obejct which draws Barrett Base.
GLBarrettFinger F1
 Obejct which draws finger F1.
GLBarrettFinger F2
 Obejct which draws finger F2.
GLBarrettFinger F3
 Obejct which draws finger F3.

Protected Member Functions

void makeBaseList ()
 Generates display list for base.

Protected Attributes

GLint BaseList
float SpreadAngle
 Angle for Spread Joint.

Detailed Description

Class for drawing an OpenGL BarrettHand.

This class main aim is to provide an simple interface for drawing a BarrettHand as OpenGL modell.


Constructor & Destructor Documentation

GLBHand::GLBHand (  ) 

Constructor.

You still have to call initModell() to use the draw method.

GLBHand::~GLBHand (  ) 

Destructor.

I.e deletes OpenGL display lists created with initModell() .


Member Function Documentation

void GLBHand::draw ( GLenum  mode = GL_RENDER  ) 

Draws the OpenGL modell.

This method sould be used by OpenGL::display() or paintGL() to draw a modell of a BarrettHand.

void GLBHand::initGL (  ) 

Initializes the OpenGL part of the hand modell.

I.e gerates the display lists

Remarks:
initTriMesh() has to be called befor!!

void GLBHand::initModell (  ) 

Initializes the modell for usage.

I.e. creates the OpenGL display lists

void GLBHand::initTriMesh (  ) 

Initializes the Mesh (which is needed for the collision part).

void GLBHand::makeBaseList (  )  [protected]

Generates display list for base.

void GLBHand::setForce ( const int &  finger,
const double &  force 
) [inline]

Sets force that should be displayed at finger.

With the Arrow indicationg the force on the fingertip is scaled by the value.

Parameters:
finger Index of finger to which the force is applied (1 to 3)
force Force value, applied on fingertip

Here is the call graph for this function:

void GLBHand::setJoints ( double *  jointValues  )  [inline]

Sets the joint values for all values of the BarrettHand.

All joint values are set the one in the jointValues oder is:
F1J1 ,F1J2, F2J1, F2J2, F3J1, F3J2, Spread, -Spread.

Parameters:
jointValues Joint Values of Hand. Unit DEG

Here is the call graph for this function:

void GLBHand::setSpread ( const float &  spread  ) 

Sets joint Angle for Spread joint.

The is the value by which F1 and -F2 are rotated. Unit : DEG


Field Documentation

GLBarrettBase GLBHand::Base

Obejct which draws Barrett Base.

This object is protected because you normally do not want to modify it.

GLint GLBHand::BaseList [protected]

Display list for BarrettHand base.

GLBarrettFinger GLBHand::F1

Obejct which draws finger F1.

This object is public because it makes it easier to set the joint angles.

GLBarrettFinger GLBHand::F2

Obejct which draws finger F2.

This object is public because it makes it easier to set the joint angles.

GLBarrettFinger GLBHand::F3

Obejct which draws finger F3.

This object is public because it makes it easier to set the joint angles.

float GLBHand::SpreadAngle [protected]

Angle for Spread Joint.

Unit : DEG


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

tams Tim Baier bhandlib v0.25
Generated Wed Aug 16 15:01:23 2006 by doxygen 1.4.7