@thi.ng/geom 3.0.9 → 3.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 +347 -131
- package/README.md +1 -1
- package/dev/arcs.js +20 -0
- package/dev/chull.js +27 -0
- package/fit-into-bounds.js +1 -1
- package/internal/bounds.js +1 -1
- package/internal/collate.js +1 -1
- package/package.json +357 -352
- package/scatter.js +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,244 +1,460 @@
|
|
|
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
|
+
## [3.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@3.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.
|
|
30
|
+
|
|
31
|
+
### [3.0.10](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@3.0.10) (2021-11-10)
|
|
32
|
+
|
|
33
|
+
#### ♻️ Refactoring
|
|
34
|
+
|
|
35
|
+
- update all countdown loops ([a5f374b](https://github.com/thi-ng/umbrella/commit/a5f374b))
|
|
36
|
+
|
|
37
|
+
### [3.0.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@3.0.1) (2021-10-13)
|
|
38
|
+
|
|
39
|
+
#### ♻️ Refactoring
|
|
40
|
+
|
|
41
|
+
- update imports in all tests/pkgs ([effd591](https://github.com/thi-ng/umbrella/commit/effd591))
|
|
42
|
+
- update imports in all pkgs ([5fa2b6f](https://github.com/thi-ng/umbrella/commit/5fa2b6f))
|
|
43
|
+
- add .js suffix for all relative imports
|
|
44
|
+
|
|
45
|
+
# [3.0.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@3.0.0) (2021-10-12)
|
|
46
|
+
|
|
47
|
+
#### 🛑 Breaking changes
|
|
48
|
+
|
|
49
|
+
- major update of ALL pkgs (export maps, ESM only) ([0d1d6ea](https://github.com/thi-ng/umbrella/commit/0d1d6ea))
|
|
50
|
+
- BREAKING CHANGE: discontinue CommonJS & UMD versions
|
|
51
|
+
- only ESM modules will be published from now on
|
|
52
|
+
- CJS obsolete due to ESM support in recent versions of node:
|
|
53
|
+
- i.e. launch NodeJS via:
|
|
54
|
+
- `node --experimental-specifier-resolution=node --experimental-repl-await`
|
|
55
|
+
- in the node REPL use `await import(...)` instead of `require()`
|
|
56
|
+
- UMD obsolete due to widespread browser support for ESM
|
|
57
|
+
Also:
|
|
58
|
+
- normalize/restructure/reorg all package.json files
|
|
59
|
+
- cleanup all build scripts, remove obsolete
|
|
60
|
+
- switch from mocha to [@thi.ng/testament](https://github.com/thi-ng/umbrella/tree/main/packages/testament) for all tests
|
|
61
|
+
|
|
62
|
+
#### ♻️ Refactoring
|
|
63
|
+
|
|
64
|
+
- rename/restructure internals ([94622fe](https://github.com/thi-ng/umbrella/commit/94622fe))
|
|
65
|
+
- remove internal fns from pkg exports
|
|
66
|
+
- restructure package ([ca56975](https://github.com/thi-ng/umbrella/commit/ca56975))
|
|
67
|
+
- migrate/lift `/src/ctors` source files to `/src` for easier use
|
|
68
|
+
- restructure package ([2439102](https://github.com/thi-ng/umbrella/commit/2439102))
|
|
69
|
+
- migrate/lift `/src/ops` source files to `/src` for easier use
|
|
70
|
+
- sideeffect-free defmulti specs ([2721c1d](https://github.com/thi-ng/umbrella/commit/2721c1d))
|
|
71
|
+
- update deps & imports in various pkgs ([e1cf29e](https://github.com/thi-ng/umbrella/commit/e1cf29e))
|
|
72
|
+
- largely related to recent updates/restructuring of these packages:
|
|
73
|
+
- api
|
|
74
|
+
- defmulti
|
|
75
|
+
- errors
|
|
76
|
+
- logger
|
|
77
|
+
- update imports (transducers) ([25b674f](https://github.com/thi-ng/umbrella/commit/25b674f))
|
|
78
|
+
- remove obsolete import ([7893fd0](https://github.com/thi-ng/umbrella/commit/7893fd0))
|
|
79
|
+
- update imports ([5ef5559](https://github.com/thi-ng/umbrella/commit/5ef5559))
|
|
80
|
+
- update all test stubs ([f2d6d53](https://github.com/thi-ng/umbrella/commit/f2d6d53))
|
|
81
|
+
- update all tests in _all_ pkgs ([8b582bc](https://github.com/thi-ng/umbrella/commit/8b582bc))
|
|
82
|
+
- update all to use [@thi.ng/testament](https://github.com/thi-ng/umbrella/tree/main/packages/testament)
|
|
83
|
+
|
|
84
|
+
### [2.1.29](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@2.1.29) (2021-09-03)
|
|
85
|
+
|
|
86
|
+
#### ♻️ Refactoring
|
|
87
|
+
|
|
88
|
+
- fix up TS4.4 changes ([863fa33](https://github.com/thi-ng/umbrella/commit/863fa33))
|
|
89
|
+
|
|
90
|
+
## [2.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@2.1.0) (2021-02-20)
|
|
5
91
|
|
|
6
|
-
|
|
92
|
+
#### 🚀 Features
|
|
7
93
|
|
|
8
|
-
|
|
94
|
+
- add tangentAt() support for cubic/quadratic ([4302f58](https://github.com/thi-ng/umbrella/commit/4302f58))
|
|
9
95
|
|
|
96
|
+
#### 🩹 Bug fixes
|
|
10
97
|
|
|
98
|
+
- fix regression/update buffer arg types ([9cf5e5d](https://github.com/thi-ng/umbrella/commit/9cf5e5d))
|
|
99
|
+
- switch from Vec => NumericArray for backing buffers
|
|
100
|
+
- update remap() / collateWith()
|
|
11
101
|
|
|
102
|
+
# [2.0.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@2.0.0) (2020-12-22)
|
|
12
103
|
|
|
104
|
+
#### 🛑 Breaking changes
|
|
13
105
|
|
|
14
|
-
|
|
106
|
+
- fix [#256](https://github.com/thi-ng/umbrella/issues/256) replace Type enum w/ alias ([ef7ba74](https://github.com/thi-ng/umbrella/commit/ef7ba74))
|
|
107
|
+
- BREAKING CHANGE: replace Type enum returned by IShape.type w/ string consts
|
|
108
|
+
- update all shape classes
|
|
109
|
+
- update all ops/multimethod dispatches
|
|
110
|
+
- fix [#256](https://github.com/thi-ng/umbrella/issues/256) replace enum w/ type alias ([67988ad](https://github.com/thi-ng/umbrella/commit/67988ad))
|
|
111
|
+
- BREAKING CHANGE: replace SegmentType w/ type alias
|
|
15
112
|
|
|
16
|
-
|
|
113
|
+
#### 🩹 Bug fixes
|
|
17
114
|
|
|
115
|
+
- fix [#268](https://github.com/thi-ng/umbrella/issues/268) add Group.copyTransformed() ([2da6c63](https://github.com/thi-ng/umbrella/commit/2da6c63))
|
|
116
|
+
- update transformVertices(), transform(), translate() impls
|
|
18
117
|
|
|
118
|
+
### [1.13.3](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.13.3) (2020-12-07)
|
|
19
119
|
|
|
120
|
+
#### ♻️ Refactoring
|
|
20
121
|
|
|
122
|
+
- update type-only imports ([b8e96cc](https://github.com/thi-ng/umbrella/commit/b8e96cc))
|
|
123
|
+
- update type-only imports in various tests/pkgs ([3fd9c24](https://github.com/thi-ng/umbrella/commit/3fd9c24))
|
|
21
124
|
|
|
22
|
-
|
|
125
|
+
### [1.13.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.13.1) (2020-11-24)
|
|
23
126
|
|
|
127
|
+
#### 🩹 Bug fixes
|
|
24
128
|
|
|
25
|
-
|
|
129
|
+
- add missing translate() impls for Cubic/Quadratic ([fe4c027](https://github.com/thi-ng/umbrella/commit/fe4c027))
|
|
130
|
+
- update whitespace check in pathFromSvg() ([2ce5ec1](https://github.com/thi-ng/umbrella/commit/2ce5ec1))
|
|
26
131
|
|
|
27
|
-
|
|
132
|
+
## [1.13.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.13.0) (2020-10-03)
|
|
28
133
|
|
|
134
|
+
#### 🩹 Bug fixes
|
|
29
135
|
|
|
30
|
-
|
|
136
|
+
- arg order pointAt() impl (RAY/RAY3) ([6ec9b46](https://github.com/thi-ng/umbrella/commit/6ec9b46))
|
|
31
137
|
|
|
32
|
-
|
|
138
|
+
## [1.12.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.12.0) (2020-09-22)
|
|
33
139
|
|
|
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
|
|
140
|
+
#### 🚀 Features
|
|
40
141
|
|
|
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
|
|
142
|
+
- add basic text support ([9d1424d](https://github.com/thi-ng/umbrella/commit/9d1424d))
|
|
45
143
|
|
|
144
|
+
#### ♻️ Refactoring
|
|
46
145
|
|
|
146
|
+
- update fitIntoBounds() fns ([19095b0](https://github.com/thi-ng/umbrella/commit/19095b0))
|
|
147
|
+
- de-dupe asCubic() for polygon/polyline ([65ea389](https://github.com/thi-ng/umbrella/commit/65ea389))
|
|
47
148
|
|
|
149
|
+
### [1.11.7](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.11.7) (2020-08-28)
|
|
48
150
|
|
|
151
|
+
#### 🩹 Bug fixes
|
|
49
152
|
|
|
153
|
+
- update asPolyline() for PATH/POLYGON ([243962c](https://github.com/thi-ng/umbrella/commit/243962c))
|
|
154
|
+
- ensure last point is unique (copy of 1st)
|
|
50
155
|
|
|
51
|
-
|
|
156
|
+
## [1.11.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.11.0) (2020-07-17)
|
|
52
157
|
|
|
53
|
-
|
|
158
|
+
#### 🚀 Features
|
|
54
159
|
|
|
55
|
-
-
|
|
160
|
+
- add PathBuilderOpts, update Path.toHiccup() ([deb9892](https://github.com/thi-ng/umbrella/commit/deb9892))
|
|
161
|
+
- add support to disable auto-splitting paths in PathBuilder
|
|
162
|
+
- update toHiccup() impl to support multiple `M` cmds
|
|
163
|
+
- add/update clipVertex() impls ([a87c31c](https://github.com/thi-ng/umbrella/commit/a87c31c))
|
|
164
|
+
- add support for `Line` and `Group` shape types
|
|
165
|
+
- update boundary arg type to support raw point arrays
|
|
166
|
+
(rather than only `IShape`). this allows for certain optimizations,
|
|
167
|
+
esp. for group impl.
|
|
56
168
|
|
|
57
|
-
|
|
169
|
+
#### 🩹 Bug fixes
|
|
58
170
|
|
|
59
|
-
-
|
|
171
|
+
- update svgDoc() attrib inject (add null check) ([6898975](https://github.com/thi-ng/umbrella/commit/6898975))
|
|
60
172
|
|
|
61
|
-
|
|
173
|
+
#### ♻️ Refactoring
|
|
62
174
|
|
|
63
|
-
|
|
175
|
+
- update various shape ctors ([8b63f9d](https://github.com/thi-ng/umbrella/commit/8b63f9d))
|
|
64
176
|
|
|
65
|
-
|
|
177
|
+
## [1.10.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.10.0) (2020-06-20)
|
|
66
178
|
|
|
67
|
-
|
|
179
|
+
#### 🚀 Features
|
|
68
180
|
|
|
69
|
-
-
|
|
70
|
-
-
|
|
181
|
+
- add offset() & initial impls ([819afd1](https://github.com/thi-ng/umbrella/commit/819afd1))
|
|
182
|
+
- add impls for circle, line, rect
|
|
183
|
+
- add rectFromCentroid() ([7837961](https://github.com/thi-ng/umbrella/commit/7837961))
|
|
71
184
|
|
|
72
|
-
|
|
185
|
+
#### ♻️ Refactoring
|
|
73
186
|
|
|
74
|
-
-
|
|
75
|
-
- update all shape classes
|
|
76
|
-
- update all ops/multimethod dispatches
|
|
77
|
-
- **geom:** replace SegmentType w/ type alias
|
|
187
|
+
- update offset() line impl ([6958280](https://github.com/thi-ng/umbrella/commit/6958280))
|
|
78
188
|
|
|
79
|
-
|
|
189
|
+
### [1.9.3](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.9.3) (2020-05-14)
|
|
80
190
|
|
|
81
|
-
|
|
191
|
+
#### 🩹 Bug fixes
|
|
82
192
|
|
|
83
|
-
-
|
|
84
|
-
- **geom:** update whitespace check in pathFromSvg() ([2ce5ec1](https://github.com/thi-ng/umbrella/commit/2ce5ec178bce371f3b8029ea1041f89e10500ead))
|
|
193
|
+
- Path.copy() deep-clone behavior ([2ade10e](https://github.com/thi-ng/umbrella/commit/2ade10e))
|
|
85
194
|
|
|
86
|
-
|
|
195
|
+
## [1.9.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.9.0) (2020-04-27)
|
|
87
196
|
|
|
88
|
-
|
|
197
|
+
#### 🚀 Features
|
|
89
198
|
|
|
90
|
-
-
|
|
199
|
+
- update asPolyline() impls ([cca8574](https://github.com/thi-ng/umbrella/commit/cca8574))
|
|
200
|
+
- add arc & quadratic support
|
|
201
|
+
- add transformVertices() op ([ef68a27](https://github.com/thi-ng/umbrella/commit/ef68a27))
|
|
91
202
|
|
|
92
|
-
###
|
|
203
|
+
### [1.8.4](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.8.4) (2020-03-06)
|
|
93
204
|
|
|
94
|
-
|
|
205
|
+
#### ♻️ Refactoring
|
|
95
206
|
|
|
96
|
-
|
|
207
|
+
- update skipWS() helper for pathFromSVG() ([ec07ddd](https://github.com/thi-ng/umbrella/commit/ec07ddd))
|
|
97
208
|
|
|
98
|
-
|
|
209
|
+
## [1.8.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.8.0) (2020-02-25)
|
|
99
210
|
|
|
100
|
-
|
|
211
|
+
#### 🚀 Features
|
|
101
212
|
|
|
102
|
-
|
|
213
|
+
- add cubic polyline impls ([263f2f9](https://github.com/thi-ng/umbrella/commit/263f2f9))
|
|
214
|
+
- add fitIntoBounds3, fix [#202](https://github.com/thi-ng/umbrella/issues/202), [#206](https://github.com/thi-ng/umbrella/issues/206) ([19be3fa](https://github.com/thi-ng/umbrella/commit/19be3fa))
|
|
215
|
+
- add Points3 and supporting ops ([7e1adb7](https://github.com/thi-ng/umbrella/commit/7e1adb7))
|
|
216
|
+
- points3() ctor
|
|
217
|
+
- area()
|
|
218
|
+
- bounds()
|
|
219
|
+
- centroid()
|
|
220
|
+
- flip()
|
|
221
|
+
- pointInside()
|
|
222
|
+
- transform()
|
|
223
|
+
- translate()
|
|
224
|
+
- vertices()
|
|
225
|
+
- add edges() impl for AABB ([b800686](https://github.com/thi-ng/umbrella/commit/b800686))
|
|
226
|
+
- add intersectionAABB/Rect() ([ecc9706](https://github.com/thi-ng/umbrella/commit/ecc9706))
|
|
103
227
|
|
|
104
|
-
|
|
228
|
+
#### 🩹 Bug fixes
|
|
105
229
|
|
|
106
|
-
-
|
|
230
|
+
- add missing type annotation (asCubic) ([c4f7eae](https://github.com/thi-ng/umbrella/commit/c4f7eae))
|
|
107
231
|
|
|
108
|
-
|
|
232
|
+
#### ♻️ Refactoring
|
|
109
233
|
|
|
110
|
-
|
|
234
|
+
- update imports ([69e9ed1](https://github.com/thi-ng/umbrella/commit/69e9ed1))
|
|
235
|
+
- update geom-clip deps & imports ([4fe4bfe](https://github.com/thi-ng/umbrella/commit/4fe4bfe))
|
|
111
236
|
|
|
112
|
-
|
|
237
|
+
### [1.7.7](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.7.7) (2019-11-09)
|
|
113
238
|
|
|
114
|
-
|
|
239
|
+
#### ♻️ Refactoring
|
|
115
240
|
|
|
116
|
-
-
|
|
117
|
-
- **geom:** add/update clipVertex() impls ([a87c31c](https://github.com/thi-ng/umbrella/commit/a87c31cbb5be4ddd9c6159362386204f396d1f2e))
|
|
241
|
+
- update wrapSides/tween call sites in various pkgs ([ee8200c](https://github.com/thi-ng/umbrella/commit/ee8200c))
|
|
118
242
|
|
|
119
|
-
|
|
243
|
+
### [1.7.5](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.7.5) (2019-08-21)
|
|
120
244
|
|
|
121
|
-
|
|
245
|
+
#### ♻️ Refactoring
|
|
122
246
|
|
|
123
|
-
-
|
|
124
|
-
-
|
|
247
|
+
- update PCLike copy() impls, add copyShape() helper ([bc20135](https://github.com/thi-ng/umbrella/commit/bc20135))
|
|
248
|
+
- asCubic() Arc impl (re-use cubicFromArc) ([df5c881](https://github.com/thi-ng/umbrella/commit/df5c881))
|
|
249
|
+
- add pclike(), simplify shape factory fns ([ef0d102](https://github.com/thi-ng/umbrella/commit/ef0d102))
|
|
250
|
+
- add internal helpers for improved re-use ([b3dc83f](https://github.com/thi-ng/umbrella/commit/b3dc83f))
|
|
251
|
+
- add copyAttribs()
|
|
252
|
+
- add pointArraysAsShapes()
|
|
253
|
+
- improve internal re-use PathBuilder ([c8ef0cf](https://github.com/thi-ng/umbrella/commit/c8ef0cf))
|
|
254
|
+
- split api.ts, extract PathBuilder / pathFromSVG ([071c346](https://github.com/thi-ng/umbrella/commit/071c346))
|
|
125
255
|
|
|
126
|
-
|
|
256
|
+
### [1.7.3](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.7.3) (2019-08-16)
|
|
127
257
|
|
|
128
|
-
|
|
258
|
+
#### ♻️ Refactoring
|
|
129
259
|
|
|
130
|
-
-
|
|
260
|
+
- update pathFromSVG() arc parsing, add readFlag ([2a36128](https://github.com/thi-ng/umbrella/commit/2a36128))
|
|
131
261
|
|
|
132
|
-
|
|
262
|
+
### [1.7.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.7.1) (2019-07-31)
|
|
133
263
|
|
|
134
|
-
|
|
264
|
+
#### ♻️ Refactoring
|
|
135
265
|
|
|
136
|
-
-
|
|
137
|
-
-
|
|
266
|
+
- update asCubic for circle ([b890838](https://github.com/thi-ng/umbrella/commit/b890838))
|
|
267
|
+
- use full 0..TAU range
|
|
138
268
|
|
|
139
|
-
|
|
269
|
+
## [1.7.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.7.0) (2019-07-12)
|
|
140
270
|
|
|
141
|
-
|
|
271
|
+
#### 🚀 Features
|
|
142
272
|
|
|
143
|
-
-
|
|
273
|
+
- add/update transform impls: arc, circle, ellipse, path, rect ([e77e7c2](https://github.com/thi-ng/umbrella/commit/e77e7c2))
|
|
274
|
+
- arc, circle, ellipse now converted to paths, instead of polygons
|
|
275
|
+
- add ellipse support for asCubic() ([4247801](https://github.com/thi-ng/umbrella/commit/4247801))
|
|
276
|
+
- add asPath(), update pathFromCubics() to accept opt attribs ([980af9f](https://github.com/thi-ng/umbrella/commit/980af9f))
|
|
277
|
+
- add asCubic() impls for circle, group, rect ([5ca4166](https://github.com/thi-ng/umbrella/commit/5ca4166))
|
|
278
|
+
- re-use arc impl from geom-splines
|
|
279
|
+
- add polygon impl for asCubic(), add pathFromCubics() ([2faec7f](https://github.com/thi-ng/umbrella/commit/2faec7f))
|
|
144
280
|
|
|
145
|
-
|
|
281
|
+
#### 🩹 Bug fixes
|
|
146
282
|
|
|
147
|
-
-
|
|
148
|
-
- **geom:** add edges() impl for AABB ([b800686](https://github.com/thi-ng/umbrella/commit/b800686d42acf105764dddb6591eabc1ea72bcf8))
|
|
149
|
-
- **geom:** add fitIntoBounds3, fix [#202](https://github.com/thi-ng/umbrella/issues/202), [#206](https://github.com/thi-ng/umbrella/issues/206) ([19be3fa](https://github.com/thi-ng/umbrella/commit/19be3fa516147a7612515e80c11dfc9ebcff50b3))
|
|
150
|
-
- **geom:** add intersectionAABB/Rect() ([ecc9706](https://github.com/thi-ng/umbrella/commit/ecc9706c13d2bf7929b63fb8bf023d8ce2477268))
|
|
151
|
-
- **geom:** add Points3 and supporting ops ([7e1adb7](https://github.com/thi-ng/umbrella/commit/7e1adb7b0d4e78dc6988fe3c32e1fd6170914dc8))
|
|
283
|
+
- update asCubic() circle impl (only 99.99% closed) ([36cdb4f](https://github.com/thi-ng/umbrella/commit/36cdb4f))
|
|
152
284
|
|
|
153
|
-
|
|
285
|
+
## [1.6.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.6.0) (2019-07-07)
|
|
154
286
|
|
|
155
|
-
|
|
287
|
+
#### 🚀 Features
|
|
156
288
|
|
|
157
|
-
-
|
|
289
|
+
- TS strictNullChecks, update various classes & ops ([636dea7](https://github.com/thi-ng/umbrella/commit/636dea7))
|
|
290
|
+
- make attribs field optional in all shape types
|
|
291
|
+
- update return types of various fns to potentially return undefined
|
|
292
|
+
- enable TS strict compiler flags (refactor) ([aa10de0](https://github.com/thi-ng/umbrella/commit/aa10de0))
|
|
158
293
|
|
|
159
|
-
|
|
294
|
+
#### 🩹 Bug fixes
|
|
160
295
|
|
|
161
|
-
-
|
|
162
|
-
- **geom:** add asPath(), update pathFromCubics() to accept opt attribs ([980af9f](https://github.com/thi-ng/umbrella/commit/980af9f))
|
|
163
|
-
- **geom:** add ellipse support for asCubic() ([4247801](https://github.com/thi-ng/umbrella/commit/4247801))
|
|
164
|
-
- **geom:** add polygon impl for asCubic(), add pathFromCubics() ([2faec7f](https://github.com/thi-ng/umbrella/commit/2faec7f))
|
|
165
|
-
- **geom:** add/update transform impls: arc, circle, ellipse, path, rect ([e77e7c2](https://github.com/thi-ng/umbrella/commit/e77e7c2))
|
|
296
|
+
- update madd/maddN call sites ([#95](https://github.com/thi-ng/umbrella/issues/95)) ([a96e028](https://github.com/thi-ng/umbrella/commit/a96e028))
|
|
166
297
|
|
|
167
|
-
|
|
298
|
+
## [1.5.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.5.0) (2019-05-22)
|
|
168
299
|
|
|
169
|
-
|
|
300
|
+
#### 🚀 Features
|
|
170
301
|
|
|
171
|
-
-
|
|
302
|
+
- add Plane, Quad3 factories & ops ([2079bfe](https://github.com/thi-ng/umbrella/commit/2079bfe))
|
|
172
303
|
|
|
173
|
-
|
|
304
|
+
## [1.4.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.4.0) (2019-04-15)
|
|
174
305
|
|
|
175
|
-
|
|
176
|
-
- **geom:** TS strictNullChecks, update various classes & ops ([636dea7](https://github.com/thi-ng/umbrella/commit/636dea7))
|
|
306
|
+
#### 🚀 Features
|
|
177
307
|
|
|
178
|
-
|
|
308
|
+
- add new shape factories & impls ([1a5ead1](https://github.com/thi-ng/umbrella/commit/1a5ead1))
|
|
309
|
+
- add AABB, Plane, Sphere factories
|
|
310
|
+
- add closestPoint() impls
|
|
179
311
|
|
|
180
|
-
|
|
312
|
+
## [1.3.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.3.0) (2019-04-11)
|
|
181
313
|
|
|
182
|
-
|
|
314
|
+
#### 🚀 Features
|
|
183
315
|
|
|
184
|
-
|
|
316
|
+
- add inscribedSquare*() fns ([b1790b3](https://github.com/thi-ng/umbrella/commit/b1790b3))
|
|
317
|
+
- add AABB impls for vertices() & volume() ([a9ba010](https://github.com/thi-ng/umbrella/commit/a9ba010))
|
|
185
318
|
|
|
186
|
-
###
|
|
319
|
+
### [1.2.2](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.2.2) (2019-02-15)
|
|
187
320
|
|
|
188
|
-
|
|
321
|
+
#### ♻️ Refactoring
|
|
189
322
|
|
|
190
|
-
|
|
323
|
+
- update to use [@thi.ng/arrays](https://github.com/thi-ng/umbrella/tree/main/packages/arrays) ([78095f4](https://github.com/thi-ng/umbrella/commit/78095f4))
|
|
191
324
|
|
|
192
|
-
|
|
325
|
+
## [1.2.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.2.0) (2019-02-05)
|
|
193
326
|
|
|
194
|
-
|
|
195
|
-
- **geom:** add inscribedSquare*() fns ([b1790b3](https://github.com/thi-ng/umbrella/commit/b1790b3))
|
|
327
|
+
#### ♻️ Refactoring
|
|
196
328
|
|
|
197
|
-
|
|
329
|
+
- update imports (zip) ([5204a7f](https://github.com/thi-ng/umbrella/commit/5204a7f))
|
|
198
330
|
|
|
199
|
-
###
|
|
331
|
+
### [1.1.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.1.1) (2019-01-31)
|
|
200
332
|
|
|
201
|
-
|
|
333
|
+
#### 🚀 Features
|
|
202
334
|
|
|
203
|
-
|
|
335
|
+
- add ray-rect/aabb impls for intersects() ([5f7dd63](https://github.com/thi-ng/umbrella/commit/5f7dd63))
|
|
204
336
|
|
|
205
|
-
|
|
337
|
+
#### ♻️ Refactoring
|
|
206
338
|
|
|
207
|
-
-
|
|
339
|
+
- minor update clippedLine() ([4b85288](https://github.com/thi-ng/umbrella/commit/4b85288))
|
|
340
|
+
- swap Group ctor & factory arg order ([6d14f2b](https://github.com/thi-ng/umbrella/commit/6d14f2b))
|
|
341
|
+
- first attribs, then children...
|
|
342
|
+
- update pointInside & classifyPoint impls (delegate) ([226645f](https://github.com/thi-ng/umbrella/commit/226645f))
|
|
343
|
+
- remove obsolete/migrated fns, update deps, readme ([df8332d](https://github.com/thi-ng/umbrella/commit/df8332d))
|
|
344
|
+
- update to use geom-api types ([b223603](https://github.com/thi-ng/umbrella/commit/b223603))
|
|
345
|
+
- remove obsolete/extracted internal ops, update publics ([fb532b8](https://github.com/thi-ng/umbrella/commit/fb532b8))
|
|
208
346
|
|
|
209
|
-
|
|
347
|
+
## [1.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.1.0) (2019-01-22)
|
|
210
348
|
|
|
211
|
-
|
|
212
|
-
- **geom:** add attrib support to PathBuilder ([a017b10](https://github.com/thi-ng/umbrella/commit/a017b10))
|
|
349
|
+
#### 🚀 Features
|
|
213
350
|
|
|
214
|
-
|
|
351
|
+
- add asPolyline() multi-fn ([c602379](https://github.com/thi-ng/umbrella/commit/c602379))
|
|
352
|
+
- add attrib support to PathBuilder ([a017b10](https://github.com/thi-ng/umbrella/commit/a017b10))
|
|
215
353
|
|
|
216
|
-
|
|
354
|
+
#### 🩹 Bug fixes
|
|
355
|
+
|
|
356
|
+
- update Rect.toHiccup() format (separate widht/height vals) ([8c1df49](https://github.com/thi-ng/umbrella/commit/8c1df49))
|
|
357
|
+
|
|
358
|
+
### [1.0.1](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.0.1) (2019-01-21)
|
|
359
|
+
|
|
360
|
+
#### ♻️ Refactoring
|
|
361
|
+
|
|
362
|
+
- update tangentAt(), use direction() from vectors pkg ([3d499ad](https://github.com/thi-ng/umbrella/commit/3d499ad))
|
|
363
|
+
|
|
364
|
+
# [1.0.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@1.0.0) (2019-01-21)
|
|
365
|
+
|
|
366
|
+
#### 🛑 Breaking changes
|
|
217
367
|
|
|
218
368
|
- update package build scripts & outputs, imports in ~50 packages ([b54b703](https://github.com/thi-ng/umbrella/commit/b54b703))
|
|
369
|
+
- BREAKING CHANGE: enabled multi-outputs (ES6 modules, CJS, UMD)
|
|
370
|
+
- build scripts now first build ES6 modules in package root, then call
|
|
371
|
+
`scripts/bundle-module` to build minified CJS & UMD bundles in `/lib`
|
|
372
|
+
- all imports MUST be updated to only refer to package level
|
|
373
|
+
(not individual files anymore). tree shaking in user land will get rid of
|
|
374
|
+
all unused imported symbols.
|
|
375
|
+
|
|
376
|
+
#### 🚀 Features
|
|
377
|
+
|
|
378
|
+
- re-add barycentric conversions, collation mappers (still unused) ([db4a201](https://github.com/thi-ng/umbrella/commit/db4a201))
|
|
379
|
+
- update closestPoint(), add support for Arc ([63b3a5d](https://github.com/thi-ng/umbrella/commit/63b3a5d))
|
|
380
|
+
- add arcPointAt() helper, refactor Arc, minor other updates ([0e5e776](https://github.com/thi-ng/umbrella/commit/0e5e776))
|
|
381
|
+
- add splitNearPoint() for line & polyline, update Sampler ([910529d](https://github.com/thi-ng/umbrella/commit/910529d))
|
|
382
|
+
- add splitNearPoint(), Sampler.closestT(), internal restructure ([1d754eb](https://github.com/thi-ng/umbrella/commit/1d754eb))
|
|
383
|
+
- add flip() impls ([56f6037](https://github.com/thi-ng/umbrella/commit/56f6037))
|
|
384
|
+
- add pointAt() impls for Cubic/Quadratic ([ebc9a98](https://github.com/thi-ng/umbrella/commit/ebc9a98))
|
|
385
|
+
- add closestPoint() impls for splines, line, polygons, polyline ([eaf1a1b](https://github.com/thi-ng/umbrella/commit/eaf1a1b))
|
|
386
|
+
- add transform() impls for Cubic/Quadratic ([627e20d](https://github.com/thi-ng/umbrella/commit/627e20d))
|
|
387
|
+
- add clippedLine(), minor update liangBarsky() ([d763621](https://github.com/thi-ng/umbrella/commit/d763621))
|
|
388
|
+
- add/update edges(), pointInside() & classifyPoint() impls ([e834597](https://github.com/thi-ng/umbrella/commit/e834597))
|
|
389
|
+
- re-add vertices() impls for Cubic/Quadratic ([f5a53ca](https://github.com/thi-ng/umbrella/commit/f5a53ca))
|
|
390
|
+
- re-add pathFromSvg() ([3c9a7b0](https://github.com/thi-ng/umbrella/commit/3c9a7b0))
|
|
391
|
+
- add intersection checks & intersects() multi-fn ([66267e2](https://github.com/thi-ng/umbrella/commit/66267e2))
|
|
392
|
+
- re-add tessellators ([f1f428a](https://github.com/thi-ng/umbrella/commit/f1f428a))
|
|
393
|
+
- add clipConvex, scatter, warpPoints ([d09cc79](https://github.com/thi-ng/umbrella/commit/d09cc79))
|
|
394
|
+
- add path builder, path & arc op impls ([61cfb0f](https://github.com/thi-ng/umbrella/commit/61cfb0f))
|
|
395
|
+
- re-add arc, cubic, quadratic ops, splitAt & other ops ([fea8fbe](https://github.com/thi-ng/umbrella/commit/fea8fbe))
|
|
396
|
+
- add temp geom3 package (another refactored version of geom2) ([c0e3a0b](https://github.com/thi-ng/umbrella/commit/c0e3a0b))
|
|
397
|
+
|
|
398
|
+
#### 🩹 Bug fixes
|
|
399
|
+
|
|
400
|
+
- update arcFrom2Points() ([62ec49f](https://github.com/thi-ng/umbrella/commit/62ec49f))
|
|
401
|
+
|
|
402
|
+
#### ⏱ Performance improvements
|
|
403
|
+
|
|
404
|
+
- use squared dist for classifyPoint() (circle) ([cd59f66](https://github.com/thi-ng/umbrella/commit/cd59f66))
|
|
405
|
+
|
|
406
|
+
#### ♻️ Refactoring
|
|
407
|
+
|
|
408
|
+
- update withAttribs() return type ([8e2c8b5](https://github.com/thi-ng/umbrella/commit/8e2c8b5))
|
|
409
|
+
- add tessellate() multi-fn, move/rename tessellators ([499e14b](https://github.com/thi-ng/umbrella/commit/499e14b))
|
|
410
|
+
- update imports, fix tests ([c41b96f](https://github.com/thi-ng/umbrella/commit/c41b96f))
|
|
411
|
+
|
|
412
|
+
### [0.2.11](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@0.2.11) (2019-01-02)
|
|
413
|
+
|
|
414
|
+
#### 🚀 Features
|
|
415
|
+
|
|
416
|
+
- add/rename type ids, add sphere, isec fns ([161199f](https://github.com/thi-ng/umbrella/commit/161199f))
|
|
417
|
+
|
|
418
|
+
### [0.2.3](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@0.2.3) (2018-12-01)
|
|
419
|
+
|
|
420
|
+
#### 🚀 Features
|
|
421
|
+
|
|
422
|
+
- re-add arcLength() impls, update imports ([896855d](https://github.com/thi-ng/umbrella/commit/896855d))
|
|
423
|
+
|
|
424
|
+
#### ♻️ Refactoring
|
|
425
|
+
|
|
426
|
+
- update everything to use new vectors package ([d4172ee](https://github.com/thi-ng/umbrella/commit/d4172ee))
|
|
219
427
|
|
|
220
|
-
|
|
428
|
+
## [0.2.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@0.2.0) (2018-10-21)
|
|
221
429
|
|
|
222
|
-
|
|
223
|
-
- build scripts now first build ES6 modules in package root, then call `scripts/bundle-module` to build minified CJS & UMD bundles in `/lib`
|
|
224
|
-
- all imports MUST be updated to only refer to package level (not individual files anymore). tree shaking in user land will get rid of all unused imported symbols.
|
|
430
|
+
#### 🚀 Features
|
|
225
431
|
|
|
226
|
-
|
|
432
|
+
- add IToCubic, add/update impls ([ce131d4](https://github.com/thi-ng/umbrella/commit/ce131d4))
|
|
433
|
+
- add/update .toCubic() impls for Arc2, Line2, Polyline2
|
|
434
|
+
- add Path2.normalize() to convert all segments to cubics
|
|
435
|
+
- remove mixCubic/mixQuadratic()
|
|
227
436
|
|
|
228
|
-
|
|
437
|
+
## [0.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/geom@0.1.0) (2018-10-17)
|
|
229
438
|
|
|
230
|
-
|
|
439
|
+
#### 🚀 Features
|
|
231
440
|
|
|
232
|
-
|
|
441
|
+
- add/update tessellate() impls ([fa87f1e](https://github.com/thi-ng/umbrella/commit/fa87f1e))
|
|
442
|
+
- add/update factory fns, arg handling, tessel, poly area ([555fc51](https://github.com/thi-ng/umbrella/commit/555fc51))
|
|
443
|
+
- add/update various shape impls & ops ([3a20ef3](https://github.com/thi-ng/umbrella/commit/3a20ef3))
|
|
444
|
+
- re-import & refactor partial port of [@thi.ng/geom](https://github.com/thi-ng/umbrella/tree/main/packages/geom) (clojure) ([d655ec2](https://github.com/thi-ng/umbrella/commit/d655ec2))
|
|
445
|
+
- add/update interfaces & impls ([2657df6](https://github.com/thi-ng/umbrella/commit/2657df6))
|
|
446
|
+
- add CollateOpts, update collate() in both containers
|
|
447
|
+
- add generics for IVertices
|
|
448
|
+
- add ArcSamplingOpts
|
|
449
|
+
- update edges(), vertices() for Arc2 & Circle2
|
|
450
|
+
- add .toJSON() impls
|
|
451
|
+
- add [@thi.ng/checks](https://github.com/thi-ng/umbrella/tree/main/packages/checks) dep
|
|
452
|
+
- re-add Arc2, update Circle2, update helper fns ([aa6b120](https://github.com/thi-ng/umbrella/commit/aa6b120))
|
|
453
|
+
- add ICollate & ICopy impls, re-add/update convexHull2 ([3b1bf64](https://github.com/thi-ng/umbrella/commit/3b1bf64))
|
|
454
|
+
- update all shape types, add interfaces & ops, update tests ([9c27c77](https://github.com/thi-ng/umbrella/commit/9c27c77))
|
|
233
455
|
|
|
234
|
-
|
|
456
|
+
#### ♻️ Refactoring
|
|
235
457
|
|
|
236
|
-
-
|
|
237
|
-
-
|
|
238
|
-
-
|
|
239
|
-
- **geom:** add/update tessellate() impls ([fa87f1e](https://github.com/thi-ng/umbrella/commit/fa87f1e))
|
|
240
|
-
- **geom:** add/update various shape impls & ops ([3a20ef3](https://github.com/thi-ng/umbrella/commit/3a20ef3))
|
|
241
|
-
- **geom:** import (updated) old thi.ng/geom package (minus vectors) ([c03259c](https://github.com/thi-ng/umbrella/commit/c03259c))
|
|
242
|
-
- **geom:** re-add Arc2, update Circle2, update helper fns ([aa6b120](https://github.com/thi-ng/umbrella/commit/aa6b120))
|
|
243
|
-
- **geom:** re-import & refactor partial port of thi.ng/geom (clojure) ([d655ec2](https://github.com/thi-ng/umbrella/commit/d655ec2))
|
|
244
|
-
- **geom:** update all shape types, add interfaces & ops, update tests ([9c27c77](https://github.com/thi-ng/umbrella/commit/9c27c77))
|
|
458
|
+
- update deps & [@thi.ng/math](https://github.com/thi-ng/umbrella/tree/main/packages/math) imports ([ffea836](https://github.com/thi-ng/umbrella/commit/ffea836))
|
|
459
|
+
- update arg handling, update readme ([2e9f048](https://github.com/thi-ng/umbrella/commit/2e9f048))
|
|
460
|
+
- add interfaces, split out common.ts into /func folder ([9fb2091](https://github.com/thi-ng/umbrella/commit/9fb2091))
|