TDME2 1.9.121
RotationOrder.h
Go to the documentation of this file.
1
2#pragma once
3
4#include <string>
5
6#include <tdme/tdme.h>
9#include <tdme/math/Vector3.h>
10#include <tdme/utilities/Enum.h>
11
12using std::string;
13
17
18/**
19 * Represents rotation orders of a model
20 */
22 : public Enum
23{
24public:
28
29private:
36 int32_t axisXIndex;
37 int32_t axisYIndex;
38 int32_t axisZIndex;
39
40public:
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, int32_t axis0VectorIndex, int32_t axis1VectorIndex, int32_t axis2VectorIndex, int32_t axisXIndex, int32_t axisYIndex, int32_t 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 int32_t getAxis0VectorIndex() const {
82 return axis0VectorIndex;
83 }
84
85 /**
86 * @return axis 1 vector index
87 */
88 inline int32_t getAxis1VectorIndex() const {
89 return axis1VectorIndex;
90 }
91
92 /**
93 * @return axis 2 vector index
94 */
95 inline int32_t getAxis2VectorIndex() const {
96 return axis2VectorIndex;
97 }
98
99 /**
100 * @return axis x index
101 */
102 inline int32_t getAxisXIndex() const {
103 return axisXIndex;
104 }
105
106 /**
107 * @return axis y index
108 */
109 inline int32_t getAxisYIndex() const {
110 return axisYIndex;
111 }
112
113 /**
114 * @return axis z index
115 */
116 inline int32_t 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
const Vector3 & getAxis0() const
Definition: RotationOrder.h:60
static STATIC_DLL_IMPEXT RotationOrder * YZX
Definition: RotationOrder.h:26
static RotationOrder * valueOf(const string &a0)
const Vector3 & getAxis2() const
Definition: RotationOrder.h:74
const Vector3 & getAxis1() const
Definition: RotationOrder.h:67
RotationOrder(const string &name, int ordinal, const Vector3 &axis0, const Vector3 &axis1, const Vector3 &axis2, int32_t axis0VectorIndex, int32_t axis1VectorIndex, int32_t axis2VectorIndex, int32_t axisXIndex, int32_t axisYIndex, int32_t axisZIndex)
Constructor.
static STATIC_DLL_IMPEXT RotationOrder * ZYX
Definition: RotationOrder.h:27
3D vector 3 class
Definition: Vector3.h:22
Enum base class.
Definition: Enum.h:14
int32_t ordinal
Definition: Enum.h:17
#define STATIC_DLL_IMPEXT
Definition: tdme.h:11