@math.gl/core 3.6.0-alpha.1 → 3.6.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (188) hide show
  1. package/dist/classes/base/math-array.d.ts +61 -31
  2. package/dist/classes/base/math-array.d.ts.map +1 -1
  3. package/dist/classes/base/math-array.js +67 -65
  4. package/dist/classes/base/matrix.d.ts +12 -10
  5. package/dist/classes/base/matrix.d.ts.map +1 -1
  6. package/dist/classes/base/matrix.js +2 -10
  7. package/dist/classes/base/vector.d.ts +37 -25
  8. package/dist/classes/base/vector.d.ts.map +1 -1
  9. package/dist/classes/base/vector.js +17 -24
  10. package/dist/classes/euler.d.ts +59 -55
  11. package/dist/classes/euler.d.ts.map +1 -1
  12. package/dist/classes/euler.js +57 -77
  13. package/dist/classes/matrix3.d.ts +58 -41
  14. package/dist/classes/matrix3.d.ts.map +1 -1
  15. package/dist/classes/matrix3.js +68 -59
  16. package/dist/classes/matrix4.d.ts +214 -90
  17. package/dist/classes/matrix4.d.ts.map +1 -1
  18. package/dist/classes/matrix4.js +252 -171
  19. package/dist/classes/pose.d.ts +29 -26
  20. package/dist/classes/pose.d.ts.map +1 -1
  21. package/dist/classes/pose.js +6 -23
  22. package/dist/classes/quaternion.d.ts +61 -40
  23. package/dist/classes/quaternion.d.ts.map +1 -1
  24. package/dist/classes/quaternion.js +49 -53
  25. package/dist/classes/spherical-coordinates.d.ts +45 -25
  26. package/dist/classes/spherical-coordinates.d.ts.map +1 -1
  27. package/dist/classes/spherical-coordinates.js +30 -24
  28. package/dist/classes/vector2.d.ts +51 -15
  29. package/dist/classes/vector2.d.ts.map +1 -1
  30. package/dist/classes/vector2.js +29 -23
  31. package/dist/classes/vector3.d.ts +47 -32
  32. package/dist/classes/vector3.d.ts.map +1 -1
  33. package/dist/classes/vector3.js +16 -30
  34. package/dist/classes/vector4.d.ts +37 -19
  35. package/dist/classes/vector4.d.ts.map +1 -1
  36. package/dist/classes/vector4.js +12 -24
  37. package/dist/es5/classes/base/math-array.js +248 -179
  38. package/dist/es5/classes/base/math-array.js.map +1 -1
  39. package/dist/es5/classes/base/matrix.js +74 -54
  40. package/dist/es5/classes/base/matrix.js.map +1 -1
  41. package/dist/es5/classes/base/vector.js +167 -121
  42. package/dist/es5/classes/base/vector.js.map +1 -1
  43. package/dist/es5/classes/euler.js +575 -480
  44. package/dist/es5/classes/euler.js.map +1 -1
  45. package/dist/es5/classes/matrix3.js +234 -158
  46. package/dist/es5/classes/matrix3.js.map +1 -1
  47. package/dist/es5/classes/matrix4.js +510 -417
  48. package/dist/es5/classes/matrix4.js.map +1 -1
  49. package/dist/es5/classes/pose.js +126 -101
  50. package/dist/es5/classes/pose.js.map +1 -1
  51. package/dist/es5/classes/quaternion.js +285 -213
  52. package/dist/es5/classes/quaternion.js.map +1 -1
  53. package/dist/es5/classes/spherical-coordinates.js +170 -125
  54. package/dist/es5/classes/spherical-coordinates.js.map +1 -1
  55. package/dist/es5/classes/vector2.js +118 -76
  56. package/dist/es5/classes/vector2.js.map +1 -1
  57. package/dist/es5/classes/vector3.js +171 -119
  58. package/dist/es5/classes/vector3.js.map +1 -1
  59. package/dist/es5/classes/vector4.js +141 -94
  60. package/dist/es5/classes/vector4.js.map +1 -1
  61. package/dist/es5/index.js +34 -34
  62. package/dist/es5/lib/common.js +56 -30
  63. package/dist/es5/lib/common.js.map +1 -1
  64. package/dist/es5/lib/gl-matrix-extras.js +14 -14
  65. package/dist/es5/lib/gl-matrix-extras.js.map +1 -1
  66. package/dist/es5/lib/gl-matrix.d.js +2 -0
  67. package/dist/es5/lib/gl-matrix.d.js.map +1 -0
  68. package/dist/es5/lib/validators.js +5 -3
  69. package/dist/es5/lib/validators.js.map +1 -1
  70. package/dist/esm/classes/base/math-array.js +45 -47
  71. package/dist/esm/classes/base/math-array.js.map +1 -1
  72. package/dist/esm/classes/base/matrix.js +0 -11
  73. package/dist/esm/classes/base/matrix.js.map +1 -1
  74. package/dist/esm/classes/base/vector.js +0 -10
  75. package/dist/esm/classes/base/vector.js.map +1 -1
  76. package/dist/esm/classes/euler.js +61 -48
  77. package/dist/esm/classes/euler.js.map +1 -1
  78. package/dist/esm/classes/matrix3.js +55 -33
  79. package/dist/esm/classes/matrix3.js.map +1 -1
  80. package/dist/esm/classes/matrix4.js +156 -136
  81. package/dist/esm/classes/matrix4.js.map +1 -1
  82. package/dist/esm/classes/pose.js +8 -4
  83. package/dist/esm/classes/pose.js.map +1 -1
  84. package/dist/esm/classes/quaternion.js +37 -27
  85. package/dist/esm/classes/quaternion.js.map +1 -1
  86. package/dist/esm/classes/spherical-coordinates.js +15 -5
  87. package/dist/esm/classes/spherical-coordinates.js.map +1 -1
  88. package/dist/esm/classes/vector2.js.map +1 -1
  89. package/dist/esm/classes/vector3.js +7 -2
  90. package/dist/esm/classes/vector3.js.map +1 -1
  91. package/dist/esm/classes/vector4.js +7 -2
  92. package/dist/esm/classes/vector4.js.map +1 -1
  93. package/dist/esm/lib/common.js +8 -8
  94. package/dist/esm/lib/common.js.map +1 -1
  95. package/dist/esm/lib/gl-matrix-extras.js.map +1 -1
  96. package/dist/esm/lib/gl-matrix.d.js +2 -0
  97. package/dist/esm/lib/gl-matrix.d.js.map +1 -0
  98. package/dist/esm/lib/validators.js.map +1 -1
  99. package/dist/lib/common.d.ts +14 -11
  100. package/dist/lib/common.d.ts.map +1 -1
  101. package/dist/lib/common.js +10 -23
  102. package/dist/lib/gl-matrix-extras.d.ts +6 -5
  103. package/dist/lib/gl-matrix-extras.d.ts.map +1 -1
  104. package/dist/lib/gl-matrix-extras.js +0 -1
  105. package/dist/lib/validators.d.ts +5 -4
  106. package/dist/lib/validators.d.ts.map +1 -1
  107. package/dist/lib/validators.js +0 -19
  108. package/package.json +4 -4
  109. package/src/classes/base/math-array.ts +265 -0
  110. package/src/classes/base/{matrix.js → matrix.ts} +15 -19
  111. package/src/classes/base/{vector.js → vector.ts} +47 -54
  112. package/src/classes/{euler.js → euler.ts} +121 -221
  113. package/src/classes/matrix3.ts +253 -0
  114. package/src/classes/matrix4.ts +668 -0
  115. package/src/classes/{pose.js → pose.ts} +52 -49
  116. package/src/classes/{quaternion.js → quaternion.ts} +107 -95
  117. package/src/classes/{spherical-coordinates.js → spherical-coordinates.ts} +84 -54
  118. package/src/classes/vector2.ts +127 -0
  119. package/src/classes/{vector3.js → vector3.ts} +43 -55
  120. package/src/classes/{vector4.js → vector4.ts} +44 -48
  121. package/src/lib/common.ts +58 -37
  122. package/src/lib/gl-matrix-extras.ts +26 -5
  123. package/src/lib/gl-matrix.d.ts +266 -0
  124. package/src/lib/validators.ts +10 -6
  125. package/dist/es5/classes/base/math-array.d.js +0 -46
  126. package/dist/es5/classes/base/math-array.d.js.map +0 -1
  127. package/dist/es5/classes/base/matrix.d.js +0 -15
  128. package/dist/es5/classes/base/matrix.d.js.map +0 -1
  129. package/dist/es5/classes/base/vector.d.js +0 -24
  130. package/dist/es5/classes/base/vector.d.js.map +0 -1
  131. package/dist/es5/classes/euler.d.js +0 -45
  132. package/dist/es5/classes/euler.d.js.map +0 -1
  133. package/dist/es5/classes/matrix3.d.js +0 -25
  134. package/dist/es5/classes/matrix3.d.js.map +0 -1
  135. package/dist/es5/classes/matrix4.d.js +0 -25
  136. package/dist/es5/classes/matrix4.d.js.map +0 -1
  137. package/dist/es5/classes/pose.d.js +0 -25
  138. package/dist/es5/classes/pose.d.js.map +0 -1
  139. package/dist/es5/classes/quaternion.d.js +0 -27
  140. package/dist/es5/classes/quaternion.d.js.map +0 -1
  141. package/dist/es5/classes/spherical-coordinates.d.js +0 -27
  142. package/dist/es5/classes/spherical-coordinates.d.js.map +0 -1
  143. package/dist/es5/classes/vector2.d.js +0 -18
  144. package/dist/es5/classes/vector2.d.js.map +0 -1
  145. package/dist/es5/classes/vector3.d.js +0 -24
  146. package/dist/es5/classes/vector3.d.js.map +0 -1
  147. package/dist/es5/classes/vector4.d.js +0 -25
  148. package/dist/es5/classes/vector4.d.js.map +0 -1
  149. package/dist/esm/classes/base/math-array.d.js +0 -36
  150. package/dist/esm/classes/base/math-array.d.js.map +0 -1
  151. package/dist/esm/classes/base/matrix.d.js +0 -3
  152. package/dist/esm/classes/base/matrix.d.js.map +0 -1
  153. package/dist/esm/classes/base/vector.d.js +0 -13
  154. package/dist/esm/classes/base/vector.d.js.map +0 -1
  155. package/dist/esm/classes/euler.d.js +0 -55
  156. package/dist/esm/classes/euler.d.js.map +0 -1
  157. package/dist/esm/classes/matrix3.d.js +0 -15
  158. package/dist/esm/classes/matrix3.d.js.map +0 -1
  159. package/dist/esm/classes/matrix4.d.js +0 -15
  160. package/dist/esm/classes/matrix4.d.js.map +0 -1
  161. package/dist/esm/classes/pose.d.js +0 -18
  162. package/dist/esm/classes/pose.d.js.map +0 -1
  163. package/dist/esm/classes/quaternion.d.js +0 -19
  164. package/dist/esm/classes/quaternion.d.js.map +0 -1
  165. package/dist/esm/classes/spherical-coordinates.d.js +0 -22
  166. package/dist/esm/classes/spherical-coordinates.d.js.map +0 -1
  167. package/dist/esm/classes/vector2.d.js +0 -6
  168. package/dist/esm/classes/vector2.d.js.map +0 -1
  169. package/dist/esm/classes/vector3.d.js +0 -13
  170. package/dist/esm/classes/vector3.d.js.map +0 -1
  171. package/dist/esm/classes/vector4.d.js +0 -15
  172. package/dist/esm/classes/vector4.d.js.map +0 -1
  173. package/src/classes/base/math-array.d.ts +0 -55
  174. package/src/classes/base/math-array.js +0 -250
  175. package/src/classes/base/matrix.d.ts +0 -15
  176. package/src/classes/base/vector.d.ts +0 -45
  177. package/src/classes/euler.d.ts +0 -92
  178. package/src/classes/matrix3.d.ts +0 -91
  179. package/src/classes/matrix3.js +0 -225
  180. package/src/classes/matrix4.d.ts +0 -161
  181. package/src/classes/matrix4.js +0 -530
  182. package/src/classes/pose.d.ts +0 -92
  183. package/src/classes/quaternion.d.ts +0 -107
  184. package/src/classes/spherical-coordinates.d.ts +0 -87
  185. package/src/classes/vector2.d.ts +0 -65
  186. package/src/classes/vector2.js +0 -122
  187. package/src/classes/vector3.d.ts +0 -65
  188. package/src/classes/vector4.d.ts +0 -34
@@ -7,553 +7,648 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports.default = void 0;
9
9
 
10
- var _mathArray = _interopRequireDefault(require("./base/math-array"));
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
11
 
12
- var _common = require("../lib/common");
12
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
13
 
14
- var _validators = require("../lib/validators");
14
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
15
 
16
- var _quaternion = _interopRequireDefault(require("./quaternion"));
16
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
17
 
18
- const ERR_UNKNOWN_ORDER = 'Unknown Euler angle order';
19
- const ALMOST_ONE = 0.99999;
18
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
20
19
 
21
- function validateOrder(value) {
22
- return value >= 0 && value < 6;
23
- }
20
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
24
21
 
25
- function checkOrder(value) {
26
- if (value < 0 && value >= 6) {
27
- throw new Error(ERR_UNKNOWN_ORDER);
28
- }
22
+ var _mathArray = _interopRequireDefault(require("./base/math-array"));
29
23
 
30
- return value;
31
- }
24
+ var _quaternion2 = _interopRequireDefault(require("./quaternion"));
32
25
 
33
- class Euler extends _mathArray.default {
34
- static get ZYX() {
35
- return 0;
36
- }
26
+ var _common = require("../lib/common");
37
27
 
38
- static get YXZ() {
39
- return 1;
40
- }
28
+ var _validators = require("../lib/validators");
41
29
 
42
- static get XZY() {
43
- return 2;
44
- }
30
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
45
31
 
46
- static get ZXY() {
47
- return 3;
48
- }
32
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
49
33
 
50
- static get YZX() {
51
- return 4;
52
- }
34
+ var ERR_UNKNOWN_ORDER = 'Unknown Euler angle order';
35
+ var ALMOST_ONE = 0.99999;
36
+ var RotationOrder;
53
37
 
54
- static get XYZ() {
55
- return 5;
56
- }
38
+ (function (RotationOrder) {
39
+ RotationOrder[RotationOrder["ZYX"] = 0] = "ZYX";
40
+ RotationOrder[RotationOrder["YXZ"] = 1] = "YXZ";
41
+ RotationOrder[RotationOrder["XZY"] = 2] = "XZY";
42
+ RotationOrder[RotationOrder["ZXY"] = 3] = "ZXY";
43
+ RotationOrder[RotationOrder["YZX"] = 4] = "YZX";
44
+ RotationOrder[RotationOrder["XYZ"] = 5] = "XYZ";
45
+ })(RotationOrder || (RotationOrder = {}));
57
46
 
58
- static get RollPitchYaw() {
59
- return 0;
60
- }
47
+ var Euler = function (_MathArray) {
48
+ (0, _inherits2.default)(Euler, _MathArray);
61
49
 
62
- static get DefaultOrder() {
63
- return Euler.ZYX;
64
- }
65
-
66
- static get RotationOrders() {
67
- return ['ZYX', 'YXZ', 'XZY', 'ZXY', 'YZX', 'XYZ'];
68
- }
50
+ var _super = _createSuper(Euler);
69
51
 
70
- static rotationOrder(order) {
71
- return Euler.RotationOrders[order];
72
- }
73
-
74
- get ELEMENTS() {
75
- return 4;
76
- }
52
+ function Euler() {
53
+ var _this;
77
54
 
78
- constructor(x = 0, y = 0, z = 0, order = Euler.DefaultOrder) {
79
- super(-0, -0, -0, -0);
55
+ var x = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
56
+ var y = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
57
+ var z = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
58
+ var order = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : Euler.DefaultOrder;
59
+ (0, _classCallCheck2.default)(this, Euler);
60
+ _this = _super.call(this, -0, -0, -0, -0);
80
61
 
81
62
  if (arguments.length > 0 && Array.isArray(arguments[0])) {
82
- this.fromVector3(...arguments);
63
+ var _this2;
64
+
65
+ (_this2 = _this).fromVector3.apply(_this2, arguments);
83
66
  } else {
84
- this.set(x, y, z, order);
67
+ _this.set(x, y, z, order);
85
68
  }
86
- }
87
69
 
88
- fromQuaternion(quaternion) {
89
- const [x, y, z, w] = quaternion;
90
- const ysqr = y * y;
91
- const t0 = -2.0 * (ysqr + z * z) + 1.0;
92
- const t1 = +2.0 * (x * y + w * z);
93
- let t2 = -2.0 * (x * z - w * y);
94
- const t3 = +2.0 * (y * z + w * x);
95
- const t4 = -2.0 * (x * x + ysqr) + 1.0;
96
- t2 = t2 > 1.0 ? 1.0 : t2;
97
- t2 = t2 < -1.0 ? -1.0 : t2;
98
- const roll = Math.atan2(t3, t4);
99
- const pitch = Math.asin(t2);
100
- const yaw = Math.atan2(t1, t0);
101
- return new Euler(roll, pitch, yaw, Euler.RollPitchYaw);
70
+ return _this;
102
71
  }
103
72
 
104
- copy(array) {
105
- this[0] = array[0];
106
- this[1] = array[1];
107
- this[2] = array[2];
108
- this[3] = Number.isFinite(array[3]) || this.order;
109
- return this.check();
110
- }
111
-
112
- set(x = 0, y = 0, z = 0, order) {
113
- this[0] = x;
114
- this[1] = y;
115
- this[2] = z;
116
- this[3] = Number.isFinite(order) ? order : this[3];
117
- return this.check();
118
- }
119
-
120
- validate() {
121
- return validateOrder(this[3]) && Number.isFinite(this[0]) && Number.isFinite(this[1]) && Number.isFinite(this[2]);
122
- }
123
-
124
- toArray(array = [], offset = 0) {
125
- array[offset] = this[0];
126
- array[offset + 1] = this[1];
127
- array[offset + 2] = this[2];
128
- return array;
129
- }
130
-
131
- toArray4(array = [], offset = 0) {
132
- array[offset] = this[0];
133
- array[offset + 1] = this[1];
134
- array[offset + 2] = this[2];
135
- array[offset + 3] = this[3];
136
- return array;
137
- }
138
-
139
- toVector3(result = [-0, -0, -0]) {
140
- result[0] = this[0];
141
- result[1] = this[1];
142
- result[2] = this[2];
143
- return result;
144
- }
145
-
146
- get x() {
147
- return this[0];
148
- }
149
-
150
- set x(value) {
151
- this[0] = (0, _validators.checkNumber)(value);
152
- }
153
-
154
- get y() {
155
- return this[1];
156
- }
157
-
158
- set y(value) {
159
- this[1] = (0, _validators.checkNumber)(value);
160
- }
161
-
162
- get z() {
163
- return this[2];
164
- }
165
-
166
- set z(value) {
167
- this[2] = (0, _validators.checkNumber)(value);
168
- }
169
-
170
- get alpha() {
171
- return this[0];
172
- }
173
-
174
- set alpha(value) {
175
- this[0] = (0, _validators.checkNumber)(value);
176
- }
177
-
178
- get beta() {
179
- return this[1];
180
- }
181
-
182
- set beta(value) {
183
- this[1] = (0, _validators.checkNumber)(value);
184
- }
185
-
186
- get gamma() {
187
- return this[2];
188
- }
189
-
190
- set gamma(value) {
191
- this[2] = (0, _validators.checkNumber)(value);
192
- }
193
-
194
- get phi() {
195
- return this[0];
196
- }
197
-
198
- set phi(value) {
199
- this[0] = (0, _validators.checkNumber)(value);
200
- }
201
-
202
- get theta() {
203
- return this[1];
204
- }
73
+ (0, _createClass2.default)(Euler, [{
74
+ key: "ELEMENTS",
75
+ get: function get() {
76
+ return 4;
77
+ }
78
+ }, {
79
+ key: "fromQuaternion",
80
+ value: function fromQuaternion(quaternion) {
81
+ var _quaternion = (0, _slicedToArray2.default)(quaternion, 4),
82
+ x = _quaternion[0],
83
+ y = _quaternion[1],
84
+ z = _quaternion[2],
85
+ w = _quaternion[3];
86
+
87
+ var ysqr = y * y;
88
+ var t0 = -2 * (ysqr + z * z) + 1;
89
+ var t1 = +2 * (x * y + w * z);
90
+ var t2 = -2 * (x * z - w * y);
91
+ var t3 = +2 * (y * z + w * x);
92
+ var t4 = -2 * (x * x + ysqr) + 1;
93
+ t2 = t2 > 1 ? 1 : t2;
94
+ t2 = t2 < -1 ? -1 : t2;
95
+ var roll = Math.atan2(t3, t4);
96
+ var pitch = Math.asin(t2);
97
+ var yaw = Math.atan2(t1, t0);
98
+ return this.set(roll, pitch, yaw, Euler.RollPitchYaw);
99
+ }
100
+ }, {
101
+ key: "fromObject",
102
+ value: function fromObject(object) {
103
+ throw new Error('not implemented');
104
+ }
105
+ }, {
106
+ key: "copy",
107
+ value: function copy(array) {
108
+ this[0] = array[0];
109
+ this[1] = array[1];
110
+ this[2] = array[2];
111
+ this[3] = Number.isFinite(array[3]) || this.order;
112
+ return this.check();
113
+ }
114
+ }, {
115
+ key: "set",
116
+ value: function set() {
117
+ var x = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
118
+ var y = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
119
+ var z = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
120
+ var order = arguments.length > 3 ? arguments[3] : undefined;
121
+ this[0] = x;
122
+ this[1] = y;
123
+ this[2] = z;
124
+ this[3] = Number.isFinite(order) ? order : this[3];
125
+ return this.check();
126
+ }
127
+ }, {
128
+ key: "validate",
129
+ value: function validate() {
130
+ return validateOrder(this[3]) && Number.isFinite(this[0]) && Number.isFinite(this[1]) && Number.isFinite(this[2]);
131
+ }
132
+ }, {
133
+ key: "toArray",
134
+ value: function toArray() {
135
+ var array = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
136
+ var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
137
+ array[offset] = this[0];
138
+ array[offset + 1] = this[1];
139
+ array[offset + 2] = this[2];
140
+ return array;
141
+ }
142
+ }, {
143
+ key: "toArray4",
144
+ value: function toArray4() {
145
+ var array = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
146
+ var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
147
+ array[offset] = this[0];
148
+ array[offset + 1] = this[1];
149
+ array[offset + 2] = this[2];
150
+ array[offset + 3] = this[3];
151
+ return array;
152
+ }
153
+ }, {
154
+ key: "toVector3",
155
+ value: function toVector3() {
156
+ var result = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [-0, -0, -0];
157
+ result[0] = this[0];
158
+ result[1] = this[1];
159
+ result[2] = this[2];
160
+ return result;
161
+ }
162
+ }, {
163
+ key: "x",
164
+ get: function get() {
165
+ return this[0];
166
+ },
167
+ set: function set(value) {
168
+ this[0] = (0, _validators.checkNumber)(value);
169
+ }
170
+ }, {
171
+ key: "y",
172
+ get: function get() {
173
+ return this[1];
174
+ },
175
+ set: function set(value) {
176
+ this[1] = (0, _validators.checkNumber)(value);
177
+ }
178
+ }, {
179
+ key: "z",
180
+ get: function get() {
181
+ return this[2];
182
+ },
183
+ set: function set(value) {
184
+ this[2] = (0, _validators.checkNumber)(value);
185
+ }
186
+ }, {
187
+ key: "alpha",
188
+ get: function get() {
189
+ return this[0];
190
+ },
191
+ set: function set(value) {
192
+ this[0] = (0, _validators.checkNumber)(value);
193
+ }
194
+ }, {
195
+ key: "beta",
196
+ get: function get() {
197
+ return this[1];
198
+ },
199
+ set: function set(value) {
200
+ this[1] = (0, _validators.checkNumber)(value);
201
+ }
202
+ }, {
203
+ key: "gamma",
204
+ get: function get() {
205
+ return this[2];
206
+ },
207
+ set: function set(value) {
208
+ this[2] = (0, _validators.checkNumber)(value);
209
+ }
210
+ }, {
211
+ key: "phi",
212
+ get: function get() {
213
+ return this[0];
214
+ },
215
+ set: function set(value) {
216
+ this[0] = (0, _validators.checkNumber)(value);
217
+ }
218
+ }, {
219
+ key: "theta",
220
+ get: function get() {
221
+ return this[1];
222
+ },
223
+ set: function set(value) {
224
+ this[1] = (0, _validators.checkNumber)(value);
225
+ }
226
+ }, {
227
+ key: "psi",
228
+ get: function get() {
229
+ return this[2];
230
+ },
231
+ set: function set(value) {
232
+ this[2] = (0, _validators.checkNumber)(value);
233
+ }
234
+ }, {
235
+ key: "roll",
236
+ get: function get() {
237
+ return this[0];
238
+ },
239
+ set: function set(value) {
240
+ this[0] = (0, _validators.checkNumber)(value);
241
+ }
242
+ }, {
243
+ key: "pitch",
244
+ get: function get() {
245
+ return this[1];
246
+ },
247
+ set: function set(value) {
248
+ this[1] = (0, _validators.checkNumber)(value);
249
+ }
250
+ }, {
251
+ key: "yaw",
252
+ get: function get() {
253
+ return this[2];
254
+ },
255
+ set: function set(value) {
256
+ this[2] = (0, _validators.checkNumber)(value);
257
+ }
258
+ }, {
259
+ key: "order",
260
+ get: function get() {
261
+ return this[3];
262
+ },
263
+ set: function set(value) {
264
+ this[3] = checkOrder(value);
265
+ }
266
+ }, {
267
+ key: "fromVector3",
268
+ value: function fromVector3(v, order) {
269
+ return this.set(v[0], v[1], v[2], Number.isFinite(order) ? order : this[3]);
270
+ }
271
+ }, {
272
+ key: "fromArray",
273
+ value: function fromArray(array) {
274
+ var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
275
+ this[0] = array[0 + offset];
276
+ this[1] = array[1 + offset];
277
+ this[2] = array[2 + offset];
278
+
279
+ if (array[3] !== undefined) {
280
+ this[3] = array[3];
281
+ }
282
+
283
+ return this.check();
284
+ }
285
+ }, {
286
+ key: "fromRollPitchYaw",
287
+ value: function fromRollPitchYaw(roll, pitch, yaw) {
288
+ return this.set(roll, pitch, yaw, RotationOrder.ZYX);
289
+ }
290
+ }, {
291
+ key: "fromRotationMatrix",
292
+ value: function fromRotationMatrix(m) {
293
+ var order = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : Euler.DefaultOrder;
205
294
 
206
- set theta(value) {
207
- this[1] = (0, _validators.checkNumber)(value);
208
- }
295
+ this._fromRotationMatrix(m, order);
209
296
 
210
- get psi() {
211
- return this[2];
212
- }
297
+ return this.check();
298
+ }
299
+ }, {
300
+ key: "getRotationMatrix",
301
+ value: function getRotationMatrix(m) {
302
+ return this._getRotationMatrix(m);
303
+ }
304
+ }, {
305
+ key: "getQuaternion",
306
+ value: function getQuaternion() {
307
+ var q = new _quaternion2.default();
213
308
 
214
- set psi(value) {
215
- this[2] = (0, _validators.checkNumber)(value);
216
- }
309
+ switch (this[4]) {
310
+ case RotationOrder.XYZ:
311
+ return q.rotateX(this[0]).rotateY(this[1]).rotateZ(this[2]);
217
312
 
218
- get roll() {
219
- return this[0];
220
- }
313
+ case RotationOrder.YXZ:
314
+ return q.rotateY(this[0]).rotateX(this[1]).rotateZ(this[2]);
221
315
 
222
- set roll(value) {
223
- this[0] = (0, _validators.checkNumber)(value);
224
- }
316
+ case RotationOrder.ZXY:
317
+ return q.rotateZ(this[0]).rotateX(this[1]).rotateY(this[2]);
225
318
 
226
- get pitch() {
227
- return this[1];
228
- }
319
+ case RotationOrder.ZYX:
320
+ return q.rotateZ(this[0]).rotateY(this[1]).rotateX(this[2]);
229
321
 
230
- set pitch(value) {
231
- this[1] = (0, _validators.checkNumber)(value);
232
- }
322
+ case RotationOrder.YZX:
323
+ return q.rotateY(this[0]).rotateZ(this[1]).rotateX(this[2]);
233
324
 
234
- get yaw() {
235
- return this[2];
236
- }
325
+ case RotationOrder.XZY:
326
+ return q.rotateX(this[0]).rotateZ(this[1]).rotateY(this[2]);
237
327
 
238
- set yaw(value) {
239
- this[2] = (0, _validators.checkNumber)(value);
240
- }
328
+ default:
329
+ throw new Error(ERR_UNKNOWN_ORDER);
330
+ }
331
+ }
332
+ }, {
333
+ key: "_fromRotationMatrix",
334
+ value: function _fromRotationMatrix(m) {
335
+ var order = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : Euler.DefaultOrder;
336
+ var m11 = m[0],
337
+ m12 = m[4],
338
+ m13 = m[8];
339
+ var m21 = m[1],
340
+ m22 = m[5],
341
+ m23 = m[9];
342
+ var m31 = m[2],
343
+ m32 = m[6],
344
+ m33 = m[10];
345
+ order = order || this[3];
346
+
347
+ switch (order) {
348
+ case Euler.XYZ:
349
+ this[1] = Math.asin((0, _common.clamp)(m13, -1, 1));
350
+
351
+ if (Math.abs(m13) < ALMOST_ONE) {
352
+ this[0] = Math.atan2(-m23, m33);
353
+ this[2] = Math.atan2(-m12, m11);
354
+ } else {
355
+ this[0] = Math.atan2(m32, m22);
356
+ this[2] = 0;
357
+ }
241
358
 
242
- get order() {
243
- return this[3];
244
- }
359
+ break;
245
360
 
246
- set order(value) {
247
- this[3] = checkOrder(value);
248
- }
361
+ case Euler.YXZ:
362
+ this[0] = Math.asin(-(0, _common.clamp)(m23, -1, 1));
249
363
 
250
- fromVector3(v, order) {
251
- return this.set(v[0], v[1], v[2], Number.isFinite(order) ? order : this[3]);
252
- }
364
+ if (Math.abs(m23) < ALMOST_ONE) {
365
+ this[1] = Math.atan2(m13, m33);
366
+ this[2] = Math.atan2(m21, m22);
367
+ } else {
368
+ this[1] = Math.atan2(-m31, m11);
369
+ this[2] = 0;
370
+ }
253
371
 
254
- fromArray(array, offset = 0) {
255
- this[0] = array[0 + offset];
256
- this[1] = array[1 + offset];
257
- this[2] = array[2 + offset];
372
+ break;
258
373
 
259
- if (array[3] !== undefined) {
260
- this[3] = array[3];
261
- }
374
+ case Euler.ZXY:
375
+ this[0] = Math.asin((0, _common.clamp)(m32, -1, 1));
262
376
 
263
- return this.check();
264
- }
377
+ if (Math.abs(m32) < ALMOST_ONE) {
378
+ this[1] = Math.atan2(-m31, m33);
379
+ this[2] = Math.atan2(-m12, m22);
380
+ } else {
381
+ this[1] = 0;
382
+ this[2] = Math.atan2(m21, m11);
383
+ }
265
384
 
266
- fromRollPitchYaw(roll, pitch, yaw) {
267
- return this.set(roll, pitch, yaw, Euler.ZYX);
268
- }
385
+ break;
269
386
 
270
- fromRotationMatrix(m, order = Euler.DefaultOrder) {
271
- this._fromRotationMatrix(m, order);
387
+ case Euler.ZYX:
388
+ this[1] = Math.asin(-(0, _common.clamp)(m31, -1, 1));
272
389
 
273
- return this.check();
274
- }
390
+ if (Math.abs(m31) < ALMOST_ONE) {
391
+ this[0] = Math.atan2(m32, m33);
392
+ this[2] = Math.atan2(m21, m11);
393
+ } else {
394
+ this[0] = 0;
395
+ this[2] = Math.atan2(-m12, m22);
396
+ }
275
397
 
276
- getRotationMatrix(m) {
277
- return this._getRotationMatrix(m);
278
- }
398
+ break;
279
399
 
280
- getQuaternion() {
281
- const q = new _quaternion.default();
400
+ case Euler.YZX:
401
+ this[2] = Math.asin((0, _common.clamp)(m21, -1, 1));
282
402
 
283
- switch (this[3]) {
284
- case Euler.XYZ:
285
- return q.rotateX(this[0]).rotateY(this[1]).rotateZ(this[2]);
403
+ if (Math.abs(m21) < ALMOST_ONE) {
404
+ this[0] = Math.atan2(-m23, m22);
405
+ this[1] = Math.atan2(-m31, m11);
406
+ } else {
407
+ this[0] = 0;
408
+ this[1] = Math.atan2(m13, m33);
409
+ }
286
410
 
287
- case Euler.YXZ:
288
- return q.rotateY(this[0]).rotateX(this[1]).rotateZ(this[2]);
411
+ break;
289
412
 
290
- case Euler.ZXY:
291
- return q.rotateZ(this[0]).rotateX(this[1]).rotateY(this[2]);
413
+ case Euler.XZY:
414
+ this[2] = Math.asin(-(0, _common.clamp)(m12, -1, 1));
292
415
 
293
- case Euler.ZYX:
294
- return q.rotateZ(this[0]).rotateY(this[1]).rotateX(this[2]);
416
+ if (Math.abs(m12) < ALMOST_ONE) {
417
+ this[0] = Math.atan2(m32, m22);
418
+ this[1] = Math.atan2(m13, m11);
419
+ } else {
420
+ this[0] = Math.atan2(-m23, m33);
421
+ this[1] = 0;
422
+ }
295
423
 
296
- case Euler.YZX:
297
- return q.rotateY(this[0]).rotateZ(this[1]).rotateX(this[2]);
424
+ break;
298
425
 
299
- case Euler.XZY:
300
- return q.rotateX(this[0]).rotateZ(this[1]).rotateY(this[2]);
426
+ default:
427
+ throw new Error(ERR_UNKNOWN_ORDER);
428
+ }
301
429
 
302
- default:
303
- throw new Error(ERR_UNKNOWN_ORDER);
430
+ this[3] = order;
431
+ return this;
304
432
  }
305
- }
306
-
307
- _fromRotationMatrix(m, order = Euler.DefaultOrder) {
308
- const te = m.elements;
309
- const m11 = te[0],
310
- m12 = te[4],
311
- m13 = te[8];
312
- const m21 = te[1],
313
- m22 = te[5],
314
- m23 = te[9];
315
- const m31 = te[2],
316
- m32 = te[6],
317
- m33 = te[10];
318
- order = order || this[3];
319
-
320
- switch (order) {
321
- case Euler.XYZ:
322
- this[1] = Math.asin((0, _common.clamp)(m13, -1, 1));
323
-
324
- if (Math.abs(m13) < ALMOST_ONE) {
325
- this[0] = Math.atan2(-m23, m33);
326
- this[2] = Math.atan2(-m12, m11);
327
- } else {
328
- this[0] = Math.atan2(m32, m22);
329
- this[2] = 0;
330
- }
331
-
332
- break;
333
-
334
- case Euler.YXZ:
335
- this[0] = Math.asin(-(0, _common.clamp)(m23, -1, 1));
336
-
337
- if (Math.abs(m23) < ALMOST_ONE) {
338
- this[1] = Math.atan2(m13, m33);
339
- this[2] = Math.atan2(m21, m22);
340
- } else {
341
- this[1] = Math.atan2(-m31, m11);
342
- this[2] = 0;
343
- }
344
-
345
- break;
346
-
347
- case Euler.ZXY:
348
- this[0] = Math.asin((0, _common.clamp)(m32, -1, 1));
349
-
350
- if (Math.abs(m32) < ALMOST_ONE) {
351
- this[1] = Math.atan2(-m31, m33);
352
- this[2] = Math.atan2(-m12, m22);
353
- } else {
354
- this[1] = 0;
355
- this[2] = Math.atan2(m21, m11);
356
- }
357
-
358
- break;
359
-
360
- case Euler.ZYX:
361
- this[1] = Math.asin(-(0, _common.clamp)(m31, -1, 1));
362
-
363
- if (Math.abs(m31) < ALMOST_ONE) {
364
- this[0] = Math.atan2(m32, m33);
365
- this[2] = Math.atan2(m21, m11);
366
- } else {
367
- this[0] = 0;
368
- this[2] = Math.atan2(-m12, m22);
369
- }
370
-
371
- break;
372
-
373
- case Euler.YZX:
374
- this[2] = Math.asin((0, _common.clamp)(m21, -1, 1));
375
-
376
- if (Math.abs(m21) < ALMOST_ONE) {
377
- this[0] = Math.atan2(-m23, m22);
378
- this[1] = Math.atan2(-m31, m11);
379
- } else {
380
- this[0] = 0;
381
- this[1] = Math.atan2(m13, m33);
382
- }
383
-
384
- break;
385
-
386
- case Euler.XZY:
387
- this[2] = Math.asin(-(0, _common.clamp)(m12, -1, 1));
388
-
389
- if (Math.abs(m12) < ALMOST_ONE) {
390
- this[0] = Math.atan2(m32, m22);
391
- this[1] = Math.atan2(m13, m11);
392
- } else {
393
- this[0] = Math.atan2(-m23, m33);
394
- this[1] = 0;
395
- }
396
-
397
- break;
398
-
399
- default:
400
- throw new Error(ERR_UNKNOWN_ORDER);
401
- }
402
-
403
- this[3] = order;
404
- return this;
405
- }
406
-
407
- _getRotationMatrix(result) {
408
- const te = result || [-0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0];
409
- const x = this.x,
433
+ }, {
434
+ key: "_getRotationMatrix",
435
+ value: function _getRotationMatrix(result) {
436
+ var te = result || [-0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0, -0];
437
+ var x = this.x,
410
438
  y = this.y,
411
439
  z = this.z;
412
- const a = Math.cos(x);
413
- const c = Math.cos(y);
414
- const e = Math.cos(z);
415
- const b = Math.sin(x);
416
- const d = Math.sin(y);
417
- const f = Math.sin(z);
418
-
419
- switch (this[3]) {
420
- case Euler.XYZ:
421
- {
422
- const ae = a * e,
440
+ var a = Math.cos(x);
441
+ var c = Math.cos(y);
442
+ var e = Math.cos(z);
443
+ var b = Math.sin(x);
444
+ var d = Math.sin(y);
445
+ var f = Math.sin(z);
446
+
447
+ switch (this[3]) {
448
+ case Euler.XYZ:
449
+ {
450
+ var ae = a * e,
423
451
  af = a * f,
424
452
  be = b * e,
425
453
  bf = b * f;
426
- te[0] = c * e;
427
- te[4] = -c * f;
428
- te[8] = d;
429
- te[1] = af + be * d;
430
- te[5] = ae - bf * d;
431
- te[9] = -b * c;
432
- te[2] = bf - ae * d;
433
- te[6] = be + af * d;
434
- te[10] = a * c;
435
- break;
436
- }
437
-
438
- case Euler.YXZ:
439
- {
440
- const ce = c * e,
454
+ te[0] = c * e;
455
+ te[4] = -c * f;
456
+ te[8] = d;
457
+ te[1] = af + be * d;
458
+ te[5] = ae - bf * d;
459
+ te[9] = -b * c;
460
+ te[2] = bf - ae * d;
461
+ te[6] = be + af * d;
462
+ te[10] = a * c;
463
+ break;
464
+ }
465
+
466
+ case Euler.YXZ:
467
+ {
468
+ var ce = c * e,
441
469
  cf = c * f,
442
470
  de = d * e,
443
471
  df = d * f;
444
- te[0] = ce + df * b;
445
- te[4] = de * b - cf;
446
- te[8] = a * d;
447
- te[1] = a * f;
448
- te[5] = a * e;
449
- te[9] = -b;
450
- te[2] = cf * b - de;
451
- te[6] = df + ce * b;
452
- te[10] = a * c;
453
- break;
454
- }
455
-
456
- case Euler.ZXY:
457
- {
458
- const ce = c * e,
459
- cf = c * f,
460
- de = d * e,
461
- df = d * f;
462
- te[0] = ce - df * b;
463
- te[4] = -a * f;
464
- te[8] = de + cf * b;
465
- te[1] = cf + de * b;
466
- te[5] = a * e;
467
- te[9] = df - ce * b;
468
- te[2] = -a * d;
469
- te[6] = b;
470
- te[10] = a * c;
471
- break;
472
- }
473
-
474
- case Euler.ZYX:
475
- {
476
- const ae = a * e,
477
- af = a * f,
478
- be = b * e,
479
- bf = b * f;
480
- te[0] = c * e;
481
- te[4] = be * d - af;
482
- te[8] = ae * d + bf;
483
- te[1] = c * f;
484
- te[5] = bf * d + ae;
485
- te[9] = af * d - be;
486
- te[2] = -d;
487
- te[6] = b * c;
488
- te[10] = a * c;
489
- break;
490
- }
491
-
492
- case Euler.YZX:
493
- {
494
- const ac = a * c,
495
- ad = a * d,
496
- bc = b * c,
497
- bd = b * d;
498
- te[0] = c * e;
499
- te[4] = bd - ac * f;
500
- te[8] = bc * f + ad;
501
- te[1] = f;
502
- te[5] = a * e;
503
- te[9] = -b * e;
504
- te[2] = -d * e;
505
- te[6] = ad * f + bc;
506
- te[10] = ac - bd * f;
507
- break;
508
- }
509
-
510
- case Euler.XZY:
511
- {
512
- const ac = a * c,
472
+ te[0] = ce + df * b;
473
+ te[4] = de * b - cf;
474
+ te[8] = a * d;
475
+ te[1] = a * f;
476
+ te[5] = a * e;
477
+ te[9] = -b;
478
+ te[2] = cf * b - de;
479
+ te[6] = df + ce * b;
480
+ te[10] = a * c;
481
+ break;
482
+ }
483
+
484
+ case Euler.ZXY:
485
+ {
486
+ var _ce = c * e,
487
+ _cf = c * f,
488
+ _de = d * e,
489
+ _df = d * f;
490
+
491
+ te[0] = _ce - _df * b;
492
+ te[4] = -a * f;
493
+ te[8] = _de + _cf * b;
494
+ te[1] = _cf + _de * b;
495
+ te[5] = a * e;
496
+ te[9] = _df - _ce * b;
497
+ te[2] = -a * d;
498
+ te[6] = b;
499
+ te[10] = a * c;
500
+ break;
501
+ }
502
+
503
+ case Euler.ZYX:
504
+ {
505
+ var _ae = a * e,
506
+ _af = a * f,
507
+ _be = b * e,
508
+ _bf = b * f;
509
+
510
+ te[0] = c * e;
511
+ te[4] = _be * d - _af;
512
+ te[8] = _ae * d + _bf;
513
+ te[1] = c * f;
514
+ te[5] = _bf * d + _ae;
515
+ te[9] = _af * d - _be;
516
+ te[2] = -d;
517
+ te[6] = b * c;
518
+ te[10] = a * c;
519
+ break;
520
+ }
521
+
522
+ case Euler.YZX:
523
+ {
524
+ var ac = a * c,
513
525
  ad = a * d,
514
526
  bc = b * c,
515
527
  bd = b * d;
516
- te[0] = c * e;
517
- te[4] = -f;
518
- te[8] = d * e;
519
- te[1] = ac * f + bd;
520
- te[5] = a * e;
521
- te[9] = ad * f - bc;
522
- te[2] = bc * f - ad;
523
- te[6] = b * e;
524
- te[10] = bd * f + ac;
525
- break;
526
- }
527
-
528
- default:
529
- throw new Error(ERR_UNKNOWN_ORDER);
528
+ te[0] = c * e;
529
+ te[4] = bd - ac * f;
530
+ te[8] = bc * f + ad;
531
+ te[1] = f;
532
+ te[5] = a * e;
533
+ te[9] = -b * e;
534
+ te[2] = -d * e;
535
+ te[6] = ad * f + bc;
536
+ te[10] = ac - bd * f;
537
+ break;
538
+ }
539
+
540
+ case Euler.XZY:
541
+ {
542
+ var _ac = a * c,
543
+ _ad = a * d,
544
+ _bc = b * c,
545
+ _bd = b * d;
546
+
547
+ te[0] = c * e;
548
+ te[4] = -f;
549
+ te[8] = d * e;
550
+ te[1] = _ac * f + _bd;
551
+ te[5] = a * e;
552
+ te[9] = _ad * f - _bc;
553
+ te[2] = _bc * f - _ad;
554
+ te[6] = b * e;
555
+ te[10] = _bd * f + _ac;
556
+ break;
557
+ }
558
+
559
+ default:
560
+ throw new Error(ERR_UNKNOWN_ORDER);
561
+ }
562
+
563
+ te[3] = 0;
564
+ te[7] = 0;
565
+ te[11] = 0;
566
+ te[12] = 0;
567
+ te[13] = 0;
568
+ te[14] = 0;
569
+ te[15] = 1;
570
+ return te;
571
+ }
572
+ }, {
573
+ key: "toQuaternion",
574
+ value: function toQuaternion() {
575
+ var cy = Math.cos(this.yaw * 0.5);
576
+ var sy = Math.sin(this.yaw * 0.5);
577
+ var cr = Math.cos(this.roll * 0.5);
578
+ var sr = Math.sin(this.roll * 0.5);
579
+ var cp = Math.cos(this.pitch * 0.5);
580
+ var sp = Math.sin(this.pitch * 0.5);
581
+ var w = cy * cr * cp + sy * sr * sp;
582
+ var x = cy * sr * cp - sy * cr * sp;
583
+ var y = cy * cr * sp + sy * sr * cp;
584
+ var z = sy * cr * cp - cy * sr * sp;
585
+ return new _quaternion2.default(x, y, z, w);
586
+ }
587
+ }], [{
588
+ key: "ZYX",
589
+ get: function get() {
590
+ return RotationOrder.ZYX;
530
591
  }
592
+ }, {
593
+ key: "YXZ",
594
+ get: function get() {
595
+ return RotationOrder.YXZ;
596
+ }
597
+ }, {
598
+ key: "XZY",
599
+ get: function get() {
600
+ return RotationOrder.XZY;
601
+ }
602
+ }, {
603
+ key: "ZXY",
604
+ get: function get() {
605
+ return RotationOrder.ZXY;
606
+ }
607
+ }, {
608
+ key: "YZX",
609
+ get: function get() {
610
+ return RotationOrder.YZX;
611
+ }
612
+ }, {
613
+ key: "XYZ",
614
+ get: function get() {
615
+ return RotationOrder.XYZ;
616
+ }
617
+ }, {
618
+ key: "RollPitchYaw",
619
+ get: function get() {
620
+ return RotationOrder.ZYX;
621
+ }
622
+ }, {
623
+ key: "DefaultOrder",
624
+ get: function get() {
625
+ return RotationOrder.ZYX;
626
+ }
627
+ }, {
628
+ key: "RotationOrders",
629
+ get: function get() {
630
+ return RotationOrder;
631
+ }
632
+ }, {
633
+ key: "rotationOrder",
634
+ value: function rotationOrder(order) {
635
+ return RotationOrder[order];
636
+ }
637
+ }]);
638
+ return Euler;
639
+ }(_mathArray.default);
531
640
 
532
- te[3] = 0;
533
- te[7] = 0;
534
- te[11] = 0;
535
- te[12] = 0;
536
- te[13] = 0;
537
- te[14] = 0;
538
- te[15] = 1;
539
- return te;
540
- }
641
+ exports.default = Euler;
541
642
 
542
- toQuaternion() {
543
- const cy = Math.cos(this.yaw * 0.5);
544
- const sy = Math.sin(this.yaw * 0.5);
545
- const cr = Math.cos(this.roll * 0.5);
546
- const sr = Math.sin(this.roll * 0.5);
547
- const cp = Math.cos(this.pitch * 0.5);
548
- const sp = Math.sin(this.pitch * 0.5);
549
- const w = cy * cr * cp + sy * sr * sp;
550
- const x = cy * sr * cp - sy * cr * sp;
551
- const y = cy * cr * sp + sy * sr * cp;
552
- const z = sy * cr * cp - cy * sr * sp;
553
- return new _quaternion.default(x, y, z, w);
643
+ function validateOrder(value) {
644
+ return value >= 0 && value < 6;
645
+ }
646
+
647
+ function checkOrder(value) {
648
+ if (value < 0 && value >= 6) {
649
+ throw new Error(ERR_UNKNOWN_ORDER);
554
650
  }
555
651
 
652
+ return value;
556
653
  }
557
-
558
- exports.default = Euler;
559
654
  //# sourceMappingURL=euler.js.map