@predy-js/math 0.1.67
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/README.md +28 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +970 -0
- package/dist/index.mjs +913 -0
- package/dist/mat3.d.ts +9 -0
- package/dist/mat4.d.ts +16 -0
- package/dist/quat.d.ts +7 -0
- package/dist/vec.d.ts +19 -0
- package/dist/vec3.d.ts +13 -0
- package/package.json +64 -0
package/dist/mat3.d.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { mat3, vec2, mat4, vec3 } from '@predy-js/render-interface';
|
|
2
|
+
export declare function mat3create(): mat3;
|
|
3
|
+
export declare function mat3MulMat3(out: mat3 | number[], a: mat3, b: mat3): mat3;
|
|
4
|
+
export declare function mat3FromRotationZ(out: mat3 | number[], rad: number): mat3;
|
|
5
|
+
export declare function mat3FromRotation(ret: mat3 | number[], rotation: vec3): mat3;
|
|
6
|
+
export declare function mat3NormalFromMat4(out: mat3 | number[], a: mat4): mat3;
|
|
7
|
+
export declare function mat3Translate(out: mat3, a: mat3, v: vec2): mat3;
|
|
8
|
+
export declare function mat3Rotate(out: mat3, a: mat3, rad: number): mat3;
|
|
9
|
+
export declare function mat3Scale(out: mat3, a: mat3, v: vec2): mat3;
|
package/dist/mat4.d.ts
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { mat4 } from '@predy-js/render-interface';
|
|
2
|
+
import type { vec3, vec4 } from '@predy-js/render-interface';
|
|
3
|
+
export declare function mat4create(): mat4;
|
|
4
|
+
export declare function mat4fromRotationTranslationScale(out: mat4 | number[], q: vec4, v: vec3, s: vec3): mat4;
|
|
5
|
+
export declare function invertMat4(out: mat4 | number[], a: mat4): mat4;
|
|
6
|
+
export declare function mat4Determinate(a: mat4): number;
|
|
7
|
+
export declare function getMat4TR(mat4: mat4 | number[], translate?: vec3, quat?: vec4, scaling?: vec3): void;
|
|
8
|
+
export declare function getMat4TRS(mat4: mat4 | number[], translate?: vec3, quat?: vec4, scaling?: vec3): void;
|
|
9
|
+
export declare function mat4multiply(out: mat4 | number[], a: mat4, b: mat4): mat4;
|
|
10
|
+
export declare function mat4Clone(out: mat4 | number[], from: mat4): mat4;
|
|
11
|
+
export declare function mat4invert(out: mat4 | number[], a: mat4): mat4;
|
|
12
|
+
export declare function mat4translate(out: mat4, a: mat4, v: vec3): mat4;
|
|
13
|
+
export declare function mat4scale(out: mat4, a: mat4, v: vec3): mat4;
|
|
14
|
+
export declare function mat4rotate(out: mat4, a: mat4, rad: number, axis: vec3): mat4;
|
|
15
|
+
export declare function mat4perspective(out: number[] | mat4, fovy: number, aspect: number, near: number, far: number, reverse?: boolean): mat4;
|
|
16
|
+
export declare function mat4identity(out: mat4): void;
|
package/dist/quat.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { mat3, vec4 } from '@predy-js/render-interface';
|
|
2
|
+
export declare function quatCreate(): vec4;
|
|
3
|
+
export declare function quatMultiply(out: vec4, a: vec4, b: vec4): vec4;
|
|
4
|
+
export declare function mat3FromQuat(out: mat3 | number[], quat: vec4): mat3;
|
|
5
|
+
export declare function quatEquals(q1: vec4, q2: vec4): boolean;
|
|
6
|
+
export declare function quatFromRotation(out: vec4, x: number, y: number, z: number): vec4;
|
|
7
|
+
export declare function quatStar(out: vec4, quat: vec4): vec4;
|
package/dist/vec.d.ts
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { vec3, vec4, vec2, mat4, mat2, mat3 } from '@predy-js/render-interface';
|
|
2
|
+
export type vec = number[];
|
|
3
|
+
export { vec2, vec4, vec3, mat2, mat3, mat4 };
|
|
4
|
+
export declare function vecAdd<T extends vec | vec3 | vec4 | vec2>(out: T | number[], a: T, b: T): T;
|
|
5
|
+
export declare function vecFill<T extends vec | vec3 | vec4 | vec2>(out: T | number[], number: number): T;
|
|
6
|
+
export declare function vecAddCombine<T extends vec | vec3 | vec4 | vec2>(out: T | number[], a: T, b: T): T;
|
|
7
|
+
export declare function vecAssign<T extends vec | vec3 | vec4 | vec2>(out: T | number[], a: T, count: number, start?: number): T;
|
|
8
|
+
export declare function vecMulCombine<T extends vec | vec3 | vec4 | vec2>(out: T | number[], a: T, b?: T): T;
|
|
9
|
+
export declare function vecMinus<T extends vec | vec3 | vec4 | vec2>(out: T | number[], v0: T, v1: T): T;
|
|
10
|
+
export declare function vecSquareDistance(v0: vec, v1: vec): number;
|
|
11
|
+
export declare const NumberEpsilon: number;
|
|
12
|
+
export declare function vecNormalize<T extends vec | vec2 | vec3 | vec4>(out: T | number[], a?: T | number[]): T;
|
|
13
|
+
export declare function vecMulScalar<T extends vec | vec3 | vec4 | vec2>(out: T | number[], vec: T, a: number): T;
|
|
14
|
+
type vecDotRes<T> = T extends vec ? number : vec;
|
|
15
|
+
export declare function vecDot<T extends number | vec = vec>(out: vec, a: vec, b?: T): vecDotRes<T>;
|
|
16
|
+
export declare function vec2TransformByMat3(out: vec2, a: vec2, m: mat3): vec2;
|
|
17
|
+
export declare function isZeroVec(vec: vec): boolean;
|
|
18
|
+
export declare function rotateVec2(out: vec2 | number[], vec2: vec2, angleInRad: number): vec2;
|
|
19
|
+
export declare function clamp(v: number, min: number, max: number): number;
|
package/dist/vec3.d.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { vec3, mat4, mat3 } from '@predy-js/render-interface';
|
|
2
|
+
import type { vec4 } from '@predy-js/render-interface';
|
|
3
|
+
export declare function vec3Create(v?: vec3): vec3;
|
|
4
|
+
export declare function vec3AddVec3(out: vec3, a: vec3, b: vec3): vec3;
|
|
5
|
+
export declare function vec3Cross(out: vec3, a: vec3, b: vec3): vec3;
|
|
6
|
+
export declare function vec3MulMat4(out: vec3, vec3: vec3, mat4: mat4): vec3;
|
|
7
|
+
export declare function vec3TranslateByMat4(out: vec3, vec3: vec3, matrix4: mat4): vec3;
|
|
8
|
+
export declare function vec3RotateByMat4(out: vec3, a: vec3, m: mat4): vec3;
|
|
9
|
+
export declare function vec3MulMat3(out: vec3, a: vec3, m: mat3): vec3;
|
|
10
|
+
export declare function ensureVec3(vec: any, defaultVec?: vec3): vec3;
|
|
11
|
+
export declare function vec3MulNum(out: vec3, v3: vec3, mul: number): vec3;
|
|
12
|
+
export declare function rotationFromMat3(out: vec3, mat3: mat3): vec3;
|
|
13
|
+
export declare function vec3RotateByQuat(out: vec3, a: vec3, quat: vec4): vec3;
|
package/package.json
ADDED
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@predy-js/math",
|
|
3
|
+
"version": "0.1.67",
|
|
4
|
+
"description": "Mars JSON Specification",
|
|
5
|
+
"module": "./dist/index.mjs",
|
|
6
|
+
"main": "./dist/index.js",
|
|
7
|
+
"types": "./dist/index.d.ts",
|
|
8
|
+
"files": [
|
|
9
|
+
"dist"
|
|
10
|
+
],
|
|
11
|
+
"exports": {
|
|
12
|
+
".": {
|
|
13
|
+
"import": "./dist/index.mjs",
|
|
14
|
+
"require": "./dist/index.js",
|
|
15
|
+
"types": "./dist/index.d.ts"
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
"scripts": {
|
|
19
|
+
"prebuild": "npm run clean:all",
|
|
20
|
+
"build": "npm run build:dist",
|
|
21
|
+
"build:dist": "rollup -c",
|
|
22
|
+
"lint": "eslint ./src --ext .ts",
|
|
23
|
+
"lint:fix": "eslint ./src --fix --quiet --ext .ts",
|
|
24
|
+
"check:ts": "tsc -b tsconfig.check.json",
|
|
25
|
+
"clean:all": "npm run clean:dist",
|
|
26
|
+
"clean:dist": "rimraf dist/**",
|
|
27
|
+
"test": "rollup -c rollup.config.js --watch --test",
|
|
28
|
+
"prepublishOnly": "npm run build"
|
|
29
|
+
},
|
|
30
|
+
"devDependencies": {
|
|
31
|
+
"@predy-js/render-interface": "0.1.67",
|
|
32
|
+
"@commitlint/cli": "^13.2.1",
|
|
33
|
+
"@commitlint/config-conventional": "^13.2.0",
|
|
34
|
+
"@rollup/plugin-commonjs": "^21.0.3",
|
|
35
|
+
"@rollup/plugin-node-resolve": "^13.1.3",
|
|
36
|
+
"@rollup/plugin-typescript": "^8.3.1",
|
|
37
|
+
"@types/chai": "^4.3.0",
|
|
38
|
+
"@types/chai-spies": "^1.0.3",
|
|
39
|
+
"@types/mocha": "^9.0.0",
|
|
40
|
+
"@types/node": "^17.0.21",
|
|
41
|
+
"@typescript-eslint/eslint-plugin": "^5.26.0",
|
|
42
|
+
"@typescript-eslint/parser": "^5.26.0",
|
|
43
|
+
"assert": "^2.0.0",
|
|
44
|
+
"babel-loader": "^8.2.3",
|
|
45
|
+
"chai": "^4.3.6",
|
|
46
|
+
"chai-spies": "^1.0.0",
|
|
47
|
+
"eslint": "^8.13.0",
|
|
48
|
+
"eslint-plugin-promise": "^5.2.0",
|
|
49
|
+
"husky": "^7.0.4",
|
|
50
|
+
"lint-staged": "^11.2.6",
|
|
51
|
+
"rimraf": "^3.0.2",
|
|
52
|
+
"rollup": "^2.70.1",
|
|
53
|
+
"fit-curve": "^0.2.0",
|
|
54
|
+
"bezier-js": "6.1.4",
|
|
55
|
+
"rollup-plugin-livereload": "^2.0.5",
|
|
56
|
+
"rollup-plugin-serve": "^1.1.0",
|
|
57
|
+
"typescript": "^4.6.2"
|
|
58
|
+
},
|
|
59
|
+
"publishConfig": {
|
|
60
|
+
"access": "public"
|
|
61
|
+
},
|
|
62
|
+
"author": "hyj@xiaohongshu.com",
|
|
63
|
+
"license": "ISC"
|
|
64
|
+
}
|