@xiaozhu2007/koishi-plugin-litematic-renderer 0.5.2 → 0.5.3

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 (18) hide show
  1. package/README.md +1 -0
  2. package/assets/threeviews/assets/block-assets.js +3 -0
  3. package/assets/threeviews/assets/block-flags.js +413 -0
  4. package/assets/threeviews/{/346/210/221/347/232/204/344/270/226/347/225/214-Litematic/346/212/225/345/275/261/344/270/211/350/247/206/345/233/276/351/242/204/350/247/210_files/deepslate-helpers.js./344/270/213/350/275/275 → assets/deepslate-resources.js} +67 -35
  5. package/assets/threeviews/assets/deepslate.min.js +7558 -0
  6. package/assets/threeviews/assets/gl-matrix.min.js +4195 -0
  7. package/assets/threeviews/{/346/210/221/347/232/204/344/270/226/347/225/214-Litematic/346/212/225/345/275/261/344/270/211/350/247/206/345/233/276/351/242/204/350/247/210_files/litematic-utils.js./344/270/213/350/275/275 → assets/litematic.js} +63 -64
  8. package/assets/threeviews/assets/renderer-api.js +936 -0
  9. package/assets/threeviews/index.html +1205 -1212
  10. package/lib/index.d.ts +11 -10
  11. package/lib/index.js +1 -1
  12. package/package.json +31 -27
  13. package/assets/threeviews//346/210/221/347/232/204/344/270/226/347/225/214-Litematic/346/212/225/345/275/261/344/270/211/350/247/206/345/233/276/351/242/204/350/247/210_files/api.js./344/270/213/350/275/275 +0 -917
  14. package/assets/threeviews//346/210/221/347/232/204/344/270/226/347/225/214-Litematic/346/212/225/345/275/261/344/270/211/350/247/206/345/233/276/351/242/204/350/247/210_files/assets.js./344/270/213/350/275/275 +0 -1
  15. package/assets/threeviews//346/210/221/347/232/204/344/270/226/347/225/214-Litematic/346/212/225/345/275/261/344/270/211/350/247/206/345/233/276/351/242/204/350/247/210_files/deepslate.js./344/270/213/350/275/275 +0 -2
  16. package/assets/threeviews//346/210/221/347/232/204/344/270/226/347/225/214-Litematic/346/212/225/345/275/261/344/270/211/350/247/206/345/233/276/351/242/204/350/247/210_files/gl-matrix-min.js./344/270/213/350/275/275 +0 -28
  17. package/assets/threeviews//346/210/221/347/232/204/344/270/226/347/225/214-Litematic/346/212/225/345/275/261/344/270/211/350/247/206/345/233/276/351/242/204/350/247/210_files/opaque.js./344/270/213/350/275/275 +0 -413
  18. /package/assets/threeviews/{/346/210/221/347/232/204/344/270/226/347/225/214-Litematic/346/212/225/345/275/261/344/270/211/350/247/206/345/233/276/351/242/204/350/247/210_files/atlas.png" → assets/atlas.png} +0 -0
@@ -0,0 +1,4195 @@
1
+ /*!
2
+ @fileoverview gl-matrix - High performance matrix and vector operations
3
+ @author Brandon Jones
4
+ @author Colin MacKenzie IV
5
+ @version 3.4.3
6
+
7
+ Copyright (c) 2015-2021, Brandon Jones, Colin MacKenzie IV.
8
+
9
+ Permission is hereby granted, free of charge, to any person obtaining a copy
10
+ of this software and associated documentation files (the "Software"), to deal
11
+ in the Software without restriction, including without limitation the rights
12
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
+ copies of the Software, and to permit persons to whom the Software is
14
+ furnished to do so, subject to the following conditions:
15
+
16
+ The above copyright notice and this permission notice shall be included in
17
+ all copies or substantial portions of the Software.
18
+
19
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
25
+ THE SOFTWARE.
26
+
27
+ */
28
+ !(function (t, n) {
29
+ "object" == typeof exports && "undefined" != typeof module
30
+ ? n(exports)
31
+ : "function" == typeof define && define.amd
32
+ ? define(["exports"], n)
33
+ : n(((t = t || self).glMatrix = {}));
34
+ })(this, function (t) {
35
+ "use strict";
36
+ var n = 1e-6,
37
+ a = "undefined" != typeof Float32Array ? Float32Array : Array,
38
+ r = Math.random;
39
+ var u = Math.PI / 180;
40
+ Math.hypot ||
41
+ (Math.hypot = function () {
42
+ for (var t = 0, n = arguments.length; n--;) t += arguments[n] * arguments[n];
43
+ return Math.sqrt(t);
44
+ });
45
+ var e = Object.freeze({
46
+ __proto__: null,
47
+ EPSILON: n,
48
+ get ARRAY_TYPE() {
49
+ return a;
50
+ },
51
+ RANDOM: r,
52
+ setMatrixArrayType: function (t) {
53
+ a = t;
54
+ },
55
+ toRadian: function (t) {
56
+ return t * u;
57
+ },
58
+ equals: function (t, a) {
59
+ return Math.abs(t - a) <= n * Math.max(1, Math.abs(t), Math.abs(a));
60
+ },
61
+ });
62
+ function o(t, n, a) {
63
+ var r = n[0],
64
+ u = n[1],
65
+ e = n[2],
66
+ o = n[3],
67
+ i = a[0],
68
+ h = a[1],
69
+ c = a[2],
70
+ s = a[3];
71
+ return (
72
+ (t[0] = r * i + e * h),
73
+ (t[1] = u * i + o * h),
74
+ (t[2] = r * c + e * s),
75
+ (t[3] = u * c + o * s),
76
+ t
77
+ );
78
+ }
79
+ function i(t, n, a) {
80
+ return (
81
+ (t[0] = n[0] - a[0]), (t[1] = n[1] - a[1]), (t[2] = n[2] - a[2]), (t[3] = n[3] - a[3]), t
82
+ );
83
+ }
84
+ var h = o,
85
+ c = i,
86
+ s = Object.freeze({
87
+ __proto__: null,
88
+ create: function () {
89
+ var t = new a(4);
90
+ return (a != Float32Array && ((t[1] = 0), (t[2] = 0)), (t[0] = 1), (t[3] = 1), t);
91
+ },
92
+ clone: function (t) {
93
+ var n = new a(4);
94
+ return ((n[0] = t[0]), (n[1] = t[1]), (n[2] = t[2]), (n[3] = t[3]), n);
95
+ },
96
+ copy: function (t, n) {
97
+ return ((t[0] = n[0]), (t[1] = n[1]), (t[2] = n[2]), (t[3] = n[3]), t);
98
+ },
99
+ identity: function (t) {
100
+ return ((t[0] = 1), (t[1] = 0), (t[2] = 0), (t[3] = 1), t);
101
+ },
102
+ fromValues: function (t, n, r, u) {
103
+ var e = new a(4);
104
+ return ((e[0] = t), (e[1] = n), (e[2] = r), (e[3] = u), e);
105
+ },
106
+ set: function (t, n, a, r, u) {
107
+ return ((t[0] = n), (t[1] = a), (t[2] = r), (t[3] = u), t);
108
+ },
109
+ transpose: function (t, n) {
110
+ if (t === n) {
111
+ var a = n[1];
112
+ ((t[1] = n[2]), (t[2] = a));
113
+ } else ((t[0] = n[0]), (t[1] = n[2]), (t[2] = n[1]), (t[3] = n[3]));
114
+ return t;
115
+ },
116
+ invert: function (t, n) {
117
+ var a = n[0],
118
+ r = n[1],
119
+ u = n[2],
120
+ e = n[3],
121
+ o = a * e - u * r;
122
+ return o
123
+ ? ((o = 1 / o), (t[0] = e * o), (t[1] = -r * o), (t[2] = -u * o), (t[3] = a * o), t)
124
+ : null;
125
+ },
126
+ adjoint: function (t, n) {
127
+ var a = n[0];
128
+ return ((t[0] = n[3]), (t[1] = -n[1]), (t[2] = -n[2]), (t[3] = a), t);
129
+ },
130
+ determinant: function (t) {
131
+ return t[0] * t[3] - t[2] * t[1];
132
+ },
133
+ multiply: o,
134
+ rotate: function (t, n, a) {
135
+ var r = n[0],
136
+ u = n[1],
137
+ e = n[2],
138
+ o = n[3],
139
+ i = Math.sin(a),
140
+ h = Math.cos(a);
141
+ return (
142
+ (t[0] = r * h + e * i),
143
+ (t[1] = u * h + o * i),
144
+ (t[2] = r * -i + e * h),
145
+ (t[3] = u * -i + o * h),
146
+ t
147
+ );
148
+ },
149
+ scale: function (t, n, a) {
150
+ var r = n[0],
151
+ u = n[1],
152
+ e = n[2],
153
+ o = n[3],
154
+ i = a[0],
155
+ h = a[1];
156
+ return ((t[0] = r * i), (t[1] = u * i), (t[2] = e * h), (t[3] = o * h), t);
157
+ },
158
+ fromRotation: function (t, n) {
159
+ var a = Math.sin(n),
160
+ r = Math.cos(n);
161
+ return ((t[0] = r), (t[1] = a), (t[2] = -a), (t[3] = r), t);
162
+ },
163
+ fromScaling: function (t, n) {
164
+ return ((t[0] = n[0]), (t[1] = 0), (t[2] = 0), (t[3] = n[1]), t);
165
+ },
166
+ str: function (t) {
167
+ return "mat2(" + t[0] + ", " + t[1] + ", " + t[2] + ", " + t[3] + ")";
168
+ },
169
+ frob: function (t) {
170
+ return Math.hypot(t[0], t[1], t[2], t[3]);
171
+ },
172
+ LDU: function (t, n, a, r) {
173
+ return (
174
+ (t[2] = r[2] / r[0]), (a[0] = r[0]), (a[1] = r[1]), (a[3] = r[3] - t[2] * a[1]), [t, n, a]
175
+ );
176
+ },
177
+ add: function (t, n, a) {
178
+ return (
179
+ (t[0] = n[0] + a[0]), (t[1] = n[1] + a[1]), (t[2] = n[2] + a[2]), (t[3] = n[3] + a[3]), t
180
+ );
181
+ },
182
+ subtract: i,
183
+ exactEquals: function (t, n) {
184
+ return t[0] === n[0] && t[1] === n[1] && t[2] === n[2] && t[3] === n[3];
185
+ },
186
+ equals: function (t, a) {
187
+ var r = t[0],
188
+ u = t[1],
189
+ e = t[2],
190
+ o = t[3],
191
+ i = a[0],
192
+ h = a[1],
193
+ c = a[2],
194
+ s = a[3];
195
+ return (
196
+ Math.abs(r - i) <= n * Math.max(1, Math.abs(r), Math.abs(i)) &&
197
+ Math.abs(u - h) <= n * Math.max(1, Math.abs(u), Math.abs(h)) &&
198
+ Math.abs(e - c) <= n * Math.max(1, Math.abs(e), Math.abs(c)) &&
199
+ Math.abs(o - s) <= n * Math.max(1, Math.abs(o), Math.abs(s))
200
+ );
201
+ },
202
+ multiplyScalar: function (t, n, a) {
203
+ return ((t[0] = n[0] * a), (t[1] = n[1] * a), (t[2] = n[2] * a), (t[3] = n[3] * a), t);
204
+ },
205
+ multiplyScalarAndAdd: function (t, n, a, r) {
206
+ return (
207
+ (t[0] = n[0] + a[0] * r),
208
+ (t[1] = n[1] + a[1] * r),
209
+ (t[2] = n[2] + a[2] * r),
210
+ (t[3] = n[3] + a[3] * r),
211
+ t
212
+ );
213
+ },
214
+ mul: h,
215
+ sub: c,
216
+ });
217
+ function M(t, n, a) {
218
+ var r = n[0],
219
+ u = n[1],
220
+ e = n[2],
221
+ o = n[3],
222
+ i = n[4],
223
+ h = n[5],
224
+ c = a[0],
225
+ s = a[1],
226
+ M = a[2],
227
+ f = a[3],
228
+ l = a[4],
229
+ v = a[5];
230
+ return (
231
+ (t[0] = r * c + e * s),
232
+ (t[1] = u * c + o * s),
233
+ (t[2] = r * M + e * f),
234
+ (t[3] = u * M + o * f),
235
+ (t[4] = r * l + e * v + i),
236
+ (t[5] = u * l + o * v + h),
237
+ t
238
+ );
239
+ }
240
+ function f(t, n, a) {
241
+ return (
242
+ (t[0] = n[0] - a[0]),
243
+ (t[1] = n[1] - a[1]),
244
+ (t[2] = n[2] - a[2]),
245
+ (t[3] = n[3] - a[3]),
246
+ (t[4] = n[4] - a[4]),
247
+ (t[5] = n[5] - a[5]),
248
+ t
249
+ );
250
+ }
251
+ var l = M,
252
+ v = f,
253
+ b = Object.freeze({
254
+ __proto__: null,
255
+ create: function () {
256
+ var t = new a(6);
257
+ return (
258
+ a != Float32Array && ((t[1] = 0), (t[2] = 0), (t[4] = 0), (t[5] = 0)),
259
+ (t[0] = 1),
260
+ (t[3] = 1),
261
+ t
262
+ );
263
+ },
264
+ clone: function (t) {
265
+ var n = new a(6);
266
+ return (
267
+ (n[0] = t[0]),
268
+ (n[1] = t[1]),
269
+ (n[2] = t[2]),
270
+ (n[3] = t[3]),
271
+ (n[4] = t[4]),
272
+ (n[5] = t[5]),
273
+ n
274
+ );
275
+ },
276
+ copy: function (t, n) {
277
+ return (
278
+ (t[0] = n[0]),
279
+ (t[1] = n[1]),
280
+ (t[2] = n[2]),
281
+ (t[3] = n[3]),
282
+ (t[4] = n[4]),
283
+ (t[5] = n[5]),
284
+ t
285
+ );
286
+ },
287
+ identity: function (t) {
288
+ return ((t[0] = 1), (t[1] = 0), (t[2] = 0), (t[3] = 1), (t[4] = 0), (t[5] = 0), t);
289
+ },
290
+ fromValues: function (t, n, r, u, e, o) {
291
+ var i = new a(6);
292
+ return ((i[0] = t), (i[1] = n), (i[2] = r), (i[3] = u), (i[4] = e), (i[5] = o), i);
293
+ },
294
+ set: function (t, n, a, r, u, e, o) {
295
+ return ((t[0] = n), (t[1] = a), (t[2] = r), (t[3] = u), (t[4] = e), (t[5] = o), t);
296
+ },
297
+ invert: function (t, n) {
298
+ var a = n[0],
299
+ r = n[1],
300
+ u = n[2],
301
+ e = n[3],
302
+ o = n[4],
303
+ i = n[5],
304
+ h = a * e - r * u;
305
+ return h
306
+ ? ((h = 1 / h),
307
+ (t[0] = e * h),
308
+ (t[1] = -r * h),
309
+ (t[2] = -u * h),
310
+ (t[3] = a * h),
311
+ (t[4] = (u * i - e * o) * h),
312
+ (t[5] = (r * o - a * i) * h),
313
+ t)
314
+ : null;
315
+ },
316
+ determinant: function (t) {
317
+ return t[0] * t[3] - t[1] * t[2];
318
+ },
319
+ multiply: M,
320
+ rotate: function (t, n, a) {
321
+ var r = n[0],
322
+ u = n[1],
323
+ e = n[2],
324
+ o = n[3],
325
+ i = n[4],
326
+ h = n[5],
327
+ c = Math.sin(a),
328
+ s = Math.cos(a);
329
+ return (
330
+ (t[0] = r * s + e * c),
331
+ (t[1] = u * s + o * c),
332
+ (t[2] = r * -c + e * s),
333
+ (t[3] = u * -c + o * s),
334
+ (t[4] = i),
335
+ (t[5] = h),
336
+ t
337
+ );
338
+ },
339
+ scale: function (t, n, a) {
340
+ var r = n[0],
341
+ u = n[1],
342
+ e = n[2],
343
+ o = n[3],
344
+ i = n[4],
345
+ h = n[5],
346
+ c = a[0],
347
+ s = a[1];
348
+ return (
349
+ (t[0] = r * c), (t[1] = u * c), (t[2] = e * s), (t[3] = o * s), (t[4] = i), (t[5] = h), t
350
+ );
351
+ },
352
+ translate: function (t, n, a) {
353
+ var r = n[0],
354
+ u = n[1],
355
+ e = n[2],
356
+ o = n[3],
357
+ i = n[4],
358
+ h = n[5],
359
+ c = a[0],
360
+ s = a[1];
361
+ return (
362
+ (t[0] = r),
363
+ (t[1] = u),
364
+ (t[2] = e),
365
+ (t[3] = o),
366
+ (t[4] = r * c + e * s + i),
367
+ (t[5] = u * c + o * s + h),
368
+ t
369
+ );
370
+ },
371
+ fromRotation: function (t, n) {
372
+ var a = Math.sin(n),
373
+ r = Math.cos(n);
374
+ return ((t[0] = r), (t[1] = a), (t[2] = -a), (t[3] = r), (t[4] = 0), (t[5] = 0), t);
375
+ },
376
+ fromScaling: function (t, n) {
377
+ return ((t[0] = n[0]), (t[1] = 0), (t[2] = 0), (t[3] = n[1]), (t[4] = 0), (t[5] = 0), t);
378
+ },
379
+ fromTranslation: function (t, n) {
380
+ return ((t[0] = 1), (t[1] = 0), (t[2] = 0), (t[3] = 1), (t[4] = n[0]), (t[5] = n[1]), t);
381
+ },
382
+ str: function (t) {
383
+ return (
384
+ "mat2d(" +
385
+ t[0] +
386
+ ", " +
387
+ t[1] +
388
+ ", " +
389
+ t[2] +
390
+ ", " +
391
+ t[3] +
392
+ ", " +
393
+ t[4] +
394
+ ", " +
395
+ t[5] +
396
+ ")"
397
+ );
398
+ },
399
+ frob: function (t) {
400
+ return Math.hypot(t[0], t[1], t[2], t[3], t[4], t[5], 1);
401
+ },
402
+ add: function (t, n, a) {
403
+ return (
404
+ (t[0] = n[0] + a[0]),
405
+ (t[1] = n[1] + a[1]),
406
+ (t[2] = n[2] + a[2]),
407
+ (t[3] = n[3] + a[3]),
408
+ (t[4] = n[4] + a[4]),
409
+ (t[5] = n[5] + a[5]),
410
+ t
411
+ );
412
+ },
413
+ subtract: f,
414
+ multiplyScalar: function (t, n, a) {
415
+ return (
416
+ (t[0] = n[0] * a),
417
+ (t[1] = n[1] * a),
418
+ (t[2] = n[2] * a),
419
+ (t[3] = n[3] * a),
420
+ (t[4] = n[4] * a),
421
+ (t[5] = n[5] * a),
422
+ t
423
+ );
424
+ },
425
+ multiplyScalarAndAdd: function (t, n, a, r) {
426
+ return (
427
+ (t[0] = n[0] + a[0] * r),
428
+ (t[1] = n[1] + a[1] * r),
429
+ (t[2] = n[2] + a[2] * r),
430
+ (t[3] = n[3] + a[3] * r),
431
+ (t[4] = n[4] + a[4] * r),
432
+ (t[5] = n[5] + a[5] * r),
433
+ t
434
+ );
435
+ },
436
+ exactEquals: function (t, n) {
437
+ return (
438
+ t[0] === n[0] &&
439
+ t[1] === n[1] &&
440
+ t[2] === n[2] &&
441
+ t[3] === n[3] &&
442
+ t[4] === n[4] &&
443
+ t[5] === n[5]
444
+ );
445
+ },
446
+ equals: function (t, a) {
447
+ var r = t[0],
448
+ u = t[1],
449
+ e = t[2],
450
+ o = t[3],
451
+ i = t[4],
452
+ h = t[5],
453
+ c = a[0],
454
+ s = a[1],
455
+ M = a[2],
456
+ f = a[3],
457
+ l = a[4],
458
+ v = a[5];
459
+ return (
460
+ Math.abs(r - c) <= n * Math.max(1, Math.abs(r), Math.abs(c)) &&
461
+ Math.abs(u - s) <= n * Math.max(1, Math.abs(u), Math.abs(s)) &&
462
+ Math.abs(e - M) <= n * Math.max(1, Math.abs(e), Math.abs(M)) &&
463
+ Math.abs(o - f) <= n * Math.max(1, Math.abs(o), Math.abs(f)) &&
464
+ Math.abs(i - l) <= n * Math.max(1, Math.abs(i), Math.abs(l)) &&
465
+ Math.abs(h - v) <= n * Math.max(1, Math.abs(h), Math.abs(v))
466
+ );
467
+ },
468
+ mul: l,
469
+ sub: v,
470
+ });
471
+ function m() {
472
+ var t = new a(9);
473
+ return (
474
+ a != Float32Array && ((t[1] = 0), (t[2] = 0), (t[3] = 0), (t[5] = 0), (t[6] = 0), (t[7] = 0)),
475
+ (t[0] = 1),
476
+ (t[4] = 1),
477
+ (t[8] = 1),
478
+ t
479
+ );
480
+ }
481
+ function d(t, n, a) {
482
+ var r = n[0],
483
+ u = n[1],
484
+ e = n[2],
485
+ o = n[3],
486
+ i = n[4],
487
+ h = n[5],
488
+ c = n[6],
489
+ s = n[7],
490
+ M = n[8],
491
+ f = a[0],
492
+ l = a[1],
493
+ v = a[2],
494
+ b = a[3],
495
+ m = a[4],
496
+ d = a[5],
497
+ p = a[6],
498
+ x = a[7],
499
+ y = a[8];
500
+ return (
501
+ (t[0] = f * r + l * o + v * c),
502
+ (t[1] = f * u + l * i + v * s),
503
+ (t[2] = f * e + l * h + v * M),
504
+ (t[3] = b * r + m * o + d * c),
505
+ (t[4] = b * u + m * i + d * s),
506
+ (t[5] = b * e + m * h + d * M),
507
+ (t[6] = p * r + x * o + y * c),
508
+ (t[7] = p * u + x * i + y * s),
509
+ (t[8] = p * e + x * h + y * M),
510
+ t
511
+ );
512
+ }
513
+ function p(t, n, a) {
514
+ return (
515
+ (t[0] = n[0] - a[0]),
516
+ (t[1] = n[1] - a[1]),
517
+ (t[2] = n[2] - a[2]),
518
+ (t[3] = n[3] - a[3]),
519
+ (t[4] = n[4] - a[4]),
520
+ (t[5] = n[5] - a[5]),
521
+ (t[6] = n[6] - a[6]),
522
+ (t[7] = n[7] - a[7]),
523
+ (t[8] = n[8] - a[8]),
524
+ t
525
+ );
526
+ }
527
+ var x = d,
528
+ y = p,
529
+ q = Object.freeze({
530
+ __proto__: null,
531
+ create: m,
532
+ fromMat4: function (t, n) {
533
+ return (
534
+ (t[0] = n[0]),
535
+ (t[1] = n[1]),
536
+ (t[2] = n[2]),
537
+ (t[3] = n[4]),
538
+ (t[4] = n[5]),
539
+ (t[5] = n[6]),
540
+ (t[6] = n[8]),
541
+ (t[7] = n[9]),
542
+ (t[8] = n[10]),
543
+ t
544
+ );
545
+ },
546
+ clone: function (t) {
547
+ var n = new a(9);
548
+ return (
549
+ (n[0] = t[0]),
550
+ (n[1] = t[1]),
551
+ (n[2] = t[2]),
552
+ (n[3] = t[3]),
553
+ (n[4] = t[4]),
554
+ (n[5] = t[5]),
555
+ (n[6] = t[6]),
556
+ (n[7] = t[7]),
557
+ (n[8] = t[8]),
558
+ n
559
+ );
560
+ },
561
+ copy: function (t, n) {
562
+ return (
563
+ (t[0] = n[0]),
564
+ (t[1] = n[1]),
565
+ (t[2] = n[2]),
566
+ (t[3] = n[3]),
567
+ (t[4] = n[4]),
568
+ (t[5] = n[5]),
569
+ (t[6] = n[6]),
570
+ (t[7] = n[7]),
571
+ (t[8] = n[8]),
572
+ t
573
+ );
574
+ },
575
+ fromValues: function (t, n, r, u, e, o, i, h, c) {
576
+ var s = new a(9);
577
+ return (
578
+ (s[0] = t),
579
+ (s[1] = n),
580
+ (s[2] = r),
581
+ (s[3] = u),
582
+ (s[4] = e),
583
+ (s[5] = o),
584
+ (s[6] = i),
585
+ (s[7] = h),
586
+ (s[8] = c),
587
+ s
588
+ );
589
+ },
590
+ set: function (t, n, a, r, u, e, o, i, h, c) {
591
+ return (
592
+ (t[0] = n),
593
+ (t[1] = a),
594
+ (t[2] = r),
595
+ (t[3] = u),
596
+ (t[4] = e),
597
+ (t[5] = o),
598
+ (t[6] = i),
599
+ (t[7] = h),
600
+ (t[8] = c),
601
+ t
602
+ );
603
+ },
604
+ identity: function (t) {
605
+ return (
606
+ (t[0] = 1),
607
+ (t[1] = 0),
608
+ (t[2] = 0),
609
+ (t[3] = 0),
610
+ (t[4] = 1),
611
+ (t[5] = 0),
612
+ (t[6] = 0),
613
+ (t[7] = 0),
614
+ (t[8] = 1),
615
+ t
616
+ );
617
+ },
618
+ transpose: function (t, n) {
619
+ if (t === n) {
620
+ var a = n[1],
621
+ r = n[2],
622
+ u = n[5];
623
+ ((t[1] = n[3]), (t[2] = n[6]), (t[3] = a), (t[5] = n[7]), (t[6] = r), (t[7] = u));
624
+ } else
625
+ ((t[0] = n[0]),
626
+ (t[1] = n[3]),
627
+ (t[2] = n[6]),
628
+ (t[3] = n[1]),
629
+ (t[4] = n[4]),
630
+ (t[5] = n[7]),
631
+ (t[6] = n[2]),
632
+ (t[7] = n[5]),
633
+ (t[8] = n[8]));
634
+ return t;
635
+ },
636
+ invert: function (t, n) {
637
+ var a = n[0],
638
+ r = n[1],
639
+ u = n[2],
640
+ e = n[3],
641
+ o = n[4],
642
+ i = n[5],
643
+ h = n[6],
644
+ c = n[7],
645
+ s = n[8],
646
+ M = s * o - i * c,
647
+ f = -s * e + i * h,
648
+ l = c * e - o * h,
649
+ v = a * M + r * f + u * l;
650
+ return v
651
+ ? ((v = 1 / v),
652
+ (t[0] = M * v),
653
+ (t[1] = (-s * r + u * c) * v),
654
+ (t[2] = (i * r - u * o) * v),
655
+ (t[3] = f * v),
656
+ (t[4] = (s * a - u * h) * v),
657
+ (t[5] = (-i * a + u * e) * v),
658
+ (t[6] = l * v),
659
+ (t[7] = (-c * a + r * h) * v),
660
+ (t[8] = (o * a - r * e) * v),
661
+ t)
662
+ : null;
663
+ },
664
+ adjoint: function (t, n) {
665
+ var a = n[0],
666
+ r = n[1],
667
+ u = n[2],
668
+ e = n[3],
669
+ o = n[4],
670
+ i = n[5],
671
+ h = n[6],
672
+ c = n[7],
673
+ s = n[8];
674
+ return (
675
+ (t[0] = o * s - i * c),
676
+ (t[1] = u * c - r * s),
677
+ (t[2] = r * i - u * o),
678
+ (t[3] = i * h - e * s),
679
+ (t[4] = a * s - u * h),
680
+ (t[5] = u * e - a * i),
681
+ (t[6] = e * c - o * h),
682
+ (t[7] = r * h - a * c),
683
+ (t[8] = a * o - r * e),
684
+ t
685
+ );
686
+ },
687
+ determinant: function (t) {
688
+ var n = t[0],
689
+ a = t[1],
690
+ r = t[2],
691
+ u = t[3],
692
+ e = t[4],
693
+ o = t[5],
694
+ i = t[6],
695
+ h = t[7],
696
+ c = t[8];
697
+ return n * (c * e - o * h) + a * (-c * u + o * i) + r * (h * u - e * i);
698
+ },
699
+ multiply: d,
700
+ translate: function (t, n, a) {
701
+ var r = n[0],
702
+ u = n[1],
703
+ e = n[2],
704
+ o = n[3],
705
+ i = n[4],
706
+ h = n[5],
707
+ c = n[6],
708
+ s = n[7],
709
+ M = n[8],
710
+ f = a[0],
711
+ l = a[1];
712
+ return (
713
+ (t[0] = r),
714
+ (t[1] = u),
715
+ (t[2] = e),
716
+ (t[3] = o),
717
+ (t[4] = i),
718
+ (t[5] = h),
719
+ (t[6] = f * r + l * o + c),
720
+ (t[7] = f * u + l * i + s),
721
+ (t[8] = f * e + l * h + M),
722
+ t
723
+ );
724
+ },
725
+ rotate: function (t, n, a) {
726
+ var r = n[0],
727
+ u = n[1],
728
+ e = n[2],
729
+ o = n[3],
730
+ i = n[4],
731
+ h = n[5],
732
+ c = n[6],
733
+ s = n[7],
734
+ M = n[8],
735
+ f = Math.sin(a),
736
+ l = Math.cos(a);
737
+ return (
738
+ (t[0] = l * r + f * o),
739
+ (t[1] = l * u + f * i),
740
+ (t[2] = l * e + f * h),
741
+ (t[3] = l * o - f * r),
742
+ (t[4] = l * i - f * u),
743
+ (t[5] = l * h - f * e),
744
+ (t[6] = c),
745
+ (t[7] = s),
746
+ (t[8] = M),
747
+ t
748
+ );
749
+ },
750
+ scale: function (t, n, a) {
751
+ var r = a[0],
752
+ u = a[1];
753
+ return (
754
+ (t[0] = r * n[0]),
755
+ (t[1] = r * n[1]),
756
+ (t[2] = r * n[2]),
757
+ (t[3] = u * n[3]),
758
+ (t[4] = u * n[4]),
759
+ (t[5] = u * n[5]),
760
+ (t[6] = n[6]),
761
+ (t[7] = n[7]),
762
+ (t[8] = n[8]),
763
+ t
764
+ );
765
+ },
766
+ fromTranslation: function (t, n) {
767
+ return (
768
+ (t[0] = 1),
769
+ (t[1] = 0),
770
+ (t[2] = 0),
771
+ (t[3] = 0),
772
+ (t[4] = 1),
773
+ (t[5] = 0),
774
+ (t[6] = n[0]),
775
+ (t[7] = n[1]),
776
+ (t[8] = 1),
777
+ t
778
+ );
779
+ },
780
+ fromRotation: function (t, n) {
781
+ var a = Math.sin(n),
782
+ r = Math.cos(n);
783
+ return (
784
+ (t[0] = r),
785
+ (t[1] = a),
786
+ (t[2] = 0),
787
+ (t[3] = -a),
788
+ (t[4] = r),
789
+ (t[5] = 0),
790
+ (t[6] = 0),
791
+ (t[7] = 0),
792
+ (t[8] = 1),
793
+ t
794
+ );
795
+ },
796
+ fromScaling: function (t, n) {
797
+ return (
798
+ (t[0] = n[0]),
799
+ (t[1] = 0),
800
+ (t[2] = 0),
801
+ (t[3] = 0),
802
+ (t[4] = n[1]),
803
+ (t[5] = 0),
804
+ (t[6] = 0),
805
+ (t[7] = 0),
806
+ (t[8] = 1),
807
+ t
808
+ );
809
+ },
810
+ fromMat2d: function (t, n) {
811
+ return (
812
+ (t[0] = n[0]),
813
+ (t[1] = n[1]),
814
+ (t[2] = 0),
815
+ (t[3] = n[2]),
816
+ (t[4] = n[3]),
817
+ (t[5] = 0),
818
+ (t[6] = n[4]),
819
+ (t[7] = n[5]),
820
+ (t[8] = 1),
821
+ t
822
+ );
823
+ },
824
+ fromQuat: function (t, n) {
825
+ var a = n[0],
826
+ r = n[1],
827
+ u = n[2],
828
+ e = n[3],
829
+ o = a + a,
830
+ i = r + r,
831
+ h = u + u,
832
+ c = a * o,
833
+ s = r * o,
834
+ M = r * i,
835
+ f = u * o,
836
+ l = u * i,
837
+ v = u * h,
838
+ b = e * o,
839
+ m = e * i,
840
+ d = e * h;
841
+ return (
842
+ (t[0] = 1 - M - v),
843
+ (t[3] = s - d),
844
+ (t[6] = f + m),
845
+ (t[1] = s + d),
846
+ (t[4] = 1 - c - v),
847
+ (t[7] = l - b),
848
+ (t[2] = f - m),
849
+ (t[5] = l + b),
850
+ (t[8] = 1 - c - M),
851
+ t
852
+ );
853
+ },
854
+ normalFromMat4: function (t, n) {
855
+ var a = n[0],
856
+ r = n[1],
857
+ u = n[2],
858
+ e = n[3],
859
+ o = n[4],
860
+ i = n[5],
861
+ h = n[6],
862
+ c = n[7],
863
+ s = n[8],
864
+ M = n[9],
865
+ f = n[10],
866
+ l = n[11],
867
+ v = n[12],
868
+ b = n[13],
869
+ m = n[14],
870
+ d = n[15],
871
+ p = a * i - r * o,
872
+ x = a * h - u * o,
873
+ y = a * c - e * o,
874
+ q = r * h - u * i,
875
+ g = r * c - e * i,
876
+ _ = u * c - e * h,
877
+ A = s * b - M * v,
878
+ w = s * m - f * v,
879
+ R = s * d - l * v,
880
+ z = M * m - f * b,
881
+ O = M * d - l * b,
882
+ j = f * d - l * m,
883
+ P = p * j - x * O + y * z + q * R - g * w + _ * A;
884
+ return P
885
+ ? ((P = 1 / P),
886
+ (t[0] = (i * j - h * O + c * z) * P),
887
+ (t[1] = (h * R - o * j - c * w) * P),
888
+ (t[2] = (o * O - i * R + c * A) * P),
889
+ (t[3] = (u * O - r * j - e * z) * P),
890
+ (t[4] = (a * j - u * R + e * w) * P),
891
+ (t[5] = (r * R - a * O - e * A) * P),
892
+ (t[6] = (b * _ - m * g + d * q) * P),
893
+ (t[7] = (m * y - v * _ - d * x) * P),
894
+ (t[8] = (v * g - b * y + d * p) * P),
895
+ t)
896
+ : null;
897
+ },
898
+ projection: function (t, n, a) {
899
+ return (
900
+ (t[0] = 2 / n),
901
+ (t[1] = 0),
902
+ (t[2] = 0),
903
+ (t[3] = 0),
904
+ (t[4] = -2 / a),
905
+ (t[5] = 0),
906
+ (t[6] = -1),
907
+ (t[7] = 1),
908
+ (t[8] = 1),
909
+ t
910
+ );
911
+ },
912
+ str: function (t) {
913
+ return (
914
+ "mat3(" +
915
+ t[0] +
916
+ ", " +
917
+ t[1] +
918
+ ", " +
919
+ t[2] +
920
+ ", " +
921
+ t[3] +
922
+ ", " +
923
+ t[4] +
924
+ ", " +
925
+ t[5] +
926
+ ", " +
927
+ t[6] +
928
+ ", " +
929
+ t[7] +
930
+ ", " +
931
+ t[8] +
932
+ ")"
933
+ );
934
+ },
935
+ frob: function (t) {
936
+ return Math.hypot(t[0], t[1], t[2], t[3], t[4], t[5], t[6], t[7], t[8]);
937
+ },
938
+ add: function (t, n, a) {
939
+ return (
940
+ (t[0] = n[0] + a[0]),
941
+ (t[1] = n[1] + a[1]),
942
+ (t[2] = n[2] + a[2]),
943
+ (t[3] = n[3] + a[3]),
944
+ (t[4] = n[4] + a[4]),
945
+ (t[5] = n[5] + a[5]),
946
+ (t[6] = n[6] + a[6]),
947
+ (t[7] = n[7] + a[7]),
948
+ (t[8] = n[8] + a[8]),
949
+ t
950
+ );
951
+ },
952
+ subtract: p,
953
+ multiplyScalar: function (t, n, a) {
954
+ return (
955
+ (t[0] = n[0] * a),
956
+ (t[1] = n[1] * a),
957
+ (t[2] = n[2] * a),
958
+ (t[3] = n[3] * a),
959
+ (t[4] = n[4] * a),
960
+ (t[5] = n[5] * a),
961
+ (t[6] = n[6] * a),
962
+ (t[7] = n[7] * a),
963
+ (t[8] = n[8] * a),
964
+ t
965
+ );
966
+ },
967
+ multiplyScalarAndAdd: function (t, n, a, r) {
968
+ return (
969
+ (t[0] = n[0] + a[0] * r),
970
+ (t[1] = n[1] + a[1] * r),
971
+ (t[2] = n[2] + a[2] * r),
972
+ (t[3] = n[3] + a[3] * r),
973
+ (t[4] = n[4] + a[4] * r),
974
+ (t[5] = n[5] + a[5] * r),
975
+ (t[6] = n[6] + a[6] * r),
976
+ (t[7] = n[7] + a[7] * r),
977
+ (t[8] = n[8] + a[8] * r),
978
+ t
979
+ );
980
+ },
981
+ exactEquals: function (t, n) {
982
+ return (
983
+ t[0] === n[0] &&
984
+ t[1] === n[1] &&
985
+ t[2] === n[2] &&
986
+ t[3] === n[3] &&
987
+ t[4] === n[4] &&
988
+ t[5] === n[5] &&
989
+ t[6] === n[6] &&
990
+ t[7] === n[7] &&
991
+ t[8] === n[8]
992
+ );
993
+ },
994
+ equals: function (t, a) {
995
+ var r = t[0],
996
+ u = t[1],
997
+ e = t[2],
998
+ o = t[3],
999
+ i = t[4],
1000
+ h = t[5],
1001
+ c = t[6],
1002
+ s = t[7],
1003
+ M = t[8],
1004
+ f = a[0],
1005
+ l = a[1],
1006
+ v = a[2],
1007
+ b = a[3],
1008
+ m = a[4],
1009
+ d = a[5],
1010
+ p = a[6],
1011
+ x = a[7],
1012
+ y = a[8];
1013
+ return (
1014
+ Math.abs(r - f) <= n * Math.max(1, Math.abs(r), Math.abs(f)) &&
1015
+ Math.abs(u - l) <= n * Math.max(1, Math.abs(u), Math.abs(l)) &&
1016
+ Math.abs(e - v) <= n * Math.max(1, Math.abs(e), Math.abs(v)) &&
1017
+ Math.abs(o - b) <= n * Math.max(1, Math.abs(o), Math.abs(b)) &&
1018
+ Math.abs(i - m) <= n * Math.max(1, Math.abs(i), Math.abs(m)) &&
1019
+ Math.abs(h - d) <= n * Math.max(1, Math.abs(h), Math.abs(d)) &&
1020
+ Math.abs(c - p) <= n * Math.max(1, Math.abs(c), Math.abs(p)) &&
1021
+ Math.abs(s - x) <= n * Math.max(1, Math.abs(s), Math.abs(x)) &&
1022
+ Math.abs(M - y) <= n * Math.max(1, Math.abs(M), Math.abs(y))
1023
+ );
1024
+ },
1025
+ mul: x,
1026
+ sub: y,
1027
+ });
1028
+ function g(t) {
1029
+ return (
1030
+ (t[0] = 1),
1031
+ (t[1] = 0),
1032
+ (t[2] = 0),
1033
+ (t[3] = 0),
1034
+ (t[4] = 0),
1035
+ (t[5] = 1),
1036
+ (t[6] = 0),
1037
+ (t[7] = 0),
1038
+ (t[8] = 0),
1039
+ (t[9] = 0),
1040
+ (t[10] = 1),
1041
+ (t[11] = 0),
1042
+ (t[12] = 0),
1043
+ (t[13] = 0),
1044
+ (t[14] = 0),
1045
+ (t[15] = 1),
1046
+ t
1047
+ );
1048
+ }
1049
+ function _(t, n, a) {
1050
+ var r = n[0],
1051
+ u = n[1],
1052
+ e = n[2],
1053
+ o = n[3],
1054
+ i = n[4],
1055
+ h = n[5],
1056
+ c = n[6],
1057
+ s = n[7],
1058
+ M = n[8],
1059
+ f = n[9],
1060
+ l = n[10],
1061
+ v = n[11],
1062
+ b = n[12],
1063
+ m = n[13],
1064
+ d = n[14],
1065
+ p = n[15],
1066
+ x = a[0],
1067
+ y = a[1],
1068
+ q = a[2],
1069
+ g = a[3];
1070
+ return (
1071
+ (t[0] = x * r + y * i + q * M + g * b),
1072
+ (t[1] = x * u + y * h + q * f + g * m),
1073
+ (t[2] = x * e + y * c + q * l + g * d),
1074
+ (t[3] = x * o + y * s + q * v + g * p),
1075
+ (x = a[4]),
1076
+ (y = a[5]),
1077
+ (q = a[6]),
1078
+ (g = a[7]),
1079
+ (t[4] = x * r + y * i + q * M + g * b),
1080
+ (t[5] = x * u + y * h + q * f + g * m),
1081
+ (t[6] = x * e + y * c + q * l + g * d),
1082
+ (t[7] = x * o + y * s + q * v + g * p),
1083
+ (x = a[8]),
1084
+ (y = a[9]),
1085
+ (q = a[10]),
1086
+ (g = a[11]),
1087
+ (t[8] = x * r + y * i + q * M + g * b),
1088
+ (t[9] = x * u + y * h + q * f + g * m),
1089
+ (t[10] = x * e + y * c + q * l + g * d),
1090
+ (t[11] = x * o + y * s + q * v + g * p),
1091
+ (x = a[12]),
1092
+ (y = a[13]),
1093
+ (q = a[14]),
1094
+ (g = a[15]),
1095
+ (t[12] = x * r + y * i + q * M + g * b),
1096
+ (t[13] = x * u + y * h + q * f + g * m),
1097
+ (t[14] = x * e + y * c + q * l + g * d),
1098
+ (t[15] = x * o + y * s + q * v + g * p),
1099
+ t
1100
+ );
1101
+ }
1102
+ function A(t, n, a) {
1103
+ var r = n[0],
1104
+ u = n[1],
1105
+ e = n[2],
1106
+ o = n[3],
1107
+ i = r + r,
1108
+ h = u + u,
1109
+ c = e + e,
1110
+ s = r * i,
1111
+ M = r * h,
1112
+ f = r * c,
1113
+ l = u * h,
1114
+ v = u * c,
1115
+ b = e * c,
1116
+ m = o * i,
1117
+ d = o * h,
1118
+ p = o * c;
1119
+ return (
1120
+ (t[0] = 1 - (l + b)),
1121
+ (t[1] = M + p),
1122
+ (t[2] = f - d),
1123
+ (t[3] = 0),
1124
+ (t[4] = M - p),
1125
+ (t[5] = 1 - (s + b)),
1126
+ (t[6] = v + m),
1127
+ (t[7] = 0),
1128
+ (t[8] = f + d),
1129
+ (t[9] = v - m),
1130
+ (t[10] = 1 - (s + l)),
1131
+ (t[11] = 0),
1132
+ (t[12] = a[0]),
1133
+ (t[13] = a[1]),
1134
+ (t[14] = a[2]),
1135
+ (t[15] = 1),
1136
+ t
1137
+ );
1138
+ }
1139
+ function w(t, n) {
1140
+ return ((t[0] = n[12]), (t[1] = n[13]), (t[2] = n[14]), t);
1141
+ }
1142
+ function R(t, n) {
1143
+ var a = n[0],
1144
+ r = n[1],
1145
+ u = n[2],
1146
+ e = n[4],
1147
+ o = n[5],
1148
+ i = n[6],
1149
+ h = n[8],
1150
+ c = n[9],
1151
+ s = n[10];
1152
+ return (
1153
+ (t[0] = Math.hypot(a, r, u)), (t[1] = Math.hypot(e, o, i)), (t[2] = Math.hypot(h, c, s)), t
1154
+ );
1155
+ }
1156
+ function z(t, n) {
1157
+ var r = new a(3);
1158
+ R(r, n);
1159
+ var u = 1 / r[0],
1160
+ e = 1 / r[1],
1161
+ o = 1 / r[2],
1162
+ i = n[0] * u,
1163
+ h = n[1] * e,
1164
+ c = n[2] * o,
1165
+ s = n[4] * u,
1166
+ M = n[5] * e,
1167
+ f = n[6] * o,
1168
+ l = n[8] * u,
1169
+ v = n[9] * e,
1170
+ b = n[10] * o,
1171
+ m = i + M + b,
1172
+ d = 0;
1173
+ return (
1174
+ m > 0
1175
+ ? ((d = 2 * Math.sqrt(m + 1)),
1176
+ (t[3] = 0.25 * d),
1177
+ (t[0] = (f - v) / d),
1178
+ (t[1] = (l - c) / d),
1179
+ (t[2] = (h - s) / d))
1180
+ : i > M && i > b
1181
+ ? ((d = 2 * Math.sqrt(1 + i - M - b)),
1182
+ (t[3] = (f - v) / d),
1183
+ (t[0] = 0.25 * d),
1184
+ (t[1] = (h + s) / d),
1185
+ (t[2] = (l + c) / d))
1186
+ : M > b
1187
+ ? ((d = 2 * Math.sqrt(1 + M - i - b)),
1188
+ (t[3] = (l - c) / d),
1189
+ (t[0] = (h + s) / d),
1190
+ (t[1] = 0.25 * d),
1191
+ (t[2] = (f + v) / d))
1192
+ : ((d = 2 * Math.sqrt(1 + b - i - M)),
1193
+ (t[3] = (h - s) / d),
1194
+ (t[0] = (l + c) / d),
1195
+ (t[1] = (f + v) / d),
1196
+ (t[2] = 0.25 * d)),
1197
+ t
1198
+ );
1199
+ }
1200
+ function O(t, n, a, r, u) {
1201
+ var e,
1202
+ o = 1 / Math.tan(n / 2);
1203
+ return (
1204
+ (t[0] = o / a),
1205
+ (t[1] = 0),
1206
+ (t[2] = 0),
1207
+ (t[3] = 0),
1208
+ (t[4] = 0),
1209
+ (t[5] = o),
1210
+ (t[6] = 0),
1211
+ (t[7] = 0),
1212
+ (t[8] = 0),
1213
+ (t[9] = 0),
1214
+ (t[11] = -1),
1215
+ (t[12] = 0),
1216
+ (t[13] = 0),
1217
+ (t[15] = 0),
1218
+ null != u && u !== 1 / 0
1219
+ ? ((e = 1 / (r - u)), (t[10] = (u + r) * e), (t[14] = 2 * u * r * e))
1220
+ : ((t[10] = -1), (t[14] = -2 * r)),
1221
+ t
1222
+ );
1223
+ }
1224
+ var j = O;
1225
+ function P(t, n, a, r, u, e, o) {
1226
+ var i = 1 / (n - a),
1227
+ h = 1 / (r - u),
1228
+ c = 1 / (e - o);
1229
+ return (
1230
+ (t[0] = -2 * i),
1231
+ (t[1] = 0),
1232
+ (t[2] = 0),
1233
+ (t[3] = 0),
1234
+ (t[4] = 0),
1235
+ (t[5] = -2 * h),
1236
+ (t[6] = 0),
1237
+ (t[7] = 0),
1238
+ (t[8] = 0),
1239
+ (t[9] = 0),
1240
+ (t[10] = 2 * c),
1241
+ (t[11] = 0),
1242
+ (t[12] = (n + a) * i),
1243
+ (t[13] = (u + r) * h),
1244
+ (t[14] = (o + e) * c),
1245
+ (t[15] = 1),
1246
+ t
1247
+ );
1248
+ }
1249
+ var S = P;
1250
+ function E(t, n, a) {
1251
+ return (
1252
+ (t[0] = n[0] - a[0]),
1253
+ (t[1] = n[1] - a[1]),
1254
+ (t[2] = n[2] - a[2]),
1255
+ (t[3] = n[3] - a[3]),
1256
+ (t[4] = n[4] - a[4]),
1257
+ (t[5] = n[5] - a[5]),
1258
+ (t[6] = n[6] - a[6]),
1259
+ (t[7] = n[7] - a[7]),
1260
+ (t[8] = n[8] - a[8]),
1261
+ (t[9] = n[9] - a[9]),
1262
+ (t[10] = n[10] - a[10]),
1263
+ (t[11] = n[11] - a[11]),
1264
+ (t[12] = n[12] - a[12]),
1265
+ (t[13] = n[13] - a[13]),
1266
+ (t[14] = n[14] - a[14]),
1267
+ (t[15] = n[15] - a[15]),
1268
+ t
1269
+ );
1270
+ }
1271
+ var T = _,
1272
+ D = E,
1273
+ F = Object.freeze({
1274
+ __proto__: null,
1275
+ create: function () {
1276
+ var t = new a(16);
1277
+ return (
1278
+ a != Float32Array &&
1279
+ ((t[1] = 0),
1280
+ (t[2] = 0),
1281
+ (t[3] = 0),
1282
+ (t[4] = 0),
1283
+ (t[6] = 0),
1284
+ (t[7] = 0),
1285
+ (t[8] = 0),
1286
+ (t[9] = 0),
1287
+ (t[11] = 0),
1288
+ (t[12] = 0),
1289
+ (t[13] = 0),
1290
+ (t[14] = 0)),
1291
+ (t[0] = 1),
1292
+ (t[5] = 1),
1293
+ (t[10] = 1),
1294
+ (t[15] = 1),
1295
+ t
1296
+ );
1297
+ },
1298
+ clone: function (t) {
1299
+ var n = new a(16);
1300
+ return (
1301
+ (n[0] = t[0]),
1302
+ (n[1] = t[1]),
1303
+ (n[2] = t[2]),
1304
+ (n[3] = t[3]),
1305
+ (n[4] = t[4]),
1306
+ (n[5] = t[5]),
1307
+ (n[6] = t[6]),
1308
+ (n[7] = t[7]),
1309
+ (n[8] = t[8]),
1310
+ (n[9] = t[9]),
1311
+ (n[10] = t[10]),
1312
+ (n[11] = t[11]),
1313
+ (n[12] = t[12]),
1314
+ (n[13] = t[13]),
1315
+ (n[14] = t[14]),
1316
+ (n[15] = t[15]),
1317
+ n
1318
+ );
1319
+ },
1320
+ copy: function (t, n) {
1321
+ return (
1322
+ (t[0] = n[0]),
1323
+ (t[1] = n[1]),
1324
+ (t[2] = n[2]),
1325
+ (t[3] = n[3]),
1326
+ (t[4] = n[4]),
1327
+ (t[5] = n[5]),
1328
+ (t[6] = n[6]),
1329
+ (t[7] = n[7]),
1330
+ (t[8] = n[8]),
1331
+ (t[9] = n[9]),
1332
+ (t[10] = n[10]),
1333
+ (t[11] = n[11]),
1334
+ (t[12] = n[12]),
1335
+ (t[13] = n[13]),
1336
+ (t[14] = n[14]),
1337
+ (t[15] = n[15]),
1338
+ t
1339
+ );
1340
+ },
1341
+ fromValues: function (t, n, r, u, e, o, i, h, c, s, M, f, l, v, b, m) {
1342
+ var d = new a(16);
1343
+ return (
1344
+ (d[0] = t),
1345
+ (d[1] = n),
1346
+ (d[2] = r),
1347
+ (d[3] = u),
1348
+ (d[4] = e),
1349
+ (d[5] = o),
1350
+ (d[6] = i),
1351
+ (d[7] = h),
1352
+ (d[8] = c),
1353
+ (d[9] = s),
1354
+ (d[10] = M),
1355
+ (d[11] = f),
1356
+ (d[12] = l),
1357
+ (d[13] = v),
1358
+ (d[14] = b),
1359
+ (d[15] = m),
1360
+ d
1361
+ );
1362
+ },
1363
+ set: function (t, n, a, r, u, e, o, i, h, c, s, M, f, l, v, b, m) {
1364
+ return (
1365
+ (t[0] = n),
1366
+ (t[1] = a),
1367
+ (t[2] = r),
1368
+ (t[3] = u),
1369
+ (t[4] = e),
1370
+ (t[5] = o),
1371
+ (t[6] = i),
1372
+ (t[7] = h),
1373
+ (t[8] = c),
1374
+ (t[9] = s),
1375
+ (t[10] = M),
1376
+ (t[11] = f),
1377
+ (t[12] = l),
1378
+ (t[13] = v),
1379
+ (t[14] = b),
1380
+ (t[15] = m),
1381
+ t
1382
+ );
1383
+ },
1384
+ identity: g,
1385
+ transpose: function (t, n) {
1386
+ if (t === n) {
1387
+ var a = n[1],
1388
+ r = n[2],
1389
+ u = n[3],
1390
+ e = n[6],
1391
+ o = n[7],
1392
+ i = n[11];
1393
+ ((t[1] = n[4]),
1394
+ (t[2] = n[8]),
1395
+ (t[3] = n[12]),
1396
+ (t[4] = a),
1397
+ (t[6] = n[9]),
1398
+ (t[7] = n[13]),
1399
+ (t[8] = r),
1400
+ (t[9] = e),
1401
+ (t[11] = n[14]),
1402
+ (t[12] = u),
1403
+ (t[13] = o),
1404
+ (t[14] = i));
1405
+ } else
1406
+ ((t[0] = n[0]),
1407
+ (t[1] = n[4]),
1408
+ (t[2] = n[8]),
1409
+ (t[3] = n[12]),
1410
+ (t[4] = n[1]),
1411
+ (t[5] = n[5]),
1412
+ (t[6] = n[9]),
1413
+ (t[7] = n[13]),
1414
+ (t[8] = n[2]),
1415
+ (t[9] = n[6]),
1416
+ (t[10] = n[10]),
1417
+ (t[11] = n[14]),
1418
+ (t[12] = n[3]),
1419
+ (t[13] = n[7]),
1420
+ (t[14] = n[11]),
1421
+ (t[15] = n[15]));
1422
+ return t;
1423
+ },
1424
+ invert: function (t, n) {
1425
+ var a = n[0],
1426
+ r = n[1],
1427
+ u = n[2],
1428
+ e = n[3],
1429
+ o = n[4],
1430
+ i = n[5],
1431
+ h = n[6],
1432
+ c = n[7],
1433
+ s = n[8],
1434
+ M = n[9],
1435
+ f = n[10],
1436
+ l = n[11],
1437
+ v = n[12],
1438
+ b = n[13],
1439
+ m = n[14],
1440
+ d = n[15],
1441
+ p = a * i - r * o,
1442
+ x = a * h - u * o,
1443
+ y = a * c - e * o,
1444
+ q = r * h - u * i,
1445
+ g = r * c - e * i,
1446
+ _ = u * c - e * h,
1447
+ A = s * b - M * v,
1448
+ w = s * m - f * v,
1449
+ R = s * d - l * v,
1450
+ z = M * m - f * b,
1451
+ O = M * d - l * b,
1452
+ j = f * d - l * m,
1453
+ P = p * j - x * O + y * z + q * R - g * w + _ * A;
1454
+ return P
1455
+ ? ((P = 1 / P),
1456
+ (t[0] = (i * j - h * O + c * z) * P),
1457
+ (t[1] = (u * O - r * j - e * z) * P),
1458
+ (t[2] = (b * _ - m * g + d * q) * P),
1459
+ (t[3] = (f * g - M * _ - l * q) * P),
1460
+ (t[4] = (h * R - o * j - c * w) * P),
1461
+ (t[5] = (a * j - u * R + e * w) * P),
1462
+ (t[6] = (m * y - v * _ - d * x) * P),
1463
+ (t[7] = (s * _ - f * y + l * x) * P),
1464
+ (t[8] = (o * O - i * R + c * A) * P),
1465
+ (t[9] = (r * R - a * O - e * A) * P),
1466
+ (t[10] = (v * g - b * y + d * p) * P),
1467
+ (t[11] = (M * y - s * g - l * p) * P),
1468
+ (t[12] = (i * w - o * z - h * A) * P),
1469
+ (t[13] = (a * z - r * w + u * A) * P),
1470
+ (t[14] = (b * x - v * q - m * p) * P),
1471
+ (t[15] = (s * q - M * x + f * p) * P),
1472
+ t)
1473
+ : null;
1474
+ },
1475
+ adjoint: function (t, n) {
1476
+ var a = n[0],
1477
+ r = n[1],
1478
+ u = n[2],
1479
+ e = n[3],
1480
+ o = n[4],
1481
+ i = n[5],
1482
+ h = n[6],
1483
+ c = n[7],
1484
+ s = n[8],
1485
+ M = n[9],
1486
+ f = n[10],
1487
+ l = n[11],
1488
+ v = n[12],
1489
+ b = n[13],
1490
+ m = n[14],
1491
+ d = n[15];
1492
+ return (
1493
+ (t[0] = i * (f * d - l * m) - M * (h * d - c * m) + b * (h * l - c * f)),
1494
+ (t[1] = -(r * (f * d - l * m) - M * (u * d - e * m) + b * (u * l - e * f))),
1495
+ (t[2] = r * (h * d - c * m) - i * (u * d - e * m) + b * (u * c - e * h)),
1496
+ (t[3] = -(r * (h * l - c * f) - i * (u * l - e * f) + M * (u * c - e * h))),
1497
+ (t[4] = -(o * (f * d - l * m) - s * (h * d - c * m) + v * (h * l - c * f))),
1498
+ (t[5] = a * (f * d - l * m) - s * (u * d - e * m) + v * (u * l - e * f)),
1499
+ (t[6] = -(a * (h * d - c * m) - o * (u * d - e * m) + v * (u * c - e * h))),
1500
+ (t[7] = a * (h * l - c * f) - o * (u * l - e * f) + s * (u * c - e * h)),
1501
+ (t[8] = o * (M * d - l * b) - s * (i * d - c * b) + v * (i * l - c * M)),
1502
+ (t[9] = -(a * (M * d - l * b) - s * (r * d - e * b) + v * (r * l - e * M))),
1503
+ (t[10] = a * (i * d - c * b) - o * (r * d - e * b) + v * (r * c - e * i)),
1504
+ (t[11] = -(a * (i * l - c * M) - o * (r * l - e * M) + s * (r * c - e * i))),
1505
+ (t[12] = -(o * (M * m - f * b) - s * (i * m - h * b) + v * (i * f - h * M))),
1506
+ (t[13] = a * (M * m - f * b) - s * (r * m - u * b) + v * (r * f - u * M)),
1507
+ (t[14] = -(a * (i * m - h * b) - o * (r * m - u * b) + v * (r * h - u * i))),
1508
+ (t[15] = a * (i * f - h * M) - o * (r * f - u * M) + s * (r * h - u * i)),
1509
+ t
1510
+ );
1511
+ },
1512
+ determinant: function (t) {
1513
+ var n = t[0],
1514
+ a = t[1],
1515
+ r = t[2],
1516
+ u = t[3],
1517
+ e = t[4],
1518
+ o = t[5],
1519
+ i = t[6],
1520
+ h = t[7],
1521
+ c = t[8],
1522
+ s = t[9],
1523
+ M = t[10],
1524
+ f = t[11],
1525
+ l = t[12],
1526
+ v = t[13],
1527
+ b = t[14],
1528
+ m = t[15];
1529
+ return (
1530
+ (n * o - a * e) * (M * m - f * b) -
1531
+ (n * i - r * e) * (s * m - f * v) +
1532
+ (n * h - u * e) * (s * b - M * v) +
1533
+ (a * i - r * o) * (c * m - f * l) -
1534
+ (a * h - u * o) * (c * b - M * l) +
1535
+ (r * h - u * i) * (c * v - s * l)
1536
+ );
1537
+ },
1538
+ multiply: _,
1539
+ translate: function (t, n, a) {
1540
+ var r,
1541
+ u,
1542
+ e,
1543
+ o,
1544
+ i,
1545
+ h,
1546
+ c,
1547
+ s,
1548
+ M,
1549
+ f,
1550
+ l,
1551
+ v,
1552
+ b = a[0],
1553
+ m = a[1],
1554
+ d = a[2];
1555
+ return (
1556
+ n === t
1557
+ ? ((t[12] = n[0] * b + n[4] * m + n[8] * d + n[12]),
1558
+ (t[13] = n[1] * b + n[5] * m + n[9] * d + n[13]),
1559
+ (t[14] = n[2] * b + n[6] * m + n[10] * d + n[14]),
1560
+ (t[15] = n[3] * b + n[7] * m + n[11] * d + n[15]))
1561
+ : ((r = n[0]),
1562
+ (u = n[1]),
1563
+ (e = n[2]),
1564
+ (o = n[3]),
1565
+ (i = n[4]),
1566
+ (h = n[5]),
1567
+ (c = n[6]),
1568
+ (s = n[7]),
1569
+ (M = n[8]),
1570
+ (f = n[9]),
1571
+ (l = n[10]),
1572
+ (v = n[11]),
1573
+ (t[0] = r),
1574
+ (t[1] = u),
1575
+ (t[2] = e),
1576
+ (t[3] = o),
1577
+ (t[4] = i),
1578
+ (t[5] = h),
1579
+ (t[6] = c),
1580
+ (t[7] = s),
1581
+ (t[8] = M),
1582
+ (t[9] = f),
1583
+ (t[10] = l),
1584
+ (t[11] = v),
1585
+ (t[12] = r * b + i * m + M * d + n[12]),
1586
+ (t[13] = u * b + h * m + f * d + n[13]),
1587
+ (t[14] = e * b + c * m + l * d + n[14]),
1588
+ (t[15] = o * b + s * m + v * d + n[15])),
1589
+ t
1590
+ );
1591
+ },
1592
+ scale: function (t, n, a) {
1593
+ var r = a[0],
1594
+ u = a[1],
1595
+ e = a[2];
1596
+ return (
1597
+ (t[0] = n[0] * r),
1598
+ (t[1] = n[1] * r),
1599
+ (t[2] = n[2] * r),
1600
+ (t[3] = n[3] * r),
1601
+ (t[4] = n[4] * u),
1602
+ (t[5] = n[5] * u),
1603
+ (t[6] = n[6] * u),
1604
+ (t[7] = n[7] * u),
1605
+ (t[8] = n[8] * e),
1606
+ (t[9] = n[9] * e),
1607
+ (t[10] = n[10] * e),
1608
+ (t[11] = n[11] * e),
1609
+ (t[12] = n[12]),
1610
+ (t[13] = n[13]),
1611
+ (t[14] = n[14]),
1612
+ (t[15] = n[15]),
1613
+ t
1614
+ );
1615
+ },
1616
+ rotate: function (t, a, r, u) {
1617
+ var e,
1618
+ o,
1619
+ i,
1620
+ h,
1621
+ c,
1622
+ s,
1623
+ M,
1624
+ f,
1625
+ l,
1626
+ v,
1627
+ b,
1628
+ m,
1629
+ d,
1630
+ p,
1631
+ x,
1632
+ y,
1633
+ q,
1634
+ g,
1635
+ _,
1636
+ A,
1637
+ w,
1638
+ R,
1639
+ z,
1640
+ O,
1641
+ j = u[0],
1642
+ P = u[1],
1643
+ S = u[2],
1644
+ E = Math.hypot(j, P, S);
1645
+ return E < n
1646
+ ? null
1647
+ : ((j *= E = 1 / E),
1648
+ (P *= E),
1649
+ (S *= E),
1650
+ (e = Math.sin(r)),
1651
+ (i = 1 - (o = Math.cos(r))),
1652
+ (h = a[0]),
1653
+ (c = a[1]),
1654
+ (s = a[2]),
1655
+ (M = a[3]),
1656
+ (f = a[4]),
1657
+ (l = a[5]),
1658
+ (v = a[6]),
1659
+ (b = a[7]),
1660
+ (m = a[8]),
1661
+ (d = a[9]),
1662
+ (p = a[10]),
1663
+ (x = a[11]),
1664
+ (y = j * j * i + o),
1665
+ (q = P * j * i + S * e),
1666
+ (g = S * j * i - P * e),
1667
+ (_ = j * P * i - S * e),
1668
+ (A = P * P * i + o),
1669
+ (w = S * P * i + j * e),
1670
+ (R = j * S * i + P * e),
1671
+ (z = P * S * i - j * e),
1672
+ (O = S * S * i + o),
1673
+ (t[0] = h * y + f * q + m * g),
1674
+ (t[1] = c * y + l * q + d * g),
1675
+ (t[2] = s * y + v * q + p * g),
1676
+ (t[3] = M * y + b * q + x * g),
1677
+ (t[4] = h * _ + f * A + m * w),
1678
+ (t[5] = c * _ + l * A + d * w),
1679
+ (t[6] = s * _ + v * A + p * w),
1680
+ (t[7] = M * _ + b * A + x * w),
1681
+ (t[8] = h * R + f * z + m * O),
1682
+ (t[9] = c * R + l * z + d * O),
1683
+ (t[10] = s * R + v * z + p * O),
1684
+ (t[11] = M * R + b * z + x * O),
1685
+ a !== t && ((t[12] = a[12]), (t[13] = a[13]), (t[14] = a[14]), (t[15] = a[15])),
1686
+ t);
1687
+ },
1688
+ rotateX: function (t, n, a) {
1689
+ var r = Math.sin(a),
1690
+ u = Math.cos(a),
1691
+ e = n[4],
1692
+ o = n[5],
1693
+ i = n[6],
1694
+ h = n[7],
1695
+ c = n[8],
1696
+ s = n[9],
1697
+ M = n[10],
1698
+ f = n[11];
1699
+ return (
1700
+ n !== t &&
1701
+ ((t[0] = n[0]),
1702
+ (t[1] = n[1]),
1703
+ (t[2] = n[2]),
1704
+ (t[3] = n[3]),
1705
+ (t[12] = n[12]),
1706
+ (t[13] = n[13]),
1707
+ (t[14] = n[14]),
1708
+ (t[15] = n[15])),
1709
+ (t[4] = e * u + c * r),
1710
+ (t[5] = o * u + s * r),
1711
+ (t[6] = i * u + M * r),
1712
+ (t[7] = h * u + f * r),
1713
+ (t[8] = c * u - e * r),
1714
+ (t[9] = s * u - o * r),
1715
+ (t[10] = M * u - i * r),
1716
+ (t[11] = f * u - h * r),
1717
+ t
1718
+ );
1719
+ },
1720
+ rotateY: function (t, n, a) {
1721
+ var r = Math.sin(a),
1722
+ u = Math.cos(a),
1723
+ e = n[0],
1724
+ o = n[1],
1725
+ i = n[2],
1726
+ h = n[3],
1727
+ c = n[8],
1728
+ s = n[9],
1729
+ M = n[10],
1730
+ f = n[11];
1731
+ return (
1732
+ n !== t &&
1733
+ ((t[4] = n[4]),
1734
+ (t[5] = n[5]),
1735
+ (t[6] = n[6]),
1736
+ (t[7] = n[7]),
1737
+ (t[12] = n[12]),
1738
+ (t[13] = n[13]),
1739
+ (t[14] = n[14]),
1740
+ (t[15] = n[15])),
1741
+ (t[0] = e * u - c * r),
1742
+ (t[1] = o * u - s * r),
1743
+ (t[2] = i * u - M * r),
1744
+ (t[3] = h * u - f * r),
1745
+ (t[8] = e * r + c * u),
1746
+ (t[9] = o * r + s * u),
1747
+ (t[10] = i * r + M * u),
1748
+ (t[11] = h * r + f * u),
1749
+ t
1750
+ );
1751
+ },
1752
+ rotateZ: function (t, n, a) {
1753
+ var r = Math.sin(a),
1754
+ u = Math.cos(a),
1755
+ e = n[0],
1756
+ o = n[1],
1757
+ i = n[2],
1758
+ h = n[3],
1759
+ c = n[4],
1760
+ s = n[5],
1761
+ M = n[6],
1762
+ f = n[7];
1763
+ return (
1764
+ n !== t &&
1765
+ ((t[8] = n[8]),
1766
+ (t[9] = n[9]),
1767
+ (t[10] = n[10]),
1768
+ (t[11] = n[11]),
1769
+ (t[12] = n[12]),
1770
+ (t[13] = n[13]),
1771
+ (t[14] = n[14]),
1772
+ (t[15] = n[15])),
1773
+ (t[0] = e * u + c * r),
1774
+ (t[1] = o * u + s * r),
1775
+ (t[2] = i * u + M * r),
1776
+ (t[3] = h * u + f * r),
1777
+ (t[4] = c * u - e * r),
1778
+ (t[5] = s * u - o * r),
1779
+ (t[6] = M * u - i * r),
1780
+ (t[7] = f * u - h * r),
1781
+ t
1782
+ );
1783
+ },
1784
+ fromTranslation: function (t, n) {
1785
+ return (
1786
+ (t[0] = 1),
1787
+ (t[1] = 0),
1788
+ (t[2] = 0),
1789
+ (t[3] = 0),
1790
+ (t[4] = 0),
1791
+ (t[5] = 1),
1792
+ (t[6] = 0),
1793
+ (t[7] = 0),
1794
+ (t[8] = 0),
1795
+ (t[9] = 0),
1796
+ (t[10] = 1),
1797
+ (t[11] = 0),
1798
+ (t[12] = n[0]),
1799
+ (t[13] = n[1]),
1800
+ (t[14] = n[2]),
1801
+ (t[15] = 1),
1802
+ t
1803
+ );
1804
+ },
1805
+ fromScaling: function (t, n) {
1806
+ return (
1807
+ (t[0] = n[0]),
1808
+ (t[1] = 0),
1809
+ (t[2] = 0),
1810
+ (t[3] = 0),
1811
+ (t[4] = 0),
1812
+ (t[5] = n[1]),
1813
+ (t[6] = 0),
1814
+ (t[7] = 0),
1815
+ (t[8] = 0),
1816
+ (t[9] = 0),
1817
+ (t[10] = n[2]),
1818
+ (t[11] = 0),
1819
+ (t[12] = 0),
1820
+ (t[13] = 0),
1821
+ (t[14] = 0),
1822
+ (t[15] = 1),
1823
+ t
1824
+ );
1825
+ },
1826
+ fromRotation: function (t, a, r) {
1827
+ var u,
1828
+ e,
1829
+ o,
1830
+ i = r[0],
1831
+ h = r[1],
1832
+ c = r[2],
1833
+ s = Math.hypot(i, h, c);
1834
+ return s < n
1835
+ ? null
1836
+ : ((i *= s = 1 / s),
1837
+ (h *= s),
1838
+ (c *= s),
1839
+ (u = Math.sin(a)),
1840
+ (o = 1 - (e = Math.cos(a))),
1841
+ (t[0] = i * i * o + e),
1842
+ (t[1] = h * i * o + c * u),
1843
+ (t[2] = c * i * o - h * u),
1844
+ (t[3] = 0),
1845
+ (t[4] = i * h * o - c * u),
1846
+ (t[5] = h * h * o + e),
1847
+ (t[6] = c * h * o + i * u),
1848
+ (t[7] = 0),
1849
+ (t[8] = i * c * o + h * u),
1850
+ (t[9] = h * c * o - i * u),
1851
+ (t[10] = c * c * o + e),
1852
+ (t[11] = 0),
1853
+ (t[12] = 0),
1854
+ (t[13] = 0),
1855
+ (t[14] = 0),
1856
+ (t[15] = 1),
1857
+ t);
1858
+ },
1859
+ fromXRotation: function (t, n) {
1860
+ var a = Math.sin(n),
1861
+ r = Math.cos(n);
1862
+ return (
1863
+ (t[0] = 1),
1864
+ (t[1] = 0),
1865
+ (t[2] = 0),
1866
+ (t[3] = 0),
1867
+ (t[4] = 0),
1868
+ (t[5] = r),
1869
+ (t[6] = a),
1870
+ (t[7] = 0),
1871
+ (t[8] = 0),
1872
+ (t[9] = -a),
1873
+ (t[10] = r),
1874
+ (t[11] = 0),
1875
+ (t[12] = 0),
1876
+ (t[13] = 0),
1877
+ (t[14] = 0),
1878
+ (t[15] = 1),
1879
+ t
1880
+ );
1881
+ },
1882
+ fromYRotation: function (t, n) {
1883
+ var a = Math.sin(n),
1884
+ r = Math.cos(n);
1885
+ return (
1886
+ (t[0] = r),
1887
+ (t[1] = 0),
1888
+ (t[2] = -a),
1889
+ (t[3] = 0),
1890
+ (t[4] = 0),
1891
+ (t[5] = 1),
1892
+ (t[6] = 0),
1893
+ (t[7] = 0),
1894
+ (t[8] = a),
1895
+ (t[9] = 0),
1896
+ (t[10] = r),
1897
+ (t[11] = 0),
1898
+ (t[12] = 0),
1899
+ (t[13] = 0),
1900
+ (t[14] = 0),
1901
+ (t[15] = 1),
1902
+ t
1903
+ );
1904
+ },
1905
+ fromZRotation: function (t, n) {
1906
+ var a = Math.sin(n),
1907
+ r = Math.cos(n);
1908
+ return (
1909
+ (t[0] = r),
1910
+ (t[1] = a),
1911
+ (t[2] = 0),
1912
+ (t[3] = 0),
1913
+ (t[4] = -a),
1914
+ (t[5] = r),
1915
+ (t[6] = 0),
1916
+ (t[7] = 0),
1917
+ (t[8] = 0),
1918
+ (t[9] = 0),
1919
+ (t[10] = 1),
1920
+ (t[11] = 0),
1921
+ (t[12] = 0),
1922
+ (t[13] = 0),
1923
+ (t[14] = 0),
1924
+ (t[15] = 1),
1925
+ t
1926
+ );
1927
+ },
1928
+ fromRotationTranslation: A,
1929
+ fromQuat2: function (t, n) {
1930
+ var r = new a(3),
1931
+ u = -n[0],
1932
+ e = -n[1],
1933
+ o = -n[2],
1934
+ i = n[3],
1935
+ h = n[4],
1936
+ c = n[5],
1937
+ s = n[6],
1938
+ M = n[7],
1939
+ f = u * u + e * e + o * o + i * i;
1940
+ return (
1941
+ f > 0
1942
+ ? ((r[0] = (2 * (h * i + M * u + c * o - s * e)) / f),
1943
+ (r[1] = (2 * (c * i + M * e + s * u - h * o)) / f),
1944
+ (r[2] = (2 * (s * i + M * o + h * e - c * u)) / f))
1945
+ : ((r[0] = 2 * (h * i + M * u + c * o - s * e)),
1946
+ (r[1] = 2 * (c * i + M * e + s * u - h * o)),
1947
+ (r[2] = 2 * (s * i + M * o + h * e - c * u))),
1948
+ A(t, n, r),
1949
+ t
1950
+ );
1951
+ },
1952
+ getTranslation: w,
1953
+ getScaling: R,
1954
+ getRotation: z,
1955
+ fromRotationTranslationScale: function (t, n, a, r) {
1956
+ var u = n[0],
1957
+ e = n[1],
1958
+ o = n[2],
1959
+ i = n[3],
1960
+ h = u + u,
1961
+ c = e + e,
1962
+ s = o + o,
1963
+ M = u * h,
1964
+ f = u * c,
1965
+ l = u * s,
1966
+ v = e * c,
1967
+ b = e * s,
1968
+ m = o * s,
1969
+ d = i * h,
1970
+ p = i * c,
1971
+ x = i * s,
1972
+ y = r[0],
1973
+ q = r[1],
1974
+ g = r[2];
1975
+ return (
1976
+ (t[0] = (1 - (v + m)) * y),
1977
+ (t[1] = (f + x) * y),
1978
+ (t[2] = (l - p) * y),
1979
+ (t[3] = 0),
1980
+ (t[4] = (f - x) * q),
1981
+ (t[5] = (1 - (M + m)) * q),
1982
+ (t[6] = (b + d) * q),
1983
+ (t[7] = 0),
1984
+ (t[8] = (l + p) * g),
1985
+ (t[9] = (b - d) * g),
1986
+ (t[10] = (1 - (M + v)) * g),
1987
+ (t[11] = 0),
1988
+ (t[12] = a[0]),
1989
+ (t[13] = a[1]),
1990
+ (t[14] = a[2]),
1991
+ (t[15] = 1),
1992
+ t
1993
+ );
1994
+ },
1995
+ fromRotationTranslationScaleOrigin: function (t, n, a, r, u) {
1996
+ var e = n[0],
1997
+ o = n[1],
1998
+ i = n[2],
1999
+ h = n[3],
2000
+ c = e + e,
2001
+ s = o + o,
2002
+ M = i + i,
2003
+ f = e * c,
2004
+ l = e * s,
2005
+ v = e * M,
2006
+ b = o * s,
2007
+ m = o * M,
2008
+ d = i * M,
2009
+ p = h * c,
2010
+ x = h * s,
2011
+ y = h * M,
2012
+ q = r[0],
2013
+ g = r[1],
2014
+ _ = r[2],
2015
+ A = u[0],
2016
+ w = u[1],
2017
+ R = u[2],
2018
+ z = (1 - (b + d)) * q,
2019
+ O = (l + y) * q,
2020
+ j = (v - x) * q,
2021
+ P = (l - y) * g,
2022
+ S = (1 - (f + d)) * g,
2023
+ E = (m + p) * g,
2024
+ T = (v + x) * _,
2025
+ D = (m - p) * _,
2026
+ F = (1 - (f + b)) * _;
2027
+ return (
2028
+ (t[0] = z),
2029
+ (t[1] = O),
2030
+ (t[2] = j),
2031
+ (t[3] = 0),
2032
+ (t[4] = P),
2033
+ (t[5] = S),
2034
+ (t[6] = E),
2035
+ (t[7] = 0),
2036
+ (t[8] = T),
2037
+ (t[9] = D),
2038
+ (t[10] = F),
2039
+ (t[11] = 0),
2040
+ (t[12] = a[0] + A - (z * A + P * w + T * R)),
2041
+ (t[13] = a[1] + w - (O * A + S * w + D * R)),
2042
+ (t[14] = a[2] + R - (j * A + E * w + F * R)),
2043
+ (t[15] = 1),
2044
+ t
2045
+ );
2046
+ },
2047
+ fromQuat: function (t, n) {
2048
+ var a = n[0],
2049
+ r = n[1],
2050
+ u = n[2],
2051
+ e = n[3],
2052
+ o = a + a,
2053
+ i = r + r,
2054
+ h = u + u,
2055
+ c = a * o,
2056
+ s = r * o,
2057
+ M = r * i,
2058
+ f = u * o,
2059
+ l = u * i,
2060
+ v = u * h,
2061
+ b = e * o,
2062
+ m = e * i,
2063
+ d = e * h;
2064
+ return (
2065
+ (t[0] = 1 - M - v),
2066
+ (t[1] = s + d),
2067
+ (t[2] = f - m),
2068
+ (t[3] = 0),
2069
+ (t[4] = s - d),
2070
+ (t[5] = 1 - c - v),
2071
+ (t[6] = l + b),
2072
+ (t[7] = 0),
2073
+ (t[8] = f + m),
2074
+ (t[9] = l - b),
2075
+ (t[10] = 1 - c - M),
2076
+ (t[11] = 0),
2077
+ (t[12] = 0),
2078
+ (t[13] = 0),
2079
+ (t[14] = 0),
2080
+ (t[15] = 1),
2081
+ t
2082
+ );
2083
+ },
2084
+ frustum: function (t, n, a, r, u, e, o) {
2085
+ var i = 1 / (a - n),
2086
+ h = 1 / (u - r),
2087
+ c = 1 / (e - o);
2088
+ return (
2089
+ (t[0] = 2 * e * i),
2090
+ (t[1] = 0),
2091
+ (t[2] = 0),
2092
+ (t[3] = 0),
2093
+ (t[4] = 0),
2094
+ (t[5] = 2 * e * h),
2095
+ (t[6] = 0),
2096
+ (t[7] = 0),
2097
+ (t[8] = (a + n) * i),
2098
+ (t[9] = (u + r) * h),
2099
+ (t[10] = (o + e) * c),
2100
+ (t[11] = -1),
2101
+ (t[12] = 0),
2102
+ (t[13] = 0),
2103
+ (t[14] = o * e * 2 * c),
2104
+ (t[15] = 0),
2105
+ t
2106
+ );
2107
+ },
2108
+ perspectiveNO: O,
2109
+ perspective: j,
2110
+ perspectiveZO: function (t, n, a, r, u) {
2111
+ var e,
2112
+ o = 1 / Math.tan(n / 2);
2113
+ return (
2114
+ (t[0] = o / a),
2115
+ (t[1] = 0),
2116
+ (t[2] = 0),
2117
+ (t[3] = 0),
2118
+ (t[4] = 0),
2119
+ (t[5] = o),
2120
+ (t[6] = 0),
2121
+ (t[7] = 0),
2122
+ (t[8] = 0),
2123
+ (t[9] = 0),
2124
+ (t[11] = -1),
2125
+ (t[12] = 0),
2126
+ (t[13] = 0),
2127
+ (t[15] = 0),
2128
+ null != u && u !== 1 / 0
2129
+ ? ((e = 1 / (r - u)), (t[10] = u * e), (t[14] = u * r * e))
2130
+ : ((t[10] = -1), (t[14] = -r)),
2131
+ t
2132
+ );
2133
+ },
2134
+ perspectiveFromFieldOfView: function (t, n, a, r) {
2135
+ var u = Math.tan((n.upDegrees * Math.PI) / 180),
2136
+ e = Math.tan((n.downDegrees * Math.PI) / 180),
2137
+ o = Math.tan((n.leftDegrees * Math.PI) / 180),
2138
+ i = Math.tan((n.rightDegrees * Math.PI) / 180),
2139
+ h = 2 / (o + i),
2140
+ c = 2 / (u + e);
2141
+ return (
2142
+ (t[0] = h),
2143
+ (t[1] = 0),
2144
+ (t[2] = 0),
2145
+ (t[3] = 0),
2146
+ (t[4] = 0),
2147
+ (t[5] = c),
2148
+ (t[6] = 0),
2149
+ (t[7] = 0),
2150
+ (t[8] = -(o - i) * h * 0.5),
2151
+ (t[9] = (u - e) * c * 0.5),
2152
+ (t[10] = r / (a - r)),
2153
+ (t[11] = -1),
2154
+ (t[12] = 0),
2155
+ (t[13] = 0),
2156
+ (t[14] = (r * a) / (a - r)),
2157
+ (t[15] = 0),
2158
+ t
2159
+ );
2160
+ },
2161
+ orthoNO: P,
2162
+ ortho: S,
2163
+ orthoZO: function (t, n, a, r, u, e, o) {
2164
+ var i = 1 / (n - a),
2165
+ h = 1 / (r - u),
2166
+ c = 1 / (e - o);
2167
+ return (
2168
+ (t[0] = -2 * i),
2169
+ (t[1] = 0),
2170
+ (t[2] = 0),
2171
+ (t[3] = 0),
2172
+ (t[4] = 0),
2173
+ (t[5] = -2 * h),
2174
+ (t[6] = 0),
2175
+ (t[7] = 0),
2176
+ (t[8] = 0),
2177
+ (t[9] = 0),
2178
+ (t[10] = c),
2179
+ (t[11] = 0),
2180
+ (t[12] = (n + a) * i),
2181
+ (t[13] = (u + r) * h),
2182
+ (t[14] = e * c),
2183
+ (t[15] = 1),
2184
+ t
2185
+ );
2186
+ },
2187
+ lookAt: function (t, a, r, u) {
2188
+ var e,
2189
+ o,
2190
+ i,
2191
+ h,
2192
+ c,
2193
+ s,
2194
+ M,
2195
+ f,
2196
+ l,
2197
+ v,
2198
+ b = a[0],
2199
+ m = a[1],
2200
+ d = a[2],
2201
+ p = u[0],
2202
+ x = u[1],
2203
+ y = u[2],
2204
+ q = r[0],
2205
+ _ = r[1],
2206
+ A = r[2];
2207
+ return Math.abs(b - q) < n && Math.abs(m - _) < n && Math.abs(d - A) < n
2208
+ ? g(t)
2209
+ : ((M = b - q),
2210
+ (f = m - _),
2211
+ (l = d - A),
2212
+ (e = x * (l *= v = 1 / Math.hypot(M, f, l)) - y * (f *= v)),
2213
+ (o = y * (M *= v) - p * l),
2214
+ (i = p * f - x * M),
2215
+ (v = Math.hypot(e, o, i))
2216
+ ? ((e *= v = 1 / v), (o *= v), (i *= v))
2217
+ : ((e = 0), (o = 0), (i = 0)),
2218
+ (h = f * i - l * o),
2219
+ (c = l * e - M * i),
2220
+ (s = M * o - f * e),
2221
+ (v = Math.hypot(h, c, s))
2222
+ ? ((h *= v = 1 / v), (c *= v), (s *= v))
2223
+ : ((h = 0), (c = 0), (s = 0)),
2224
+ (t[0] = e),
2225
+ (t[1] = h),
2226
+ (t[2] = M),
2227
+ (t[3] = 0),
2228
+ (t[4] = o),
2229
+ (t[5] = c),
2230
+ (t[6] = f),
2231
+ (t[7] = 0),
2232
+ (t[8] = i),
2233
+ (t[9] = s),
2234
+ (t[10] = l),
2235
+ (t[11] = 0),
2236
+ (t[12] = -(e * b + o * m + i * d)),
2237
+ (t[13] = -(h * b + c * m + s * d)),
2238
+ (t[14] = -(M * b + f * m + l * d)),
2239
+ (t[15] = 1),
2240
+ t);
2241
+ },
2242
+ targetTo: function (t, n, a, r) {
2243
+ var u = n[0],
2244
+ e = n[1],
2245
+ o = n[2],
2246
+ i = r[0],
2247
+ h = r[1],
2248
+ c = r[2],
2249
+ s = u - a[0],
2250
+ M = e - a[1],
2251
+ f = o - a[2],
2252
+ l = s * s + M * M + f * f;
2253
+ l > 0 && ((s *= l = 1 / Math.sqrt(l)), (M *= l), (f *= l));
2254
+ var v = h * f - c * M,
2255
+ b = c * s - i * f,
2256
+ m = i * M - h * s;
2257
+ return (
2258
+ (l = v * v + b * b + m * m) > 0 && ((v *= l = 1 / Math.sqrt(l)), (b *= l), (m *= l)),
2259
+ (t[0] = v),
2260
+ (t[1] = b),
2261
+ (t[2] = m),
2262
+ (t[3] = 0),
2263
+ (t[4] = M * m - f * b),
2264
+ (t[5] = f * v - s * m),
2265
+ (t[6] = s * b - M * v),
2266
+ (t[7] = 0),
2267
+ (t[8] = s),
2268
+ (t[9] = M),
2269
+ (t[10] = f),
2270
+ (t[11] = 0),
2271
+ (t[12] = u),
2272
+ (t[13] = e),
2273
+ (t[14] = o),
2274
+ (t[15] = 1),
2275
+ t
2276
+ );
2277
+ },
2278
+ str: function (t) {
2279
+ return (
2280
+ "mat4(" +
2281
+ t[0] +
2282
+ ", " +
2283
+ t[1] +
2284
+ ", " +
2285
+ t[2] +
2286
+ ", " +
2287
+ t[3] +
2288
+ ", " +
2289
+ t[4] +
2290
+ ", " +
2291
+ t[5] +
2292
+ ", " +
2293
+ t[6] +
2294
+ ", " +
2295
+ t[7] +
2296
+ ", " +
2297
+ t[8] +
2298
+ ", " +
2299
+ t[9] +
2300
+ ", " +
2301
+ t[10] +
2302
+ ", " +
2303
+ t[11] +
2304
+ ", " +
2305
+ t[12] +
2306
+ ", " +
2307
+ t[13] +
2308
+ ", " +
2309
+ t[14] +
2310
+ ", " +
2311
+ t[15] +
2312
+ ")"
2313
+ );
2314
+ },
2315
+ frob: function (t) {
2316
+ return Math.hypot(
2317
+ t[0],
2318
+ t[1],
2319
+ t[2],
2320
+ t[3],
2321
+ t[4],
2322
+ t[5],
2323
+ t[6],
2324
+ t[7],
2325
+ t[8],
2326
+ t[9],
2327
+ t[10],
2328
+ t[11],
2329
+ t[12],
2330
+ t[13],
2331
+ t[14],
2332
+ t[15],
2333
+ );
2334
+ },
2335
+ add: function (t, n, a) {
2336
+ return (
2337
+ (t[0] = n[0] + a[0]),
2338
+ (t[1] = n[1] + a[1]),
2339
+ (t[2] = n[2] + a[2]),
2340
+ (t[3] = n[3] + a[3]),
2341
+ (t[4] = n[4] + a[4]),
2342
+ (t[5] = n[5] + a[5]),
2343
+ (t[6] = n[6] + a[6]),
2344
+ (t[7] = n[7] + a[7]),
2345
+ (t[8] = n[8] + a[8]),
2346
+ (t[9] = n[9] + a[9]),
2347
+ (t[10] = n[10] + a[10]),
2348
+ (t[11] = n[11] + a[11]),
2349
+ (t[12] = n[12] + a[12]),
2350
+ (t[13] = n[13] + a[13]),
2351
+ (t[14] = n[14] + a[14]),
2352
+ (t[15] = n[15] + a[15]),
2353
+ t
2354
+ );
2355
+ },
2356
+ subtract: E,
2357
+ multiplyScalar: function (t, n, a) {
2358
+ return (
2359
+ (t[0] = n[0] * a),
2360
+ (t[1] = n[1] * a),
2361
+ (t[2] = n[2] * a),
2362
+ (t[3] = n[3] * a),
2363
+ (t[4] = n[4] * a),
2364
+ (t[5] = n[5] * a),
2365
+ (t[6] = n[6] * a),
2366
+ (t[7] = n[7] * a),
2367
+ (t[8] = n[8] * a),
2368
+ (t[9] = n[9] * a),
2369
+ (t[10] = n[10] * a),
2370
+ (t[11] = n[11] * a),
2371
+ (t[12] = n[12] * a),
2372
+ (t[13] = n[13] * a),
2373
+ (t[14] = n[14] * a),
2374
+ (t[15] = n[15] * a),
2375
+ t
2376
+ );
2377
+ },
2378
+ multiplyScalarAndAdd: function (t, n, a, r) {
2379
+ return (
2380
+ (t[0] = n[0] + a[0] * r),
2381
+ (t[1] = n[1] + a[1] * r),
2382
+ (t[2] = n[2] + a[2] * r),
2383
+ (t[3] = n[3] + a[3] * r),
2384
+ (t[4] = n[4] + a[4] * r),
2385
+ (t[5] = n[5] + a[5] * r),
2386
+ (t[6] = n[6] + a[6] * r),
2387
+ (t[7] = n[7] + a[7] * r),
2388
+ (t[8] = n[8] + a[8] * r),
2389
+ (t[9] = n[9] + a[9] * r),
2390
+ (t[10] = n[10] + a[10] * r),
2391
+ (t[11] = n[11] + a[11] * r),
2392
+ (t[12] = n[12] + a[12] * r),
2393
+ (t[13] = n[13] + a[13] * r),
2394
+ (t[14] = n[14] + a[14] * r),
2395
+ (t[15] = n[15] + a[15] * r),
2396
+ t
2397
+ );
2398
+ },
2399
+ exactEquals: function (t, n) {
2400
+ return (
2401
+ t[0] === n[0] &&
2402
+ t[1] === n[1] &&
2403
+ t[2] === n[2] &&
2404
+ t[3] === n[3] &&
2405
+ t[4] === n[4] &&
2406
+ t[5] === n[5] &&
2407
+ t[6] === n[6] &&
2408
+ t[7] === n[7] &&
2409
+ t[8] === n[8] &&
2410
+ t[9] === n[9] &&
2411
+ t[10] === n[10] &&
2412
+ t[11] === n[11] &&
2413
+ t[12] === n[12] &&
2414
+ t[13] === n[13] &&
2415
+ t[14] === n[14] &&
2416
+ t[15] === n[15]
2417
+ );
2418
+ },
2419
+ equals: function (t, a) {
2420
+ var r = t[0],
2421
+ u = t[1],
2422
+ e = t[2],
2423
+ o = t[3],
2424
+ i = t[4],
2425
+ h = t[5],
2426
+ c = t[6],
2427
+ s = t[7],
2428
+ M = t[8],
2429
+ f = t[9],
2430
+ l = t[10],
2431
+ v = t[11],
2432
+ b = t[12],
2433
+ m = t[13],
2434
+ d = t[14],
2435
+ p = t[15],
2436
+ x = a[0],
2437
+ y = a[1],
2438
+ q = a[2],
2439
+ g = a[3],
2440
+ _ = a[4],
2441
+ A = a[5],
2442
+ w = a[6],
2443
+ R = a[7],
2444
+ z = a[8],
2445
+ O = a[9],
2446
+ j = a[10],
2447
+ P = a[11],
2448
+ S = a[12],
2449
+ E = a[13],
2450
+ T = a[14],
2451
+ D = a[15];
2452
+ return (
2453
+ Math.abs(r - x) <= n * Math.max(1, Math.abs(r), Math.abs(x)) &&
2454
+ Math.abs(u - y) <= n * Math.max(1, Math.abs(u), Math.abs(y)) &&
2455
+ Math.abs(e - q) <= n * Math.max(1, Math.abs(e), Math.abs(q)) &&
2456
+ Math.abs(o - g) <= n * Math.max(1, Math.abs(o), Math.abs(g)) &&
2457
+ Math.abs(i - _) <= n * Math.max(1, Math.abs(i), Math.abs(_)) &&
2458
+ Math.abs(h - A) <= n * Math.max(1, Math.abs(h), Math.abs(A)) &&
2459
+ Math.abs(c - w) <= n * Math.max(1, Math.abs(c), Math.abs(w)) &&
2460
+ Math.abs(s - R) <= n * Math.max(1, Math.abs(s), Math.abs(R)) &&
2461
+ Math.abs(M - z) <= n * Math.max(1, Math.abs(M), Math.abs(z)) &&
2462
+ Math.abs(f - O) <= n * Math.max(1, Math.abs(f), Math.abs(O)) &&
2463
+ Math.abs(l - j) <= n * Math.max(1, Math.abs(l), Math.abs(j)) &&
2464
+ Math.abs(v - P) <= n * Math.max(1, Math.abs(v), Math.abs(P)) &&
2465
+ Math.abs(b - S) <= n * Math.max(1, Math.abs(b), Math.abs(S)) &&
2466
+ Math.abs(m - E) <= n * Math.max(1, Math.abs(m), Math.abs(E)) &&
2467
+ Math.abs(d - T) <= n * Math.max(1, Math.abs(d), Math.abs(T)) &&
2468
+ Math.abs(p - D) <= n * Math.max(1, Math.abs(p), Math.abs(D))
2469
+ );
2470
+ },
2471
+ mul: T,
2472
+ sub: D,
2473
+ });
2474
+ function I() {
2475
+ var t = new a(3);
2476
+ return (a != Float32Array && ((t[0] = 0), (t[1] = 0), (t[2] = 0)), t);
2477
+ }
2478
+ function L(t) {
2479
+ var n = t[0],
2480
+ a = t[1],
2481
+ r = t[2];
2482
+ return Math.hypot(n, a, r);
2483
+ }
2484
+ function V(t, n, r) {
2485
+ var u = new a(3);
2486
+ return ((u[0] = t), (u[1] = n), (u[2] = r), u);
2487
+ }
2488
+ function Q(t, n, a) {
2489
+ return ((t[0] = n[0] - a[0]), (t[1] = n[1] - a[1]), (t[2] = n[2] - a[2]), t);
2490
+ }
2491
+ function Y(t, n, a) {
2492
+ return ((t[0] = n[0] * a[0]), (t[1] = n[1] * a[1]), (t[2] = n[2] * a[2]), t);
2493
+ }
2494
+ function Z(t, n, a) {
2495
+ return ((t[0] = n[0] / a[0]), (t[1] = n[1] / a[1]), (t[2] = n[2] / a[2]), t);
2496
+ }
2497
+ function X(t, n) {
2498
+ var a = n[0] - t[0],
2499
+ r = n[1] - t[1],
2500
+ u = n[2] - t[2];
2501
+ return Math.hypot(a, r, u);
2502
+ }
2503
+ function N(t, n) {
2504
+ var a = n[0] - t[0],
2505
+ r = n[1] - t[1],
2506
+ u = n[2] - t[2];
2507
+ return a * a + r * r + u * u;
2508
+ }
2509
+ function B(t) {
2510
+ var n = t[0],
2511
+ a = t[1],
2512
+ r = t[2];
2513
+ return n * n + a * a + r * r;
2514
+ }
2515
+ function k(t, n) {
2516
+ var a = n[0],
2517
+ r = n[1],
2518
+ u = n[2],
2519
+ e = a * a + r * r + u * u;
2520
+ return (
2521
+ e > 0 && (e = 1 / Math.sqrt(e)), (t[0] = n[0] * e), (t[1] = n[1] * e), (t[2] = n[2] * e), t
2522
+ );
2523
+ }
2524
+ function U(t, n) {
2525
+ return t[0] * n[0] + t[1] * n[1] + t[2] * n[2];
2526
+ }
2527
+ function W(t, n, a) {
2528
+ var r = n[0],
2529
+ u = n[1],
2530
+ e = n[2],
2531
+ o = a[0],
2532
+ i = a[1],
2533
+ h = a[2];
2534
+ return ((t[0] = u * h - e * i), (t[1] = e * o - r * h), (t[2] = r * i - u * o), t);
2535
+ }
2536
+ var C,
2537
+ G = Q,
2538
+ H = Y,
2539
+ J = Z,
2540
+ K = X,
2541
+ $ = N,
2542
+ tt = L,
2543
+ nt = B,
2544
+ at =
2545
+ ((C = I()),
2546
+ function (t, n, a, r, u, e) {
2547
+ var o, i;
2548
+ for (
2549
+ n || (n = 3), a || (a = 0), i = r ? Math.min(r * n + a, t.length) : t.length, o = a;
2550
+ o < i;
2551
+ o += n
2552
+ )
2553
+ ((C[0] = t[o]),
2554
+ (C[1] = t[o + 1]),
2555
+ (C[2] = t[o + 2]),
2556
+ u(C, C, e),
2557
+ (t[o] = C[0]),
2558
+ (t[o + 1] = C[1]),
2559
+ (t[o + 2] = C[2]));
2560
+ return t;
2561
+ }),
2562
+ rt = Object.freeze({
2563
+ __proto__: null,
2564
+ create: I,
2565
+ clone: function (t) {
2566
+ var n = new a(3);
2567
+ return ((n[0] = t[0]), (n[1] = t[1]), (n[2] = t[2]), n);
2568
+ },
2569
+ length: L,
2570
+ fromValues: V,
2571
+ copy: function (t, n) {
2572
+ return ((t[0] = n[0]), (t[1] = n[1]), (t[2] = n[2]), t);
2573
+ },
2574
+ set: function (t, n, a, r) {
2575
+ return ((t[0] = n), (t[1] = a), (t[2] = r), t);
2576
+ },
2577
+ add: function (t, n, a) {
2578
+ return ((t[0] = n[0] + a[0]), (t[1] = n[1] + a[1]), (t[2] = n[2] + a[2]), t);
2579
+ },
2580
+ subtract: Q,
2581
+ multiply: Y,
2582
+ divide: Z,
2583
+ ceil: function (t, n) {
2584
+ return ((t[0] = Math.ceil(n[0])), (t[1] = Math.ceil(n[1])), (t[2] = Math.ceil(n[2])), t);
2585
+ },
2586
+ floor: function (t, n) {
2587
+ return ((t[0] = Math.floor(n[0])), (t[1] = Math.floor(n[1])), (t[2] = Math.floor(n[2])), t);
2588
+ },
2589
+ min: function (t, n, a) {
2590
+ return (
2591
+ (t[0] = Math.min(n[0], a[0])),
2592
+ (t[1] = Math.min(n[1], a[1])),
2593
+ (t[2] = Math.min(n[2], a[2])),
2594
+ t
2595
+ );
2596
+ },
2597
+ max: function (t, n, a) {
2598
+ return (
2599
+ (t[0] = Math.max(n[0], a[0])),
2600
+ (t[1] = Math.max(n[1], a[1])),
2601
+ (t[2] = Math.max(n[2], a[2])),
2602
+ t
2603
+ );
2604
+ },
2605
+ round: function (t, n) {
2606
+ return ((t[0] = Math.round(n[0])), (t[1] = Math.round(n[1])), (t[2] = Math.round(n[2])), t);
2607
+ },
2608
+ scale: function (t, n, a) {
2609
+ return ((t[0] = n[0] * a), (t[1] = n[1] * a), (t[2] = n[2] * a), t);
2610
+ },
2611
+ scaleAndAdd: function (t, n, a, r) {
2612
+ return ((t[0] = n[0] + a[0] * r), (t[1] = n[1] + a[1] * r), (t[2] = n[2] + a[2] * r), t);
2613
+ },
2614
+ distance: X,
2615
+ squaredDistance: N,
2616
+ squaredLength: B,
2617
+ negate: function (t, n) {
2618
+ return ((t[0] = -n[0]), (t[1] = -n[1]), (t[2] = -n[2]), t);
2619
+ },
2620
+ inverse: function (t, n) {
2621
+ return ((t[0] = 1 / n[0]), (t[1] = 1 / n[1]), (t[2] = 1 / n[2]), t);
2622
+ },
2623
+ normalize: k,
2624
+ dot: U,
2625
+ cross: W,
2626
+ lerp: function (t, n, a, r) {
2627
+ var u = n[0],
2628
+ e = n[1],
2629
+ o = n[2];
2630
+ return (
2631
+ (t[0] = u + r * (a[0] - u)), (t[1] = e + r * (a[1] - e)), (t[2] = o + r * (a[2] - o)), t
2632
+ );
2633
+ },
2634
+ hermite: function (t, n, a, r, u, e) {
2635
+ var o = e * e,
2636
+ i = o * (2 * e - 3) + 1,
2637
+ h = o * (e - 2) + e,
2638
+ c = o * (e - 1),
2639
+ s = o * (3 - 2 * e);
2640
+ return (
2641
+ (t[0] = n[0] * i + a[0] * h + r[0] * c + u[0] * s),
2642
+ (t[1] = n[1] * i + a[1] * h + r[1] * c + u[1] * s),
2643
+ (t[2] = n[2] * i + a[2] * h + r[2] * c + u[2] * s),
2644
+ t
2645
+ );
2646
+ },
2647
+ bezier: function (t, n, a, r, u, e) {
2648
+ var o = 1 - e,
2649
+ i = o * o,
2650
+ h = e * e,
2651
+ c = i * o,
2652
+ s = 3 * e * i,
2653
+ M = 3 * h * o,
2654
+ f = h * e;
2655
+ return (
2656
+ (t[0] = n[0] * c + a[0] * s + r[0] * M + u[0] * f),
2657
+ (t[1] = n[1] * c + a[1] * s + r[1] * M + u[1] * f),
2658
+ (t[2] = n[2] * c + a[2] * s + r[2] * M + u[2] * f),
2659
+ t
2660
+ );
2661
+ },
2662
+ random: function (t, n) {
2663
+ n = n || 1;
2664
+ var a = 2 * r() * Math.PI,
2665
+ u = 2 * r() - 1,
2666
+ e = Math.sqrt(1 - u * u) * n;
2667
+ return ((t[0] = Math.cos(a) * e), (t[1] = Math.sin(a) * e), (t[2] = u * n), t);
2668
+ },
2669
+ transformMat4: function (t, n, a) {
2670
+ var r = n[0],
2671
+ u = n[1],
2672
+ e = n[2],
2673
+ o = a[3] * r + a[7] * u + a[11] * e + a[15];
2674
+ return (
2675
+ (o = o || 1),
2676
+ (t[0] = (a[0] * r + a[4] * u + a[8] * e + a[12]) / o),
2677
+ (t[1] = (a[1] * r + a[5] * u + a[9] * e + a[13]) / o),
2678
+ (t[2] = (a[2] * r + a[6] * u + a[10] * e + a[14]) / o),
2679
+ t
2680
+ );
2681
+ },
2682
+ transformMat3: function (t, n, a) {
2683
+ var r = n[0],
2684
+ u = n[1],
2685
+ e = n[2];
2686
+ return (
2687
+ (t[0] = r * a[0] + u * a[3] + e * a[6]),
2688
+ (t[1] = r * a[1] + u * a[4] + e * a[7]),
2689
+ (t[2] = r * a[2] + u * a[5] + e * a[8]),
2690
+ t
2691
+ );
2692
+ },
2693
+ transformQuat: function (t, n, a) {
2694
+ var r = a[0],
2695
+ u = a[1],
2696
+ e = a[2],
2697
+ o = a[3],
2698
+ i = n[0],
2699
+ h = n[1],
2700
+ c = n[2],
2701
+ s = u * c - e * h,
2702
+ M = e * i - r * c,
2703
+ f = r * h - u * i,
2704
+ l = u * f - e * M,
2705
+ v = e * s - r * f,
2706
+ b = r * M - u * s,
2707
+ m = 2 * o;
2708
+ return (
2709
+ (s *= m),
2710
+ (M *= m),
2711
+ (f *= m),
2712
+ (l *= 2),
2713
+ (v *= 2),
2714
+ (b *= 2),
2715
+ (t[0] = i + s + l),
2716
+ (t[1] = h + M + v),
2717
+ (t[2] = c + f + b),
2718
+ t
2719
+ );
2720
+ },
2721
+ rotateX: function (t, n, a, r) {
2722
+ var u = [],
2723
+ e = [];
2724
+ return (
2725
+ (u[0] = n[0] - a[0]),
2726
+ (u[1] = n[1] - a[1]),
2727
+ (u[2] = n[2] - a[2]),
2728
+ (e[0] = u[0]),
2729
+ (e[1] = u[1] * Math.cos(r) - u[2] * Math.sin(r)),
2730
+ (e[2] = u[1] * Math.sin(r) + u[2] * Math.cos(r)),
2731
+ (t[0] = e[0] + a[0]),
2732
+ (t[1] = e[1] + a[1]),
2733
+ (t[2] = e[2] + a[2]),
2734
+ t
2735
+ );
2736
+ },
2737
+ rotateY: function (t, n, a, r) {
2738
+ var u = [],
2739
+ e = [];
2740
+ return (
2741
+ (u[0] = n[0] - a[0]),
2742
+ (u[1] = n[1] - a[1]),
2743
+ (u[2] = n[2] - a[2]),
2744
+ (e[0] = u[2] * Math.sin(r) + u[0] * Math.cos(r)),
2745
+ (e[1] = u[1]),
2746
+ (e[2] = u[2] * Math.cos(r) - u[0] * Math.sin(r)),
2747
+ (t[0] = e[0] + a[0]),
2748
+ (t[1] = e[1] + a[1]),
2749
+ (t[2] = e[2] + a[2]),
2750
+ t
2751
+ );
2752
+ },
2753
+ rotateZ: function (t, n, a, r) {
2754
+ var u = [],
2755
+ e = [];
2756
+ return (
2757
+ (u[0] = n[0] - a[0]),
2758
+ (u[1] = n[1] - a[1]),
2759
+ (u[2] = n[2] - a[2]),
2760
+ (e[0] = u[0] * Math.cos(r) - u[1] * Math.sin(r)),
2761
+ (e[1] = u[0] * Math.sin(r) + u[1] * Math.cos(r)),
2762
+ (e[2] = u[2]),
2763
+ (t[0] = e[0] + a[0]),
2764
+ (t[1] = e[1] + a[1]),
2765
+ (t[2] = e[2] + a[2]),
2766
+ t
2767
+ );
2768
+ },
2769
+ angle: function (t, n) {
2770
+ var a = t[0],
2771
+ r = t[1],
2772
+ u = t[2],
2773
+ e = n[0],
2774
+ o = n[1],
2775
+ i = n[2],
2776
+ h = Math.sqrt(a * a + r * r + u * u) * Math.sqrt(e * e + o * o + i * i),
2777
+ c = h && U(t, n) / h;
2778
+ return Math.acos(Math.min(Math.max(c, -1), 1));
2779
+ },
2780
+ zero: function (t) {
2781
+ return ((t[0] = 0), (t[1] = 0), (t[2] = 0), t);
2782
+ },
2783
+ str: function (t) {
2784
+ return "vec3(" + t[0] + ", " + t[1] + ", " + t[2] + ")";
2785
+ },
2786
+ exactEquals: function (t, n) {
2787
+ return t[0] === n[0] && t[1] === n[1] && t[2] === n[2];
2788
+ },
2789
+ equals: function (t, a) {
2790
+ var r = t[0],
2791
+ u = t[1],
2792
+ e = t[2],
2793
+ o = a[0],
2794
+ i = a[1],
2795
+ h = a[2];
2796
+ return (
2797
+ Math.abs(r - o) <= n * Math.max(1, Math.abs(r), Math.abs(o)) &&
2798
+ Math.abs(u - i) <= n * Math.max(1, Math.abs(u), Math.abs(i)) &&
2799
+ Math.abs(e - h) <= n * Math.max(1, Math.abs(e), Math.abs(h))
2800
+ );
2801
+ },
2802
+ sub: G,
2803
+ mul: H,
2804
+ div: J,
2805
+ dist: K,
2806
+ sqrDist: $,
2807
+ len: tt,
2808
+ sqrLen: nt,
2809
+ forEach: at,
2810
+ });
2811
+ function ut() {
2812
+ var t = new a(4);
2813
+ return (a != Float32Array && ((t[0] = 0), (t[1] = 0), (t[2] = 0), (t[3] = 0)), t);
2814
+ }
2815
+ function et(t) {
2816
+ var n = new a(4);
2817
+ return ((n[0] = t[0]), (n[1] = t[1]), (n[2] = t[2]), (n[3] = t[3]), n);
2818
+ }
2819
+ function ot(t, n, r, u) {
2820
+ var e = new a(4);
2821
+ return ((e[0] = t), (e[1] = n), (e[2] = r), (e[3] = u), e);
2822
+ }
2823
+ function it(t, n) {
2824
+ return ((t[0] = n[0]), (t[1] = n[1]), (t[2] = n[2]), (t[3] = n[3]), t);
2825
+ }
2826
+ function ht(t, n, a, r, u) {
2827
+ return ((t[0] = n), (t[1] = a), (t[2] = r), (t[3] = u), t);
2828
+ }
2829
+ function ct(t, n, a) {
2830
+ return (
2831
+ (t[0] = n[0] + a[0]), (t[1] = n[1] + a[1]), (t[2] = n[2] + a[2]), (t[3] = n[3] + a[3]), t
2832
+ );
2833
+ }
2834
+ function st(t, n, a) {
2835
+ return (
2836
+ (t[0] = n[0] - a[0]), (t[1] = n[1] - a[1]), (t[2] = n[2] - a[2]), (t[3] = n[3] - a[3]), t
2837
+ );
2838
+ }
2839
+ function Mt(t, n, a) {
2840
+ return (
2841
+ (t[0] = n[0] * a[0]), (t[1] = n[1] * a[1]), (t[2] = n[2] * a[2]), (t[3] = n[3] * a[3]), t
2842
+ );
2843
+ }
2844
+ function ft(t, n, a) {
2845
+ return (
2846
+ (t[0] = n[0] / a[0]), (t[1] = n[1] / a[1]), (t[2] = n[2] / a[2]), (t[3] = n[3] / a[3]), t
2847
+ );
2848
+ }
2849
+ function lt(t, n, a) {
2850
+ return ((t[0] = n[0] * a), (t[1] = n[1] * a), (t[2] = n[2] * a), (t[3] = n[3] * a), t);
2851
+ }
2852
+ function vt(t, n) {
2853
+ var a = n[0] - t[0],
2854
+ r = n[1] - t[1],
2855
+ u = n[2] - t[2],
2856
+ e = n[3] - t[3];
2857
+ return Math.hypot(a, r, u, e);
2858
+ }
2859
+ function bt(t, n) {
2860
+ var a = n[0] - t[0],
2861
+ r = n[1] - t[1],
2862
+ u = n[2] - t[2],
2863
+ e = n[3] - t[3];
2864
+ return a * a + r * r + u * u + e * e;
2865
+ }
2866
+ function mt(t) {
2867
+ var n = t[0],
2868
+ a = t[1],
2869
+ r = t[2],
2870
+ u = t[3];
2871
+ return Math.hypot(n, a, r, u);
2872
+ }
2873
+ function dt(t) {
2874
+ var n = t[0],
2875
+ a = t[1],
2876
+ r = t[2],
2877
+ u = t[3];
2878
+ return n * n + a * a + r * r + u * u;
2879
+ }
2880
+ function pt(t, n) {
2881
+ var a = n[0],
2882
+ r = n[1],
2883
+ u = n[2],
2884
+ e = n[3],
2885
+ o = a * a + r * r + u * u + e * e;
2886
+ return (
2887
+ o > 0 && (o = 1 / Math.sqrt(o)),
2888
+ (t[0] = a * o),
2889
+ (t[1] = r * o),
2890
+ (t[2] = u * o),
2891
+ (t[3] = e * o),
2892
+ t
2893
+ );
2894
+ }
2895
+ function xt(t, n) {
2896
+ return t[0] * n[0] + t[1] * n[1] + t[2] * n[2] + t[3] * n[3];
2897
+ }
2898
+ function yt(t, n, a, r) {
2899
+ var u = n[0],
2900
+ e = n[1],
2901
+ o = n[2],
2902
+ i = n[3];
2903
+ return (
2904
+ (t[0] = u + r * (a[0] - u)),
2905
+ (t[1] = e + r * (a[1] - e)),
2906
+ (t[2] = o + r * (a[2] - o)),
2907
+ (t[3] = i + r * (a[3] - i)),
2908
+ t
2909
+ );
2910
+ }
2911
+ function qt(t, n) {
2912
+ return t[0] === n[0] && t[1] === n[1] && t[2] === n[2] && t[3] === n[3];
2913
+ }
2914
+ function gt(t, a) {
2915
+ var r = t[0],
2916
+ u = t[1],
2917
+ e = t[2],
2918
+ o = t[3],
2919
+ i = a[0],
2920
+ h = a[1],
2921
+ c = a[2],
2922
+ s = a[3];
2923
+ return (
2924
+ Math.abs(r - i) <= n * Math.max(1, Math.abs(r), Math.abs(i)) &&
2925
+ Math.abs(u - h) <= n * Math.max(1, Math.abs(u), Math.abs(h)) &&
2926
+ Math.abs(e - c) <= n * Math.max(1, Math.abs(e), Math.abs(c)) &&
2927
+ Math.abs(o - s) <= n * Math.max(1, Math.abs(o), Math.abs(s))
2928
+ );
2929
+ }
2930
+ var _t = st,
2931
+ At = Mt,
2932
+ wt = ft,
2933
+ Rt = vt,
2934
+ zt = bt,
2935
+ Ot = mt,
2936
+ jt = dt,
2937
+ Pt = (function () {
2938
+ var t = ut();
2939
+ return function (n, a, r, u, e, o) {
2940
+ var i, h;
2941
+ for (
2942
+ a || (a = 4), r || (r = 0), h = u ? Math.min(u * a + r, n.length) : n.length, i = r;
2943
+ i < h;
2944
+ i += a
2945
+ )
2946
+ ((t[0] = n[i]),
2947
+ (t[1] = n[i + 1]),
2948
+ (t[2] = n[i + 2]),
2949
+ (t[3] = n[i + 3]),
2950
+ e(t, t, o),
2951
+ (n[i] = t[0]),
2952
+ (n[i + 1] = t[1]),
2953
+ (n[i + 2] = t[2]),
2954
+ (n[i + 3] = t[3]));
2955
+ return n;
2956
+ };
2957
+ })(),
2958
+ St = Object.freeze({
2959
+ __proto__: null,
2960
+ create: ut,
2961
+ clone: et,
2962
+ fromValues: ot,
2963
+ copy: it,
2964
+ set: ht,
2965
+ add: ct,
2966
+ subtract: st,
2967
+ multiply: Mt,
2968
+ divide: ft,
2969
+ ceil: function (t, n) {
2970
+ return (
2971
+ (t[0] = Math.ceil(n[0])),
2972
+ (t[1] = Math.ceil(n[1])),
2973
+ (t[2] = Math.ceil(n[2])),
2974
+ (t[3] = Math.ceil(n[3])),
2975
+ t
2976
+ );
2977
+ },
2978
+ floor: function (t, n) {
2979
+ return (
2980
+ (t[0] = Math.floor(n[0])),
2981
+ (t[1] = Math.floor(n[1])),
2982
+ (t[2] = Math.floor(n[2])),
2983
+ (t[3] = Math.floor(n[3])),
2984
+ t
2985
+ );
2986
+ },
2987
+ min: function (t, n, a) {
2988
+ return (
2989
+ (t[0] = Math.min(n[0], a[0])),
2990
+ (t[1] = Math.min(n[1], a[1])),
2991
+ (t[2] = Math.min(n[2], a[2])),
2992
+ (t[3] = Math.min(n[3], a[3])),
2993
+ t
2994
+ );
2995
+ },
2996
+ max: function (t, n, a) {
2997
+ return (
2998
+ (t[0] = Math.max(n[0], a[0])),
2999
+ (t[1] = Math.max(n[1], a[1])),
3000
+ (t[2] = Math.max(n[2], a[2])),
3001
+ (t[3] = Math.max(n[3], a[3])),
3002
+ t
3003
+ );
3004
+ },
3005
+ round: function (t, n) {
3006
+ return (
3007
+ (t[0] = Math.round(n[0])),
3008
+ (t[1] = Math.round(n[1])),
3009
+ (t[2] = Math.round(n[2])),
3010
+ (t[3] = Math.round(n[3])),
3011
+ t
3012
+ );
3013
+ },
3014
+ scale: lt,
3015
+ scaleAndAdd: function (t, n, a, r) {
3016
+ return (
3017
+ (t[0] = n[0] + a[0] * r),
3018
+ (t[1] = n[1] + a[1] * r),
3019
+ (t[2] = n[2] + a[2] * r),
3020
+ (t[3] = n[3] + a[3] * r),
3021
+ t
3022
+ );
3023
+ },
3024
+ distance: vt,
3025
+ squaredDistance: bt,
3026
+ length: mt,
3027
+ squaredLength: dt,
3028
+ negate: function (t, n) {
3029
+ return ((t[0] = -n[0]), (t[1] = -n[1]), (t[2] = -n[2]), (t[3] = -n[3]), t);
3030
+ },
3031
+ inverse: function (t, n) {
3032
+ return ((t[0] = 1 / n[0]), (t[1] = 1 / n[1]), (t[2] = 1 / n[2]), (t[3] = 1 / n[3]), t);
3033
+ },
3034
+ normalize: pt,
3035
+ dot: xt,
3036
+ cross: function (t, n, a, r) {
3037
+ var u = a[0] * r[1] - a[1] * r[0],
3038
+ e = a[0] * r[2] - a[2] * r[0],
3039
+ o = a[0] * r[3] - a[3] * r[0],
3040
+ i = a[1] * r[2] - a[2] * r[1],
3041
+ h = a[1] * r[3] - a[3] * r[1],
3042
+ c = a[2] * r[3] - a[3] * r[2],
3043
+ s = n[0],
3044
+ M = n[1],
3045
+ f = n[2],
3046
+ l = n[3];
3047
+ return (
3048
+ (t[0] = M * c - f * h + l * i),
3049
+ (t[1] = -s * c + f * o - l * e),
3050
+ (t[2] = s * h - M * o + l * u),
3051
+ (t[3] = -s * i + M * e - f * u),
3052
+ t
3053
+ );
3054
+ },
3055
+ lerp: yt,
3056
+ random: function (t, n) {
3057
+ var a, u, e, o, i, h;
3058
+ n = n || 1;
3059
+ do {
3060
+ i = (a = 2 * r() - 1) * a + (u = 2 * r() - 1) * u;
3061
+ } while (i >= 1);
3062
+ do {
3063
+ h = (e = 2 * r() - 1) * e + (o = 2 * r() - 1) * o;
3064
+ } while (h >= 1);
3065
+ var c = Math.sqrt((1 - i) / h);
3066
+ return ((t[0] = n * a), (t[1] = n * u), (t[2] = n * e * c), (t[3] = n * o * c), t);
3067
+ },
3068
+ transformMat4: function (t, n, a) {
3069
+ var r = n[0],
3070
+ u = n[1],
3071
+ e = n[2],
3072
+ o = n[3];
3073
+ return (
3074
+ (t[0] = a[0] * r + a[4] * u + a[8] * e + a[12] * o),
3075
+ (t[1] = a[1] * r + a[5] * u + a[9] * e + a[13] * o),
3076
+ (t[2] = a[2] * r + a[6] * u + a[10] * e + a[14] * o),
3077
+ (t[3] = a[3] * r + a[7] * u + a[11] * e + a[15] * o),
3078
+ t
3079
+ );
3080
+ },
3081
+ transformQuat: function (t, n, a) {
3082
+ var r = n[0],
3083
+ u = n[1],
3084
+ e = n[2],
3085
+ o = a[0],
3086
+ i = a[1],
3087
+ h = a[2],
3088
+ c = a[3],
3089
+ s = c * r + i * e - h * u,
3090
+ M = c * u + h * r - o * e,
3091
+ f = c * e + o * u - i * r,
3092
+ l = -o * r - i * u - h * e;
3093
+ return (
3094
+ (t[0] = s * c + l * -o + M * -h - f * -i),
3095
+ (t[1] = M * c + l * -i + f * -o - s * -h),
3096
+ (t[2] = f * c + l * -h + s * -i - M * -o),
3097
+ (t[3] = n[3]),
3098
+ t
3099
+ );
3100
+ },
3101
+ zero: function (t) {
3102
+ return ((t[0] = 0), (t[1] = 0), (t[2] = 0), (t[3] = 0), t);
3103
+ },
3104
+ str: function (t) {
3105
+ return "vec4(" + t[0] + ", " + t[1] + ", " + t[2] + ", " + t[3] + ")";
3106
+ },
3107
+ exactEquals: qt,
3108
+ equals: gt,
3109
+ sub: _t,
3110
+ mul: At,
3111
+ div: wt,
3112
+ dist: Rt,
3113
+ sqrDist: zt,
3114
+ len: Ot,
3115
+ sqrLen: jt,
3116
+ forEach: Pt,
3117
+ });
3118
+ function Et() {
3119
+ var t = new a(4);
3120
+ return (a != Float32Array && ((t[0] = 0), (t[1] = 0), (t[2] = 0)), (t[3] = 1), t);
3121
+ }
3122
+ function Tt(t, n, a) {
3123
+ a *= 0.5;
3124
+ var r = Math.sin(a);
3125
+ return ((t[0] = r * n[0]), (t[1] = r * n[1]), (t[2] = r * n[2]), (t[3] = Math.cos(a)), t);
3126
+ }
3127
+ function Dt(t, n, a) {
3128
+ var r = n[0],
3129
+ u = n[1],
3130
+ e = n[2],
3131
+ o = n[3],
3132
+ i = a[0],
3133
+ h = a[1],
3134
+ c = a[2],
3135
+ s = a[3];
3136
+ return (
3137
+ (t[0] = r * s + o * i + u * c - e * h),
3138
+ (t[1] = u * s + o * h + e * i - r * c),
3139
+ (t[2] = e * s + o * c + r * h - u * i),
3140
+ (t[3] = o * s - r * i - u * h - e * c),
3141
+ t
3142
+ );
3143
+ }
3144
+ function Ft(t, n, a) {
3145
+ a *= 0.5;
3146
+ var r = n[0],
3147
+ u = n[1],
3148
+ e = n[2],
3149
+ o = n[3],
3150
+ i = Math.sin(a),
3151
+ h = Math.cos(a);
3152
+ return (
3153
+ (t[0] = r * h + o * i),
3154
+ (t[1] = u * h + e * i),
3155
+ (t[2] = e * h - u * i),
3156
+ (t[3] = o * h - r * i),
3157
+ t
3158
+ );
3159
+ }
3160
+ function It(t, n, a) {
3161
+ a *= 0.5;
3162
+ var r = n[0],
3163
+ u = n[1],
3164
+ e = n[2],
3165
+ o = n[3],
3166
+ i = Math.sin(a),
3167
+ h = Math.cos(a);
3168
+ return (
3169
+ (t[0] = r * h - e * i),
3170
+ (t[1] = u * h + o * i),
3171
+ (t[2] = e * h + r * i),
3172
+ (t[3] = o * h - u * i),
3173
+ t
3174
+ );
3175
+ }
3176
+ function Lt(t, n, a) {
3177
+ a *= 0.5;
3178
+ var r = n[0],
3179
+ u = n[1],
3180
+ e = n[2],
3181
+ o = n[3],
3182
+ i = Math.sin(a),
3183
+ h = Math.cos(a);
3184
+ return (
3185
+ (t[0] = r * h + u * i),
3186
+ (t[1] = u * h - r * i),
3187
+ (t[2] = e * h + o * i),
3188
+ (t[3] = o * h - e * i),
3189
+ t
3190
+ );
3191
+ }
3192
+ function Vt(t, n) {
3193
+ var a = n[0],
3194
+ r = n[1],
3195
+ u = n[2],
3196
+ e = n[3],
3197
+ o = Math.sqrt(a * a + r * r + u * u),
3198
+ i = Math.exp(e),
3199
+ h = o > 0 ? (i * Math.sin(o)) / o : 0;
3200
+ return ((t[0] = a * h), (t[1] = r * h), (t[2] = u * h), (t[3] = i * Math.cos(o)), t);
3201
+ }
3202
+ function Qt(t, n) {
3203
+ var a = n[0],
3204
+ r = n[1],
3205
+ u = n[2],
3206
+ e = n[3],
3207
+ o = Math.sqrt(a * a + r * r + u * u),
3208
+ i = o > 0 ? Math.atan2(o, e) / o : 0;
3209
+ return (
3210
+ (t[0] = a * i),
3211
+ (t[1] = r * i),
3212
+ (t[2] = u * i),
3213
+ (t[3] = 0.5 * Math.log(a * a + r * r + u * u + e * e)),
3214
+ t
3215
+ );
3216
+ }
3217
+ function Yt(t, a, r, u) {
3218
+ var e,
3219
+ o,
3220
+ i,
3221
+ h,
3222
+ c,
3223
+ s = a[0],
3224
+ M = a[1],
3225
+ f = a[2],
3226
+ l = a[3],
3227
+ v = r[0],
3228
+ b = r[1],
3229
+ m = r[2],
3230
+ d = r[3];
3231
+ return (
3232
+ (o = s * v + M * b + f * m + l * d) < 0 && ((o = -o), (v = -v), (b = -b), (m = -m), (d = -d)),
3233
+ 1 - o > n
3234
+ ? ((e = Math.acos(o)),
3235
+ (i = Math.sin(e)),
3236
+ (h = Math.sin((1 - u) * e) / i),
3237
+ (c = Math.sin(u * e) / i))
3238
+ : ((h = 1 - u), (c = u)),
3239
+ (t[0] = h * s + c * v),
3240
+ (t[1] = h * M + c * b),
3241
+ (t[2] = h * f + c * m),
3242
+ (t[3] = h * l + c * d),
3243
+ t
3244
+ );
3245
+ }
3246
+ function Zt(t, n) {
3247
+ var a,
3248
+ r = n[0] + n[4] + n[8];
3249
+ if (r > 0)
3250
+ ((a = Math.sqrt(r + 1)),
3251
+ (t[3] = 0.5 * a),
3252
+ (a = 0.5 / a),
3253
+ (t[0] = (n[5] - n[7]) * a),
3254
+ (t[1] = (n[6] - n[2]) * a),
3255
+ (t[2] = (n[1] - n[3]) * a));
3256
+ else {
3257
+ var u = 0;
3258
+ (n[4] > n[0] && (u = 1), n[8] > n[3 * u + u] && (u = 2));
3259
+ var e = (u + 1) % 3,
3260
+ o = (u + 2) % 3;
3261
+ ((a = Math.sqrt(n[3 * u + u] - n[3 * e + e] - n[3 * o + o] + 1)),
3262
+ (t[u] = 0.5 * a),
3263
+ (a = 0.5 / a),
3264
+ (t[3] = (n[3 * e + o] - n[3 * o + e]) * a),
3265
+ (t[e] = (n[3 * e + u] + n[3 * u + e]) * a),
3266
+ (t[o] = (n[3 * o + u] + n[3 * u + o]) * a));
3267
+ }
3268
+ return t;
3269
+ }
3270
+ var Xt,
3271
+ Nt,
3272
+ Bt,
3273
+ kt,
3274
+ Ut,
3275
+ Wt,
3276
+ Ct = et,
3277
+ Gt = ot,
3278
+ Ht = it,
3279
+ Jt = ht,
3280
+ Kt = ct,
3281
+ $t = Dt,
3282
+ tn = lt,
3283
+ nn = xt,
3284
+ an = yt,
3285
+ rn = mt,
3286
+ un = rn,
3287
+ en = dt,
3288
+ on = en,
3289
+ hn = pt,
3290
+ cn = qt,
3291
+ sn = gt,
3292
+ Mn =
3293
+ ((Xt = I()),
3294
+ (Nt = V(1, 0, 0)),
3295
+ (Bt = V(0, 1, 0)),
3296
+ function (t, n, a) {
3297
+ var r = U(n, a);
3298
+ return r < -0.999999
3299
+ ? (W(Xt, Nt, n), tt(Xt) < 1e-6 && W(Xt, Bt, n), k(Xt, Xt), Tt(t, Xt, Math.PI), t)
3300
+ : r > 0.999999
3301
+ ? ((t[0] = 0), (t[1] = 0), (t[2] = 0), (t[3] = 1), t)
3302
+ : (W(Xt, n, a),
3303
+ (t[0] = Xt[0]),
3304
+ (t[1] = Xt[1]),
3305
+ (t[2] = Xt[2]),
3306
+ (t[3] = 1 + r),
3307
+ hn(t, t));
3308
+ }),
3309
+ fn =
3310
+ ((kt = Et()),
3311
+ (Ut = Et()),
3312
+ function (t, n, a, r, u, e) {
3313
+ return (Yt(kt, n, u, e), Yt(Ut, a, r, e), Yt(t, kt, Ut, 2 * e * (1 - e)), t);
3314
+ }),
3315
+ ln =
3316
+ ((Wt = m()),
3317
+ function (t, n, a, r) {
3318
+ return (
3319
+ (Wt[0] = a[0]),
3320
+ (Wt[3] = a[1]),
3321
+ (Wt[6] = a[2]),
3322
+ (Wt[1] = r[0]),
3323
+ (Wt[4] = r[1]),
3324
+ (Wt[7] = r[2]),
3325
+ (Wt[2] = -n[0]),
3326
+ (Wt[5] = -n[1]),
3327
+ (Wt[8] = -n[2]),
3328
+ hn(t, Zt(t, Wt))
3329
+ );
3330
+ }),
3331
+ vn = Object.freeze({
3332
+ __proto__: null,
3333
+ create: Et,
3334
+ identity: function (t) {
3335
+ return ((t[0] = 0), (t[1] = 0), (t[2] = 0), (t[3] = 1), t);
3336
+ },
3337
+ setAxisAngle: Tt,
3338
+ getAxisAngle: function (t, a) {
3339
+ var r = 2 * Math.acos(a[3]),
3340
+ u = Math.sin(r / 2);
3341
+ return (
3342
+ u > n
3343
+ ? ((t[0] = a[0] / u), (t[1] = a[1] / u), (t[2] = a[2] / u))
3344
+ : ((t[0] = 1), (t[1] = 0), (t[2] = 0)),
3345
+ r
3346
+ );
3347
+ },
3348
+ getAngle: function (t, n) {
3349
+ var a = nn(t, n);
3350
+ return Math.acos(2 * a * a - 1);
3351
+ },
3352
+ multiply: Dt,
3353
+ rotateX: Ft,
3354
+ rotateY: It,
3355
+ rotateZ: Lt,
3356
+ calculateW: function (t, n) {
3357
+ var a = n[0],
3358
+ r = n[1],
3359
+ u = n[2];
3360
+ return (
3361
+ (t[0] = a),
3362
+ (t[1] = r),
3363
+ (t[2] = u),
3364
+ (t[3] = Math.sqrt(Math.abs(1 - a * a - r * r - u * u))),
3365
+ t
3366
+ );
3367
+ },
3368
+ exp: Vt,
3369
+ ln: Qt,
3370
+ pow: function (t, n, a) {
3371
+ return (Qt(t, n), tn(t, t, a), Vt(t, t), t);
3372
+ },
3373
+ slerp: Yt,
3374
+ random: function (t) {
3375
+ var n = r(),
3376
+ a = r(),
3377
+ u = r(),
3378
+ e = Math.sqrt(1 - n),
3379
+ o = Math.sqrt(n);
3380
+ return (
3381
+ (t[0] = e * Math.sin(2 * Math.PI * a)),
3382
+ (t[1] = e * Math.cos(2 * Math.PI * a)),
3383
+ (t[2] = o * Math.sin(2 * Math.PI * u)),
3384
+ (t[3] = o * Math.cos(2 * Math.PI * u)),
3385
+ t
3386
+ );
3387
+ },
3388
+ invert: function (t, n) {
3389
+ var a = n[0],
3390
+ r = n[1],
3391
+ u = n[2],
3392
+ e = n[3],
3393
+ o = a * a + r * r + u * u + e * e,
3394
+ i = o ? 1 / o : 0;
3395
+ return ((t[0] = -a * i), (t[1] = -r * i), (t[2] = -u * i), (t[3] = e * i), t);
3396
+ },
3397
+ conjugate: function (t, n) {
3398
+ return ((t[0] = -n[0]), (t[1] = -n[1]), (t[2] = -n[2]), (t[3] = n[3]), t);
3399
+ },
3400
+ fromMat3: Zt,
3401
+ fromEuler: function (t, n, a, r) {
3402
+ var u = (0.5 * Math.PI) / 180;
3403
+ ((n *= u), (a *= u), (r *= u));
3404
+ var e = Math.sin(n),
3405
+ o = Math.cos(n),
3406
+ i = Math.sin(a),
3407
+ h = Math.cos(a),
3408
+ c = Math.sin(r),
3409
+ s = Math.cos(r);
3410
+ return (
3411
+ (t[0] = e * h * s - o * i * c),
3412
+ (t[1] = o * i * s + e * h * c),
3413
+ (t[2] = o * h * c - e * i * s),
3414
+ (t[3] = o * h * s + e * i * c),
3415
+ t
3416
+ );
3417
+ },
3418
+ str: function (t) {
3419
+ return "quat(" + t[0] + ", " + t[1] + ", " + t[2] + ", " + t[3] + ")";
3420
+ },
3421
+ clone: Ct,
3422
+ fromValues: Gt,
3423
+ copy: Ht,
3424
+ set: Jt,
3425
+ add: Kt,
3426
+ mul: $t,
3427
+ scale: tn,
3428
+ dot: nn,
3429
+ lerp: an,
3430
+ length: rn,
3431
+ len: un,
3432
+ squaredLength: en,
3433
+ sqrLen: on,
3434
+ normalize: hn,
3435
+ exactEquals: cn,
3436
+ equals: sn,
3437
+ rotationTo: Mn,
3438
+ sqlerp: fn,
3439
+ setAxes: ln,
3440
+ });
3441
+ function bn(t, n, a) {
3442
+ var r = 0.5 * a[0],
3443
+ u = 0.5 * a[1],
3444
+ e = 0.5 * a[2],
3445
+ o = n[0],
3446
+ i = n[1],
3447
+ h = n[2],
3448
+ c = n[3];
3449
+ return (
3450
+ (t[0] = o),
3451
+ (t[1] = i),
3452
+ (t[2] = h),
3453
+ (t[3] = c),
3454
+ (t[4] = r * c + u * h - e * i),
3455
+ (t[5] = u * c + e * o - r * h),
3456
+ (t[6] = e * c + r * i - u * o),
3457
+ (t[7] = -r * o - u * i - e * h),
3458
+ t
3459
+ );
3460
+ }
3461
+ function mn(t, n) {
3462
+ return (
3463
+ (t[0] = n[0]),
3464
+ (t[1] = n[1]),
3465
+ (t[2] = n[2]),
3466
+ (t[3] = n[3]),
3467
+ (t[4] = n[4]),
3468
+ (t[5] = n[5]),
3469
+ (t[6] = n[6]),
3470
+ (t[7] = n[7]),
3471
+ t
3472
+ );
3473
+ }
3474
+ var dn = Ht;
3475
+ var pn = Ht;
3476
+ function xn(t, n, a) {
3477
+ var r = n[0],
3478
+ u = n[1],
3479
+ e = n[2],
3480
+ o = n[3],
3481
+ i = a[4],
3482
+ h = a[5],
3483
+ c = a[6],
3484
+ s = a[7],
3485
+ M = n[4],
3486
+ f = n[5],
3487
+ l = n[6],
3488
+ v = n[7],
3489
+ b = a[0],
3490
+ m = a[1],
3491
+ d = a[2],
3492
+ p = a[3];
3493
+ return (
3494
+ (t[0] = r * p + o * b + u * d - e * m),
3495
+ (t[1] = u * p + o * m + e * b - r * d),
3496
+ (t[2] = e * p + o * d + r * m - u * b),
3497
+ (t[3] = o * p - r * b - u * m - e * d),
3498
+ (t[4] = r * s + o * i + u * c - e * h + M * p + v * b + f * d - l * m),
3499
+ (t[5] = u * s + o * h + e * i - r * c + f * p + v * m + l * b - M * d),
3500
+ (t[6] = e * s + o * c + r * h - u * i + l * p + v * d + M * m - f * b),
3501
+ (t[7] = o * s - r * i - u * h - e * c + v * p - M * b - f * m - l * d),
3502
+ t
3503
+ );
3504
+ }
3505
+ var yn = xn;
3506
+ var qn = nn;
3507
+ var gn = rn,
3508
+ _n = gn,
3509
+ An = en,
3510
+ wn = An;
3511
+ var Rn = Object.freeze({
3512
+ __proto__: null,
3513
+ create: function () {
3514
+ var t = new a(8);
3515
+ return (
3516
+ a != Float32Array &&
3517
+ ((t[0] = 0), (t[1] = 0), (t[2] = 0), (t[4] = 0), (t[5] = 0), (t[6] = 0), (t[7] = 0)),
3518
+ (t[3] = 1),
3519
+ t
3520
+ );
3521
+ },
3522
+ clone: function (t) {
3523
+ var n = new a(8);
3524
+ return (
3525
+ (n[0] = t[0]),
3526
+ (n[1] = t[1]),
3527
+ (n[2] = t[2]),
3528
+ (n[3] = t[3]),
3529
+ (n[4] = t[4]),
3530
+ (n[5] = t[5]),
3531
+ (n[6] = t[6]),
3532
+ (n[7] = t[7]),
3533
+ n
3534
+ );
3535
+ },
3536
+ fromValues: function (t, n, r, u, e, o, i, h) {
3537
+ var c = new a(8);
3538
+ return (
3539
+ (c[0] = t),
3540
+ (c[1] = n),
3541
+ (c[2] = r),
3542
+ (c[3] = u),
3543
+ (c[4] = e),
3544
+ (c[5] = o),
3545
+ (c[6] = i),
3546
+ (c[7] = h),
3547
+ c
3548
+ );
3549
+ },
3550
+ fromRotationTranslationValues: function (t, n, r, u, e, o, i) {
3551
+ var h = new a(8);
3552
+ ((h[0] = t), (h[1] = n), (h[2] = r), (h[3] = u));
3553
+ var c = 0.5 * e,
3554
+ s = 0.5 * o,
3555
+ M = 0.5 * i;
3556
+ return (
3557
+ (h[4] = c * u + s * r - M * n),
3558
+ (h[5] = s * u + M * t - c * r),
3559
+ (h[6] = M * u + c * n - s * t),
3560
+ (h[7] = -c * t - s * n - M * r),
3561
+ h
3562
+ );
3563
+ },
3564
+ fromRotationTranslation: bn,
3565
+ fromTranslation: function (t, n) {
3566
+ return (
3567
+ (t[0] = 0),
3568
+ (t[1] = 0),
3569
+ (t[2] = 0),
3570
+ (t[3] = 1),
3571
+ (t[4] = 0.5 * n[0]),
3572
+ (t[5] = 0.5 * n[1]),
3573
+ (t[6] = 0.5 * n[2]),
3574
+ (t[7] = 0),
3575
+ t
3576
+ );
3577
+ },
3578
+ fromRotation: function (t, n) {
3579
+ return (
3580
+ (t[0] = n[0]),
3581
+ (t[1] = n[1]),
3582
+ (t[2] = n[2]),
3583
+ (t[3] = n[3]),
3584
+ (t[4] = 0),
3585
+ (t[5] = 0),
3586
+ (t[6] = 0),
3587
+ (t[7] = 0),
3588
+ t
3589
+ );
3590
+ },
3591
+ fromMat4: function (t, n) {
3592
+ var r = Et();
3593
+ z(r, n);
3594
+ var u = new a(3);
3595
+ return (w(u, n), bn(t, r, u), t);
3596
+ },
3597
+ copy: mn,
3598
+ identity: function (t) {
3599
+ return (
3600
+ (t[0] = 0),
3601
+ (t[1] = 0),
3602
+ (t[2] = 0),
3603
+ (t[3] = 1),
3604
+ (t[4] = 0),
3605
+ (t[5] = 0),
3606
+ (t[6] = 0),
3607
+ (t[7] = 0),
3608
+ t
3609
+ );
3610
+ },
3611
+ set: function (t, n, a, r, u, e, o, i, h) {
3612
+ return (
3613
+ (t[0] = n),
3614
+ (t[1] = a),
3615
+ (t[2] = r),
3616
+ (t[3] = u),
3617
+ (t[4] = e),
3618
+ (t[5] = o),
3619
+ (t[6] = i),
3620
+ (t[7] = h),
3621
+ t
3622
+ );
3623
+ },
3624
+ getReal: dn,
3625
+ getDual: function (t, n) {
3626
+ return ((t[0] = n[4]), (t[1] = n[5]), (t[2] = n[6]), (t[3] = n[7]), t);
3627
+ },
3628
+ setReal: pn,
3629
+ setDual: function (t, n) {
3630
+ return ((t[4] = n[0]), (t[5] = n[1]), (t[6] = n[2]), (t[7] = n[3]), t);
3631
+ },
3632
+ getTranslation: function (t, n) {
3633
+ var a = n[4],
3634
+ r = n[5],
3635
+ u = n[6],
3636
+ e = n[7],
3637
+ o = -n[0],
3638
+ i = -n[1],
3639
+ h = -n[2],
3640
+ c = n[3];
3641
+ return (
3642
+ (t[0] = 2 * (a * c + e * o + r * h - u * i)),
3643
+ (t[1] = 2 * (r * c + e * i + u * o - a * h)),
3644
+ (t[2] = 2 * (u * c + e * h + a * i - r * o)),
3645
+ t
3646
+ );
3647
+ },
3648
+ translate: function (t, n, a) {
3649
+ var r = n[0],
3650
+ u = n[1],
3651
+ e = n[2],
3652
+ o = n[3],
3653
+ i = 0.5 * a[0],
3654
+ h = 0.5 * a[1],
3655
+ c = 0.5 * a[2],
3656
+ s = n[4],
3657
+ M = n[5],
3658
+ f = n[6],
3659
+ l = n[7];
3660
+ return (
3661
+ (t[0] = r),
3662
+ (t[1] = u),
3663
+ (t[2] = e),
3664
+ (t[3] = o),
3665
+ (t[4] = o * i + u * c - e * h + s),
3666
+ (t[5] = o * h + e * i - r * c + M),
3667
+ (t[6] = o * c + r * h - u * i + f),
3668
+ (t[7] = -r * i - u * h - e * c + l),
3669
+ t
3670
+ );
3671
+ },
3672
+ rotateX: function (t, n, a) {
3673
+ var r = -n[0],
3674
+ u = -n[1],
3675
+ e = -n[2],
3676
+ o = n[3],
3677
+ i = n[4],
3678
+ h = n[5],
3679
+ c = n[6],
3680
+ s = n[7],
3681
+ M = i * o + s * r + h * e - c * u,
3682
+ f = h * o + s * u + c * r - i * e,
3683
+ l = c * o + s * e + i * u - h * r,
3684
+ v = s * o - i * r - h * u - c * e;
3685
+ return (
3686
+ Ft(t, n, a),
3687
+ (r = t[0]),
3688
+ (u = t[1]),
3689
+ (e = t[2]),
3690
+ (o = t[3]),
3691
+ (t[4] = M * o + v * r + f * e - l * u),
3692
+ (t[5] = f * o + v * u + l * r - M * e),
3693
+ (t[6] = l * o + v * e + M * u - f * r),
3694
+ (t[7] = v * o - M * r - f * u - l * e),
3695
+ t
3696
+ );
3697
+ },
3698
+ rotateY: function (t, n, a) {
3699
+ var r = -n[0],
3700
+ u = -n[1],
3701
+ e = -n[2],
3702
+ o = n[3],
3703
+ i = n[4],
3704
+ h = n[5],
3705
+ c = n[6],
3706
+ s = n[7],
3707
+ M = i * o + s * r + h * e - c * u,
3708
+ f = h * o + s * u + c * r - i * e,
3709
+ l = c * o + s * e + i * u - h * r,
3710
+ v = s * o - i * r - h * u - c * e;
3711
+ return (
3712
+ It(t, n, a),
3713
+ (r = t[0]),
3714
+ (u = t[1]),
3715
+ (e = t[2]),
3716
+ (o = t[3]),
3717
+ (t[4] = M * o + v * r + f * e - l * u),
3718
+ (t[5] = f * o + v * u + l * r - M * e),
3719
+ (t[6] = l * o + v * e + M * u - f * r),
3720
+ (t[7] = v * o - M * r - f * u - l * e),
3721
+ t
3722
+ );
3723
+ },
3724
+ rotateZ: function (t, n, a) {
3725
+ var r = -n[0],
3726
+ u = -n[1],
3727
+ e = -n[2],
3728
+ o = n[3],
3729
+ i = n[4],
3730
+ h = n[5],
3731
+ c = n[6],
3732
+ s = n[7],
3733
+ M = i * o + s * r + h * e - c * u,
3734
+ f = h * o + s * u + c * r - i * e,
3735
+ l = c * o + s * e + i * u - h * r,
3736
+ v = s * o - i * r - h * u - c * e;
3737
+ return (
3738
+ Lt(t, n, a),
3739
+ (r = t[0]),
3740
+ (u = t[1]),
3741
+ (e = t[2]),
3742
+ (o = t[3]),
3743
+ (t[4] = M * o + v * r + f * e - l * u),
3744
+ (t[5] = f * o + v * u + l * r - M * e),
3745
+ (t[6] = l * o + v * e + M * u - f * r),
3746
+ (t[7] = v * o - M * r - f * u - l * e),
3747
+ t
3748
+ );
3749
+ },
3750
+ rotateByQuatAppend: function (t, n, a) {
3751
+ var r = a[0],
3752
+ u = a[1],
3753
+ e = a[2],
3754
+ o = a[3],
3755
+ i = n[0],
3756
+ h = n[1],
3757
+ c = n[2],
3758
+ s = n[3];
3759
+ return (
3760
+ (t[0] = i * o + s * r + h * e - c * u),
3761
+ (t[1] = h * o + s * u + c * r - i * e),
3762
+ (t[2] = c * o + s * e + i * u - h * r),
3763
+ (t[3] = s * o - i * r - h * u - c * e),
3764
+ (i = n[4]),
3765
+ (h = n[5]),
3766
+ (c = n[6]),
3767
+ (s = n[7]),
3768
+ (t[4] = i * o + s * r + h * e - c * u),
3769
+ (t[5] = h * o + s * u + c * r - i * e),
3770
+ (t[6] = c * o + s * e + i * u - h * r),
3771
+ (t[7] = s * o - i * r - h * u - c * e),
3772
+ t
3773
+ );
3774
+ },
3775
+ rotateByQuatPrepend: function (t, n, a) {
3776
+ var r = n[0],
3777
+ u = n[1],
3778
+ e = n[2],
3779
+ o = n[3],
3780
+ i = a[0],
3781
+ h = a[1],
3782
+ c = a[2],
3783
+ s = a[3];
3784
+ return (
3785
+ (t[0] = r * s + o * i + u * c - e * h),
3786
+ (t[1] = u * s + o * h + e * i - r * c),
3787
+ (t[2] = e * s + o * c + r * h - u * i),
3788
+ (t[3] = o * s - r * i - u * h - e * c),
3789
+ (i = a[4]),
3790
+ (h = a[5]),
3791
+ (c = a[6]),
3792
+ (s = a[7]),
3793
+ (t[4] = r * s + o * i + u * c - e * h),
3794
+ (t[5] = u * s + o * h + e * i - r * c),
3795
+ (t[6] = e * s + o * c + r * h - u * i),
3796
+ (t[7] = o * s - r * i - u * h - e * c),
3797
+ t
3798
+ );
3799
+ },
3800
+ rotateAroundAxis: function (t, a, r, u) {
3801
+ if (Math.abs(u) < n) return mn(t, a);
3802
+ var e = Math.hypot(r[0], r[1], r[2]);
3803
+ u *= 0.5;
3804
+ var o = Math.sin(u),
3805
+ i = (o * r[0]) / e,
3806
+ h = (o * r[1]) / e,
3807
+ c = (o * r[2]) / e,
3808
+ s = Math.cos(u),
3809
+ M = a[0],
3810
+ f = a[1],
3811
+ l = a[2],
3812
+ v = a[3];
3813
+ ((t[0] = M * s + v * i + f * c - l * h),
3814
+ (t[1] = f * s + v * h + l * i - M * c),
3815
+ (t[2] = l * s + v * c + M * h - f * i),
3816
+ (t[3] = v * s - M * i - f * h - l * c));
3817
+ var b = a[4],
3818
+ m = a[5],
3819
+ d = a[6],
3820
+ p = a[7];
3821
+ return (
3822
+ (t[4] = b * s + p * i + m * c - d * h),
3823
+ (t[5] = m * s + p * h + d * i - b * c),
3824
+ (t[6] = d * s + p * c + b * h - m * i),
3825
+ (t[7] = p * s - b * i - m * h - d * c),
3826
+ t
3827
+ );
3828
+ },
3829
+ add: function (t, n, a) {
3830
+ return (
3831
+ (t[0] = n[0] + a[0]),
3832
+ (t[1] = n[1] + a[1]),
3833
+ (t[2] = n[2] + a[2]),
3834
+ (t[3] = n[3] + a[3]),
3835
+ (t[4] = n[4] + a[4]),
3836
+ (t[5] = n[5] + a[5]),
3837
+ (t[6] = n[6] + a[6]),
3838
+ (t[7] = n[7] + a[7]),
3839
+ t
3840
+ );
3841
+ },
3842
+ multiply: xn,
3843
+ mul: yn,
3844
+ scale: function (t, n, a) {
3845
+ return (
3846
+ (t[0] = n[0] * a),
3847
+ (t[1] = n[1] * a),
3848
+ (t[2] = n[2] * a),
3849
+ (t[3] = n[3] * a),
3850
+ (t[4] = n[4] * a),
3851
+ (t[5] = n[5] * a),
3852
+ (t[6] = n[6] * a),
3853
+ (t[7] = n[7] * a),
3854
+ t
3855
+ );
3856
+ },
3857
+ dot: qn,
3858
+ lerp: function (t, n, a, r) {
3859
+ var u = 1 - r;
3860
+ return (
3861
+ qn(n, a) < 0 && (r = -r),
3862
+ (t[0] = n[0] * u + a[0] * r),
3863
+ (t[1] = n[1] * u + a[1] * r),
3864
+ (t[2] = n[2] * u + a[2] * r),
3865
+ (t[3] = n[3] * u + a[3] * r),
3866
+ (t[4] = n[4] * u + a[4] * r),
3867
+ (t[5] = n[5] * u + a[5] * r),
3868
+ (t[6] = n[6] * u + a[6] * r),
3869
+ (t[7] = n[7] * u + a[7] * r),
3870
+ t
3871
+ );
3872
+ },
3873
+ invert: function (t, n) {
3874
+ var a = An(n);
3875
+ return (
3876
+ (t[0] = -n[0] / a),
3877
+ (t[1] = -n[1] / a),
3878
+ (t[2] = -n[2] / a),
3879
+ (t[3] = n[3] / a),
3880
+ (t[4] = -n[4] / a),
3881
+ (t[5] = -n[5] / a),
3882
+ (t[6] = -n[6] / a),
3883
+ (t[7] = n[7] / a),
3884
+ t
3885
+ );
3886
+ },
3887
+ conjugate: function (t, n) {
3888
+ return (
3889
+ (t[0] = -n[0]),
3890
+ (t[1] = -n[1]),
3891
+ (t[2] = -n[2]),
3892
+ (t[3] = n[3]),
3893
+ (t[4] = -n[4]),
3894
+ (t[5] = -n[5]),
3895
+ (t[6] = -n[6]),
3896
+ (t[7] = n[7]),
3897
+ t
3898
+ );
3899
+ },
3900
+ length: gn,
3901
+ len: _n,
3902
+ squaredLength: An,
3903
+ sqrLen: wn,
3904
+ normalize: function (t, n) {
3905
+ var a = An(n);
3906
+ if (a > 0) {
3907
+ a = Math.sqrt(a);
3908
+ var r = n[0] / a,
3909
+ u = n[1] / a,
3910
+ e = n[2] / a,
3911
+ o = n[3] / a,
3912
+ i = n[4],
3913
+ h = n[5],
3914
+ c = n[6],
3915
+ s = n[7],
3916
+ M = r * i + u * h + e * c + o * s;
3917
+ ((t[0] = r),
3918
+ (t[1] = u),
3919
+ (t[2] = e),
3920
+ (t[3] = o),
3921
+ (t[4] = (i - r * M) / a),
3922
+ (t[5] = (h - u * M) / a),
3923
+ (t[6] = (c - e * M) / a),
3924
+ (t[7] = (s - o * M) / a));
3925
+ }
3926
+ return t;
3927
+ },
3928
+ str: function (t) {
3929
+ return (
3930
+ "quat2(" +
3931
+ t[0] +
3932
+ ", " +
3933
+ t[1] +
3934
+ ", " +
3935
+ t[2] +
3936
+ ", " +
3937
+ t[3] +
3938
+ ", " +
3939
+ t[4] +
3940
+ ", " +
3941
+ t[5] +
3942
+ ", " +
3943
+ t[6] +
3944
+ ", " +
3945
+ t[7] +
3946
+ ")"
3947
+ );
3948
+ },
3949
+ exactEquals: function (t, n) {
3950
+ return (
3951
+ t[0] === n[0] &&
3952
+ t[1] === n[1] &&
3953
+ t[2] === n[2] &&
3954
+ t[3] === n[3] &&
3955
+ t[4] === n[4] &&
3956
+ t[5] === n[5] &&
3957
+ t[6] === n[6] &&
3958
+ t[7] === n[7]
3959
+ );
3960
+ },
3961
+ equals: function (t, a) {
3962
+ var r = t[0],
3963
+ u = t[1],
3964
+ e = t[2],
3965
+ o = t[3],
3966
+ i = t[4],
3967
+ h = t[5],
3968
+ c = t[6],
3969
+ s = t[7],
3970
+ M = a[0],
3971
+ f = a[1],
3972
+ l = a[2],
3973
+ v = a[3],
3974
+ b = a[4],
3975
+ m = a[5],
3976
+ d = a[6],
3977
+ p = a[7];
3978
+ return (
3979
+ Math.abs(r - M) <= n * Math.max(1, Math.abs(r), Math.abs(M)) &&
3980
+ Math.abs(u - f) <= n * Math.max(1, Math.abs(u), Math.abs(f)) &&
3981
+ Math.abs(e - l) <= n * Math.max(1, Math.abs(e), Math.abs(l)) &&
3982
+ Math.abs(o - v) <= n * Math.max(1, Math.abs(o), Math.abs(v)) &&
3983
+ Math.abs(i - b) <= n * Math.max(1, Math.abs(i), Math.abs(b)) &&
3984
+ Math.abs(h - m) <= n * Math.max(1, Math.abs(h), Math.abs(m)) &&
3985
+ Math.abs(c - d) <= n * Math.max(1, Math.abs(c), Math.abs(d)) &&
3986
+ Math.abs(s - p) <= n * Math.max(1, Math.abs(s), Math.abs(p))
3987
+ );
3988
+ },
3989
+ });
3990
+ function zn() {
3991
+ var t = new a(2);
3992
+ return (a != Float32Array && ((t[0] = 0), (t[1] = 0)), t);
3993
+ }
3994
+ function On(t, n, a) {
3995
+ return ((t[0] = n[0] - a[0]), (t[1] = n[1] - a[1]), t);
3996
+ }
3997
+ function jn(t, n, a) {
3998
+ return ((t[0] = n[0] * a[0]), (t[1] = n[1] * a[1]), t);
3999
+ }
4000
+ function Pn(t, n, a) {
4001
+ return ((t[0] = n[0] / a[0]), (t[1] = n[1] / a[1]), t);
4002
+ }
4003
+ function Sn(t, n) {
4004
+ var a = n[0] - t[0],
4005
+ r = n[1] - t[1];
4006
+ return Math.hypot(a, r);
4007
+ }
4008
+ function En(t, n) {
4009
+ var a = n[0] - t[0],
4010
+ r = n[1] - t[1];
4011
+ return a * a + r * r;
4012
+ }
4013
+ function Tn(t) {
4014
+ var n = t[0],
4015
+ a = t[1];
4016
+ return Math.hypot(n, a);
4017
+ }
4018
+ function Dn(t) {
4019
+ var n = t[0],
4020
+ a = t[1];
4021
+ return n * n + a * a;
4022
+ }
4023
+ var Fn = Tn,
4024
+ In = On,
4025
+ Ln = jn,
4026
+ Vn = Pn,
4027
+ Qn = Sn,
4028
+ Yn = En,
4029
+ Zn = Dn,
4030
+ Xn = (function () {
4031
+ var t = zn();
4032
+ return function (n, a, r, u, e, o) {
4033
+ var i, h;
4034
+ for (
4035
+ a || (a = 2), r || (r = 0), h = u ? Math.min(u * a + r, n.length) : n.length, i = r;
4036
+ i < h;
4037
+ i += a
4038
+ )
4039
+ ((t[0] = n[i]), (t[1] = n[i + 1]), e(t, t, o), (n[i] = t[0]), (n[i + 1] = t[1]));
4040
+ return n;
4041
+ };
4042
+ })(),
4043
+ Nn = Object.freeze({
4044
+ __proto__: null,
4045
+ create: zn,
4046
+ clone: function (t) {
4047
+ var n = new a(2);
4048
+ return ((n[0] = t[0]), (n[1] = t[1]), n);
4049
+ },
4050
+ fromValues: function (t, n) {
4051
+ var r = new a(2);
4052
+ return ((r[0] = t), (r[1] = n), r);
4053
+ },
4054
+ copy: function (t, n) {
4055
+ return ((t[0] = n[0]), (t[1] = n[1]), t);
4056
+ },
4057
+ set: function (t, n, a) {
4058
+ return ((t[0] = n), (t[1] = a), t);
4059
+ },
4060
+ add: function (t, n, a) {
4061
+ return ((t[0] = n[0] + a[0]), (t[1] = n[1] + a[1]), t);
4062
+ },
4063
+ subtract: On,
4064
+ multiply: jn,
4065
+ divide: Pn,
4066
+ ceil: function (t, n) {
4067
+ return ((t[0] = Math.ceil(n[0])), (t[1] = Math.ceil(n[1])), t);
4068
+ },
4069
+ floor: function (t, n) {
4070
+ return ((t[0] = Math.floor(n[0])), (t[1] = Math.floor(n[1])), t);
4071
+ },
4072
+ min: function (t, n, a) {
4073
+ return ((t[0] = Math.min(n[0], a[0])), (t[1] = Math.min(n[1], a[1])), t);
4074
+ },
4075
+ max: function (t, n, a) {
4076
+ return ((t[0] = Math.max(n[0], a[0])), (t[1] = Math.max(n[1], a[1])), t);
4077
+ },
4078
+ round: function (t, n) {
4079
+ return ((t[0] = Math.round(n[0])), (t[1] = Math.round(n[1])), t);
4080
+ },
4081
+ scale: function (t, n, a) {
4082
+ return ((t[0] = n[0] * a), (t[1] = n[1] * a), t);
4083
+ },
4084
+ scaleAndAdd: function (t, n, a, r) {
4085
+ return ((t[0] = n[0] + a[0] * r), (t[1] = n[1] + a[1] * r), t);
4086
+ },
4087
+ distance: Sn,
4088
+ squaredDistance: En,
4089
+ length: Tn,
4090
+ squaredLength: Dn,
4091
+ negate: function (t, n) {
4092
+ return ((t[0] = -n[0]), (t[1] = -n[1]), t);
4093
+ },
4094
+ inverse: function (t, n) {
4095
+ return ((t[0] = 1 / n[0]), (t[1] = 1 / n[1]), t);
4096
+ },
4097
+ normalize: function (t, n) {
4098
+ var a = n[0],
4099
+ r = n[1],
4100
+ u = a * a + r * r;
4101
+ return (u > 0 && (u = 1 / Math.sqrt(u)), (t[0] = n[0] * u), (t[1] = n[1] * u), t);
4102
+ },
4103
+ dot: function (t, n) {
4104
+ return t[0] * n[0] + t[1] * n[1];
4105
+ },
4106
+ cross: function (t, n, a) {
4107
+ var r = n[0] * a[1] - n[1] * a[0];
4108
+ return ((t[0] = t[1] = 0), (t[2] = r), t);
4109
+ },
4110
+ lerp: function (t, n, a, r) {
4111
+ var u = n[0],
4112
+ e = n[1];
4113
+ return ((t[0] = u + r * (a[0] - u)), (t[1] = e + r * (a[1] - e)), t);
4114
+ },
4115
+ random: function (t, n) {
4116
+ n = n || 1;
4117
+ var a = 2 * r() * Math.PI;
4118
+ return ((t[0] = Math.cos(a) * n), (t[1] = Math.sin(a) * n), t);
4119
+ },
4120
+ transformMat2: function (t, n, a) {
4121
+ var r = n[0],
4122
+ u = n[1];
4123
+ return ((t[0] = a[0] * r + a[2] * u), (t[1] = a[1] * r + a[3] * u), t);
4124
+ },
4125
+ transformMat2d: function (t, n, a) {
4126
+ var r = n[0],
4127
+ u = n[1];
4128
+ return ((t[0] = a[0] * r + a[2] * u + a[4]), (t[1] = a[1] * r + a[3] * u + a[5]), t);
4129
+ },
4130
+ transformMat3: function (t, n, a) {
4131
+ var r = n[0],
4132
+ u = n[1];
4133
+ return ((t[0] = a[0] * r + a[3] * u + a[6]), (t[1] = a[1] * r + a[4] * u + a[7]), t);
4134
+ },
4135
+ transformMat4: function (t, n, a) {
4136
+ var r = n[0],
4137
+ u = n[1];
4138
+ return ((t[0] = a[0] * r + a[4] * u + a[12]), (t[1] = a[1] * r + a[5] * u + a[13]), t);
4139
+ },
4140
+ rotate: function (t, n, a, r) {
4141
+ var u = n[0] - a[0],
4142
+ e = n[1] - a[1],
4143
+ o = Math.sin(r),
4144
+ i = Math.cos(r);
4145
+ return ((t[0] = u * i - e * o + a[0]), (t[1] = u * o + e * i + a[1]), t);
4146
+ },
4147
+ angle: function (t, n) {
4148
+ var a = t[0],
4149
+ r = t[1],
4150
+ u = n[0],
4151
+ e = n[1],
4152
+ o = Math.sqrt(a * a + r * r) * Math.sqrt(u * u + e * e),
4153
+ i = o && (a * u + r * e) / o;
4154
+ return Math.acos(Math.min(Math.max(i, -1), 1));
4155
+ },
4156
+ zero: function (t) {
4157
+ return ((t[0] = 0), (t[1] = 0), t);
4158
+ },
4159
+ str: function (t) {
4160
+ return "vec2(" + t[0] + ", " + t[1] + ")";
4161
+ },
4162
+ exactEquals: function (t, n) {
4163
+ return t[0] === n[0] && t[1] === n[1];
4164
+ },
4165
+ equals: function (t, a) {
4166
+ var r = t[0],
4167
+ u = t[1],
4168
+ e = a[0],
4169
+ o = a[1];
4170
+ return (
4171
+ Math.abs(r - e) <= n * Math.max(1, Math.abs(r), Math.abs(e)) &&
4172
+ Math.abs(u - o) <= n * Math.max(1, Math.abs(u), Math.abs(o))
4173
+ );
4174
+ },
4175
+ len: Fn,
4176
+ sub: In,
4177
+ mul: Ln,
4178
+ div: Vn,
4179
+ dist: Qn,
4180
+ sqrDist: Yn,
4181
+ sqrLen: Zn,
4182
+ forEach: Xn,
4183
+ });
4184
+ ((t.glMatrix = e),
4185
+ (t.mat2 = s),
4186
+ (t.mat2d = b),
4187
+ (t.mat3 = q),
4188
+ (t.mat4 = F),
4189
+ (t.quat = vn),
4190
+ (t.quat2 = Rn),
4191
+ (t.vec2 = Nn),
4192
+ (t.vec3 = rt),
4193
+ (t.vec4 = St),
4194
+ Object.defineProperty(t, "__esModule", { value: !0 }));
4195
+ });