@lakuna/umath 3.0.1 → 4.0.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.
- package/dist/algorithms/hypergeometricPmf.d.ts.map +1 -1
- package/dist/algorithms/hypergeometricPmf.js +5 -1
- package/dist/algorithms/hypergeometricPmf.js.map +1 -1
- package/dist/algorithms/primeFactorization.d.ts +1 -1
- package/dist/algorithms/primeFactorization.d.ts.map +1 -1
- package/dist/index.d.ts +0 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -1
- package/dist/index.js.map +1 -1
- package/dist/linalg/Matrix4.d.ts +10 -5
- package/dist/linalg/Matrix4.d.ts.map +1 -1
- package/dist/linalg/Matrix4.js +17 -11
- package/dist/linalg/Matrix4.js.map +1 -1
- package/dist/linalg/Quaternion.d.ts +10 -9
- package/dist/linalg/Quaternion.d.ts.map +1 -1
- package/dist/linalg/Quaternion.js +11 -12
- package/dist/linalg/Quaternion.js.map +1 -1
- package/package.json +36 -35
- package/src/algorithms/hypergeometricPmf.ts +2 -0
- package/src/algorithms/primeFactorization.ts +1 -1
- package/src/index.ts +0 -8
- package/src/linalg/Matrix4.ts +31 -12
- package/src/linalg/Quaternion.ts +18 -18
- package/dist/types/AxisAngle.d.ts +0 -22
- package/dist/types/AxisAngle.d.ts.map +0 -1
- package/dist/types/AxisAngle.js +0 -2
- package/dist/types/AxisAngle.js.map +0 -1
- package/dist/types/FieldOfView.d.ts +0 -15
- package/dist/types/FieldOfView.d.ts.map +0 -1
- package/dist/types/FieldOfView.js +0 -2
- package/dist/types/FieldOfView.js.map +0 -1
- package/dist/utility/createAxisAngleLike.d.ts +0 -10
- package/dist/utility/createAxisAngleLike.d.ts.map +0 -1
- package/dist/utility/createAxisAngleLike.js +0 -10
- package/dist/utility/createAxisAngleLike.js.map +0 -1
- package/src/types/AxisAngle.ts +0 -25
- package/src/types/FieldOfView.ts +0 -17
- package/src/utility/createAxisAngleLike.ts +0 -14
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hypergeometricPmf.d.ts","sourceRoot":"","sources":["../../src/algorithms/hypergeometricPmf.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,UAAU,iBAAiB,
|
|
1
|
+
{"version":3,"file":"hypergeometricPmf.d.ts","sourceRoot":"","sources":["../../src/algorithms/hypergeometricPmf.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAExC,CAAC,EAAE,MAAM,EAET,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,GACP,MAAM,CAER"}
|
|
@@ -9,7 +9,11 @@ import combinations from "./combinations.js";
|
|
|
9
9
|
* @see {@link https://en.wikipedia.org/wiki/Probability_mass_function | Probability mass function}
|
|
10
10
|
* @public
|
|
11
11
|
*/
|
|
12
|
-
export default function hypergeometricPmf(
|
|
12
|
+
export default function hypergeometricPmf(
|
|
13
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
14
|
+
N,
|
|
15
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
16
|
+
K, n, k) {
|
|
13
17
|
return (combinations(K, k) * combinations(N - K, n - k)) / combinations(N, n);
|
|
14
18
|
}
|
|
15
19
|
//# sourceMappingURL=hypergeometricPmf.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hypergeometricPmf.js","sourceRoot":"","sources":["../../src/algorithms/hypergeometricPmf.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAE7C;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,UAAU,iBAAiB,
|
|
1
|
+
{"version":3,"file":"hypergeometricPmf.js","sourceRoot":"","sources":["../../src/algorithms/hypergeometricPmf.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAE7C;;;;;;;;;GASG;AACH,MAAM,CAAC,OAAO,UAAU,iBAAiB;AACxC,gEAAgE;AAChE,CAAS;AACT,gEAAgE;AAChE,CAAS,EACT,CAAS,EACT,CAAS;IAET,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC/E,CAAC"}
|
|
@@ -5,5 +5,5 @@
|
|
|
5
5
|
* @see {@link https://en.wikipedia.org/wiki/Integer_factorization | Integer factorization}
|
|
6
6
|
* @public
|
|
7
7
|
*/
|
|
8
|
-
export default function primeFactorization(n: number): number[];
|
|
8
|
+
export default function primeFactorization(n: number): readonly number[];
|
|
9
9
|
//# sourceMappingURL=primeFactorization.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"primeFactorization.d.ts","sourceRoot":"","sources":["../../src/algorithms/primeFactorization.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"primeFactorization.d.ts","sourceRoot":"","sources":["../../src/algorithms/primeFactorization.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,CAAC,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAevE"}
|
package/dist/index.d.ts
CHANGED
|
@@ -26,10 +26,7 @@ export { default as Vector2, type Vector2Like } from "./linalg/Vector2.js";
|
|
|
26
26
|
export { default as Vector3, type Vector3Like } from "./linalg/Vector3.js";
|
|
27
27
|
export { default as Vector4, type Vector4Like } from "./linalg/Vector4.js";
|
|
28
28
|
export type { default as Vector, VectorLike } from "./linalg/Vector.js";
|
|
29
|
-
export type { default as AxisAngle, ReadonlyAxisAngle } from "./types/AxisAngle.js";
|
|
30
|
-
export type { default as FieldOfView } from "./types/FieldOfView.js";
|
|
31
29
|
export { type BigIntLike, default as BigNumber, type BigNumberLike } from "./utility/BigNumber.js";
|
|
32
|
-
export { default as createAxisAngleLike } from "./utility/createAxisAngleLike.js";
|
|
33
30
|
export { default as epsilon } from "./utility/epsilon.js";
|
|
34
31
|
export { default as MagnitudeError } from "./utility/MagnitudeError.js";
|
|
35
32
|
export { default as MatrixSizeError } from "./utility/MatrixSizeError.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,gBAAgB;AAGhB,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAGjE,OAAO,EACN,OAAO,IAAI,cAAc,EACzB,KAAK,kBAAkB,EACvB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC3E,YAAY,EAAE,OAAO,IAAI,MAAM,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,EACN,OAAO,IAAI,UAAU,EACrB,KAAK,cAAc,EACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC/D,YAAY,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC3E,YAAY,EAAE,OAAO,IAAI,MAAM,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGxE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -29,7 +29,6 @@ export { default as Vector3 } from "./linalg/Vector3.js";
|
|
|
29
29
|
export { default as Vector4 } from "./linalg/Vector4.js";
|
|
30
30
|
// Utility
|
|
31
31
|
export { default as BigNumber } from "./utility/BigNumber.js";
|
|
32
|
-
export { default as createAxisAngleLike } from "./utility/createAxisAngleLike.js";
|
|
33
32
|
export { default as epsilon } from "./utility/epsilon.js";
|
|
34
33
|
export { default as MagnitudeError } from "./utility/MagnitudeError.js";
|
|
35
34
|
export { default as MatrixSizeError } from "./utility/MatrixSizeError.js";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,wCAAwC;AACxC,gBAAgB;AAEhB,aAAa;AACb,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEjE,iBAAiB;AACjB,OAAO,EACN,OAAO,IAAI,cAAc,EAEzB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,OAAO,IAAI,OAAO,EAAoB,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,OAAO,EAAoB,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,OAAO,EAAoB,MAAM,qBAAqB,CAAC;AAE3E,OAAO,EACN,OAAO,IAAI,UAAU,EAErB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAoB,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,OAAO,EAAoB,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,OAAO,EAAoB,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,wCAAwC;AACxC,gBAAgB;AAEhB,aAAa;AACb,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEjE,iBAAiB;AACjB,OAAO,EACN,OAAO,IAAI,cAAc,EAEzB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,OAAO,IAAI,OAAO,EAAoB,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,OAAO,EAAoB,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,OAAO,EAAoB,MAAM,qBAAqB,CAAC;AAE3E,OAAO,EACN,OAAO,IAAI,UAAU,EAErB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAoB,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,OAAO,EAAoB,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,OAAO,EAAoB,MAAM,qBAAqB,CAAC;AAG3E,UAAU;AACV,OAAO,EAEN,OAAO,IAAI,SAAS,EAEpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,OAAO,IAAI,mBAAmB,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,8BAA8B,CAAC"}
|
package/dist/linalg/Matrix4.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type FieldOfView from "../types/FieldOfView.js";
|
|
2
1
|
import type { DualQuaternionLike } from "./DualQuaternion.js";
|
|
3
2
|
import type { MatrixLike } from "./Matrix.js";
|
|
4
3
|
import type SquareMatrix from "./SquareMatrix.js";
|
|
@@ -238,7 +237,10 @@ export declare const perspective: <T extends Matrix4Like>(fov: number, aspect: n
|
|
|
238
237
|
export declare const perspectiveGpu: <T extends Matrix4Like>(fov: number, aspect: number, near: number, far: number, out: T) => T;
|
|
239
238
|
/**
|
|
240
239
|
* Create a perspective projection matrix from a field of view. Useful for generating projection matrices to be used with the WebXR API.
|
|
241
|
-
* @param
|
|
240
|
+
* @param left - The angle to the left of the field of view in degrees.
|
|
241
|
+
* @param right - The angle to the right of the field of view in degrees.
|
|
242
|
+
* @param bottom - The angle to the bottom of the field of view in degrees.
|
|
243
|
+
* @param top - The angle to the top of the field of view in degrees.
|
|
242
244
|
* @param near - The near bound of the frustum.
|
|
243
245
|
* @param far - The far bound of the frustum.
|
|
244
246
|
* @param out - The matrix to store the result in.
|
|
@@ -248,7 +250,7 @@ export declare const perspectiveGpu: <T extends Matrix4Like>(fov: number, aspect
|
|
|
248
250
|
* @see {@link https://en.wikipedia.org/wiki/3D_projection | 3D projection}
|
|
249
251
|
* @public
|
|
250
252
|
*/
|
|
251
|
-
export declare const perspectiveFromFieldOfView: <T extends Matrix4Like>(
|
|
253
|
+
export declare const perspectiveFromFieldOfView: <T extends Matrix4Like>(left: number, right: number, bottom: number, top: number, near: number, far: number, out: T) => T;
|
|
252
254
|
/**
|
|
253
255
|
* Generate an orthogonal projection matrix with the given bounds such that the near and far clip planes correspond to a normalized device coordinate Z range of `[-1, 1]` (OpenGL/WebGL).
|
|
254
256
|
* @param left - The left bound of the frustum.
|
|
@@ -764,7 +766,10 @@ export default class Matrix4 extends Float32Array implements Matrix4Like, Square
|
|
|
764
766
|
static perspective(fov: number, aspect: number, near: number, far: number): Matrix4;
|
|
765
767
|
/**
|
|
766
768
|
* Create a perspective projection matrix from a field of view. Useful for generating projection matrices to be used with the WebXR API.
|
|
767
|
-
* @param
|
|
769
|
+
* @param left - The angle to the left of the field of view in degrees.
|
|
770
|
+
* @param right - The angle to the right of the field of view in degrees.
|
|
771
|
+
* @param bottom - The angle to the bottom of the field of view in degrees.
|
|
772
|
+
* @param top - The angle to the top of the field of view in degrees.
|
|
768
773
|
* @param near - The near bound of the frustum.
|
|
769
774
|
* @param far - The far bound of the frustum.
|
|
770
775
|
* @returns The perspective projection matrix.
|
|
@@ -772,7 +777,7 @@ export default class Matrix4 extends Float32Array implements Matrix4Like, Square
|
|
|
772
777
|
* @see {@link https://en.wikipedia.org/wiki/3D_projection | 3D projection}
|
|
773
778
|
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/WebXR_Device_API | WebXR API}
|
|
774
779
|
*/
|
|
775
|
-
static perspectiveFromFieldOfView(
|
|
780
|
+
static perspectiveFromFieldOfView(left: number, right: number, bottom: number, top: number, near: number, far: number): Matrix4;
|
|
776
781
|
/**
|
|
777
782
|
* Create a perspective projection matrix with the given bounds such that the near and far clip planes correspond to a normalized device coordinate Z range of `[0, 1]` (WebGPU/Vulkan/DirectX/Metal).
|
|
778
783
|
* @param fov - The vertical field of view in radians.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Matrix4.d.ts","sourceRoot":"","sources":["../../src/linalg/Matrix4.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Matrix4.d.ts","sourceRoot":"","sources":["../../src/linalg/Matrix4.ts"],"names":[],"mappings":"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"}
|
package/dist/linalg/Matrix4.js
CHANGED
|
@@ -433,7 +433,10 @@ export const perspectiveGpu = (fov, aspect, near, far, out) => {
|
|
|
433
433
|
};
|
|
434
434
|
/**
|
|
435
435
|
* Create a perspective projection matrix from a field of view. Useful for generating projection matrices to be used with the WebXR API.
|
|
436
|
-
* @param
|
|
436
|
+
* @param left - The angle to the left of the field of view in degrees.
|
|
437
|
+
* @param right - The angle to the right of the field of view in degrees.
|
|
438
|
+
* @param bottom - The angle to the bottom of the field of view in degrees.
|
|
439
|
+
* @param top - The angle to the top of the field of view in degrees.
|
|
437
440
|
* @param near - The near bound of the frustum.
|
|
438
441
|
* @param far - The far bound of the frustum.
|
|
439
442
|
* @param out - The matrix to store the result in.
|
|
@@ -443,15 +446,15 @@ export const perspectiveGpu = (fov, aspect, near, far, out) => {
|
|
|
443
446
|
* @see {@link https://en.wikipedia.org/wiki/3D_projection | 3D projection}
|
|
444
447
|
* @public
|
|
445
448
|
*/
|
|
446
|
-
export const perspectiveFromFieldOfView = (
|
|
447
|
-
const
|
|
448
|
-
const
|
|
449
|
-
const
|
|
450
|
-
const
|
|
449
|
+
export const perspectiveFromFieldOfView = (left, right, bottom, top, near, far, out) => {
|
|
450
|
+
const leftTan = Math.tan(degreesToRadians(left));
|
|
451
|
+
const rightTan = Math.tan(degreesToRadians(right));
|
|
452
|
+
const bottomTan = Math.tan(degreesToRadians(bottom));
|
|
453
|
+
const topTan = Math.tan(degreesToRadians(top));
|
|
451
454
|
const xScale = 2 / (leftTan + rightTan);
|
|
452
|
-
const yScale = 2 / (
|
|
455
|
+
const yScale = 2 / (topTan + bottomTan);
|
|
453
456
|
const nf = near - far;
|
|
454
|
-
return fromValues(xScale, 0, 0, 0, 0, yScale, 0, 0, -(((leftTan - rightTan) * xScale) / 2), ((
|
|
457
|
+
return fromValues(xScale, 0, 0, 0, 0, yScale, 0, 0, -(((leftTan - rightTan) * xScale) / 2), ((topTan - bottomTan) * yScale) / 2, far / nf, -1, 0, 0, (far * near) / nf, 0, out);
|
|
455
458
|
};
|
|
456
459
|
/**
|
|
457
460
|
* Generate an orthogonal projection matrix with the given bounds such that the near and far clip planes correspond to a normalized device coordinate Z range of `[-1, 1]` (OpenGL/WebGL).
|
|
@@ -1532,7 +1535,10 @@ export default class Matrix4 extends Float32Array {
|
|
|
1532
1535
|
}
|
|
1533
1536
|
/**
|
|
1534
1537
|
* Create a perspective projection matrix from a field of view. Useful for generating projection matrices to be used with the WebXR API.
|
|
1535
|
-
* @param
|
|
1538
|
+
* @param left - The angle to the left of the field of view in degrees.
|
|
1539
|
+
* @param right - The angle to the right of the field of view in degrees.
|
|
1540
|
+
* @param bottom - The angle to the bottom of the field of view in degrees.
|
|
1541
|
+
* @param top - The angle to the top of the field of view in degrees.
|
|
1536
1542
|
* @param near - The near bound of the frustum.
|
|
1537
1543
|
* @param far - The far bound of the frustum.
|
|
1538
1544
|
* @returns The perspective projection matrix.
|
|
@@ -1540,8 +1546,8 @@ export default class Matrix4 extends Float32Array {
|
|
|
1540
1546
|
* @see {@link https://en.wikipedia.org/wiki/3D_projection | 3D projection}
|
|
1541
1547
|
* @see {@link https://developer.mozilla.org/en-US/docs/Web/API/WebXR_Device_API | WebXR API}
|
|
1542
1548
|
*/
|
|
1543
|
-
static perspectiveFromFieldOfView(
|
|
1544
|
-
return perspectiveFromFieldOfView(
|
|
1549
|
+
static perspectiveFromFieldOfView(left, right, bottom, top, near, far) {
|
|
1550
|
+
return perspectiveFromFieldOfView(left, right, bottom, top, near, far, new Matrix4());
|
|
1545
1551
|
}
|
|
1546
1552
|
/**
|
|
1547
1553
|
* Create a perspective projection matrix with the given bounds such that the near and far clip planes correspond to a normalized device coordinate Z range of `[0, 1]` (WebGPU/Vulkan/DirectX/Metal).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Matrix4.js","sourceRoot":"","sources":["../../src/linalg/Matrix4.ts"],"names":[],"mappings":"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,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAElB,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAClB,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IAElB,OAAO,UAAU,CAChB,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAA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AAC,CAAC,CAAC,CAAC;IACtB,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IACvB,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IACvB,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IACvB,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IACvB,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IACvB,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IAEvB,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IACl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E,CAAC;IACxB,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;IACxB,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;IACxB,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACvB,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;IACxB,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;IACxB,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;IACxB,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAEvB,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAC3C,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAC3C,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAC3C,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAC3C,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAC3C,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAC3C,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAC3C,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAC3C,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAC3C,GAAG,CAAC,C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"}
|
|
1
|
+
{"version":3,"file":"Matrix4.js","sourceRoot":"","sources":["../../src/linalg/Matrix4.ts"],"names":[],"mappings":"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AAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAC7C,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GA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CAAC,CAAC;IACtB,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IACvB,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IACvB,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IACvB,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IACvB,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IACvB,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IAEvB,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAClC,MAAM,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAClC,MAAM,GA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CxB,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;IACxB,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;IACxB,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACvB,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;IACxB,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;IACxB,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;IACxB,MAAM,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAEvB,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAC3C,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAC3C,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAC3C,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAC3C,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAC3C,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAC3C,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAC3C,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAC3C,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAC3C,GAAG,CAAC,CAAC,CAAC,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"}
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
import type AxisAngle from "../types/AxisAngle.js";
|
|
2
|
-
import type { ReadonlyAxisAngle } from "../types/AxisAngle.js";
|
|
3
|
-
import createAxisAngleLike from "../utility/createAxisAngleLike.js";
|
|
4
1
|
import { type Matrix3Like } from "./Matrix3.js";
|
|
5
2
|
import Vector3, { type Vector3Like } from "./Vector3.js";
|
|
6
3
|
/**
|
|
@@ -233,19 +230,20 @@ export declare const identity: <T extends QuaternionLike>(out: T) => T;
|
|
|
233
230
|
/**
|
|
234
231
|
* Calculate the axis and angle that represent a quaternion.
|
|
235
232
|
* @param quaternion - The quaternion.
|
|
236
|
-
* @param out - The axis
|
|
233
|
+
* @param out - The axis to store the result in.
|
|
237
234
|
* @returns The axis and angle.
|
|
238
235
|
* @public
|
|
239
236
|
*/
|
|
240
|
-
export declare const getAxisAngle: <T extends
|
|
237
|
+
export declare const getAxisAngle: <T extends Vector3Like>(quaternion: Readonly<QuaternionLike>, out: T) => [T, number];
|
|
241
238
|
/**
|
|
242
239
|
* Set the axis and angle that represent a quaternion.
|
|
243
|
-
* @param
|
|
240
|
+
* @param axis - The axis.
|
|
241
|
+
* @param angle - The angle.
|
|
244
242
|
* @param out - The quaternion to store the result in.
|
|
245
243
|
* @returns The quaternion.
|
|
246
244
|
* @public
|
|
247
245
|
*/
|
|
248
|
-
export declare const setAxisAngle: <T extends QuaternionLike>(
|
|
246
|
+
export declare const setAxisAngle: <T extends QuaternionLike>(axis: Readonly<Vector3Like>, angle: number, out: T) => T;
|
|
249
247
|
/**
|
|
250
248
|
* Get the angular distance between two unit quaternions.
|
|
251
249
|
* @param a - The first unit quaternion.
|
|
@@ -394,8 +392,11 @@ export default class Quaternion extends Float32Array implements QuaternionLike {
|
|
|
394
392
|
/** The fourth component of this quaternion. */
|
|
395
393
|
3: number;
|
|
396
394
|
/** The axis and angle that represent this quaternion. */
|
|
397
|
-
get axisAngle():
|
|
398
|
-
set axisAngle(
|
|
395
|
+
get axisAngle(): readonly [Readonly<Vector3Like>, number];
|
|
396
|
+
set axisAngle([axis, angle]: readonly [
|
|
397
|
+
Readonly<Vector3Like>,
|
|
398
|
+
number
|
|
399
|
+
]);
|
|
399
400
|
/** Get the magnitude (length) of this quaternion. */
|
|
400
401
|
get magnitude(): number;
|
|
401
402
|
/** Get the squared magnitude (length) of this quaternion. */
|