@aura3d/math 4.3.7 → 4.5.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 (65) hide show
  1. package/dist/SphericalHarmonics3.d.ts +6 -3
  2. package/dist/SphericalHarmonics3.d.ts.map +1 -1
  3. package/dist/SphericalHarmonics3.js +8 -5
  4. package/dist/SphericalHarmonics3.js.map +1 -1
  5. package/dist/three/Box3.d.ts +106 -0
  6. package/dist/three/Box3.d.ts.map +1 -0
  7. package/dist/three/Box3.js +348 -0
  8. package/dist/three/Box3.js.map +1 -0
  9. package/dist/three/Color.d.ts +127 -0
  10. package/dist/three/Color.d.ts.map +1 -0
  11. package/dist/three/Color.js +501 -0
  12. package/dist/three/Color.js.map +1 -0
  13. package/dist/three/Euler.d.ts +50 -0
  14. package/dist/three/Euler.d.ts.map +1 -0
  15. package/dist/three/Euler.js +210 -0
  16. package/dist/three/Euler.js.map +1 -0
  17. package/dist/three/Frustum.d.ts +59 -0
  18. package/dist/three/Frustum.d.ts.map +1 -0
  19. package/dist/three/Frustum.js +135 -0
  20. package/dist/three/Frustum.js.map +1 -0
  21. package/dist/three/Matrix3.d.ts +56 -0
  22. package/dist/three/Matrix3.d.ts.map +1 -0
  23. package/dist/three/Matrix3.js +248 -0
  24. package/dist/three/Matrix3.js.map +1 -0
  25. package/dist/three/Matrix4.d.ts +79 -0
  26. package/dist/three/Matrix4.d.ts.map +1 -0
  27. package/dist/three/Matrix4.js +708 -0
  28. package/dist/three/Matrix4.js.map +1 -0
  29. package/dist/three/Plane.d.ts +65 -0
  30. package/dist/three/Plane.d.ts.map +1 -0
  31. package/dist/three/Plane.js +135 -0
  32. package/dist/three/Plane.js.map +1 -0
  33. package/dist/three/Quaternion.d.ts +91 -0
  34. package/dist/three/Quaternion.d.ts.map +1 -0
  35. package/dist/three/Quaternion.js +444 -0
  36. package/dist/three/Quaternion.js.map +1 -0
  37. package/dist/three/Ray.d.ts +56 -0
  38. package/dist/three/Ray.d.ts.map +1 -0
  39. package/dist/three/Ray.js +340 -0
  40. package/dist/three/Ray.js.map +1 -0
  41. package/dist/three/Sphere.d.ts +58 -0
  42. package/dist/three/Sphere.d.ts.map +1 -0
  43. package/dist/three/Sphere.js +166 -0
  44. package/dist/three/Sphere.js.map +1 -0
  45. package/dist/three/Triangle.d.ts +58 -0
  46. package/dist/three/Triangle.d.ts.map +1 -0
  47. package/dist/three/Triangle.js +229 -0
  48. package/dist/three/Triangle.js.map +1 -0
  49. package/dist/three/Vector2.d.ts +88 -0
  50. package/dist/three/Vector2.d.ts.map +1 -0
  51. package/dist/three/Vector2.js +283 -0
  52. package/dist/three/Vector2.js.map +1 -0
  53. package/dist/three/Vector3.d.ts +137 -0
  54. package/dist/three/Vector3.d.ts.map +1 -0
  55. package/dist/three/Vector3.js +458 -0
  56. package/dist/three/Vector3.js.map +1 -0
  57. package/dist/three/Vector4.d.ts +100 -0
  58. package/dist/three/Vector4.d.ts.map +1 -0
  59. package/dist/three/Vector4.js +443 -0
  60. package/dist/three/Vector4.js.map +1 -0
  61. package/dist/three/index.d.ts +29 -0
  62. package/dist/three/index.d.ts.map +1 -0
  63. package/dist/three/index.js +29 -0
  64. package/dist/three/index.js.map +1 -0
  65. package/package.json +5 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Color.js","sourceRoot":"","sources":["../../../../../packages/math/src/three/Color.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ import { Euler as ImmutableEuler } from "../Euler.js";
2
+ import { type EulerLike, type EulerOrder, type QuaternionLike } from "./Quaternion.js";
3
+ export type { EulerOrder } from "./Quaternion.js";
4
+ interface ElementsLike {
5
+ readonly elements: ArrayLike<number>;
6
+ }
7
+ /**
8
+ * Mutable three.js-compatible Euler angles. Every modifier mutates `this` and
9
+ * returns `this`, exactly like three r185 `Euler`, including the `_onChange`
10
+ * callback that owners (rotation vs quaternion) use to stay in sync.
11
+ */
12
+ export declare class Euler {
13
+ static DEFAULT_ORDER: EulerOrder;
14
+ readonly isEuler: true;
15
+ _x: number;
16
+ _y: number;
17
+ _z: number;
18
+ _order: EulerOrder;
19
+ constructor(x?: number, y?: number, z?: number, order?: EulerOrder);
20
+ get x(): number;
21
+ set x(value: number);
22
+ get y(): number;
23
+ set y(value: number);
24
+ get z(): number;
25
+ set z(value: number);
26
+ get order(): EulerOrder;
27
+ set order(value: EulerOrder);
28
+ /** Copy an immutable `@aura3d/math` Euler (or any `{x, y, z, order}`) into this Euler. */
29
+ fromImmutable(e: EulerLike): this;
30
+ /** Snapshot as an immutable `@aura3d/math` Euler (throws on non-finite angles or an unknown order). */
31
+ toImmutable(): ImmutableEuler;
32
+ set(x: number, y: number, z: number, order?: EulerOrder): this;
33
+ clone(): this;
34
+ copy(euler: EulerLike): this;
35
+ setFromRotationMatrix(m: ElementsLike, order?: EulerOrder, update?: boolean): this;
36
+ setFromQuaternion(q: QuaternionLike, order?: EulerOrder, update?: boolean): this;
37
+ setFromVector3(v: {
38
+ readonly x: number;
39
+ readonly y: number;
40
+ readonly z: number;
41
+ }, order?: EulerOrder): this;
42
+ reorder(newOrder: EulerOrder): this;
43
+ equals(euler: EulerLike): boolean;
44
+ fromArray(array: ArrayLike<number | string | undefined>): this;
45
+ toArray(array?: Array<number | string>, offset?: number): Array<number | string>;
46
+ _onChange(callback: () => void): this;
47
+ _onChangeCallback(): void;
48
+ [Symbol.iterator](): Generator<number | string, void, undefined>;
49
+ }
50
+ //# sourceMappingURL=Euler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Euler.d.ts","sourceRoot":"","sources":["../../../../../packages/math/src/three/Euler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,IAAI,cAAc,EAAE,MAAM,aAAa,CAAC;AAEtD,OAAO,EAAc,KAAK,SAAS,EAAE,KAAK,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEnG,YAAY,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAElD,UAAU,YAAY;IACpB,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;CACtC;AAED;;;;GAIG;AACH,qBAAa,KAAK;IAChB,MAAM,CAAC,aAAa,EAAE,UAAU,CAAS;IAEzC,SAAiB,OAAO,EAAE,IAAI,CAAC;IAE/B,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,UAAU,CAAC;gBAEP,CAAC,SAAI,EAAE,CAAC,SAAI,EAAE,CAAC,SAAI,EAAE,KAAK,GAAE,UAAgC;IAOxE,IAAI,CAAC,IAAI,MAAM,CAEd;IAED,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAGlB;IAED,IAAI,CAAC,IAAI,MAAM,CAEd;IAED,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAGlB;IAED,IAAI,CAAC,IAAI,MAAM,CAEd;IAED,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAGlB;IAED,IAAI,KAAK,IAAI,UAAU,CAEtB;IAED,IAAI,KAAK,CAAC,KAAK,EAAE,UAAU,EAG1B;IAED,0FAA0F;IAC1F,aAAa,CAAC,CAAC,EAAE,SAAS,GAAG,IAAI;IAIjC,uGAAuG;IACvG,WAAW,IAAI,cAAc;IAI7B,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,GAAE,UAAwB,GAAG,IAAI;IAS3E,KAAK,IAAI,IAAI;IAIb,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAS5B,qBAAqB,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,GAAE,UAAwB,EAAE,MAAM,UAAO,GAAG,IAAI;IAmF5F,iBAAiB,CAAC,CAAC,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI;IAKhF,cAAc,CAAC,CAAC,EAAE;QAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,KAAK,GAAE,UAAwB,GAAG,IAAI;IAIxH,OAAO,CAAC,QAAQ,EAAE,UAAU,GAAG,IAAI;IAMnC,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO;IAIjC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,GAAG,IAAI;IAS9D,OAAO,CAAC,KAAK,GAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAM,EAAE,MAAM,SAAI,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;IAQ/E,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAKrC,iBAAiB,IAAI,IAAI;IAExB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC;CAMlE"}
@@ -0,0 +1,210 @@
1
+ import { clamp } from "../MathUtils.js";
2
+ import { Euler as ImmutableEuler } from "../Euler.js";
3
+ import { Matrix4 } from "./Matrix4.js";
4
+ import { Quaternion } from "./Quaternion.js";
5
+ /**
6
+ * Mutable three.js-compatible Euler angles. Every modifier mutates `this` and
7
+ * returns `this`, exactly like three r185 `Euler`, including the `_onChange`
8
+ * callback that owners (rotation vs quaternion) use to stay in sync.
9
+ */
10
+ export class Euler {
11
+ static DEFAULT_ORDER = "XYZ";
12
+ _x;
13
+ _y;
14
+ _z;
15
+ _order;
16
+ constructor(x = 0, y = 0, z = 0, order = Euler.DEFAULT_ORDER) {
17
+ this._x = x;
18
+ this._y = y;
19
+ this._z = z;
20
+ this._order = order;
21
+ }
22
+ get x() {
23
+ return this._x;
24
+ }
25
+ set x(value) {
26
+ this._x = value;
27
+ this._onChangeCallback();
28
+ }
29
+ get y() {
30
+ return this._y;
31
+ }
32
+ set y(value) {
33
+ this._y = value;
34
+ this._onChangeCallback();
35
+ }
36
+ get z() {
37
+ return this._z;
38
+ }
39
+ set z(value) {
40
+ this._z = value;
41
+ this._onChangeCallback();
42
+ }
43
+ get order() {
44
+ return this._order;
45
+ }
46
+ set order(value) {
47
+ this._order = value;
48
+ this._onChangeCallback();
49
+ }
50
+ /** Copy an immutable `@aura3d/math` Euler (or any `{x, y, z, order}`) into this Euler. */
51
+ fromImmutable(e) {
52
+ return this.copy(e);
53
+ }
54
+ /** Snapshot as an immutable `@aura3d/math` Euler (throws on non-finite angles or an unknown order). */
55
+ toImmutable() {
56
+ return new ImmutableEuler(this._x, this._y, this._z, this._order);
57
+ }
58
+ set(x, y, z, order = this._order) {
59
+ this._x = x;
60
+ this._y = y;
61
+ this._z = z;
62
+ this._order = order;
63
+ this._onChangeCallback();
64
+ return this;
65
+ }
66
+ clone() {
67
+ return new this.constructor(this._x, this._y, this._z, this._order);
68
+ }
69
+ copy(euler) {
70
+ this._x = euler.x;
71
+ this._y = euler.y;
72
+ this._z = euler.z;
73
+ this._order = euler.order;
74
+ this._onChangeCallback();
75
+ return this;
76
+ }
77
+ setFromRotationMatrix(m, order = this._order, update = true) {
78
+ // assumes the upper 3x3 of m is a pure rotation matrix (i.e, unscaled)
79
+ const te = m.elements;
80
+ const m11 = te[0];
81
+ const m12 = te[4];
82
+ const m13 = te[8];
83
+ const m21 = te[1];
84
+ const m22 = te[5];
85
+ const m23 = te[9];
86
+ const m31 = te[2];
87
+ const m32 = te[6];
88
+ const m33 = te[10];
89
+ switch (order) {
90
+ case "XYZ":
91
+ this._y = Math.asin(clamp(m13, -1, 1));
92
+ if (Math.abs(m13) < 0.9999999) {
93
+ this._x = Math.atan2(-m23, m33);
94
+ this._z = Math.atan2(-m12, m11);
95
+ }
96
+ else {
97
+ this._x = Math.atan2(m32, m22);
98
+ this._z = 0;
99
+ }
100
+ break;
101
+ case "YXZ":
102
+ this._x = Math.asin(-clamp(m23, -1, 1));
103
+ if (Math.abs(m23) < 0.9999999) {
104
+ this._y = Math.atan2(m13, m33);
105
+ this._z = Math.atan2(m21, m22);
106
+ }
107
+ else {
108
+ this._y = Math.atan2(-m31, m11);
109
+ this._z = 0;
110
+ }
111
+ break;
112
+ case "ZXY":
113
+ this._x = Math.asin(clamp(m32, -1, 1));
114
+ if (Math.abs(m32) < 0.9999999) {
115
+ this._y = Math.atan2(-m31, m33);
116
+ this._z = Math.atan2(-m12, m22);
117
+ }
118
+ else {
119
+ this._y = 0;
120
+ this._z = Math.atan2(m21, m11);
121
+ }
122
+ break;
123
+ case "ZYX":
124
+ this._y = Math.asin(-clamp(m31, -1, 1));
125
+ if (Math.abs(m31) < 0.9999999) {
126
+ this._x = Math.atan2(m32, m33);
127
+ this._z = Math.atan2(m21, m11);
128
+ }
129
+ else {
130
+ this._x = 0;
131
+ this._z = Math.atan2(-m12, m22);
132
+ }
133
+ break;
134
+ case "YZX":
135
+ this._z = Math.asin(clamp(m21, -1, 1));
136
+ if (Math.abs(m21) < 0.9999999) {
137
+ this._x = Math.atan2(-m23, m22);
138
+ this._y = Math.atan2(-m31, m11);
139
+ }
140
+ else {
141
+ this._x = 0;
142
+ this._y = Math.atan2(m13, m33);
143
+ }
144
+ break;
145
+ case "XZY":
146
+ this._z = Math.asin(-clamp(m12, -1, 1));
147
+ if (Math.abs(m12) < 0.9999999) {
148
+ this._x = Math.atan2(m32, m22);
149
+ this._y = Math.atan2(m13, m11);
150
+ }
151
+ else {
152
+ this._x = Math.atan2(-m23, m33);
153
+ this._y = 0;
154
+ }
155
+ break;
156
+ default:
157
+ console.warn(`THREE.Euler: .setFromRotationMatrix() encountered an unknown order: ${String(order)}`);
158
+ }
159
+ this._order = order;
160
+ if (update === true)
161
+ this._onChangeCallback();
162
+ return this;
163
+ }
164
+ setFromQuaternion(q, order, update) {
165
+ _matrix.makeRotationFromQuaternion(q);
166
+ return this.setFromRotationMatrix(_matrix, order, update);
167
+ }
168
+ setFromVector3(v, order = this._order) {
169
+ return this.set(v.x, v.y, v.z, order);
170
+ }
171
+ reorder(newOrder) {
172
+ // WARNING: this discards revolution information -bhouston
173
+ _quaternion.setFromEuler(this);
174
+ return this.setFromQuaternion(_quaternion, newOrder);
175
+ }
176
+ equals(euler) {
177
+ return euler.x === this._x && euler.y === this._y && euler.z === this._z && euler.order === this._order;
178
+ }
179
+ fromArray(array) {
180
+ this._x = array[0];
181
+ this._y = array[1];
182
+ this._z = array[2];
183
+ if (array[3] !== undefined)
184
+ this._order = array[3];
185
+ this._onChangeCallback();
186
+ return this;
187
+ }
188
+ toArray(array = [], offset = 0) {
189
+ array[offset] = this._x;
190
+ array[offset + 1] = this._y;
191
+ array[offset + 2] = this._z;
192
+ array[offset + 3] = this._order;
193
+ return array;
194
+ }
195
+ _onChange(callback) {
196
+ this._onChangeCallback = callback;
197
+ return this;
198
+ }
199
+ _onChangeCallback() { }
200
+ *[Symbol.iterator]() {
201
+ yield this._x;
202
+ yield this._y;
203
+ yield this._z;
204
+ yield this._order;
205
+ }
206
+ }
207
+ Euler.prototype.isEuler = true;
208
+ const _matrix = new Matrix4();
209
+ const _quaternion = new Quaternion();
210
+ //# sourceMappingURL=Euler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Euler.js","sourceRoot":"","sources":["../../../../../packages/math/src/three/Euler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ import { Frustum as ImmutableFrustum } from "../Frustum.js";
2
+ import { Plane } from "./Plane.js";
3
+ import { Sphere } from "./Sphere.js";
4
+ import { Vector2 } from "./Vector2.js";
5
+ import type { Vector3Like } from "./Vector3.js";
6
+ import type { Box3Like } from "./Box3.js";
7
+ import type { PlaneLike } from "./Plane.js";
8
+ /** Anything with six `planes`, including the immutable `@aura3d/math` Frustum. */
9
+ export interface FrustumLike {
10
+ readonly planes: readonly PlaneLike[];
11
+ }
12
+ interface MeshLike {
13
+ readonly matrixWorld: {
14
+ readonly elements: ArrayLike<number>;
15
+ getMaxScaleOnAxis(): number;
16
+ };
17
+ readonly boundingSphere?: Sphere | null;
18
+ computeBoundingSphere?(): void;
19
+ readonly geometry?: {
20
+ boundingSphere: Sphere | null;
21
+ computeBoundingSphere(): void;
22
+ };
23
+ }
24
+ interface SpriteLike {
25
+ readonly center: Vector2;
26
+ readonly matrixWorld: {
27
+ readonly elements: ArrayLike<number>;
28
+ getMaxScaleOnAxis(): number;
29
+ };
30
+ }
31
+ /**
32
+ * Mutable three.js-compatible view frustum. Plane order matches three:
33
+ * `[right, left, bottom, top, far, near]`. Every modifier mutates `this` and
34
+ * returns `this`, exactly like three r185 `Frustum`.
35
+ */
36
+ export declare class Frustum {
37
+ planes: [Plane, Plane, Plane, Plane, Plane, Plane];
38
+ constructor(p0?: Plane, p1?: Plane, p2?: Plane, p3?: Plane, p4?: Plane, p5?: Plane);
39
+ /** Copy an immutable `@aura3d/math` Frustum (or any six-plane source) into this frustum. */
40
+ fromImmutable(frustum: FrustumLike): this;
41
+ /** Snapshot as an immutable `@aura3d/math` Frustum (its planes are normalized on construction). */
42
+ toImmutable(): ImmutableFrustum;
43
+ set(p0: PlaneLike, p1: PlaneLike, p2: PlaneLike, p3: PlaneLike, p4: PlaneLike, p5: PlaneLike): this;
44
+ copy(frustum: FrustumLike): this;
45
+ setFromProjectionMatrix(m: {
46
+ readonly elements: ArrayLike<number>;
47
+ }, coordinateSystem?: number, reversedDepth?: boolean): this;
48
+ intersectsObject(object: MeshLike): boolean;
49
+ intersectsSprite(sprite: SpriteLike): boolean;
50
+ intersectsSphere(sphere: {
51
+ readonly center: Vector3Like;
52
+ readonly radius: number;
53
+ }): boolean;
54
+ intersectsBox(box: Box3Like): boolean;
55
+ containsPoint(point: Vector3Like): boolean;
56
+ clone(): this;
57
+ }
58
+ export {};
59
+ //# sourceMappingURL=Frustum.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Frustum.d.ts","sourceRoot":"","sources":["../../../../../packages/math/src/three/Frustum.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAE5D,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,kFAAkF;AAClF,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,SAAS,SAAS,EAAE,CAAC;CACvC;AAED,UAAU,QAAQ;IAChB,QAAQ,CAAC,WAAW,EAAE;QAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;QAAC,iBAAiB,IAAI,MAAM,CAAA;KAAE,CAAC;IAC5F,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,qBAAqB,CAAC,IAAI,IAAI,CAAC;IAC/B,QAAQ,CAAC,QAAQ,CAAC,EAAE;QAAE,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,qBAAqB,IAAI,IAAI,CAAA;KAAE,CAAC;CACtF;AAED,UAAU,UAAU;IAClB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE;QAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;QAAC,iBAAiB,IAAI,MAAM,CAAA;KAAE,CAAC;CAC7F;AAMD;;;;GAIG;AACH,qBAAa,OAAO;IAClB,MAAM,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;gBAGjD,EAAE,GAAE,KAAmB,EACvB,EAAE,GAAE,KAAmB,EACvB,EAAE,GAAE,KAAmB,EACvB,EAAE,GAAE,KAAmB,EACvB,EAAE,GAAE,KAAmB,EACvB,EAAE,GAAE,KAAmB;IAKzB,4FAA4F;IAC5F,aAAa,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAIzC,mGAAmG;IACnG,WAAW,IAAI,gBAAgB;IAQ/B,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,GAAG,IAAI;IAanG,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAUhC,uBAAuB,CACrB,CAAC,EAAE;QAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,MAAM,CAAC,CAAA;KAAE,EAC3C,gBAAgB,GAAE,MAA8B,EAChD,aAAa,UAAQ,GACpB,IAAI;IA+BP,gBAAgB,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO;IAgB3C,gBAAgB,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO;IAS7C,gBAAgB,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO;IAgB5F,aAAa,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO;IAoBrC,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO;IAY1C,KAAK,IAAI,IAAI;CAGd"}
@@ -0,0 +1,135 @@
1
+ import { Frustum as ImmutableFrustum } from "../Frustum.js";
2
+ import { WebGLCoordinateSystem, WebGPUCoordinateSystem } from "./Matrix4.js";
3
+ import { Plane } from "./Plane.js";
4
+ import { Sphere } from "./Sphere.js";
5
+ import { Vector2 } from "./Vector2.js";
6
+ import { Vector3 } from "./Vector3.js";
7
+ const _sphere = new Sphere();
8
+ const _defaultSpriteCenter = new Vector2(0.5, 0.5);
9
+ const _vector = new Vector3();
10
+ /**
11
+ * Mutable three.js-compatible view frustum. Plane order matches three:
12
+ * `[right, left, bottom, top, far, near]`. Every modifier mutates `this` and
13
+ * returns `this`, exactly like three r185 `Frustum`.
14
+ */
15
+ export class Frustum {
16
+ planes;
17
+ constructor(p0 = new Plane(), p1 = new Plane(), p2 = new Plane(), p3 = new Plane(), p4 = new Plane(), p5 = new Plane()) {
18
+ this.planes = [p0, p1, p2, p3, p4, p5];
19
+ }
20
+ /** Copy an immutable `@aura3d/math` Frustum (or any six-plane source) into this frustum. */
21
+ fromImmutable(frustum) {
22
+ return this.copy(frustum);
23
+ }
24
+ /** Snapshot as an immutable `@aura3d/math` Frustum (its planes are normalized on construction). */
25
+ toImmutable() {
26
+ const [p0, p1, p2, p3, p4, p5] = this.planes.map((plane) => plane.toImmutable());
27
+ return new ImmutableFrustum([p0, p1, p2, p3, p4, p5]);
28
+ }
29
+ set(p0, p1, p2, p3, p4, p5) {
30
+ const planes = this.planes;
31
+ planes[0].copy(p0);
32
+ planes[1].copy(p1);
33
+ planes[2].copy(p2);
34
+ planes[3].copy(p3);
35
+ planes[4].copy(p4);
36
+ planes[5].copy(p5);
37
+ return this;
38
+ }
39
+ copy(frustum) {
40
+ const planes = this.planes;
41
+ for (let i = 0; i < 6; i += 1) {
42
+ planes[i].copy(frustum.planes[i]);
43
+ }
44
+ return this;
45
+ }
46
+ setFromProjectionMatrix(m, coordinateSystem = WebGLCoordinateSystem, reversedDepth = false) {
47
+ const planes = this.planes;
48
+ const me = m.elements;
49
+ const me0 = me[0], me1 = me[1], me2 = me[2], me3 = me[3];
50
+ const me4 = me[4], me5 = me[5], me6 = me[6], me7 = me[7];
51
+ const me8 = me[8], me9 = me[9], me10 = me[10], me11 = me[11];
52
+ const me12 = me[12], me13 = me[13], me14 = me[14], me15 = me[15];
53
+ planes[0].setComponents(me3 - me0, me7 - me4, me11 - me8, me15 - me12).normalize();
54
+ planes[1].setComponents(me3 + me0, me7 + me4, me11 + me8, me15 + me12).normalize();
55
+ planes[2].setComponents(me3 + me1, me7 + me5, me11 + me9, me15 + me13).normalize();
56
+ planes[3].setComponents(me3 - me1, me7 - me5, me11 - me9, me15 - me13).normalize();
57
+ if (reversedDepth) {
58
+ planes[4].setComponents(me2, me6, me10, me14).normalize(); // far
59
+ planes[5].setComponents(me3 - me2, me7 - me6, me11 - me10, me15 - me14).normalize(); // near
60
+ }
61
+ else {
62
+ planes[4].setComponents(me3 - me2, me7 - me6, me11 - me10, me15 - me14).normalize(); // far
63
+ if (coordinateSystem === WebGLCoordinateSystem) {
64
+ planes[5].setComponents(me3 + me2, me7 + me6, me11 + me10, me15 + me14).normalize(); // near
65
+ }
66
+ else if (coordinateSystem === WebGPUCoordinateSystem) {
67
+ planes[5].setComponents(me2, me6, me10, me14).normalize(); // near
68
+ }
69
+ else {
70
+ throw new Error(`THREE.Frustum.setFromProjectionMatrix(): Invalid coordinate system: ${coordinateSystem}`);
71
+ }
72
+ }
73
+ return this;
74
+ }
75
+ intersectsObject(object) {
76
+ if (object.boundingSphere !== undefined) {
77
+ if (object.boundingSphere === null)
78
+ object.computeBoundingSphere?.();
79
+ _sphere.copy(object.boundingSphere).applyMatrix4(object.matrixWorld);
80
+ }
81
+ else {
82
+ const geometry = object.geometry;
83
+ if (geometry.boundingSphere === null)
84
+ geometry.computeBoundingSphere();
85
+ _sphere.copy(geometry.boundingSphere).applyMatrix4(object.matrixWorld);
86
+ }
87
+ return this.intersectsSphere(_sphere);
88
+ }
89
+ intersectsSprite(sprite) {
90
+ _sphere.center.set(0, 0, 0);
91
+ const offset = _defaultSpriteCenter.distanceTo(sprite.center);
92
+ _sphere.radius = 0.7071067811865476 + offset;
93
+ _sphere.applyMatrix4(sprite.matrixWorld);
94
+ return this.intersectsSphere(_sphere);
95
+ }
96
+ intersectsSphere(sphere) {
97
+ const planes = this.planes;
98
+ const center = sphere.center;
99
+ const negRadius = -sphere.radius;
100
+ for (let i = 0; i < 6; i += 1) {
101
+ const distance = planes[i].distanceToPoint(center);
102
+ if (distance < negRadius) {
103
+ return false;
104
+ }
105
+ }
106
+ return true;
107
+ }
108
+ intersectsBox(box) {
109
+ const planes = this.planes;
110
+ for (let i = 0; i < 6; i += 1) {
111
+ const plane = planes[i];
112
+ // corner at max distance
113
+ _vector.x = plane.normal.x > 0 ? box.max.x : box.min.x;
114
+ _vector.y = plane.normal.y > 0 ? box.max.y : box.min.y;
115
+ _vector.z = plane.normal.z > 0 ? box.max.z : box.min.z;
116
+ if (plane.distanceToPoint(_vector) < 0) {
117
+ return false;
118
+ }
119
+ }
120
+ return true;
121
+ }
122
+ containsPoint(point) {
123
+ const planes = this.planes;
124
+ for (let i = 0; i < 6; i += 1) {
125
+ if (planes[i].distanceToPoint(point) < 0) {
126
+ return false;
127
+ }
128
+ }
129
+ return true;
130
+ }
131
+ clone() {
132
+ return new this.constructor().copy(this);
133
+ }
134
+ }
135
+ //# sourceMappingURL=Frustum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Frustum.js","sourceRoot":"","sources":["../../../../../packages/math/src/three/Frustum.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ import { Matrix3 as ImmutableMatrix3 } from "../Matrix3.js";
2
+ interface ElementsLike {
3
+ readonly elements: ArrayLike<number>;
4
+ }
5
+ interface Vec2Like {
6
+ readonly x: number;
7
+ readonly y: number;
8
+ }
9
+ interface Vec3ColumnTarget {
10
+ setFromMatrix3Column(m: Matrix3, index: number): unknown;
11
+ }
12
+ /**
13
+ * Mutable three.js-compatible 3x3 matrix, column-major `elements`, with the
14
+ * `set(n11, n12, ...)` row-major argument order three uses. Every modifier
15
+ * mutates `this` and returns `this`, exactly like three r185 `Matrix3`
16
+ * (including the deprecated `scale` / `rotate` / `translate` premultiply forms).
17
+ */
18
+ export declare class Matrix3 {
19
+ readonly isMatrix3: true;
20
+ elements: number[];
21
+ constructor(n11?: number, n12?: number, n13?: number, n21?: number, n22?: number, n23?: number, n31?: number, n32?: number, n33?: number);
22
+ /** Copy the elements of an immutable `@aura3d/math` Matrix3 (or any column-major 9-element source). */
23
+ fromImmutable(m: ElementsLike): this;
24
+ /** Snapshot as an immutable `@aura3d/math` Matrix3. */
25
+ toImmutable(): ImmutableMatrix3;
26
+ set(n11: number, n12: number, n13: number, n21: number, n22: number, n23: number, n31: number, n32: number, n33: number): this;
27
+ identity(): this;
28
+ copy(m: ElementsLike): this;
29
+ extractBasis(xAxis: Vec3ColumnTarget, yAxis: Vec3ColumnTarget, zAxis: Vec3ColumnTarget): this;
30
+ setFromMatrix4(m: ElementsLike): this;
31
+ multiply(m: ElementsLike): this;
32
+ premultiply(m: ElementsLike): this;
33
+ multiplyMatrices(a: ElementsLike, b: ElementsLike): this;
34
+ multiplyScalar(s: number): this;
35
+ determinant(): number;
36
+ invert(): this;
37
+ transpose(): this;
38
+ getNormalMatrix(matrix4: ElementsLike): this;
39
+ transposeIntoArray(r: number[]): this;
40
+ setUvTransform(tx: number, ty: number, sx: number, sy: number, rotation: number, cx: number, cy: number): this;
41
+ /** @deprecated three r185: use `makeScale()`. Kept with r185 semantics (premultiplies). */
42
+ scale(sx: number, sy: number): this;
43
+ /** @deprecated three r185: use `makeRotation()`. Kept with r185 semantics (premultiplies). */
44
+ rotate(theta: number): this;
45
+ /** @deprecated three r185: use `makeTranslation()`. Kept with r185 semantics (premultiplies). */
46
+ translate(tx: number, ty: number): this;
47
+ makeTranslation(x: number | Vec2Like, y?: number): this;
48
+ makeRotation(theta: number): this;
49
+ makeScale(x: number, y: number): this;
50
+ equals(matrix: ElementsLike): boolean;
51
+ fromArray(array: ArrayLike<number>, offset?: number): this;
52
+ toArray(array?: number[], offset?: number): number[];
53
+ clone(): this;
54
+ }
55
+ export {};
56
+ //# sourceMappingURL=Matrix3.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Matrix3.d.ts","sourceRoot":"","sources":["../../../../../packages/math/src/three/Matrix3.ts"],"names":[],"mappings":"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"}