@thi.ng/matrices 2.0.8 → 2.1.2
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/CHANGELOG.md +106 -70
- package/README.md +1 -1
- package/dev/affinetransform.js +579 -0
- package/dev/bezier.js +341 -0
- package/dev/math.js +448 -0
- package/dev/numeric.js +5021 -0
- package/package.json +268 -263
package/CHANGELOG.md
CHANGED
|
@@ -1,133 +1,169 @@
|
|
|
1
1
|
# Change Log
|
|
2
2
|
|
|
3
|
+
- **Last updated**: 2021-11-21T17:09:28Z
|
|
4
|
+
- **Generator**: [thi.ng/monopub](https://thi.ng/monopub)
|
|
5
|
+
|
|
3
6
|
All notable changes to this project will be documented in this file.
|
|
4
|
-
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
7
|
+
See [Conventional Commits](https://conventionalcommits.org/) for commit guidelines.
|
|
8
|
+
|
|
9
|
+
**Note:** Unlisted _patch_ versions only involve non-code or otherwise excluded changes
|
|
10
|
+
and/or version bumps of transitive dependencies.
|
|
11
|
+
|
|
12
|
+
## [2.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/matrices@2.1.0) (2021-11-17)
|
|
13
|
+
|
|
14
|
+
#### 🚀 Features
|
|
15
|
+
|
|
16
|
+
- Using workspaces for local tools ([bf7a404](https://github.com/thi-ng/umbrella/commit/bf7a404))
|
|
17
|
+
Improving the overall build ergonomics
|
|
18
|
+
- introduced a tools workspaces
|
|
19
|
+
- imported it in all needed packages/examples
|
|
20
|
+
- inclusive project root
|
|
21
|
+
|
|
22
|
+
#### ♻️ Refactoring
|
|
23
|
+
|
|
24
|
+
- testrunner to binary ([4ebbbb2](https://github.com/thi-ng/umbrella/commit/4ebbbb2))
|
|
25
|
+
this commit reverts (partly) changes made in:
|
|
26
|
+
ef346d7a8753590dc9094108a3d861a8dbd5dd2c
|
|
27
|
+
overall purpose is better testament ergonomics:
|
|
28
|
+
instead of having to pass NODE_OPTIONS with every invocation
|
|
29
|
+
having a binary to handle this for us.
|
|
5
30
|
|
|
6
|
-
|
|
31
|
+
### [2.0.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/matrices@2.0.1) (2021-10-13)
|
|
7
32
|
|
|
8
|
-
|
|
33
|
+
#### ♻️ Refactoring
|
|
9
34
|
|
|
35
|
+
- update imports in all tests/pkgs ([effd591](https://github.com/thi-ng/umbrella/commit/effd591))
|
|
36
|
+
- update imports in all pkgs ([5fa2b6f](https://github.com/thi-ng/umbrella/commit/5fa2b6f))
|
|
37
|
+
- add .js suffix for all relative imports
|
|
10
38
|
|
|
39
|
+
# [2.0.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/matrices@2.0.0) (2021-10-12)
|
|
11
40
|
|
|
41
|
+
#### 🛑 Breaking changes
|
|
12
42
|
|
|
43
|
+
- major update of ALL pkgs (export maps, ESM only) ([0d1d6ea](https://github.com/thi-ng/umbrella/commit/0d1d6ea))
|
|
44
|
+
- BREAKING CHANGE: discontinue CommonJS & UMD versions
|
|
45
|
+
- only ESM modules will be published from now on
|
|
46
|
+
- CJS obsolete due to ESM support in recent versions of node:
|
|
47
|
+
- i.e. launch NodeJS via:
|
|
48
|
+
- `node --experimental-specifier-resolution=node --experimental-repl-await`
|
|
49
|
+
- in the node REPL use `await import(...)` instead of `require()`
|
|
50
|
+
- UMD obsolete due to widespread browser support for ESM
|
|
51
|
+
Also:
|
|
52
|
+
- normalize/restructure/reorg all package.json files
|
|
53
|
+
- cleanup all build scripts, remove obsolete
|
|
54
|
+
- switch from mocha to [@thi.ng/testament](https://github.com/thi-ng/umbrella/tree/main/packages/testament) for all tests
|
|
13
55
|
|
|
14
|
-
|
|
56
|
+
#### ♻️ Refactoring
|
|
15
57
|
|
|
16
|
-
|
|
58
|
+
- internal restructure/imports ([766afe9](https://github.com/thi-ng/umbrella/commit/766afe9))
|
|
59
|
+
- update imports ([138571a](https://github.com/thi-ng/umbrella/commit/138571a))
|
|
60
|
+
- update all tests in _all_ pkgs ([8b582bc](https://github.com/thi-ng/umbrella/commit/8b582bc))
|
|
61
|
+
- update all to use [@thi.ng/testament](https://github.com/thi-ng/umbrella/tree/main/packages/testament)
|
|
17
62
|
|
|
63
|
+
### [0.6.58](https://github.com/thi-ng/umbrella/tree/@thi.ng/matrices@0.6.58) (2021-04-24)
|
|
18
64
|
|
|
65
|
+
#### ♻️ Refactoring
|
|
19
66
|
|
|
67
|
+
- simplify mat44n() ([60b9e7e](https://github.com/thi-ng/umbrella/commit/60b9e7e))
|
|
20
68
|
|
|
69
|
+
### [0.6.37](https://github.com/thi-ng/umbrella/tree/@thi.ng/matrices@0.6.37) (2020-12-07)
|
|
21
70
|
|
|
22
|
-
|
|
71
|
+
#### ♻️ Refactoring
|
|
23
72
|
|
|
73
|
+
- update type-only imports in various tests/pkgs ([3fd9c24](https://github.com/thi-ng/umbrella/commit/3fd9c24))
|
|
24
74
|
|
|
25
|
-
###
|
|
75
|
+
### [0.6.33](https://github.com/thi-ng/umbrella/tree/@thi.ng/matrices@0.6.33) (2020-09-22)
|
|
26
76
|
|
|
27
|
-
|
|
77
|
+
#### ♻️ Refactoring
|
|
28
78
|
|
|
79
|
+
- add/update types, minor refactor ([096b7c7](https://github.com/thi-ng/umbrella/commit/096b7c7))
|
|
29
80
|
|
|
30
|
-
###
|
|
81
|
+
### [0.6.32](https://github.com/thi-ng/umbrella/tree/@thi.ng/matrices@0.6.32) (2020-09-13)
|
|
31
82
|
|
|
32
|
-
|
|
83
|
+
#### ♻️ Refactoring
|
|
33
84
|
|
|
34
|
-
-
|
|
35
|
-
- CJS obsolete due to ESM support in recent versions of node:
|
|
36
|
-
- i.e. launch NodeJS via:
|
|
37
|
-
- `node --experimental-specifier-resolution=node --experimental-repl-await`
|
|
38
|
-
- in the node REPL use `await import(...)` instead of `require()`
|
|
39
|
-
- UMD obsolete due to widespread browser support for ESM
|
|
85
|
+
- update imports ([4bc3c6d](https://github.com/thi-ng/umbrella/commit/4bc3c6d))
|
|
40
86
|
|
|
41
|
-
|
|
42
|
-
- normalize/restructure/reorg all package.json files
|
|
43
|
-
- cleanup all build scripts, remove obsolete
|
|
44
|
-
- switch from mocha to @thi.ng/testament for all tests
|
|
87
|
+
## [0.6.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/matrices@0.6.0) (2020-02-25)
|
|
45
88
|
|
|
89
|
+
#### 🚀 Features
|
|
46
90
|
|
|
91
|
+
- add project3(), refactor unproject(), mulV344() ([61c36fc](https://github.com/thi-ng/umbrella/commit/61c36fc))
|
|
47
92
|
|
|
93
|
+
#### 🩹 Bug fixes
|
|
48
94
|
|
|
95
|
+
- ([#205](https://github.com/thi-ng/umbrella/issues/205)) fix `w` calc in mulV344() ([46c1061](https://github.com/thi-ng/umbrella/commit/46c1061))
|
|
49
96
|
|
|
97
|
+
#### ♻️ Refactoring
|
|
50
98
|
|
|
51
|
-
|
|
99
|
+
- update imports, internal restruct ([5a8fba7](https://github.com/thi-ng/umbrella/commit/5a8fba7))
|
|
52
100
|
|
|
53
|
-
|
|
101
|
+
### [0.5.3](https://github.com/thi-ng/umbrella/tree/@thi.ng/matrices@0.5.3) (2019-07-31)
|
|
54
102
|
|
|
55
|
-
|
|
103
|
+
#### ♻️ Refactoring
|
|
56
104
|
|
|
57
|
-
|
|
105
|
+
- update mat23to44, mat33to44 ([7dac1e6](https://github.com/thi-ng/umbrella/commit/7dac1e6))
|
|
58
106
|
|
|
59
|
-
|
|
107
|
+
### [0.5.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/matrices@0.5.1) (2019-07-08)
|
|
60
108
|
|
|
61
|
-
|
|
109
|
+
#### 🩹 Bug fixes
|
|
62
110
|
|
|
63
|
-
-
|
|
111
|
+
- mixQ result handling ([cc9ab35](https://github.com/thi-ng/umbrella/commit/cc9ab35))
|
|
64
112
|
|
|
65
|
-
##
|
|
113
|
+
## [0.5.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/matrices@0.5.0) (2019-07-07)
|
|
66
114
|
|
|
67
|
-
|
|
115
|
+
#### 🚀 Features
|
|
68
116
|
|
|
69
|
-
-
|
|
117
|
+
- add matXXn, matXXv, mulXXvm fns ([9359bbc](https://github.com/thi-ng/umbrella/commit/9359bbc))
|
|
118
|
+
- add matXXn & matXXv fns ([7a2ef82](https://github.com/thi-ng/umbrella/commit/7a2ef82))
|
|
119
|
+
- enable TS strict compiler flags (refactor) ([7b1c81a](https://github.com/thi-ng/umbrella/commit/7b1c81a))
|
|
70
120
|
|
|
71
|
-
|
|
121
|
+
#### 🩹 Bug fixes
|
|
72
122
|
|
|
73
|
-
|
|
123
|
+
- update maddN call sites ([#95](https://github.com/thi-ng/umbrella/issues/95)) ([4a985c5](https://github.com/thi-ng/umbrella/commit/4a985c5))
|
|
74
124
|
|
|
75
|
-
|
|
125
|
+
#### ♻️ Refactoring
|
|
76
126
|
|
|
77
|
-
|
|
127
|
+
- add explicit types to workaround typedoc bug ([099a651](https://github.com/thi-ng/umbrella/commit/099a651))
|
|
128
|
+
- address TS strictNullChecks flag ([7ee8361](https://github.com/thi-ng/umbrella/commit/7ee8361))
|
|
129
|
+
- update various fns to unify api (1st arg can be null)
|
|
78
130
|
|
|
79
|
-
|
|
80
|
-
- **matrices:** add matXXn & matXXv fns ([7a2ef82](https://github.com/thi-ng/umbrella/commit/7a2ef82))
|
|
81
|
-
- **matrices:** add matXXn, matXXv, mulXXvm fns ([9359bbc](https://github.com/thi-ng/umbrella/commit/9359bbc))
|
|
82
|
-
- **matrices:** enable TS strict compiler flags (refactor) ([7b1c81a](https://github.com/thi-ng/umbrella/commit/7b1c81a))
|
|
83
|
-
- **matrices:** rename normal44 => normal33, add new normal44 (w/ M44 result) ([d54f746](https://github.com/thi-ng/umbrella/commit/d54f746))
|
|
131
|
+
## [0.4.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/matrices@0.4.0) (2019-05-22)
|
|
84
132
|
|
|
85
|
-
|
|
133
|
+
#### 🚀 Features
|
|
86
134
|
|
|
87
|
-
|
|
135
|
+
- add outerProduct for vec 2/3/4 ([2a9d076](https://github.com/thi-ng/umbrella/commit/2a9d076))
|
|
88
136
|
|
|
89
|
-
|
|
137
|
+
### [0.3.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/matrices@0.3.1) (2019-04-09)
|
|
90
138
|
|
|
91
|
-
|
|
139
|
+
#### 🚀 Features
|
|
92
140
|
|
|
93
|
-
|
|
141
|
+
- rename normal44 => normal33, add new normal44 (w/ M44 result) ([d54f746](https://github.com/thi-ng/umbrella/commit/d54f746))
|
|
94
142
|
|
|
95
|
-
|
|
143
|
+
## [0.3.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/matrices@0.3.0) (2019-04-07)
|
|
96
144
|
|
|
97
|
-
|
|
145
|
+
#### 🚀 Features
|
|
98
146
|
|
|
99
|
-
|
|
147
|
+
- add transform23/44 fns ([dab6839](https://github.com/thi-ng/umbrella/commit/dab6839))
|
|
100
148
|
|
|
101
|
-
|
|
149
|
+
## [0.2.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/matrices@0.2.0) (2019-04-02)
|
|
102
150
|
|
|
103
|
-
|
|
151
|
+
#### 🚀 Features
|
|
104
152
|
|
|
105
|
-
|
|
153
|
+
- add MatXXLike type aliases ([a2ace9f](https://github.com/thi-ng/umbrella/commit/a2ace9f))
|
|
106
154
|
|
|
107
|
-
|
|
155
|
+
### [0.1.6](https://github.com/thi-ng/umbrella/tree/@thi.ng/matrices@0.1.6) (2019-02-19)
|
|
108
156
|
|
|
109
|
-
|
|
157
|
+
#### 🩹 Bug fixes
|
|
110
158
|
|
|
111
|
-
|
|
159
|
+
- Fix identity44 dispatch ([6812b2b](https://github.com/thi-ng/umbrella/commit/6812b2b))
|
|
112
160
|
|
|
113
|
-
|
|
114
|
-
- **matrices:** re-add persp divide in mulV344() ([4c6fe06](https://github.com/thi-ng/umbrella/commit/4c6fe06))
|
|
115
|
-
- **matrices:** scaleWithCenter* (add missing concat() arg) ([4f02491](https://github.com/thi-ng/umbrella/commit/4f02491))
|
|
161
|
+
#### ♻️ Refactoring
|
|
116
162
|
|
|
117
|
-
|
|
163
|
+
- freeze IDENT* consts ([3591899](https://github.com/thi-ng/umbrella/commit/3591899))
|
|
118
164
|
|
|
119
|
-
|
|
120
|
-
- **matrices:** add m22 & m23 matrix converters ([2aceab9](https://github.com/thi-ng/umbrella/commit/2aceab9))
|
|
121
|
-
- **matrices:** add M44 factories ([f1a5cf1](https://github.com/thi-ng/umbrella/commit/f1a5cf1))
|
|
122
|
-
- **matrices:** add more matrix ops ([35babfc](https://github.com/thi-ng/umbrella/commit/35babfc))
|
|
123
|
-
- **matrices:** add more matrix ops, optimize & simplify ([f04e79e](https://github.com/thi-ng/umbrella/commit/f04e79e))
|
|
124
|
-
- **matrices:** add quaternion fns ([b03b919](https://github.com/thi-ng/umbrella/commit/b03b919))
|
|
125
|
-
- **matrices:** add quatToMat33, update readme ([52fb939](https://github.com/thi-ng/umbrella/commit/52fb939))
|
|
126
|
-
- **matrices:** add rotationAroundAxis33/44() ([27f65f9](https://github.com/thi-ng/umbrella/commit/27f65f9))
|
|
127
|
-
- **matrices:** add trace() ([16d56a3](https://github.com/thi-ng/umbrella/commit/16d56a3))
|
|
128
|
-
- **matrices:** add viewport(), project/unproject(), update invert() ([d9e1b2e](https://github.com/thi-ng/umbrella/commit/d9e1b2e))
|
|
129
|
-
- **matrices:** extract matrix ops to own package ([f940672](https://github.com/thi-ng/umbrella/commit/f940672))
|
|
165
|
+
## [0.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/matrices@0.1.0) (2019-01-21)
|
|
130
166
|
|
|
131
|
-
|
|
167
|
+
#### 🚀 Features
|
|
132
168
|
|
|
133
|
-
-
|
|
169
|
+
- add m22 & m23 matrix converters ([2aceab9](https://github.com/thi-ng/umbrella/commit/2aceab9))
|