TDME2  1.9.200
RotationOrder.h
Go to the documentation of this file.
1 
2 #pragma once
3 
4 #include <string>
5 
6 #include <tdme/tdme.h>
8 #include <tdme/math/fwd-tdme.h>
9 #include <tdme/math/Vector3.h>
10 #include <tdme/utilities/Enum.h>
11 
12 using std::string;
13 
17 
18 /**
19  * Represents rotation orders of a model
20  */
22  : public Enum
23 {
24 public:
28 
29 private:
39 
40 public:
41  /**
42  * Constructor
43  * @param name name
44  * @param ordinal ordinal
45  * @param axis0 axis 0
46  * @param axis1 axis 1
47  * @param axis2 axis 2
48  * @param axis0VectorIndex axis 0 vector (data) index
49  * @param axis1VectorIndex axis 1 vector (data) index
50  * @param axis2VectorIndex axis 2 vector (data) index
51  * @param axisXIndex axis X index
52  * @param axisYIndex axis Y index
53  * @param axisZIndex axis Z index
54  */
55  RotationOrder(const string& name, int ordinal, const Vector3& axis0, const Vector3& axis1, const Vector3& axis2, int axis0VectorIndex, int axis1VectorIndex, int axis2VectorIndex, int axisXIndex, int axisYIndex, int axisZIndex);
56 
57  /**
58  * @return axis 0
59  */
60  inline const Vector3& getAxis0() const {
61  return axis0;
62  }
63 
64  /**
65  * @return axis 1
66  */
67  inline const Vector3& getAxis1() const {
68  return axis1;
69  }
70 
71  /**
72  * @return axis 2
73  */
74  inline const Vector3& getAxis2() const {
75  return axis2;
76  }
77 
78  /**
79  * @return axis 0 vector index
80  */
81  inline int getAxis0VectorIndex() const {
82  return axis0VectorIndex;
83  }
84 
85  /**
86  * @return axis 1 vector index
87  */
88  inline int getAxis1VectorIndex() const {
89  return axis1VectorIndex;
90  }
91 
92  /**
93  * @return axis 2 vector index
94  */
95  inline int getAxis2VectorIndex() const {
96  return axis2VectorIndex;
97  }
98 
99  /**
100  * @return axis x index
101  */
102  inline int getAxisXIndex() const {
103  return axisXIndex;
104  }
105 
106  /**
107  * @return axis y index
108  */
109  inline int getAxisYIndex() const {
110  return axisYIndex;
111  }
112 
113  /**
114  * @return axis z index
115  */
116  inline int getAxisZIndex() const {
117  return axisZIndex;
118  }
119 
120  /**
121  * @return rotation order by string
122  */
123  static RotationOrder* valueOf(const string& a0);
124 
125 };
Represents rotation orders of a model.
Definition: RotationOrder.h:23
static STATIC_DLL_IMPEXT RotationOrder * XYZ
Definition: RotationOrder.h:25
static STATIC_DLL_IMPEXT RotationOrder * YZX
Definition: RotationOrder.h:26
const Vector3 & getAxis1() const
Definition: RotationOrder.h:67
static RotationOrder * valueOf(const string &a0)
const Vector3 & getAxis0() const
Definition: RotationOrder.h:60
const Vector3 & getAxis2() const
Definition: RotationOrder.h:74
RotationOrder(const string &name, int ordinal, const Vector3 &axis0, const Vector3 &axis1, const Vector3 &axis2, int axis0VectorIndex, int axis1VectorIndex, int axis2VectorIndex, int axisXIndex, int axisYIndex, int axisZIndex)
Constructor.
static STATIC_DLL_IMPEXT RotationOrder * ZYX
Definition: RotationOrder.h:27
Vector3 class representing vector3 mathematical structure and operations with x, y,...
Definition: Vector3.h:20
Enum base class.
Definition: Enum.h:14
#define STATIC_DLL_IMPEXT
Definition: tdme.h:15