@math.gl/core 4.2.0-alpha.5 → 4.2.0-alpha.6
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.
- package/dist/classes/euler.d.ts +37 -25
- package/dist/classes/euler.d.ts.map +1 -1
- package/dist/classes/euler.js +99 -54
- package/dist/classes/euler.js.map +1 -1
- package/dist/classes/pose.d.ts.map +1 -1
- package/dist/classes/pose.js +2 -3
- package/dist/classes/pose.js.map +1 -1
- package/dist/index.cjs +102 -55
- package/dist/index.cjs.map +2 -2
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
- package/src/classes/euler.ts +111 -60
- package/src/classes/pose.ts +2 -3
- package/src/index.ts +1 -0
package/dist/classes/euler.d.ts
CHANGED
|
@@ -1,25 +1,37 @@
|
|
|
1
1
|
import { MathArray } from "./base/math-array.js";
|
|
2
2
|
import { Quaternion } from "./quaternion.js";
|
|
3
3
|
import { NumericArray } from '@math.gl/types';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
4
|
+
/** Order in which Euler rotations are applied. */
|
|
5
|
+
export type EulerRotationOrder = 'zyx' | 'yxz' | 'xzy' | 'zxy' | 'yzx' | 'xyz';
|
|
6
|
+
declare const ROTATION_ORDERS: {
|
|
7
|
+
readonly ZYX: "zyx";
|
|
8
|
+
readonly YXZ: "yxz";
|
|
9
|
+
readonly XZY: "xzy";
|
|
10
|
+
readonly ZXY: "zxy";
|
|
11
|
+
readonly YZX: "yzx";
|
|
12
|
+
readonly XYZ: "xyz";
|
|
13
|
+
};
|
|
12
14
|
export declare class Euler extends MathArray {
|
|
13
|
-
|
|
14
|
-
static get
|
|
15
|
-
|
|
16
|
-
static get
|
|
17
|
-
|
|
18
|
-
static get
|
|
19
|
-
|
|
20
|
-
static get
|
|
21
|
-
|
|
22
|
-
static
|
|
15
|
+
/** @deprecated Pass the string `'zyx'` directly. */
|
|
16
|
+
static get ZYX(): EulerRotationOrder;
|
|
17
|
+
/** @deprecated Pass the string `'yxz'` directly. */
|
|
18
|
+
static get YXZ(): EulerRotationOrder;
|
|
19
|
+
/** @deprecated Pass the string `'xzy'` directly. */
|
|
20
|
+
static get XZY(): EulerRotationOrder;
|
|
21
|
+
/** @deprecated Pass the string `'zxy'` directly. */
|
|
22
|
+
static get ZXY(): EulerRotationOrder;
|
|
23
|
+
/** @deprecated Pass the string `'yzx'` directly. */
|
|
24
|
+
static get YZX(): EulerRotationOrder;
|
|
25
|
+
/** @deprecated Pass the string `'xyz'` directly. */
|
|
26
|
+
static get XYZ(): EulerRotationOrder;
|
|
27
|
+
/** @deprecated Pass the string `'zyx'` directly. */
|
|
28
|
+
static get RollPitchYaw(): EulerRotationOrder;
|
|
29
|
+
/** @deprecated Pass the string `'zyx'` directly. */
|
|
30
|
+
static get DefaultOrder(): EulerRotationOrder;
|
|
31
|
+
/** @deprecated Pass an {@link EulerRotationOrder} string directly. */
|
|
32
|
+
static get RotationOrders(): typeof ROTATION_ORDERS;
|
|
33
|
+
/** @deprecated Euler rotation orders are already represented as strings. */
|
|
34
|
+
static rotationOrder(order: EulerRotationOrder): EulerRotationOrder;
|
|
23
35
|
get ELEMENTS(): number;
|
|
24
36
|
/**
|
|
25
37
|
* @class
|
|
@@ -28,11 +40,11 @@ export declare class Euler extends MathArray {
|
|
|
28
40
|
* @param {Number=} [z]
|
|
29
41
|
* @param {Number=} [order]
|
|
30
42
|
*/
|
|
31
|
-
constructor(x?: number, y?: number, z?: number, order?:
|
|
43
|
+
constructor(x?: number, y?: number, z?: number, order?: EulerRotationOrder);
|
|
32
44
|
fromQuaternion(quaternion: Readonly<NumericArray>): this;
|
|
33
45
|
fromObject(object: Record<string, unknown>): this;
|
|
34
46
|
copy(array: Readonly<NumericArray>): this;
|
|
35
|
-
set(x: number, y: number, z: number, order:
|
|
47
|
+
set(x: number, y: number, z: number, order: EulerRotationOrder): this;
|
|
36
48
|
validate(): boolean;
|
|
37
49
|
toArray(array?: NumericArray, offset?: number): NumericArray;
|
|
38
50
|
toArray4(array?: NumericArray, offset?: number): NumericArray;
|
|
@@ -61,15 +73,15 @@ export declare class Euler extends MathArray {
|
|
|
61
73
|
set pitch(value: number);
|
|
62
74
|
get yaw(): number;
|
|
63
75
|
set yaw(value: number);
|
|
64
|
-
get order():
|
|
65
|
-
set order(value:
|
|
66
|
-
fromVector3(v: Readonly<NumericArray>, order
|
|
76
|
+
get order(): EulerRotationOrder;
|
|
77
|
+
set order(value: EulerRotationOrder);
|
|
78
|
+
fromVector3(v: Readonly<NumericArray>, order?: EulerRotationOrder): this;
|
|
67
79
|
fromArray(array: Readonly<NumericArray>, offset?: number): this;
|
|
68
80
|
fromRollPitchYaw(roll: number, pitch: number, yaw: number): this;
|
|
69
|
-
fromRotationMatrix(m: Readonly<NumericArray>, order?:
|
|
81
|
+
fromRotationMatrix(m: Readonly<NumericArray>, order?: EulerRotationOrder): this;
|
|
70
82
|
getRotationMatrix(m: NumericArray): NumericArray;
|
|
71
83
|
getQuaternion(): Quaternion;
|
|
72
|
-
_fromRotationMatrix(m: Readonly<NumericArray>, order?:
|
|
84
|
+
_fromRotationMatrix(m: Readonly<NumericArray>, order?: EulerRotationOrder): this;
|
|
73
85
|
_getRotationMatrix(result: NumericArray): NumericArray;
|
|
74
86
|
toQuaternion(): Quaternion;
|
|
75
87
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"euler.d.ts","sourceRoot":"","sources":["../../src/classes/euler.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,SAAS,EAAC,6BAA0B;AAC5C,OAAO,EAAC,UAAU,EAAC,wBAAqB;AACxC,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"euler.d.ts","sourceRoot":"","sources":["../../src/classes/euler.ts"],"names":[],"mappings":"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"}
|
package/dist/classes/euler.js
CHANGED
|
@@ -9,47 +9,72 @@ import { checkNumber } from "../lib/validators.js";
|
|
|
9
9
|
// Internal constants
|
|
10
10
|
const ERR_UNKNOWN_ORDER = 'Unknown Euler angle order';
|
|
11
11
|
const ALMOST_ONE = 0.99999;
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
12
|
+
var RotationOrderIndex;
|
|
13
|
+
(function (RotationOrderIndex) {
|
|
14
|
+
RotationOrderIndex[RotationOrderIndex["ZYX"] = 0] = "ZYX";
|
|
15
|
+
RotationOrderIndex[RotationOrderIndex["YXZ"] = 1] = "YXZ";
|
|
16
|
+
RotationOrderIndex[RotationOrderIndex["XZY"] = 2] = "XZY";
|
|
17
|
+
RotationOrderIndex[RotationOrderIndex["ZXY"] = 3] = "ZXY";
|
|
18
|
+
RotationOrderIndex[RotationOrderIndex["YZX"] = 4] = "YZX";
|
|
19
|
+
RotationOrderIndex[RotationOrderIndex["XYZ"] = 5] = "XYZ";
|
|
20
|
+
})(RotationOrderIndex || (RotationOrderIndex = {}));
|
|
21
|
+
const ROTATION_ORDER_INDICES = {
|
|
22
|
+
zyx: RotationOrderIndex.ZYX,
|
|
23
|
+
yxz: RotationOrderIndex.YXZ,
|
|
24
|
+
xzy: RotationOrderIndex.XZY,
|
|
25
|
+
zxy: RotationOrderIndex.ZXY,
|
|
26
|
+
yzx: RotationOrderIndex.YZX,
|
|
27
|
+
xyz: RotationOrderIndex.XYZ
|
|
28
|
+
};
|
|
29
|
+
const ROTATION_ORDERS = {
|
|
30
|
+
ZYX: 'zyx',
|
|
31
|
+
YXZ: 'yxz',
|
|
32
|
+
XZY: 'xzy',
|
|
33
|
+
ZXY: 'zxy',
|
|
34
|
+
YZX: 'yzx',
|
|
35
|
+
XYZ: 'xyz'
|
|
36
|
+
};
|
|
22
37
|
export class Euler extends MathArray {
|
|
23
38
|
// Constants
|
|
39
|
+
/** @deprecated Pass the string `'zyx'` directly. */
|
|
24
40
|
static get ZYX() {
|
|
25
|
-
return
|
|
41
|
+
return 'zyx';
|
|
26
42
|
}
|
|
43
|
+
/** @deprecated Pass the string `'yxz'` directly. */
|
|
27
44
|
static get YXZ() {
|
|
28
|
-
return
|
|
45
|
+
return 'yxz';
|
|
29
46
|
}
|
|
47
|
+
/** @deprecated Pass the string `'xzy'` directly. */
|
|
30
48
|
static get XZY() {
|
|
31
|
-
return
|
|
49
|
+
return 'xzy';
|
|
32
50
|
}
|
|
51
|
+
/** @deprecated Pass the string `'zxy'` directly. */
|
|
33
52
|
static get ZXY() {
|
|
34
|
-
return
|
|
53
|
+
return 'zxy';
|
|
35
54
|
}
|
|
55
|
+
/** @deprecated Pass the string `'yzx'` directly. */
|
|
36
56
|
static get YZX() {
|
|
37
|
-
return
|
|
57
|
+
return 'yzx';
|
|
38
58
|
}
|
|
59
|
+
/** @deprecated Pass the string `'xyz'` directly. */
|
|
39
60
|
static get XYZ() {
|
|
40
|
-
return
|
|
61
|
+
return 'xyz';
|
|
41
62
|
}
|
|
63
|
+
/** @deprecated Pass the string `'zyx'` directly. */
|
|
42
64
|
static get RollPitchYaw() {
|
|
43
|
-
return
|
|
65
|
+
return 'zyx';
|
|
44
66
|
}
|
|
67
|
+
/** @deprecated Pass the string `'zyx'` directly. */
|
|
45
68
|
static get DefaultOrder() {
|
|
46
|
-
return
|
|
69
|
+
return 'zyx';
|
|
47
70
|
}
|
|
71
|
+
/** @deprecated Pass an {@link EulerRotationOrder} string directly. */
|
|
48
72
|
static get RotationOrders() {
|
|
49
|
-
return
|
|
73
|
+
return ROTATION_ORDERS;
|
|
50
74
|
}
|
|
75
|
+
/** @deprecated Euler rotation orders are already represented as strings. */
|
|
51
76
|
static rotationOrder(order) {
|
|
52
|
-
return
|
|
77
|
+
return order;
|
|
53
78
|
}
|
|
54
79
|
get ELEMENTS() {
|
|
55
80
|
return 4;
|
|
@@ -61,7 +86,7 @@ export class Euler extends MathArray {
|
|
|
61
86
|
* @param {Number=} [z]
|
|
62
87
|
* @param {Number=} [order]
|
|
63
88
|
*/
|
|
64
|
-
constructor(x = 0, y = 0, z = 0, order =
|
|
89
|
+
constructor(x = 0, y = 0, z = 0, order = 'zyx') {
|
|
65
90
|
// PERF NOTE: initialize elements as double precision numbers
|
|
66
91
|
super(-0, -0, -0, -0);
|
|
67
92
|
// eslint-disable-next-line prefer-rest-params
|
|
@@ -87,7 +112,7 @@ export class Euler extends MathArray {
|
|
|
87
112
|
const roll = Math.atan2(t3, t4);
|
|
88
113
|
const pitch = Math.asin(t2);
|
|
89
114
|
const yaw = Math.atan2(t1, t0);
|
|
90
|
-
return this.set(roll, pitch, yaw,
|
|
115
|
+
return this.set(roll, pitch, yaw, 'zyx');
|
|
91
116
|
}
|
|
92
117
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
93
118
|
fromObject(object) {
|
|
@@ -103,8 +128,9 @@ export class Euler extends MathArray {
|
|
|
103
128
|
this[0] = array[0];
|
|
104
129
|
this[1] = array[1];
|
|
105
130
|
this[2] = array[2];
|
|
106
|
-
|
|
107
|
-
|
|
131
|
+
if (Number.isFinite(array[3]) && validateOrder(array[3])) {
|
|
132
|
+
this[3] = array[3];
|
|
133
|
+
}
|
|
108
134
|
return this.check();
|
|
109
135
|
}
|
|
110
136
|
// Sets the three angles, and optionally sets the rotation order
|
|
@@ -113,7 +139,7 @@ export class Euler extends MathArray {
|
|
|
113
139
|
this[0] = x;
|
|
114
140
|
this[1] = y;
|
|
115
141
|
this[2] = z;
|
|
116
|
-
this[3] =
|
|
142
|
+
this[3] = order ? checkOrder(order) : this[3];
|
|
117
143
|
return this.check();
|
|
118
144
|
}
|
|
119
145
|
validate() {
|
|
@@ -222,14 +248,14 @@ export class Euler extends MathArray {
|
|
|
222
248
|
}
|
|
223
249
|
// rotation order, in all three angle notations
|
|
224
250
|
get order() {
|
|
225
|
-
return this[3];
|
|
251
|
+
return getOrder(this[3]);
|
|
226
252
|
}
|
|
227
253
|
set order(value) {
|
|
228
254
|
this[3] = checkOrder(value);
|
|
229
255
|
}
|
|
230
256
|
// Constructors
|
|
231
|
-
fromVector3(v, order) {
|
|
232
|
-
return this.set(v[0], v[1], v[2],
|
|
257
|
+
fromVector3(v, order = this.order) {
|
|
258
|
+
return this.set(v[0], v[1], v[2], order);
|
|
233
259
|
}
|
|
234
260
|
// TODO - with and without 4th element
|
|
235
261
|
fromArray(array, offset = 0) {
|
|
@@ -243,9 +269,9 @@ export class Euler extends MathArray {
|
|
|
243
269
|
}
|
|
244
270
|
// Common ZYX rotation order
|
|
245
271
|
fromRollPitchYaw(roll, pitch, yaw) {
|
|
246
|
-
return this.set(roll, pitch, yaw,
|
|
272
|
+
return this.set(roll, pitch, yaw, 'zyx');
|
|
247
273
|
}
|
|
248
|
-
fromRotationMatrix(m, order =
|
|
274
|
+
fromRotationMatrix(m, order = 'zyx') {
|
|
249
275
|
this._fromRotationMatrix(m, order);
|
|
250
276
|
return this.check();
|
|
251
277
|
}
|
|
@@ -257,17 +283,17 @@ export class Euler extends MathArray {
|
|
|
257
283
|
getQuaternion() {
|
|
258
284
|
const q = new Quaternion();
|
|
259
285
|
switch (this[3]) {
|
|
260
|
-
case
|
|
286
|
+
case RotationOrderIndex.XYZ:
|
|
261
287
|
return q.rotateX(this[0]).rotateY(this[1]).rotateZ(this[2]);
|
|
262
|
-
case
|
|
288
|
+
case RotationOrderIndex.YXZ:
|
|
263
289
|
return q.rotateY(this[1]).rotateX(this[0]).rotateZ(this[2]);
|
|
264
|
-
case
|
|
290
|
+
case RotationOrderIndex.ZXY:
|
|
265
291
|
return q.rotateZ(this[2]).rotateX(this[0]).rotateY(this[1]);
|
|
266
|
-
case
|
|
292
|
+
case RotationOrderIndex.ZYX:
|
|
267
293
|
return q.rotateZ(this[2]).rotateY(this[1]).rotateX(this[0]);
|
|
268
|
-
case
|
|
294
|
+
case RotationOrderIndex.YZX:
|
|
269
295
|
return q.rotateY(this[1]).rotateZ(this[2]).rotateX(this[0]);
|
|
270
|
-
case
|
|
296
|
+
case RotationOrderIndex.XZY:
|
|
271
297
|
return q.rotateX(this[0]).rotateZ(this[2]).rotateY(this[1]);
|
|
272
298
|
default:
|
|
273
299
|
throw new Error(ERR_UNKNOWN_ORDER);
|
|
@@ -281,14 +307,14 @@ export class Euler extends MathArray {
|
|
|
281
307
|
// const q = new Quaternion().setFromEuler(this);
|
|
282
308
|
// return this.setFromQuaternion(q, newOrder);
|
|
283
309
|
/* eslint-disable complexity, max-statements, one-var */
|
|
284
|
-
_fromRotationMatrix(m, order =
|
|
310
|
+
_fromRotationMatrix(m, order = 'zyx') {
|
|
285
311
|
// assumes the upper 3x3 of m is a pure rotation matrix (i.e, unscaled)
|
|
286
312
|
const m11 = m[0], m12 = m[4], m13 = m[8];
|
|
287
313
|
const m21 = m[1], m22 = m[5], m23 = m[9];
|
|
288
314
|
const m31 = m[2], m32 = m[6], m33 = m[10];
|
|
289
|
-
|
|
290
|
-
switch (
|
|
291
|
-
case
|
|
315
|
+
const orderIndex = order ? checkOrder(order) : this[3];
|
|
316
|
+
switch (orderIndex) {
|
|
317
|
+
case RotationOrderIndex.XYZ:
|
|
292
318
|
this[1] = Math.asin(clamp(m13, -1, 1));
|
|
293
319
|
if (Math.abs(m13) < ALMOST_ONE) {
|
|
294
320
|
this[0] = Math.atan2(-m23, m33);
|
|
@@ -299,7 +325,7 @@ export class Euler extends MathArray {
|
|
|
299
325
|
this[2] = 0;
|
|
300
326
|
}
|
|
301
327
|
break;
|
|
302
|
-
case
|
|
328
|
+
case RotationOrderIndex.YXZ:
|
|
303
329
|
this[0] = Math.asin(-clamp(m23, -1, 1));
|
|
304
330
|
if (Math.abs(m23) < ALMOST_ONE) {
|
|
305
331
|
this[1] = Math.atan2(m13, m33);
|
|
@@ -310,7 +336,7 @@ export class Euler extends MathArray {
|
|
|
310
336
|
this[2] = 0;
|
|
311
337
|
}
|
|
312
338
|
break;
|
|
313
|
-
case
|
|
339
|
+
case RotationOrderIndex.ZXY:
|
|
314
340
|
this[0] = Math.asin(clamp(m32, -1, 1));
|
|
315
341
|
if (Math.abs(m32) < ALMOST_ONE) {
|
|
316
342
|
this[1] = Math.atan2(-m31, m33);
|
|
@@ -321,7 +347,7 @@ export class Euler extends MathArray {
|
|
|
321
347
|
this[2] = Math.atan2(m21, m11);
|
|
322
348
|
}
|
|
323
349
|
break;
|
|
324
|
-
case
|
|
350
|
+
case RotationOrderIndex.ZYX:
|
|
325
351
|
this[1] = Math.asin(-clamp(m31, -1, 1));
|
|
326
352
|
if (Math.abs(m31) < ALMOST_ONE) {
|
|
327
353
|
this[0] = Math.atan2(m32, m33);
|
|
@@ -332,7 +358,7 @@ export class Euler extends MathArray {
|
|
|
332
358
|
this[2] = Math.atan2(-m12, m22);
|
|
333
359
|
}
|
|
334
360
|
break;
|
|
335
|
-
case
|
|
361
|
+
case RotationOrderIndex.YZX:
|
|
336
362
|
this[2] = Math.asin(clamp(m21, -1, 1));
|
|
337
363
|
if (Math.abs(m21) < ALMOST_ONE) {
|
|
338
364
|
this[0] = Math.atan2(-m23, m22);
|
|
@@ -343,7 +369,7 @@ export class Euler extends MathArray {
|
|
|
343
369
|
this[1] = Math.atan2(m13, m33);
|
|
344
370
|
}
|
|
345
371
|
break;
|
|
346
|
-
case
|
|
372
|
+
case RotationOrderIndex.XZY:
|
|
347
373
|
this[2] = Math.asin(-clamp(m12, -1, 1));
|
|
348
374
|
if (Math.abs(m12) < ALMOST_ONE) {
|
|
349
375
|
this[0] = Math.atan2(m32, m22);
|
|
@@ -357,7 +383,7 @@ export class Euler extends MathArray {
|
|
|
357
383
|
default:
|
|
358
384
|
throw new Error(ERR_UNKNOWN_ORDER);
|
|
359
385
|
}
|
|
360
|
-
this[3] =
|
|
386
|
+
this[3] = orderIndex;
|
|
361
387
|
return this;
|
|
362
388
|
}
|
|
363
389
|
_getRotationMatrix(result) {
|
|
@@ -370,7 +396,7 @@ export class Euler extends MathArray {
|
|
|
370
396
|
const d = Math.sin(y);
|
|
371
397
|
const f = Math.sin(z);
|
|
372
398
|
switch (this[3]) {
|
|
373
|
-
case
|
|
399
|
+
case RotationOrderIndex.XYZ: {
|
|
374
400
|
const ae = a * e, af = a * f, be = b * e, bf = b * f;
|
|
375
401
|
te[0] = c * e;
|
|
376
402
|
te[4] = -c * f;
|
|
@@ -383,7 +409,7 @@ export class Euler extends MathArray {
|
|
|
383
409
|
te[10] = a * c;
|
|
384
410
|
break;
|
|
385
411
|
}
|
|
386
|
-
case
|
|
412
|
+
case RotationOrderIndex.YXZ: {
|
|
387
413
|
const ce = c * e, cf = c * f, de = d * e, df = d * f;
|
|
388
414
|
te[0] = ce + df * b;
|
|
389
415
|
te[4] = de * b - cf;
|
|
@@ -396,7 +422,7 @@ export class Euler extends MathArray {
|
|
|
396
422
|
te[10] = a * c;
|
|
397
423
|
break;
|
|
398
424
|
}
|
|
399
|
-
case
|
|
425
|
+
case RotationOrderIndex.ZXY: {
|
|
400
426
|
const ce = c * e, cf = c * f, de = d * e, df = d * f;
|
|
401
427
|
te[0] = ce - df * b;
|
|
402
428
|
te[4] = -a * f;
|
|
@@ -409,7 +435,7 @@ export class Euler extends MathArray {
|
|
|
409
435
|
te[10] = a * c;
|
|
410
436
|
break;
|
|
411
437
|
}
|
|
412
|
-
case
|
|
438
|
+
case RotationOrderIndex.ZYX: {
|
|
413
439
|
const ae = a * e, af = a * f, be = b * e, bf = b * f;
|
|
414
440
|
te[0] = c * e;
|
|
415
441
|
te[4] = be * d - af;
|
|
@@ -422,7 +448,7 @@ export class Euler extends MathArray {
|
|
|
422
448
|
te[10] = a * c;
|
|
423
449
|
break;
|
|
424
450
|
}
|
|
425
|
-
case
|
|
451
|
+
case RotationOrderIndex.YZX: {
|
|
426
452
|
const ac = a * c, ad = a * d, bc = b * c, bd = b * d;
|
|
427
453
|
te[0] = c * e;
|
|
428
454
|
te[4] = bd - ac * f;
|
|
@@ -435,7 +461,7 @@ export class Euler extends MathArray {
|
|
|
435
461
|
te[10] = ac - bd * f;
|
|
436
462
|
break;
|
|
437
463
|
}
|
|
438
|
-
case
|
|
464
|
+
case RotationOrderIndex.XZY: {
|
|
439
465
|
const ac = a * c, ad = a * d, bc = b * c, bd = b * d;
|
|
440
466
|
te[0] = c * e;
|
|
441
467
|
te[4] = -f;
|
|
@@ -482,9 +508,28 @@ function validateOrder(value) {
|
|
|
482
508
|
return value >= 0 && value < 6;
|
|
483
509
|
}
|
|
484
510
|
function checkOrder(value) {
|
|
485
|
-
|
|
511
|
+
const order = ROTATION_ORDER_INDICES[value];
|
|
512
|
+
if (order === undefined) {
|
|
486
513
|
throw new Error(ERR_UNKNOWN_ORDER);
|
|
487
514
|
}
|
|
488
|
-
return
|
|
515
|
+
return order;
|
|
516
|
+
}
|
|
517
|
+
function getOrder(value) {
|
|
518
|
+
switch (value) {
|
|
519
|
+
case RotationOrderIndex.ZYX:
|
|
520
|
+
return 'zyx';
|
|
521
|
+
case RotationOrderIndex.YXZ:
|
|
522
|
+
return 'yxz';
|
|
523
|
+
case RotationOrderIndex.XZY:
|
|
524
|
+
return 'xzy';
|
|
525
|
+
case RotationOrderIndex.ZXY:
|
|
526
|
+
return 'zxy';
|
|
527
|
+
case RotationOrderIndex.YZX:
|
|
528
|
+
return 'yzx';
|
|
529
|
+
case RotationOrderIndex.XYZ:
|
|
530
|
+
return 'xyz';
|
|
531
|
+
default:
|
|
532
|
+
throw new Error(ERR_UNKNOWN_ORDER);
|
|
533
|
+
}
|
|
489
534
|
}
|
|
490
535
|
//# sourceMappingURL=euler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"euler.js","sourceRoot":"","sources":["../../src/classes/euler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"euler.js","sourceRoot":"","sources":["../../src/classes/euler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pose.d.ts","sourceRoot":"","sources":["../../src/classes/pose.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,OAAO,EAAC,qBAAkB;AAClC,OAAO,EAAC,OAAO,EAAC,qBAAkB;AAClC,OAAO,EAAC,KAAK,EAAC,mBAAgB;AAC9B,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAE5C,KAAK,WAAW,GAAG;IACjB,QAAQ,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IAClC,WAAW,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACrC,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,qBAAa,IAAI;IACf,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC;gBAEhB,EACV,CAAK,EACL,CAAK,EACL,CAAK,EACL,IAAQ,EACR,KAAS,EACT,GAAO,EACP,QAAQ,EACR,WAAW,EACZ,GAAE,WAAgB;
|
|
1
|
+
{"version":3,"file":"pose.d.ts","sourceRoot":"","sources":["../../src/classes/pose.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,OAAO,EAAC,qBAAkB;AAClC,OAAO,EAAC,OAAO,EAAC,qBAAkB;AAClC,OAAO,EAAC,KAAK,EAAC,mBAAgB;AAC9B,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAE5C,KAAK,WAAW,GAAG;IACjB,QAAQ,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IAClC,WAAW,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IACrC,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,qBAAa,IAAI;IACf,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC;gBAEhB,EACV,CAAK,EACL,CAAK,EACL,CAAK,EACL,IAAQ,EACR,KAAS,EACT,GAAO,EACP,QAAQ,EACR,WAAW,EACZ,GAAE,WAAgB;IAanB,IAAI,CAAC,IAAI,MAAM,CAEd;IAED,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAElB;IAED,IAAI,CAAC,IAAI,MAAM,CAEd;IAED,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAElB;IAED,IAAI,CAAC,IAAI,MAAM,CAEd;IAED,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAElB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,EAErB;IAED,IAAI,KAAK,IAAI,MAAM,CAElB;IACD,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,EAEtB;IAED,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED,IAAI,GAAG,CAAC,KAAK,EAAE,MAAM,EAEpB;IAED,WAAW,IAAI,OAAO;IAItB,cAAc,IAAI,KAAK;IAIvB,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO;IAO3B,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO;IAShC,uBAAuB,IAAI,OAAO;IA8BlC,+BAA+B,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO;IAMpD,6BAA6B,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO;CAKnD"}
|
package/dist/classes/pose.js
CHANGED
|
@@ -14,11 +14,10 @@ export class Pose {
|
|
|
14
14
|
this.position = new Vector3(x, y, z);
|
|
15
15
|
}
|
|
16
16
|
if (Array.isArray(orientation) && orientation.length === 4) {
|
|
17
|
-
|
|
18
|
-
this.orientation = new Euler(orientation, orientation[3]);
|
|
17
|
+
this.orientation = new Euler().fromArray(orientation);
|
|
19
18
|
}
|
|
20
19
|
else {
|
|
21
|
-
this.orientation = new Euler(roll, pitch, yaw,
|
|
20
|
+
this.orientation = new Euler(roll, pitch, yaw, 'zyx');
|
|
22
21
|
}
|
|
23
22
|
}
|
|
24
23
|
get x() {
|
package/dist/classes/pose.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pose.js","sourceRoot":"","sources":["../../src/classes/pose.ts"],"names":[],"mappings":"AAAA,UAAU;AACV,+BAA+B;AAC/B,oCAAoC;AACpC,6CAA6C;AAE7C,OAAO,EAAC,OAAO,EAAC,qBAAkB;AAClC,OAAO,EAAC,OAAO,EAAC,qBAAkB;AAClC,OAAO,EAAC,KAAK,EAAC,mBAAgB;AAc9B,MAAM,OAAO,IAAI;IAIf,YAAY,EACV,CAAC,GAAG,CAAC,EACL,CAAC,GAAG,CAAC,EACL,CAAC,GAAG,CAAC,EACL,IAAI,GAAG,CAAC,EACR,KAAK,GAAG,CAAC,EACT,GAAG,GAAG,CAAC,EACP,QAAQ,EACR,WAAW,KACI,EAAE;QACjB,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrD,IAAI,CAAC,QAAQ,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;QACxC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,QAAQ,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACvC,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3D,
|
|
1
|
+
{"version":3,"file":"pose.js","sourceRoot":"","sources":["../../src/classes/pose.ts"],"names":[],"mappings":"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"}
|