- Cal3D 0.11 API Reference -

skeleton.h
1//****************************************************************************//
2// skeleton.h //
3// Copyright (C) 2001, 2002 Bruno 'Beosil' Heidelberger //
4//****************************************************************************//
5// This library is free software; you can redistribute it and/or modify it //
6// under the terms of the GNU Lesser General Public License as published by //
7// the Free Software Foundation; either version 2.1 of the License, or (at //
8// your option) any later version. //
9//****************************************************************************//
10
11#ifndef CAL_SKELETON_H
12#define CAL_SKELETON_H
13
14#include "cal3d/global.h"
15
16class CalCoreSkeleton;
17class CalCoreModel;
18class CalBone;
19
20class CAL3D_API CalSkeleton
21{
22public:
23 CalSkeleton(CalCoreSkeleton *pCoreSkeleton);
25
26 void calculateState();
27 void clearState();
28 bool create(CalCoreSkeleton *pCoreSkeleton);
29 CalBone *getBone(int boneId);
30 const CalBone *getBone(int boneId) const;
31 CalCoreSkeleton *getCoreSkeleton();
32 const CalCoreSkeleton *getCoreSkeleton() const;
33 std::vector<CalBone *>& getVectorBone();
34 const std::vector<CalBone *>& getVectorBone() const;
35 void lockState();
36 void getBoneBoundingBox(float *min, float *max);
37 void calculateBoundingBoxes();
38
39 // DEBUG-CODE
40 int getBonePoints(float *pPoints) const;
41 int getBonePointsStatic(float *pPoints) const;
42 int getBoneLines(float *pLines) const;
43 int getBoneLinesStatic(float *pLines) const;
44
45private:
46 CalCoreSkeleton *m_pCoreSkeleton;
47 std::vector<CalBone *> m_vectorBone;
48 bool m_isBoundingBoxesComputed;
49};
50
51#endif
52
53//****************************************************************************//
Definition bone.h:29
Definition coremodel.h:26
Definition coreskeleton.h:25
Definition skeleton.h:21

Generated by The Cal3D Team with Doxygen 1.10.0