#include <fbcore.h>

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. |
|
| enum kHandModelPart |
Hand model parts.
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
};
| FBDeviceGlove | ( | char * | pName, |
| HIObject | pObject =
NULL |
||
| ) |
Constructor.
| pName | Name of device. |
| pObject | For internal use only (default is NULL). |
| virtual void RecordingInitAnimation | ( | HFBAnimationNode | pAnimationNode | ) | [virtual] |
When recording, initialize animation.
| pAnimationNode | Animation node to read information from. |
Reimplemented from FBDevice.
| virtual void RecordingDoneAnimation | ( | HFBAnimationNode | pAnimationNode | ) | [virtual] |
When recording, finish animation.
| 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.
| 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.
| pPartIndex | The hand part. |
Read Write Property: Left or right hand glove.