Classes | Public Types | Public Member Functions | Public Attributes | Protected Member Functions

FBDeviceGlove Class Reference

Search for all occurrences

Detailed Description

Base Glove class.

Definition at line 850 of file fbcore.h.

#include <fbcore.h>

Inheritance diagram for FBDeviceGlove:
Inheritance graph
[legend]

List of all members.

Classes

class   GloveChannel
  Base GloveChannel. More...

Public Types

enum   kHandModelPart {
  kPartRoot, kPartPalm, kPartThumbA, kPartThumbB,
  kPartThumbC, kPartThumbD, kPartIndexA, kPartIndexB,
  kPartIndexC, kPartIndexD, kPartMiddleA, kPartMiddleB,
  kPartMiddleC, kPartMiddleD, kPartRingA, kPartRingB,
  kPartRingC, kPartRingD, kPartLittleA, kPartLittleB,
  kPartLittleC, kPartLittleD, kPartMax
}
 

Hand model parts.

More...

Public Member Functions

  FBDeviceGlove (char *pName, HIObject pObject=NULL)
  Constructor.
virtual void  RecordingInitAnimation (HFBAnimationNode pAnimationNode)
  When recording, initialize animation.
virtual void  RecordingDoneAnimation (HFBAnimationNode pAnimationNode)
  When recording, finish animation.

Public Attributes

FBArrayTemplate< GloveChannel * >  Channels
  Glove channels.
FBPropertyBool  LeftHand
  Read Write Property: Left or right hand glove.

Protected Member Functions

void  InitializeModelGeometry ()
  Initialize the hand model geometry.
void  VectorToModelPartAngle (kHandModelPart pPartIndex, FBVector3d &pVector)
  Bring the vector in parameter to a valid angle range of rotation for a given part of the hand model.
HFBAnimationNode  GetModelRotationNode (kHandModelPart pPartIndex)
  Obtain the rotation animation node of a part of the hand model.

Member Enumeration Documentation

Hand model parts.

Enumerator:
kPartRoot 
kPartPalm 
kPartThumbA 
kPartThumbB 
kPartThumbC 
kPartThumbD 
kPartIndexA 
kPartIndexB 
kPartIndexC 
kPartIndexD 
kPartMiddleA 
kPartMiddleB 
kPartMiddleC 
kPartMiddleD 
kPartRingA 
kPartRingB 
kPartRingC 
kPartRingD 
kPartLittleA 
kPartLittleB 
kPartLittleC 
kPartLittleD 
kPartMax 

Definition at line 855 of file fbcore.h.

                        {   // Parents :
        
        kPartRoot,          // No parent
        kPartPalm,          // kPartRoot

        // Thumb
        kPartThumbA,        // kPartPalm
        kPartThumbB,        // kPartThumbA
        kPartThumbC,        // kPartThumbB
        kPartThumbD,        // kPartThumbC

        // Index
        kPartIndexA,        // kPartPalm
        kPartIndexB,        // kPartIndexA
        kPartIndexC,        // kPartIndexB
        kPartIndexD,        // kPartIndexC

        // Middle
        kPartMiddleA,       // kPartPalm
        kPartMiddleB,       // kPartMiddleA
        kPartMiddleC,       // kPartMiddleB
        kPartMiddleD,       // kPartMiddleC

        // Ring
        kPartRingA,         // kPartPalm
        kPartRingB,         // kPartRingA
        kPartRingC,         // kPartRingB
        kPartRingD,         // kPartRingC

        // Little
        kPartLittleA,       // kPartPalm
        kPartLittleB,       // kPartLittleA
        kPartLittleC,       // kPartLittleB
        kPartLittleD,       // kPartLittleC

        kPartMax
    };

Constructor & Destructor Documentation

FBDeviceGlove ( char *  pName,
HIObject  pObject = NULL 
)

Constructor.

Parameters:
pName Name of device.
pObject For internal use only (default is NULL).

Member Function Documentation

virtual void RecordingInitAnimation ( HFBAnimationNode  pAnimationNode ) [virtual]

When recording, initialize animation.

Parameters:
pAnimationNode Animation node to read information from.

Reimplemented from FBDevice.

virtual void RecordingDoneAnimation ( HFBAnimationNode  pAnimationNode ) [virtual]

When recording, finish animation.

Parameters:
pAnimationNode Animation node to write information to.

Reimplemented from FBDevice.

void InitializeModelGeometry ( ) [protected]

Initialize the hand model geometry.

You should set the LeftHand property prior to using this method, so that the geometry gets initialized correctly. Also call this function if you changed the value of LeftHand property.

void VectorToModelPartAngle ( kHandModelPart  pPartIndex,
FBVector3d pVector 
) [protected]

Bring the vector in parameter to a valid angle range of rotation for a given part of the hand model.

The input vector should have relative values between 0.0 (min) and 1.0 (max). The output vector is an euler local rotation vector with limits applied. This vector can then be used to constraint the rotation of the hand part model.

Parameters:
pPartIndex The hand part.
pVector The vector to modify.
HFBAnimationNode GetModelRotationNode ( kHandModelPart  pPartIndex ) [protected]

Obtain the rotation animation node of a part of the hand model.

Parameters:
pPartIndex The hand part.
Returns:
The animation node of the given hand part.

Member Data Documentation

Glove channels.

Definition at line 967 of file fbcore.h.

Read Write Property: Left or right hand glove.

Definition at line 969 of file fbcore.h.


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

FBDeviceGlove FBDeviceGlove FBDeviceGlove FBDeviceGlove FBDeviceGlove FBDeviceGlove FBDeviceGlove FBDeviceGlove FBDeviceGlove FBDeviceGlove
FBDeviceGlove FBDeviceGlove FBDeviceGlove FBDeviceGlove FBDeviceGlove FBDeviceGlove FBDeviceGlove FBDeviceGlove FBDeviceGlove FBDeviceGlove