Developer Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
BaseSkin Class Referenceabstract

Abstract base class for the skin template, wrapping all template versions of the skin. More...

#include <ObjectTypes/Skeleton/BaseSkin.hh>

Inheritance diagram for BaseSkin:
PerObjectData SkinT< MeshT >


struct  DefaultPose
 Holds the skins default pose. More...

Public Types

enum  Method { M_LBS = 0, M_DBS = 1 }
 Possible deformation methods. More...

These structures store mesh properties used to make the mesh a skin.

typedef std::map< unsigned int,
double > 
 Stores the joint weights per vertex. More...

Public Member Functions

 BaseSkin (int _skeletonId)

These methods are related to using a mesh as skin with this skeleton.

virtual void attachSkin ()=0
virtual void deformSkin ()=0
virtual void deformSkin (const AnimationHandle &_hAni, Method _method=M_LBS)=0
virtual void releaseSkin ()=0
Information about the attached skeleton
int skeletonId ()
- Public Member Functions inherited from PerObjectData
 PerObjectData ()
 You have to provide your own constructor for your object.
virtual PerObjectDatacopyPerObjectData ()
 Copy Function. More...

Private Attributes

int skeleton_
 Holds the associated skeleton.

Detailed Description

Abstract base class for the skin template, wrapping all template versions of the skin.

Definition at line 67 of file BaseSkin.hh.

Member Typedef Documentation

typedef std::map<unsigned int, double> BaseSkin::SkinWeights

Stores the joint weights per vertex.

In general every joint can influence every vertex. In practice only a small number of joints manipulate a vertex. Therefore they are stored in a map using the joint identifier as key. The weights for one vertex are supposed to sum to one.

Definition at line 99 of file BaseSkin.hh.

Member Enumeration Documentation

Possible deformation methods.

LBS = Linear Blend Skinning DBS = Dual Quaternion Blend Skinning

Definition at line 109 of file BaseSkin.hh.

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