From 0ea5fc66924303d1bf73ba283a383e2aadee02f2 Mon Sep 17 00:00:00 2001 From: neodarz Date: Sat, 11 Aug 2018 20:21:34 +0200 Subject: Initial commit --- docs/doxygen/nel/classNL3D_1_1CBone.html | 804 +++++++++++++++++++++++++++++++ 1 file changed, 804 insertions(+) create mode 100644 docs/doxygen/nel/classNL3D_1_1CBone.html (limited to 'docs/doxygen/nel/classNL3D_1_1CBone.html') diff --git a/docs/doxygen/nel/classNL3D_1_1CBone.html b/docs/doxygen/nel/classNL3D_1_1CBone.html new file mode 100644 index 00000000..f1c89061 --- /dev/null +++ b/docs/doxygen/nel/classNL3D_1_1CBone.html @@ -0,0 +1,804 @@ + + + + nevrax.org : docs + + + + + + + + + + + + + + +
# Home   # nevrax.com   
+ + + + +
Nevrax
+ + + + + + + + + + +
+ + +
+ Nevrax.org
+ + + + + + + +
#News
#Mailing-list
#Documentation
#CVS
#Bugs
#License
+
+ + +
+ + +
+Docs + +
+  + + + + + +
Documentation 
+ +
+Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Search  
+

NL3D::CBone Class Reference

This is a bone, for skeleton animation, with information for result WorldMatrix. +More... +

+#include <bone.h> +

+

Inheritance diagram for NL3D::CBone: +

+ +NL3D::ITransformable +NL3D::IAnimatable + +List of all members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Public Methods

 CBone (CBoneBase *boneBase)
 Constructor. More...

const std::string & getBoneName () const
 retrieve the boneName from BoneBase. More...

sint32 getFatherId () const
 retrieve the fatherId from BoneBase. More...

void compute (CBone *parent, const CMatrix &rootMatrix)
 Compute the LocalSkeletonMatrix, the WorldMatrix, and the BoneSkinMatrix (for skinning). More...

void interpolateBoneSkinMatrix (const CMatrix &otherMatrix, float interp)
 Interpolate the current result of _BoneSkinMatrix fith otherMatrix. More...

const CMatrix & getLocalSkeletonMatrix () const
 retrieve the matrix local to the skeleton, computed in compute(). More...

const CMatrix & getWorldMatrix () const
 retrieve the WorldMatrix computed in compute(). More...

const CMatrix & getBoneSkinMatrix () const
 retrieve the BoneSkinMatrix computed in compute(). More...

void lodEnableChannels (CChannelMixer *chanMixer, bool enable)
 enable the channels (lodEnable) associated to this bone in the channelMixer. More...

Herited from ITransformable
virtual ITrackgetDefaultTrack (uint valueId)
 retrive the default trak from skeleton shape. More...

virtual void registerToChannelMixer (CChannelMixer *chanMixer, const std::string &prefix)
 register the ITransformable channels as detailled channels. More...


Private Attributes

NLMISC::CRefPtr< CBoneBase_BoneBase
CMatrix _LocalSkeletonMatrix
CMatrix _WorldMatrix
CMatrix _BoneSkinMatrix
sint _PosChannelId
sint _RotEulerChannelId
sint _RotQuatChannelId
sint _ScaleChannelId
sint _PivotChannelId
+

Detailed Description

+This is a bone, for skeleton animation, with information for result WorldMatrix. +

+

+Author:
+Lionel Berenguier , Nevrax France
+Date:
+2001
+

+ +

+Definition at line 89 of file bone.h.


Constructor & Destructor Documentation

+

+ + + + +
+ + + + + + + + + + +
NL3D::CBone::CBone CBoneBase  boneBase
+
+ + + + + +
+   + + +

+Constructor. +

+build a bone from a CBoneBase*. By defautl, a bone is in RotQuat transform mode. This ctor:

    +
  • store a RefPtr on the bonebase (for getDefaultTracks() method). the refptr is just for nlassert.
  • copy the bonebase default track value into Animated Values Pos/Rot etc....
+ +

+Definition at line 91 of file bone.cpp. +

+References _BoneBase, _PivotChannelId, _PosChannelId, _RotEulerChannelId, _RotQuatChannelId, _ScaleChannelId, NL3D::ITransformable::AnimValueLast, NL3D::CAnimatedValueQuat, NL3D::CAnimatedValueVector, and nlassert.

+


Member Function Documentation

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
void NL3D::CBone::compute CBone *   parent,
const CMatrix &   rootMatrix
+
+ + + + + +
+   + + +

+Compute the LocalSkeletonMatrix, the WorldMatrix, and the BoneSkinMatrix (for skinning). +

+NB: the result localSkeletonMatrix depends on BoneBase::UnheritScale.
+ NB: the result worldMatrix depends on BoneBase::UnheritScale.
+ NB: the result boneSkinMatrix depends on BoneBase::InvBindPos.
+

+Parameters:
+ + + +
parent  +the parent of this bone (maybe NULL if root). his WorldMatrix is used, so it should be computed before.
rootMatrix  +is used as father worldmatrix if parent==NULL. Usefull for computing WorldMatrix.
+
+

+Definition at line 150 of file bone.cpp. +

+References _BoneBase, _BoneSkinMatrix, _LocalSkeletonMatrix, _WorldMatrix, NL3D::ITransformable::getMatrix, NL3D::ITransformable::getPos, NL3D::ITransformable::getTransformMode, and nlassert.

+

+ + + + +
+ + + + + + + + + +
const std::string& NL3D::CBone::getBoneName   const [inline]
+
+ + + + + +
+   + + +

+retrieve the boneName from BoneBase. +

+ +

+Definition at line 103 of file bone.h. +

+References _BoneBase, and nlassert.

+

+ + + + +
+ + + + + + + + + +
const CMatrix& NL3D::CBone::getBoneSkinMatrix   const [inline]
+
+ + + + + +
+   + + +

+retrieve the BoneSkinMatrix computed in compute(). +

+ +

+Definition at line 140 of file bone.h. +

+References _BoneSkinMatrix.

+

+ + + + +
+ + + + + + + + + + +
ITrack * NL3D::CBone::getDefaultTrack uint   valueId [virtual]
+
+ + + + + +
+   + + +

+retrive the default trak from skeleton shape. +

+ +

+Implements NL3D::ITransformable. +

+Definition at line 114 of file bone.cpp. +

+References _BoneBase, nlassert, nlstop, NL3D::ITransformable::PivotValue, NL3D::ITransformable::PosValue, NL3D::ITransformable::RotEulerValue, NL3D::ITransformable::RotQuatValue, and NL3D::ITransformable::ScaleValue.

+

+ + + + +
+ + + + + + + + + +
sint32 NL3D::CBone::getFatherId   const [inline]
+
+ + + + + +
+   + + +

+retrieve the fatherId from BoneBase. +

+ +

+Definition at line 105 of file bone.h. +

+References _BoneBase, and nlassert.

+

+ + + + +
+ + + + + + + + + +
const CMatrix& NL3D::CBone::getLocalSkeletonMatrix   const [inline]
+
+ + + + + +
+   + + +

+retrieve the matrix local to the skeleton, computed in compute(). +

+ +

+Definition at line 134 of file bone.h. +

+References _LocalSkeletonMatrix.

+

+ + + + +
+ + + + + + + + + +
const CMatrix& NL3D::CBone::getWorldMatrix   const [inline]
+
+ + + + + +
+   + + +

+retrieve the WorldMatrix computed in compute(). +

+ +

+Definition at line 137 of file bone.h. +

+References _WorldMatrix.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
void NL3D::CBone::interpolateBoneSkinMatrix const CMatrix &   otherMatrix,
float   interp
+
+ + + + + +
+   + + +

+Interpolate the current result of _BoneSkinMatrix fith otherMatrix. +

+when interp==0.f, _BoneSkinMatrix= otherMatrix. NB: the interpolation is made on per-vector basis => bad matrix interpolation. +

+Definition at line 218 of file bone.cpp. +

+References _BoneSkinMatrix.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
void NL3D::CBone::lodEnableChannels CChannelMixer  chanMixer,
bool   enable
+
+ + + + + +
+   + + +

+enable the channels (lodEnable) associated to this bone in the channelMixer. +

+ +

+Definition at line 244 of file bone.cpp. +

+References _PivotChannelId, _PosChannelId, _RotEulerChannelId, _RotQuatChannelId, _ScaleChannelId, and nlassert.

+

+ + + + +
+ + + + + + + + + + + + + + + + + + + +
void NL3D::CBone::registerToChannelMixer CChannelMixer  chanMixer,
const std::string &   prefix
[virtual]
+
+ + + + + +
+   + + +

+register the ITransformable channels as detailled channels. +

+ +

+Implements NL3D::ITransformable. +

+Definition at line 136 of file bone.cpp. +

+References _PivotChannelId, _PosChannelId, _RotEulerChannelId, _RotQuatChannelId, _ScaleChannelId, NL3D::IAnimatable::addValue, NL3D::ITransformable::OwnerBit, NL3D::ITransformable::PivotValue, NL3D::ITransformable::PosValue, NL3D::ITransformable::RotEulerValue, NL3D::ITransformable::RotQuatValue, and NL3D::ITransformable::ScaleValue.

+


Member Data Documentation

+

+ + + + +
+ + +
NLMISC::CRefPtr<CBoneBase> NL3D::CBone::_BoneBase [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 150 of file bone.h. +

+Referenced by CBone, compute, getBoneName, getDefaultTrack, and getFatherId.

+

+ + + + +
+ + +
CMatrix NL3D::CBone::_BoneSkinMatrix [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 157 of file bone.h. +

+Referenced by compute, getBoneSkinMatrix, and interpolateBoneSkinMatrix.

+

+ + + + +
+ + +
CMatrix NL3D::CBone::_LocalSkeletonMatrix [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 153 of file bone.h. +

+Referenced by compute, and getLocalSkeletonMatrix.

+

+ + + + +
+ + +
sint NL3D::CBone::_PivotChannelId [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 164 of file bone.h. +

+Referenced by CBone, lodEnableChannels, and registerToChannelMixer.

+

+ + + + +
+ + +
sint NL3D::CBone::_PosChannelId [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 160 of file bone.h. +

+Referenced by CBone, lodEnableChannels, and registerToChannelMixer.

+

+ + + + +
+ + +
sint NL3D::CBone::_RotEulerChannelId [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 161 of file bone.h. +

+Referenced by CBone, lodEnableChannels, and registerToChannelMixer.

+

+ + + + +
+ + +
sint NL3D::CBone::_RotQuatChannelId [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 162 of file bone.h. +

+Referenced by CBone, lodEnableChannels, and registerToChannelMixer.

+

+ + + + +
+ + +
sint NL3D::CBone::_ScaleChannelId [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 163 of file bone.h. +

+Referenced by CBone, lodEnableChannels, and registerToChannelMixer.

+

+ + + + +
+ + +
CMatrix NL3D::CBone::_WorldMatrix [private] +
+
+ + + + + +
+   + + +

+ +

+Definition at line 155 of file bone.h. +

+Referenced by compute, and getWorldMatrix.

+


The documentation for this class was generated from the following files: + + + +
                                                                                                                                                                    +
+ + -- cgit v1.2.1