NL3D::CBoneBase Class Reference

#include <bone.h>

Inheritance diagram for NL3D::CBoneBase:

NLMISC::CRefCount

Detailed Description

This is a bone default value. This object is stored in the SkeletonShape, and is serialised. For hierarchy of bones, It contains the id of his father.
Author:
Lionel Berenguier

Nevrax France

Date:
2001

Definition at line 53 of file bone.h.

Public Member Functions

 CBoneBase ()
 ctor, with default pos as NULL (but scale as 1,1,1).

const sintgetRefCount () const
void serial (NLMISC::IStream &f)
 save/load.


Data Fields

sint crefs
CTrackDefaultVector DefaultPivot
CTrackDefaultVector DefaultPos
 Default tracks.

CTrackDefaultVector DefaultRotEuler
CTrackDefaultQuat DefaultRotQuat
CTrackDefaultVector DefaultScale
sint32 FatherId
 The Father of this bone. -1 means no one.

CMatrix InvBindPos
 The Inverse of bindpos for this bone.

float LodDisableDistance
 The distance at which the bone is disabled in the skeleton. If 0, never disable.

std::string Name
 Name of this bone, for Animation access.

CPtrInfo * pinfo
bool UnheritScale
 true if unheritScale from father (default==true).


Static Public Attributes

CPtrInfo NullPtrInfo

Friends

struct CPtrInfo


Constructor & Destructor Documentation

NL3D::CBoneBase::CBoneBase  ) 
 

ctor, with default pos as NULL (but scale as 1,1,1).

Definition at line 45 of file bone.cpp.

References FatherId, LodDisableDistance, and UnheritScale.

00045                      : DefaultPos(CVector(0,0,0)), DefaultRotEuler(CVector(0,0,0)), 
00046         DefaultScale(CVector(1,1,1)), DefaultPivot(CVector(0,0,0))
00047 {
00048         FatherId= -1;
00049         UnheritScale= true;
00050         // Default: never disable.
00051         LodDisableDistance= 0.f;
00052 }


Member Function Documentation

const sint& NLMISC::CRefCount::getRefCount  )  const [inline, inherited]
 

Definition at line 70 of file smart_ptr.h.

References NLMISC::CRefCount::crefs, and sint.

00071         {
00072                 return  crefs;
00073         }

void NL3D::CBoneBase::serial NLMISC::IStream f  ) 
 

save/load.

Definition at line 56 of file bone.cpp.

References DefaultPivot, DefaultPos, DefaultRotEuler, DefaultRotQuat, DefaultScale, FatherId, InvBindPos, LodDisableDistance, NLMISC::IStream::serial(), NLMISC::IStream::serialVersion(), sint, and UnheritScale.

00057 {
00058         /*
00059         Version 1:
00060                 - LodDisableDistance
00061         */
00062         sint    ver= f.serialVersion(1);
00063 
00064         f.serial(Name);
00065         f.serial(InvBindPos);
00066         f.serial(FatherId);
00067         f.serial(UnheritScale);
00068 
00069         if(ver>=1)
00070                 f.serial(LodDisableDistance);
00071         else
00072         {
00073                 // Default: never disable.
00074                 LodDisableDistance= 0.f;
00075         }
00076 
00077         f.serial(DefaultPos);
00078         f.serial(DefaultRotEuler);
00079         f.serial(DefaultRotQuat);
00080         f.serial(DefaultScale);
00081         f.serial(DefaultPivot);
00082 }


Friends And Related Function Documentation

friend struct CPtrInfo [friend, inherited]
 

Definition at line 67 of file smart_ptr.h.


Field Documentation

sint NLMISC::CRefCount::crefs [mutable, inherited]
 

Definition at line 79 of file smart_ptr.h.

Referenced by NLMISC::CRefCount::CRefCount(), NLMISC::CRefCount::getRefCount(), and NLMISC::CRefCount::~CRefCount().

CTrackDefaultVector NL3D::CBoneBase::DefaultPivot
 

Definition at line 73 of file bone.h.

Referenced by serial().

CTrackDefaultVector NL3D::CBoneBase::DefaultPos
 

Default tracks.

Definition at line 69 of file bone.h.

Referenced by serial().

CTrackDefaultVector NL3D::CBoneBase::DefaultRotEuler
 

Definition at line 70 of file bone.h.

Referenced by serial().

CTrackDefaultQuat NL3D::CBoneBase::DefaultRotQuat
 

Definition at line 71 of file bone.h.

Referenced by serial().

CTrackDefaultVector NL3D::CBoneBase::DefaultScale
 

Definition at line 72 of file bone.h.

Referenced by serial().

sint32 NL3D::CBoneBase::FatherId
 

The Father of this bone. -1 means no one.

Definition at line 63 of file bone.h.

Referenced by CBoneBase(), and serial().

CMatrix NL3D::CBoneBase::InvBindPos
 

The Inverse of bindpos for this bone.

Definition at line 60 of file bone.h.

Referenced by NL3D::CTargetAnimCtrl::execute(), NL3D::CTargetAnimCtrl::getCurrentLSRotationFromBone(), and serial().

float NL3D::CBoneBase::LodDisableDistance
 

The distance at which the bone is disabled in the skeleton. If 0, never disable.

Definition at line 76 of file bone.h.

Referenced by CBoneBase(), and serial().

std::string NL3D::CBoneBase::Name
 

Name of this bone, for Animation access.

Definition at line 57 of file bone.h.

CRefCount::CPtrInfo NLMISC::CRefCount::NullPtrInfo [static, inherited]
 

Referenced by NLMISC::CRefCount::CRefCount().

CPtrInfo* NLMISC::CRefCount::pinfo [mutable, inherited]
 

Definition at line 80 of file smart_ptr.h.

Referenced by NLMISC::CRefCount::CRefCount(), and NLMISC::CRefCount::~CRefCount().

bool NL3D::CBoneBase::UnheritScale
 

true if unheritScale from father (default==true).

Definition at line 66 of file bone.h.

Referenced by CBoneBase(), and serial().


The documentation for this class was generated from the following files:
Generated on Tue Mar 16 06:44:39 2004 for NeL by doxygen 1.3.6