- 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 
16 class CalCoreSkeleton;
17 class CalCoreModel;
18 class CalBone;
19 
20 class CAL3D_API CalSkeleton
21 {
22 public:
23  CalSkeleton(CalCoreSkeleton *pCoreSkeleton);
24  ~CalSkeleton();
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 
45 private:
46  CalCoreSkeleton *m_pCoreSkeleton;
47  std::vector<CalBone *> m_vectorBone;
48  bool m_isBoundingBoxesComputed;
49 };
50 
51 #endif
52 
53 //****************************************************************************//
Definition: coremodel.h:25
Definition: coreskeleton.h:24
Definition: skeleton.h:20
Definition: bone.h:28

Generated by The Cal3D Team with Doxygen 1.8.14