@ntf/math 1.1.3 → 1.2.0

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 (75) hide show
  1. package/dist/cjs/algebra/linear.js +7 -0
  2. package/dist/cjs/algebra/linear.js.map +1 -1
  3. package/dist/cjs/algebra/quad.js +11 -2
  4. package/dist/cjs/algebra/quad.js.map +1 -1
  5. package/dist/cjs/color.js +46 -35
  6. package/dist/cjs/color.js.map +1 -1
  7. package/dist/cjs/common/types.js +1 -1
  8. package/dist/cjs/common/types.js.map +1 -1
  9. package/dist/cjs/geometry/bbox.js +25 -10
  10. package/dist/cjs/geometry/bbox.js.map +1 -1
  11. package/dist/cjs/geometry/circle.js +34 -11
  12. package/dist/cjs/geometry/circle.js.map +1 -1
  13. package/dist/cjs/geometry/rectangle.js +28 -13
  14. package/dist/cjs/geometry/rectangle.js.map +1 -1
  15. package/dist/cjs/geometry/square.js +18 -14
  16. package/dist/cjs/geometry/square.js.map +1 -1
  17. package/dist/cjs/matrices/mat3.js +28 -10
  18. package/dist/cjs/matrices/mat3.js.map +1 -1
  19. package/dist/cjs/matrices/mat4.js +27 -10
  20. package/dist/cjs/matrices/mat4.js.map +1 -1
  21. package/dist/cjs/quaternion.js +19 -11
  22. package/dist/cjs/quaternion.js.map +1 -1
  23. package/dist/cjs/vectors/vec2.js +23 -9
  24. package/dist/cjs/vectors/vec2.js.map +1 -1
  25. package/dist/cjs/vectors/vec3.js +25 -9
  26. package/dist/cjs/vectors/vec3.js.map +1 -1
  27. package/dist/esm/algebra/linear.js +7 -0
  28. package/dist/esm/algebra/linear.js.map +1 -1
  29. package/dist/esm/algebra/quad.js +11 -2
  30. package/dist/esm/algebra/quad.js.map +1 -1
  31. package/dist/esm/color.js +43 -33
  32. package/dist/esm/color.js.map +1 -1
  33. package/dist/esm/common/types.js +1 -1
  34. package/dist/esm/common/types.js.map +1 -1
  35. package/dist/esm/geometry/bbox.js +26 -11
  36. package/dist/esm/geometry/bbox.js.map +1 -1
  37. package/dist/esm/geometry/circle.js +35 -12
  38. package/dist/esm/geometry/circle.js.map +1 -1
  39. package/dist/esm/geometry/rectangle.js +29 -14
  40. package/dist/esm/geometry/rectangle.js.map +1 -1
  41. package/dist/esm/geometry/square.js +18 -14
  42. package/dist/esm/geometry/square.js.map +1 -1
  43. package/dist/esm/matrices/mat3.js +28 -10
  44. package/dist/esm/matrices/mat3.js.map +1 -1
  45. package/dist/esm/matrices/mat4.js +27 -10
  46. package/dist/esm/matrices/mat4.js.map +1 -1
  47. package/dist/esm/quaternion.js +20 -12
  48. package/dist/esm/quaternion.js.map +1 -1
  49. package/dist/esm/vectors/vec2.js +23 -9
  50. package/dist/esm/vectors/vec2.js.map +1 -1
  51. package/dist/esm/vectors/vec3.js +25 -9
  52. package/dist/esm/vectors/vec3.js.map +1 -1
  53. package/dist/types/algebra/linear.d.ts.map +1 -1
  54. package/dist/types/algebra/quad.d.ts.map +1 -1
  55. package/dist/types/color.d.ts +3 -0
  56. package/dist/types/color.d.ts.map +1 -1
  57. package/dist/types/geometry/bbox.d.ts +3 -0
  58. package/dist/types/geometry/bbox.d.ts.map +1 -1
  59. package/dist/types/geometry/circle.d.ts +6 -0
  60. package/dist/types/geometry/circle.d.ts.map +1 -1
  61. package/dist/types/geometry/rectangle.d.ts +3 -0
  62. package/dist/types/geometry/rectangle.d.ts.map +1 -1
  63. package/dist/types/geometry/square.d.ts +3 -2
  64. package/dist/types/geometry/square.d.ts.map +1 -1
  65. package/dist/types/matrices/mat3.d.ts +4 -0
  66. package/dist/types/matrices/mat3.d.ts.map +1 -1
  67. package/dist/types/matrices/mat4.d.ts +4 -0
  68. package/dist/types/matrices/mat4.d.ts.map +1 -1
  69. package/dist/types/quaternion.d.ts +2 -1
  70. package/dist/types/quaternion.d.ts.map +1 -1
  71. package/dist/types/vectors/vec2.d.ts +4 -0
  72. package/dist/types/vectors/vec2.d.ts.map +1 -1
  73. package/dist/types/vectors/vec3.d.ts +4 -1
  74. package/dist/types/vectors/vec3.d.ts.map +1 -1
  75. package/package.json +1 -1
@@ -11,8 +11,14 @@ class Square {
11
11
  get area() { return this.width * this.height; }
12
12
  get perimeter() { return this.width + this.width + this.height + this.height; }
13
13
  static resolve(a) {
14
+ const value = this.cast(a);
15
+ if (typeof value != "undefined")
16
+ return value;
17
+ throw new error_1.ResolveError("Square", a);
18
+ }
19
+ static cast(a) {
14
20
  if (a == null || typeof a == "undefined")
15
- throw new error_1.ResolveError("Square", a);
21
+ return undefined;
16
22
  if ((0, types_1.check_number_array)(a, 2))
17
23
  return new this(a[0], a[1]);
18
24
  if ((0, types_1.has_property)(a, "width", "number") && (0, types_1.has_property)(a, "height", "number"))
@@ -20,26 +26,20 @@ class Square {
20
26
  if ((0, types_1.check_string)(a)) {
21
27
  const parts = a.split("x").map((v) => parseFloat(v));
22
28
  if ((0, types_1.check_number_array)(parts, 2))
23
- return this.resolve(parts);
29
+ return this.cast(parts);
24
30
  }
25
31
  if ((0, types_1.check_number)(a))
26
32
  return new this(a, a);
27
- throw new error_1.ResolveError("Square", a);
28
- }
29
- static fromVector(a) {
30
- const vec = vec2_1.Vec2.resolve(a);
31
- return new this(vec.x, vec.y);
33
+ return undefined;
32
34
  }
33
35
  static is(a) {
34
- try {
35
- this.resolve(a);
36
- }
37
- catch (e) {
38
- return false;
39
- }
40
- return true;
36
+ return typeof this.cast(a) != "undefined";
41
37
  }
42
38
  constructor(width, height) {
39
+ if (!(0, types_1.check_number)(width))
40
+ throw new TypeError("expected number for width");
41
+ if (!(0, types_1.check_number)(height))
42
+ throw new TypeError("expected number for height");
43
43
  this.width = width;
44
44
  this.height = height;
45
45
  }
@@ -58,6 +58,10 @@ class Square {
58
58
  clone() {
59
59
  return new Square(this.width, this.height);
60
60
  }
61
+ equals(square) {
62
+ const s = Square.resolve(square);
63
+ return this.width == s.width && this.height == s.height;
64
+ }
61
65
  toVector() {
62
66
  return new vec2_1.Vec2(this.width, this.height);
63
67
  }
@@ -1 +1 @@
1
- {"version":3,"file":"square.js","sourceRoot":"","sources":["../../../source/geometry/square.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"square.js","sourceRoot":"","sources":["../../../source/geometry/square.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ exports.Mat3 = void 0;
4
4
  const error_1 = require("../common/error");
5
5
  const types_1 = require("../common/types");
6
6
  const vec2_1 = require("../vectors/vec2");
7
+ const mat4_1 = require("./mat4");
7
8
  class Mat3 {
8
9
  _raw;
9
10
  get m00() { return this._raw[0]; }
@@ -25,8 +26,14 @@ class Mat3 {
25
26
  get m22() { return this._raw[8]; }
26
27
  set m22(val) { this._raw[8] = val; }
27
28
  static resolve(a) {
29
+ const value = this.cast(a);
30
+ if (typeof value != "undefined")
31
+ return value;
32
+ throw new error_1.ResolveError("Mat3", a);
33
+ }
34
+ static cast(a) {
28
35
  if (a == null || typeof a == "undefined")
29
- throw new error_1.ResolveError("Mat3", a);
36
+ return undefined;
30
37
  if ((0, types_1.check_number_array)(a, 9)) {
31
38
  return new this(a);
32
39
  }
@@ -42,7 +49,7 @@ class Mat3 {
42
49
  if ((0, types_1.check_string)(a)) {
43
50
  const parts = a.split(",");
44
51
  if ((0, types_1.check_string_array)(parts, 9))
45
- return this.resolve(parts.map((i) => parseFloat(i)));
52
+ return this.cast(parts.map((i) => parseFloat(i)));
46
53
  }
47
54
  if ((0, types_1.has_property)(a, "m00", "number") && (0, types_1.has_property)(a, "m01", "number") && (0, types_1.has_property)(a, "m02", "number") &&
48
55
  (0, types_1.has_property)(a, "m10", "number") && (0, types_1.has_property)(a, "m11", "number") && (0, types_1.has_property)(a, "m12", "number") &&
@@ -55,16 +62,10 @@ class Mat3 {
55
62
  if ((0, types_1.check_number)(a)) {
56
63
  return new this([a, a, a, a, a, a, a, a, a]);
57
64
  }
58
- throw new error_1.ResolveError("Mat3", a);
65
+ return undefined;
59
66
  }
60
67
  static is(a) {
61
- try {
62
- this.resolve(a);
63
- }
64
- catch (e) {
65
- return false;
66
- }
67
- return true;
68
+ return typeof this.cast(a) != "undefined";
68
69
  }
69
70
  static projection(width, height) {
70
71
  return new this([
@@ -74,6 +75,8 @@ class Mat3 {
74
75
  ]);
75
76
  }
76
77
  constructor(init = [1, 0, 0, 0, 1, 0, 0, 0, 1]) {
78
+ if (!(0, types_1.check_number_array)(init, 9))
79
+ throw new TypeError("expected a number array with 9 elements");
77
80
  this._raw = init;
78
81
  }
79
82
  toArray() {
@@ -107,6 +110,13 @@ class Mat3 {
107
110
  this.m20, this.m21, this.m22
108
111
  ]);
109
112
  }
113
+ equals(mat) {
114
+ const m = Mat3.resolve(mat);
115
+ for (let index = 0; index < this._raw.length; index++)
116
+ if (this._raw[index] != m._raw[index])
117
+ return false;
118
+ return true;
119
+ }
110
120
  add(mat) {
111
121
  const b = Mat3.resolve(mat);
112
122
  const m = new Mat3;
@@ -179,6 +189,14 @@ class Mat3 {
179
189
  (this.m10 * this.m21 - this.m20 * this.m11) * det, (this.m20 * this.m01 - this.m00 * this.m21) * det, (this.m00 * this.m11 - this.m10 * this.m01) * det
180
190
  ]);
181
191
  }
192
+ toMat4() {
193
+ return new mat4_1.Mat4([
194
+ this.m00, this.m01, 0, this.m02,
195
+ this.m10, this.m11, 0, this.m12,
196
+ 0, 0, 1, 0,
197
+ this.m20, this.m20, 0, this.m22,
198
+ ]);
199
+ }
182
200
  }
183
201
  exports.Mat3 = Mat3;
184
202
  //# sourceMappingURL=mat3.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mat3.js","sourceRoot":"","sources":["../../../source/matrices/mat3.ts"],"names":[],"mappings":";;;AAAA,2CAA8C;AAC9C,2CAA+H;AAC/H,0CAA+D;AAqB/D,MAAa,IAAI;IAEH,IAAI,CAAW;IACzB,IAAW,GAAG,KAAG,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA,CAAA,CAAC;IACrC,IAAW,GAAG,CAAC,GAAG,IAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA,CAAA,CAAC;IACvC,IAAW,GAAG,KAAG,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA,CAAA,CAAC;IACrC,IAAW,GAAG,CAAC,GAAG,IAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA,CAAA,CAAC;IACvC,IAAW,GAAG,KAAG,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA,CAAA,CAAC;IACrC,IAAW,GAAG,CAAC,GAAG,IAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA,CAAA,CAAC;IACvC,IAAW,GAAG,KAAG,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA,CAAA,CAAC;IACrC,IAAW,GAAG,CAAC,GAAG,IAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA,CAAA,CAAC;IACvC,IAAW,GAAG,KAAG,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA,CAAA,CAAC;IACrC,IAAW,GAAG,CAAC,GAAG,IAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA,CAAA,CAAC;IACvC,IAAW,GAAG,KAAG,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA,CAAA,CAAC;IACrC,IAAW,GAAG,CAAC,GAAG,IAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA,CAAA,CAAC;IACvC,IAAW,GAAG,KAAG,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA,CAAA,CAAC;IACrC,IAAW,GAAG,CAAC,GAAG,IAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA,CAAA,CAAC;IACvC,IAAW,GAAG,KAAG,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA,CAAA,CAAC;IACrC,IAAW,GAAG,CAAC,GAAG,IAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA,CAAA,CAAC;IACvC,IAAW,GAAG,KAAG,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA,CAAA,CAAC;IACrC,IAAW,GAAG,CAAC,GAAG,IAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAA,CAAA,CAAC;IAChC,MAAM,CAAC,OAAO,CAAC,CAAU;QAE5B,IAAG,CAAC,IAAI,IAAI,IAAI,OAAO,CAAC,IAAI,WAAW;YACnC,MAAM,IAAI,oBAAY,CAAC,MAAM,EAAC,CAAC,CAAC,CAAA;QACpC,IAAG,IAAA,0BAAkB,EAAC,CAAC,EAAC,CAAC,CAAC,EAC1B,CAAC;YACG,OAAO,IAAI,IAAI,CAAC,CAAc,CAAC,CAAA;QACnC,CAAC;QACD,IAAG,IAAA,mBAAW,EAAC,CAAC,EAAC,SAAS,EAAC,CAAC,CAAC,EAC7B,CAAC;YACG,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YAC3C,IAAG,IAAA,0BAAkB,EAAC,IAAI,EAAC,CAAC,CAAC,IAAI,IAAA,0BAAkB,EAAC,IAAI,EAAC,CAAC,CAAC,IAAI,IAAA,0BAAkB,EAAC,IAAI,EAAC,CAAC,CAAC;gBACrF,OAAO,IAAI,IAAI,CAAC;oBACZ,IAAI,CAAC,CAAC,CAAC,EAAC,IAAI,CAAC,CAAC,CAAC,EAAC,IAAI,CAAC,CAAC,CAAC;oBACvB,IAAI,CAAC,CAAC,CAAC,EAAC,IAAI,CAAC,CAAC,CAAC,EAAC,IAAI,CAAC,CAAC,CAAC;oBACvB,IAAI,CAAC,CAAC,CAAC,EAAC,IAAI,CAAC,CAAC,CAAC,EAAC,IAAI,CAAC,CAAC,CAAC;iBAC1B,CAAC,CAAA;QACV,CAAC;QACD,IAAG,IAAA,oBAAY,EAAC,CAAC,CAAC,EAClB,CAAC;YACG,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAC1B,IAAG,IAAA,0BAAkB,EAAC,KAAK,EAAC,CAAC,CAAC;gBAC1B,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5D,CAAC;QACD,IACI,IAAA,oBAAY,EAAC,CAAC,EAAC,KAAK,EAAC,QAAQ,CAAC,IAAI,IAAA,oBAAY,EAAC,CAAC,EAAC,KAAK,EAAC,QAAQ,CAAC,IAAI,IAAA,oBAAY,EAAC,CAAC,EAAC,KAAK,EAAC,QAAQ,CAAC;YAClG,IAAA,oBAAY,EAAC,CAAC,EAAC,KAAK,EAAC,QAAQ,CAAC,IAAI,IAAA,oBAAY,EAAC,CAAC,EAAC,KAAK,EAAC,QAAQ,CAAC,IAAI,IAAA,oBAAY,EAAC,CAAC,EAAC,KAAK,EAAC,QAAQ,CAAC;YAClG,IAAA,oBAAY,EAAC,CAAC,EAAC,KAAK,EAAC,QAAQ,CAAC,IAAI,IAAA,oBAAY,EAAC,CAAC,EAAC,KAAK,EAAC,QAAQ,CAAC,IAAI,IAAA,oBAAY,EAAC,CAAC,EAAC,KAAK,EAAC,QAAQ,CAAC;YAElG,OAAO,IAAI,IAAI,CAAC;gBACZ,CAAC,CAAC,GAAG,EAAC,CAAC,CAAC,GAAG,EAAC,CAAC,CAAC,GAAG;gBACjB,CAAC,CAAC,GAAG,EAAC,CAAC,CAAC,GAAG,EAAC,CAAC,CAAC,GAAG;gBACjB,CAAC,CAAC,GAAG,EAAC,CAAC,CAAC,GAAG,EAAC,CAAC,CAAC,GAAG;aACpB,CAAC,CAAA;QACN,IAAG,IAAA,oBAAY,EAAC,CAAC,CAAC,EAClB,CAAC;YACG,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,CAAC,CAAC,CAAA;QACxC,CAAC;QACD,MAAM,IAAI,oBAAY,CAAC,MAAM,EAAC,CAAC,CAAC,CAAA;IACpC,CAAC;IACM,MAAM,CAAC,EAAE,CAAC,CAAU;QAEvB,IACA,CAAC;YACG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;QACnB,CAAC;QACD,OAAM,CAAC,EACP,CAAC;YACG,OAAO,KAAK,CAAA;QAChB,CAAC;QACD,OAAO,IAAI,CAAA;IACf,CAAC;IACM,MAAM,CAAC,UAAU,CAAC,KAAa,EAAC,MAAc;QAEjD,OAAO,IAAI,IAAI,CAAC;YACZ,CAAC,GAAC,KAAK,EAAC,CAAC,EAAC,CAAC;YACX,CAAC,EAAC,CAAC,CAAC,GAAC,MAAM,EAAC,CAAC;YACb,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC;SACT,CAAC,CAAA;IACN,CAAC;IACD,YAAmB,OAAkB,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC,CAAC;QAEpD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IACpB,CAAC;IACM,OAAO;QAEV,OAAO;YACH,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG;YAC1B,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG;YAC1B,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG;SAC7B,CAAA;IACL,CAAC;IACM,aAAa;QAEhB,OAAO;YACH,CAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,CAAC;YAC5B,CAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,CAAC;YAC5B,CAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,CAAC;SAC/B,CAAA;IACL,CAAC;IACM,MAAM;QAET,OAAO;YACH,GAAG,EAAE,IAAI,CAAC,GAAG,EAAC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAC,GAAG,EAAE,IAAI,CAAC,GAAG;YACzC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAC,GAAG,EAAE,IAAI,CAAC,GAAG;YACzC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAC,GAAG,EAAE,IAAI,CAAC,GAAG;SAC5C,CAAA;IACL,CAAC;IACM,QAAQ;QAEX,OAAO,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,CAAA;IACxH,CAAC;IACM,KAAK;QAER,OAAO,IAAI,IAAI,CAAC;YACZ,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG;YAC1B,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG;YAC1B,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG;SAC7B,CAAC,CAAA;IACN,CAAC;IACM,GAAG,CAAC,GAAa;QAEpB,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAC3B,MAAM,CAAC,GAAG,IAAI,IAAI,CAAA;QAClB,KAAI,IAAI,KAAK,GAAG,CAAC,EAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAC,KAAK,EAAE;YAC9C,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACpD,OAAO,IAAI,CAAA;IACf,CAAC;IACM,QAAQ,CAAC,GAAa;QAEzB,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAC3B,MAAM,CAAC,GAAG,IAAI,IAAI,CAAA;QAClB,KAAI,IAAI,KAAK,GAAG,CAAC,EAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAC,KAAK,EAAE;YAC9C,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACpD,OAAO,IAAI,CAAA;IACf,CAAC;IAGM,QAAQ,CAAC,CAAoB;QAEhC,IAAG,IAAA,oBAAY,EAAC,CAAC,CAAC;YACd,OAAO,IAAI,IAAI,CAAC;gBACZ,IAAI,CAAC,GAAG,GAAG,CAAC,EAAC,IAAI,CAAC,GAAG,GAAG,CAAC,EAAC,IAAI,CAAC,GAAG,GAAG,CAAC;gBACtC,IAAI,CAAC,GAAG,GAAG,CAAC,EAAC,IAAI,CAAC,GAAG,GAAG,CAAC,EAAC,IAAI,CAAC,GAAG,GAAG,CAAC;gBACtC,IAAI,CAAC,GAAG,GAAG,CAAC,EAAC,IAAI,CAAC,GAAG,GAAG,CAAC,EAAC,IAAI,CAAC,GAAG,GAAG,CAAC;aACzC,CAAC,CAAA;QACN,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;QACzB,OAAO,IAAI,IAAI,CAAC;YACZ,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;YACtD,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;YACtD,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;YACtD,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;YACtD,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;YACtD,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;YACtD,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;YACtD,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;YACtD,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;SACzD,CAAC,CAAA;IACN,CAAC;IAGM,SAAS,CAAC,GAAG,IAAmB;QAEnC,MAAM,GAAG,GAAG,WAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAClC,OAAO,IAAI,CAAC,QAAQ,CAAC;YACjB,CAAC,EAAC,CAAC,EAAC,CAAC;YACL,CAAC,EAAC,CAAC,EAAC,CAAC;YACL,GAAG,CAAC,CAAC,EAAC,GAAG,CAAC,CAAC,EAAC,CAAC;SAChB,CAAC,CAAA;IACN,CAAC;IACM,MAAM,CAAC,KAAa;QAEvB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACzB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACzB,OAAO,IAAI,CAAC,QAAQ,CAAC;YACjB,CAAC,EAAC,CAAC,CAAC,EAAC,CAAC;YACN,CAAC,EAAC,CAAC,EAAC,CAAC;YACL,CAAC,EAAC,CAAC,EAAC,CAAC;SACR,CAAC,CAAA;IACN,CAAC;IAGM,KAAK,CAAC,GAAG,IAAmB;QAE/B,MAAM,GAAG,GAAG,WAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAC9B,OAAO,IAAI,CAAC,QAAQ,CAAC;YACjB,GAAG,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACT,CAAC,EAAC,GAAG,CAAC,CAAC,EAAC,CAAC;YACT,CAAC,EAAC,CAAC,EAAC,CAAC;SACR,CAAC,CAAA;IACN,CAAC;IACM,WAAW;QAEd,OAAO,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;YACpD,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;YACpD,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAA;IAC/D,CAAC;IACM,OAAO;QAEV,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QAC9B,OAAO,IAAI,IAAI,CAAC;YACZ,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,EAAC,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,EAAC,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG;YACrJ,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,EAAC,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,EAAC,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG;YACrJ,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,EAAC,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,EAAC,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG;SACxJ,CAAC,CAAA;IACN,CAAC;CACJ;AA/MD,oBA+MC"}
1
+ {"version":3,"file":"mat3.js","sourceRoot":"","sources":["../../../source/matrices/mat3.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ exports.Mat4 = void 0;
4
4
  const error_1 = require("../common/error");
5
5
  const vec3_1 = require("../vectors/vec3");
6
6
  const types_1 = require("../common/types");
7
+ const mat3_1 = require("./mat3");
7
8
  class Mat4 {
8
9
  _raw;
9
10
  get m00() { return this._raw[0]; }
@@ -39,8 +40,14 @@ class Mat4 {
39
40
  get m33() { return this._raw[15]; }
40
41
  set m33(val) { this._raw[15] = val; }
41
42
  static resolve(a) {
43
+ const value = this.cast(a);
44
+ if (typeof value != "undefined")
45
+ return value;
46
+ throw new error_1.ResolveError("Mat4", a);
47
+ }
48
+ static cast(a) {
42
49
  if (a == null || typeof a == "undefined")
43
- throw new error_1.ResolveError("Mat4", a);
50
+ return undefined;
44
51
  if ((0, types_1.check_number_array)(a, 16)) {
45
52
  return new this(a);
46
53
  }
@@ -57,7 +64,7 @@ class Mat4 {
57
64
  if ((0, types_1.check_string)(a)) {
58
65
  const parts = a.split(",");
59
66
  if ((0, types_1.check_string_array)(parts, 16))
60
- return this.resolve(parts.map((i) => parseFloat(i)));
67
+ return this.cast(parts.map((i) => parseFloat(i)));
61
68
  }
62
69
  if ((0, types_1.has_property)(a, "m00", "number") && (0, types_1.has_property)(a, "m01", "number") && (0, types_1.has_property)(a, "m02", "number") && (0, types_1.has_property)(a, "m03", "number") &&
63
70
  (0, types_1.has_property)(a, "m10", "number") && (0, types_1.has_property)(a, "m11", "number") && (0, types_1.has_property)(a, "m12", "number") && (0, types_1.has_property)(a, "m13", "number") &&
@@ -72,16 +79,10 @@ class Mat4 {
72
79
  if ((0, types_1.check_number)(a)) {
73
80
  return new this([a, a, a, a, a, a, a, a, a, a, a, a, a, a, a, a]);
74
81
  }
75
- throw new error_1.ResolveError("Mat4", a);
82
+ return undefined;
76
83
  }
77
84
  static is(a) {
78
- try {
79
- this.resolve(a);
80
- }
81
- catch (e) {
82
- return false;
83
- }
84
- return true;
85
+ return typeof this.cast(a) != "undefined";
85
86
  }
86
87
  static orthographic(left, right, bottom, top, near, far) {
87
88
  return new this([
@@ -117,6 +118,8 @@ class Mat4 {
117
118
  ]);
118
119
  }
119
120
  constructor(init = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]) {
121
+ if (!(0, types_1.check_number_array)(init, 16))
122
+ throw new TypeError("expected a number array with 16 elements");
120
123
  this._raw = init;
121
124
  }
122
125
  toArray() {
@@ -154,6 +157,13 @@ class Mat4 {
154
157
  this.m30, this.m31, this.m32, this.m33
155
158
  ]);
156
159
  }
160
+ equals(mat) {
161
+ const m = Mat4.resolve(mat);
162
+ for (let index = 0; index < this._raw.length; index++)
163
+ if (this._raw[index] != m._raw[index])
164
+ return false;
165
+ return true;
166
+ }
157
167
  add(mat) {
158
168
  const b = Mat4.resolve(mat);
159
169
  const m = new Mat4;
@@ -270,6 +280,13 @@ class Mat4 {
270
280
  1
271
281
  ]);
272
282
  }
283
+ toMat3() {
284
+ return new mat3_1.Mat3([
285
+ this.m00, this.m01, this.m03,
286
+ this.m10, this.m11, this.m13,
287
+ this.m30, this.m31, this.m33
288
+ ]);
289
+ }
273
290
  }
274
291
  exports.Mat4 = Mat4;
275
292
  //# sourceMappingURL=mat4.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mat4.js","sourceRoot":"","sources":["../../../source/matrices/mat4.ts"],"names":[],"mappings":"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,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBACzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBACzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBAEzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBACzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBACzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBACzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBAEzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBACzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBACzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBACzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;aAC5E,CAAC,CAAA;QACN,CAAC;QACD,IAAG,WAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EACb,CAAC;YACG,MAAM,CAAC,GAAG,WAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;YACzB,MAAM,GAAG,GAAG,IAAI,WAAI,CAChB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,EAC3D,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,EAC3D,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,EAC3D,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAC9D,CAAA;YACD,IAAG,GAAG,CAAC,CAAC,IAAI,CAAC;gBACT,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;YAC5B,OAAO,GAAG,CAAA;QACd,CAAC;QACD,MAAM,IAAI,oBAAY,CAAC,wBAAwB,EAAC,CAAC,CAAC,CAAA;IACtD,CAAC;IAGM,SAAS,CAAC,GAAG,IAAmB;QAEnC,MAAM,GAAG,GAAG,WAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAClC,OAAO,IAAI,CAAC,QAAQ,CAAC;YACjB,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACP,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACP,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACP,GAAG,CAAC,CAAC,EAAC,GAAG,CAAC,CAAC,EAAC,GAAG,CAAC,CAAC,EAAC,CAAC;SACtB,CAAC,CAAA;IACN,CAAC;IACM,OAAO,CAAC,KAAa;QAExB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACzB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACzB,OAAO,IAAI,CAAC,QAAQ,CAAC;YACjB,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACP,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACP,CAAC,EAAC,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACR,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;SACV,CAAC,CAAA;IACN,CAAC;IACM,OAAO,CAAC,KAAa;QAExB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACzB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACzB,OAAO,IAAI,CAAC,QAAQ,CAAC;YACjB,CAAC,EAAC,CAAC,EAAC,CAAC,CAAC,EAAC,CAAC;YACR,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACP,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACP,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;SACV,CAAC,CAAA;IACN,CAAC;IACM,OAAO,CAAC,KAAa;QAExB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACzB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACzB,OAAO,IAAI,CAAC,QAAQ,CAAC;YACjB,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACP,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACR,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACP,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;SACV,CAAC,CAAA;IACN,CAAC;IAGM,MAAM,CAAC,GAAG,IAAmB;QAEhC,MAAM,GAAG,GAAG,WAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAClC,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IAC5D,CAAC;IAGM,KAAK,CAAC,GAAG,IAAmB;QAE/B,MAAM,GAAG,GAAG,WAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAClC,OAAO,IAAI,CAAC,QAAQ,CAAC;YACjB,GAAG,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACX,CAAC,EAAC,GAAG,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACX,CAAC,EAAC,CAAC,EAAC,GAAG,CAAC,CAAC,EAAC,CAAC;YACX,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;SACV,CAAC,CAAA;IACN,CAAC;IACM,OAAO;QAEV,OAAO,IAAI,IAAI,CAAC;YACZ,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,CAAC;YAC5B,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,CAAC;YAC5B,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,CAAC;YAC5B,CAAC,CAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,CAAC;YACxD,CAAC,CAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,CAAC;YACxD,CAAC,CAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,CAAC;YACxD,CAAC;SACJ,CAAC,CAAA;IACN,CAAC;CACJ;AA5TD,oBA4TC"}
1
+ {"version":3,"file":"mat4.js","sourceRoot":"","sources":["../../../source/matrices/mat4.ts"],"names":[],"mappings":"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AG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBACzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBAEzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBACzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBACzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBACzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBAEzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBACzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBACzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBACzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBAEzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBACzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBACzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;gBACzE,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG;aAC5E,CAAC,CAAA;QACN,CAAC;QACD,IAAG,WAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EACb,CAAC;YACG,MAAM,CAAC,GAAG,WAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;YACzB,MAAM,GAAG,GAAG,IAAI,WAAI,CAChB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,EAC3D,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,EAC3D,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,EAC3D,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAC9D,CAAA;YACD,IAAG,GAAG,CAAC,CAAC,IAAI,CAAC;gBACT,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;YAC5B,OAAO,GAAG,CAAA;QACd,CAAC;QACD,MAAM,IAAI,oBAAY,CAAC,wBAAwB,EAAC,CAAC,CAAC,CAAA;IACtD,CAAC;IAGM,SAAS,CAAC,GAAG,IAAmB;QAEnC,MAAM,GAAG,GAAG,WAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAClC,OAAO,IAAI,CAAC,QAAQ,CAAC;YACjB,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACP,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACP,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACP,GAAG,CAAC,CAAC,EAAC,GAAG,CAAC,CAAC,EAAC,GAAG,CAAC,CAAC,EAAC,CAAC;SACtB,CAAC,CAAA;IACN,CAAC;IACM,OAAO,CAAC,KAAa;QAExB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACzB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACzB,OAAO,IAAI,CAAC,QAAQ,CAAC;YACjB,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACP,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACP,CAAC,EAAC,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACR,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;SACV,CAAC,CAAA;IACN,CAAC;IACM,OAAO,CAAC,KAAa;QAExB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACzB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACzB,OAAO,IAAI,CAAC,QAAQ,CAAC;YACjB,CAAC,EAAC,CAAC,EAAC,CAAC,CAAC,EAAC,CAAC;YACR,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACP,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACP,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;SACV,CAAC,CAAA;IACN,CAAC;IACM,OAAO,CAAC,KAAa;QAExB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACzB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACzB,OAAO,IAAI,CAAC,QAAQ,CAAC;YACjB,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACP,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACR,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACP,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;SACV,CAAC,CAAA;IACN,CAAC;IAGM,MAAM,CAAC,GAAG,IAAmB;QAEhC,MAAM,GAAG,GAAG,WAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAClC,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IAC5D,CAAC;IAGM,KAAK,CAAC,GAAG,IAAmB;QAE/B,MAAM,GAAG,GAAG,WAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAClC,OAAO,IAAI,CAAC,QAAQ,CAAC;YACjB,GAAG,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACX,CAAC,EAAC,GAAG,CAAC,CAAC,EAAC,CAAC,EAAC,CAAC;YACX,CAAC,EAAC,CAAC,EAAC,GAAG,CAAC,CAAC,EAAC,CAAC;YACX,CAAC,EAAC,CAAC,EAAC,CAAC,EAAC,CAAC;SACV,CAAC,CAAA;IACN,CAAC;IACM,OAAO;QAEV,OAAO,IAAI,IAAI,CAAC;YACZ,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,CAAC;YAC5B,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,CAAC;YAC5B,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,CAAC;YAC5B,CAAC,CAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,CAAC;YACxD,CAAC,CAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,CAAC;YACxD,CAAC,CAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,GAAC,IAAI,CAAC,GAAG,CAAC;YACxD,CAAC;SACJ,CAAC,CAAA;IACN,CAAC;IACM,MAAM;QAET,OAAO,IAAI,WAAI,CAAC;YACZ,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG;YAC1B,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG;YAC1B,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG,EAAC,IAAI,CAAC,GAAG;SAC7B,CAAC,CAAA;IACN,CAAC;CACJ;AA7UD,oBA6UC"}
@@ -10,18 +10,18 @@ class Quaternion {
10
10
  x;
11
11
  y;
12
12
  z;
13
- static is(obj) {
14
- try {
15
- this.resolve(obj);
16
- return true;
17
- }
18
- catch (e) {
19
- return false;
20
- }
13
+ static is(a) {
14
+ return typeof this.cast(a) != "undefined";
21
15
  }
22
16
  static resolve(a) {
17
+ const value = this.cast(a);
18
+ if (typeof value != "undefined")
19
+ return value;
20
+ throw new error_1.ResolveError("Quaternion", a);
21
+ }
22
+ static cast(a) {
23
23
  if (a == null || typeof a == "undefined")
24
- throw new error_1.ResolveError("Quaternion", a);
24
+ return undefined;
25
25
  if ((0, types_1.check_number_array)(a, 4))
26
26
  return new this(a[0], a[1], a[2], a[3]);
27
27
  if ((0, types_1.has_property)(a, "w", "number") && (0, types_1.has_property)(a, "x", "number") && (0, types_1.has_property)(a, "y", "number") && (0, types_1.has_property)(a, "z", "number"))
@@ -31,7 +31,7 @@ class Quaternion {
31
31
  if ((0, types_1.check_string_array)(parts, 4)) {
32
32
  const [sw, sxi, syj, szk] = parts;
33
33
  if (sxi.endsWith("i") && syj.endsWith("j") && szk.endsWith("k"))
34
- return this.resolve([
34
+ return this.cast([
35
35
  parseFloat(sw),
36
36
  parseFloat(sxi.substring(0, sxi.length - 1)),
37
37
  parseFloat(syj.substring(0, syj.length - 1)),
@@ -39,7 +39,7 @@ class Quaternion {
39
39
  ]);
40
40
  }
41
41
  }
42
- throw new error_1.ResolveError("Quaternion", a);
42
+ return undefined;
43
43
  }
44
44
  static fromAxisAngle(axis, angle) {
45
45
  const vec = vec3_1.Vec3.resolve(axis);
@@ -57,6 +57,14 @@ class Quaternion {
57
57
  return new Quaternion(cx * cy * cz - sx * sy * sz, sx * cy * cz - sy * sz * cx, sy * cx * cz - sx * sz * cy, sx * sy * cz + sz * cx * cy);
58
58
  }
59
59
  constructor(w = 0, x = 0, y = 0, z = 0) {
60
+ if (!(0, types_1.check_number)(w))
61
+ throw new TypeError("expected number for w");
62
+ if (!(0, types_1.check_number)(x))
63
+ throw new TypeError("expected number for x");
64
+ if (!(0, types_1.check_number)(y))
65
+ throw new TypeError("expected number for x");
66
+ if (!(0, types_1.check_number)(z))
67
+ throw new TypeError("expected number for w");
60
68
  this.w = w;
61
69
  this.x = x;
62
70
  this.y = y;
@@ -1 +1 @@
1
- {"version":3,"file":"quaternion.js","sourceRoot":"","sources":["../../source/quaternion.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"quaternion.js","sourceRoot":"","sources":["../../source/quaternion.ts"],"names":[],"mappings":"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"}
@@ -4,14 +4,21 @@ exports.Vec2 = void 0;
4
4
  const error_1 = require("../common/error");
5
5
  const types_1 = require("../common/types");
6
6
  const square_1 = require("../geometry/square");
7
+ const vec3_1 = require("./vec3");
7
8
  const index_1 = require("../index");
8
9
  class Vec2 {
9
10
  x;
10
11
  y;
11
12
  w;
12
13
  static resolve(a) {
14
+ const value = this.cast(a);
15
+ if (typeof value != "undefined")
16
+ return value;
17
+ throw new error_1.ResolveError("Vec2", a);
18
+ }
19
+ static cast(a) {
13
20
  if (a == null || typeof a == "undefined")
14
- throw new error_1.ResolveError("Vec2", a);
21
+ return undefined;
15
22
  if ((0, types_1.check_number_array)(a, 2) || (0, types_1.check_number_array)(a, 3))
16
23
  return new this(a[0], a[1], (0, types_1.check_number)(a[2]) ? a[2] : undefined);
17
24
  if ((0, types_1.has_property)(a, "x", "number") && (0, types_1.has_property)(a, "y", "number"))
@@ -26,7 +33,7 @@ class Vec2 {
26
33
  }
27
34
  if ((0, types_1.check_number)(a))
28
35
  return new this(a, a);
29
- throw new error_1.ResolveError("Vec2", a);
36
+ return undefined;
30
37
  }
31
38
  static resolveArgs(args) {
32
39
  if ((0, types_1.check_number_array)(args, 2))
@@ -34,13 +41,7 @@ class Vec2 {
34
41
  return this.resolve(args[0]);
35
42
  }
36
43
  static is(a) {
37
- try {
38
- this.resolve(a);
39
- }
40
- catch (e) {
41
- return false;
42
- }
43
- return true;
44
+ return typeof this.cast(a) != "undefined";
44
45
  }
45
46
  static fromPoints(a, b) {
46
47
  const veca = this.resolve(a);
@@ -52,6 +53,12 @@ class Vec2 {
52
53
  return new this((0, index_1.clamp)(a.x, b.x, c.x), (0, index_1.clamp)(a.y, b.y, c.y));
53
54
  }
54
55
  constructor(x = 0, y = 0, w = 1) {
56
+ if (!(0, types_1.check_number)(x))
57
+ throw new TypeError("expected number for x");
58
+ if (!(0, types_1.check_number)(y))
59
+ throw new TypeError("expected number for y");
60
+ if (!(0, types_1.check_number)(w))
61
+ throw new TypeError("expected number for w");
55
62
  this.x = x;
56
63
  this.y = y;
57
64
  this.w = w;
@@ -70,9 +77,16 @@ class Vec2 {
70
77
  toSquare() {
71
78
  return new square_1.Square(this.x, this.y);
72
79
  }
80
+ toVec3(z) {
81
+ return new vec3_1.Vec3(this.x, this.y, z, this.w);
82
+ }
73
83
  clone() {
74
84
  return new Vec2(this.x, this.y, this.w);
75
85
  }
86
+ equals(vec) {
87
+ const a = Vec2.resolve(vec);
88
+ return this.x == a.x && this.y == a.y;
89
+ }
76
90
  setX(x) {
77
91
  this.x = x;
78
92
  return this;
@@ -1 +1 @@
1
- {"version":3,"file":"vec2.js","sourceRoot":"","sources":["../../../source/vectors/vec2.ts"],"names":[],"mappings":";;;AAAA,2CAA8C;AAC9C,2CAAkH;AAClH,+CAA2C;AAC3C,oCAAgC;AAchC,MAAa,IAAI;IAwDa;IAAqB;IAAqB;IAtD7D,MAAM,CAAC,OAAO,CAAC,CAAU;QAE5B,IAAG,CAAC,IAAI,IAAI,IAAI,OAAO,CAAC,IAAI,WAAW;YACnC,MAAM,IAAI,oBAAY,CAAC,MAAM,EAAC,CAAC,CAAC,CAAA;QACpC,IAAG,IAAA,0BAAkB,EAAC,CAAC,EAAC,CAAC,CAAC,IAAI,IAAA,0BAAkB,EAAC,CAAC,EAAC,CAAC,CAAC;YACjD,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC,CAAC,EAAC,IAAA,oBAAY,EAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;QACpE,IAAG,IAAA,oBAAY,EAAC,CAAC,EAAC,GAAG,EAAC,QAAQ,CAAC,IAAI,IAAA,oBAAY,EAAC,CAAC,EAAC,GAAG,EAAC,QAAQ,CAAC;YAC3D,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC,EAAC,IAAA,oBAAY,EAAC,CAAC,EAAC,GAAG,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;QAC3E,IAAG,IAAA,oBAAY,EAAC,CAAC,CAAC,EAClB,CAAC;YACG,MAAM,CAAC,GAAG,EAAC,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAC7B,IAAG,IAAA,oBAAY,EAAC,GAAG,CAAC,EACpB,CAAC;gBACG,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBAC5B,IAAG,IAAA,0BAAkB,EAAC,KAAK,EAAC,CAAC,CAAC;oBAC1B,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAC,IAAA,oBAAY,EAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;YAChH,CAAC;QACL,CAAC;QACD,IAAG,IAAA,oBAAY,EAAC,CAAC,CAAC;YACd,OAAO,IAAI,IAAI,CAAC,CAAC,EAAC,CAAC,CAAC,CAAA;QACxB,MAAM,IAAI,oBAAY,CAAC,MAAM,EAAC,CAAC,CAAC,CAAA;IACpC,CAAC;IACM,MAAM,CAAC,WAAW,CAAC,IAAmB;QAEzC,IAAG,IAAA,0BAAkB,EAAC,IAAI,EAAC,CAAC,CAAC;YACzB,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;QACpC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IAChC,CAAC;IACM,MAAM,CAAC,EAAE,CAAC,CAAU;QAEvB,IACA,CAAC;YACG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;QACnB,CAAC;QACD,OAAM,CAAC,EACP,CAAC;YACG,OAAO,KAAK,CAAA;QAChB,CAAC;QACD,OAAO,IAAI,CAAA;IACf,CAAC;IACM,MAAM,CAAC,UAAU,CAAC,CAAW,EAAC,CAAW;QAE5C,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;QAC5B,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,EAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;IACpD,CAAC;IACM,MAAM,CAAC,KAAK,CAAC,KAAe,EAAC,GAAa,EAAC,GAAa;QAE3D,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAC3E,OAAO,IAAI,IAAI,CACX,IAAA,aAAK,EAAC,CAAC,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC,CAAC,EAClB,IAAA,aAAK,EAAC,CAAC,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC,CAAC,CACrB,CAAA;IACL,CAAC;IACD,YAA0B,IAAY,CAAC,EAAQ,IAAY,CAAC,EAAQ,IAAI,CAAC;QAA/C,MAAC,GAAD,CAAC,CAAY;QAAQ,MAAC,GAAD,CAAC,CAAY;QAAQ,MAAC,GAAD,CAAC,CAAI;IAGzE,CAAC;IACM,OAAO,CAAC,CAAC,GAAG,KAAK;QAEpB,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAC,IAAI,CAAC,CAAC,EAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACvD,CAAC;IACM,MAAM;QAET,OAAO;YACH,CAAC,EAAE,IAAI,CAAC,CAAC,EAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAC,CAAC,EAAE,IAAI,CAAC,CAAC;SAChC,CAAA;IACL,CAAC;IACM,QAAQ,CAAC,CAAC,GAAG,KAAK;QAErB,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAA;IACtE,CAAC;IACM,QAAQ;QAEX,OAAO,IAAI,eAAM,CAAC,IAAI,CAAC,CAAC,EAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACpC,CAAC;IACM,KAAK;QAER,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,EAAC,IAAI,CAAC,CAAC,EAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACzC,CAAC;IACM,IAAI,CAAC,CAAS;QAEjB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;QACV,OAAO,IAAI,CAAA;IACf,CAAC;IACM,IAAI,CAAC,CAAS;QAEjB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;QACV,OAAO,IAAI,CAAA;IACf,CAAC;IACM,IAAI,CAAC,CAAS;QAEjB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAA;QACV,OAAO,IAAI,CAAA;IACf,CAAC;IAGM,GAAG,CAAC,GAAG,IAAmB;QAE7B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAClC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IACvC,CAAC;IAGM,GAAG,CAAC,GAAG,IAAmB;QAE7B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAClC,OAAO,IAAI,IAAI,CACX,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,EACd,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CACjB,CAAA;IACL,CAAC;IAGM,MAAM,CAAC,GAAG,IAAmB;QAEhC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAClC,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAA;QACf,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAA;QACf,OAAO,IAAI,CAAA;IACf,CAAC;IAGM,QAAQ,CAAC,GAAG,IAAmB;QAElC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAClC,OAAO,IAAI,IAAI,CACX,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,EACd,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CACjB,CAAA;IACL,CAAC;IACM,QAAQ,CAAC,MAAc;QAE1B,OAAO,IAAI,IAAI,CACX,IAAI,CAAC,CAAC,GAAG,MAAM,EACf,IAAI,CAAC,CAAC,GAAG,MAAM,CAClB,CAAA;IACL,CAAC;IAGM,aAAa,CAAC,GAAG,IAAmB;QAEvC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAClC,OAAO,IAAI,IAAI,CACX,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,EACd,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CACjB,CAAA;IACL,CAAC;IAIM,MAAM,CAAC,GAAG,IAA8B;QAE3C,IAAG,IAAA,0BAAkB,EAAC,IAAI,EAAC,CAAC,CAAC;YACzB,OAAO,IAAI,IAAI,CACX,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAChB,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CACnB,CAAA;QACL,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAClC,OAAO,IAAI,IAAI,CACX,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,EACd,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CACjB,CAAA;IACL,CAAC;IAGM,GAAG,CAAC,GAAG,IAAmB;QAE7B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAClC,OAAO,IAAI,CAAC,CAAC,GAAC,GAAG,CAAC,CAAC,GAAC,IAAI,CAAC,CAAC,GAAC,GAAG,CAAC,CAAC,CAAA;IACpC,CAAC;IAGM,QAAQ,CAAC,GAAG,IAAmB;QAElC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAClC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,EAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,EAAC,CAAC,CAAC,CAAA;IAClE,CAAC;IAGM,cAAc,CAAC,GAAG,IAAmB;QAExC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAClC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,EAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC,CAAA;IAC7E,CAAC;IACM,MAAM;QAET,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAC,IAAI,CAAC,CAAC,GAAC,IAAI,CAAC,CAAC,GAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjD,CAAC;IACM,YAAY;QAEf,OAAO,IAAI,IAAI,CACX,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EACzB,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAC5B,CAAA;IACL,CAAC;IACM,QAAQ;QAEX,OAAO,IAAI,IAAI,CACX,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAC,IAAI,CAAC,CAAC,GAAC,IAAI,CAAC,CAAC,GAAC,IAAI,CAAC,CAAC,CAAC,EACtC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAC,IAAI,CAAC,CAAC,CAAC,CAC3B,CAAA;IACL,CAAC;IACM,SAAS;QAEZ,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;QAC5B,IAAG,MAAM,IAAI,CAAC;YAAE,OAAO,IAAI,IAAI,CAAA;QAC/B,OAAO,IAAI,IAAI,CACX,IAAI,CAAC,CAAC,GAAG,MAAM,EACf,IAAI,CAAC,CAAC,GAAG,MAAM,CAClB,CAAA;IACL,CAAC;IACM,MAAM;QAET,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;IAC5B,CAAC;IACM,KAAK;QAER,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IAC7E,CAAC;CACJ;AA9ND,oBA8NC"}
1
+ {"version":3,"file":"vec2.js","sourceRoot":"","sources":["../../../source/vectors/vec2.ts"],"names":[],"mappings":"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"}