@jscad/regl-renderer 2.6.12 → 3.0.1-alpha.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 (56) hide show
  1. package/CHANGELOG.md +8 -225
  2. package/LICENSE +1 -1
  3. package/README.md +21 -11
  4. package/demo-cli.js +20 -16
  5. package/demo-web.js +6 -4
  6. package/demo.es.html +236 -0
  7. package/demo.html +21 -15
  8. package/dist/jscad-regl-renderer.es.js +13 -0
  9. package/dist/jscad-regl-renderer.min.js +13 -335
  10. package/package.json +41 -16
  11. package/rollup.config.js +27 -0
  12. package/src/bound-utils/boundingBox.js +1 -2
  13. package/src/bound-utils/boundingSphere.js +4 -5
  14. package/src/bound-utils/computeBounds.js +4 -6
  15. package/src/bound-utils/computeBounds.test.js +2 -2
  16. package/src/cameras/camera.js +15 -19
  17. package/src/cameras/index.js +8 -4
  18. package/src/cameras/orthographicCamera.js +4 -6
  19. package/src/cameras/perspectiveCamera.js +7 -9
  20. package/src/controls/index.js +6 -0
  21. package/src/controls/orbitControls.js +18 -27
  22. package/src/{geometry-utils-V2 → geometry-utils-V3}/entitiesFromSolids.js +7 -9
  23. package/src/{geometry-utils-V2 → geometry-utils-V3}/entitiesFromSolids.test.js +4 -4
  24. package/src/geometry-utils-V3/geom2ToGeometries.js +57 -0
  25. package/src/{geometry-utils-V2 → geometry-utils-V3}/geom2ToGeometries.test.js +16 -12
  26. package/src/{geometry-utils-V2 → geometry-utils-V3}/geom3ToGeometries.js +3 -5
  27. package/src/{geometry-utils-V2 → geometry-utils-V3}/geom3ToGeometries.test.js +2 -2
  28. package/src/{geometry-utils-V2 → geometry-utils-V3}/path2ToGeometries.js +4 -5
  29. package/src/{geometry-utils-V2 → geometry-utils-V3}/path2ToGeometries.test.js +2 -2
  30. package/src/index.js +5 -20
  31. package/src/rendering/commands/drawAxis/index.js +2 -4
  32. package/src/rendering/commands/drawExps/drawConnector/arcGeo.js +1 -3
  33. package/src/rendering/commands/drawExps/drawConnector/index.js +5 -7
  34. package/src/rendering/commands/drawExps/drawMesh.js +2 -4
  35. package/src/rendering/commands/drawExps/drawMeshNoNormals.js +2 -4
  36. package/src/rendering/commands/drawExps/drawNormals.js +2 -4
  37. package/src/rendering/commands/drawExps/drawNormals2.js +2 -4
  38. package/src/rendering/commands/drawGrid/{index.js → makeDrawGrid.js} +2 -4
  39. package/src/rendering/commands/drawGrid/{multi.js → makeDrawMultiGrid.js} +5 -5
  40. package/src/rendering/commands/drawLines/colorOnlyShaders.js +2 -2
  41. package/src/rendering/commands/drawLines/index.js +9 -7
  42. package/src/rendering/commands/drawLines/meshShaders.js +3 -3
  43. package/src/rendering/commands/drawLines/vColorShaders.js +3 -3
  44. package/src/rendering/commands/drawMesh/colorOnlyShaders.js +2 -2
  45. package/src/rendering/commands/drawMesh/index.js +8 -7
  46. package/src/rendering/commands/drawMesh/meshShaders.js +3 -3
  47. package/src/rendering/commands/drawMesh/vColorShaders.js +3 -3
  48. package/src/rendering/commands/index.js +11 -0
  49. package/src/rendering/render.js +10 -10
  50. package/src/rendering/renderContext.js +2 -4
  51. package/src/rendering/renderDefaults.js +9 -11
  52. package/src/utils.js +3 -6
  53. package/src/geometry-utils-V1/cagToGeometries.js +0 -52
  54. package/src/geometry-utils-V1/csgToGeometries.js +0 -220
  55. package/src/geometry-utils-V1/entitiesFromSolids.js +0 -75
  56. package/src/geometry-utils-V2/geom2ToGeometries.js +0 -66
package/CHANGELOG.md CHANGED
@@ -3,302 +3,156 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
- ## [2.6.12](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.6.11...@jscad/regl-renderer@2.6.12) (2024-12-29)
7
-
8
- **Note:** Version bump only for package @jscad/regl-renderer
9
-
10
-
11
-
12
-
13
-
14
- ## [2.6.11](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.6.10...@jscad/regl-renderer@2.6.11) (2024-11-10)
15
-
16
- **Note:** Version bump only for package @jscad/regl-renderer
17
-
18
-
19
-
20
-
21
-
22
- ## [2.6.10](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.6.9...@jscad/regl-renderer@2.6.10) (2024-10-06)
23
-
24
- **Note:** Version bump only for package @jscad/regl-renderer
25
-
26
-
27
-
28
-
29
-
30
- ## [2.6.9](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.6.8...@jscad/regl-renderer@2.6.9) (2024-06-02)
31
-
32
- **Note:** Version bump only for package @jscad/regl-renderer
33
-
34
-
35
-
36
-
37
-
38
- ## [2.6.8](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.6.7...@jscad/regl-renderer@2.6.8) (2024-02-18)
39
-
6
+ ## [3.0.1-alpha.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.6.3...@jscad/regl-renderer@3.0.1-alpha.0) (2025-01-03)
40
7
 
41
8
  ### Bug Fixes
42
9
 
43
- * **regl-renderer:** define the entity type and corrected TS definitions ([d7dc4fb](https://github.com/jscad/OpenJSCAD.org/commit/d7dc4fb3722652362d2a209b2c82adc8cbf7ad33))
10
+ * **regl-renderer:** define the entity type and corrected TS definitions ([156929b](https://github.com/jscad/OpenJSCAD.org/commit/156929bbbeae028e91b5b4bc1d1fda682931af06))
11
+
12
+ ### Features
44
13
 
14
+ * **regl-renderer:** added rollup configuration to create ES6 bundle, adjusted imports and exports ([#1259](https://github.com/jscad/OpenJSCAD.org/issues/1259)) ([47a66bc](https://github.com/jscad/OpenJSCAD.org/commit/47a66bc07a137a748ce8571ea5d043ebaab9418d))
45
15
 
16
+ # [3.0.0-alpha.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.6.3...@jscad/regl-renderer@3.0.0-alpha.0) (2023-10-09)
46
17
 
18
+ ### Features
47
19
 
20
+ * **regl-renderer:** added rollup configuration to create ES6 bundle, adjusted imports and exports ([#1259](https://github.com/jscad/OpenJSCAD.org/issues/1259)) ([47a66bc](https://github.com/jscad/OpenJSCAD.org/commit/47a66bc07a137a748ce8571ea5d043ebaab9418d))
48
21
 
49
22
  ## [2.6.7](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.6.6...@jscad/regl-renderer@2.6.7) (2023-06-27)
50
23
 
51
24
  **Note:** Version bump only for package @jscad/regl-renderer
52
25
 
53
-
54
-
55
-
56
-
57
26
  ## [2.6.6](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.6.5...@jscad/regl-renderer@2.6.6) (2023-04-30)
58
27
 
59
28
  **Note:** Version bump only for package @jscad/regl-renderer
60
29
 
61
-
62
-
63
-
64
-
65
30
  ## [2.6.5](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.6.4...@jscad/regl-renderer@2.6.5) (2023-01-09)
66
31
 
67
-
68
32
  ### Bug Fixes
69
33
 
70
34
  * **regl-renderer:** corrected rendering of overlapping transparent solid objects ([9a66b2a](https://github.com/jscad/OpenJSCAD.org/commit/9a66b2abaccb6f047c5e4c4505218e7bbac69018))
71
35
 
72
-
73
-
74
-
75
-
76
36
  ## [2.6.4](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.6.3...@jscad/regl-renderer@2.6.4) (2022-11-26)
77
37
 
78
38
  **Note:** Version bump only for package @jscad/regl-renderer
79
39
 
80
-
81
-
82
-
83
-
84
40
  ## [2.6.3](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.6.2...@jscad/regl-renderer@2.6.3) (2022-08-21)
85
41
 
86
42
  **Note:** Version bump only for package @jscad/regl-renderer
87
43
 
88
-
89
-
90
-
91
-
92
44
  ## [2.6.2](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.6.1...@jscad/regl-renderer@2.6.2) (2022-07-17)
93
45
 
94
46
  **Note:** Version bump only for package @jscad/regl-renderer
95
47
 
96
-
97
-
98
-
99
-
100
48
  ## [2.6.1](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.6.0...@jscad/regl-renderer@2.6.1) (2022-06-12)
101
49
 
102
50
  **Note:** Version bump only for package @jscad/regl-renderer
103
51
 
104
-
105
-
106
-
107
-
108
52
  # [2.6.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.5.9...@jscad/regl-renderer@2.6.0) (2022-05-15)
109
53
 
110
-
111
54
  ### Features
112
55
 
113
56
  * **regl-renderer:** added support for multicolor lines ([#1060](https://github.com/jscad/OpenJSCAD.org/issues/1060)) ([d5eb65b](https://github.com/jscad/OpenJSCAD.org/commit/d5eb65b298afcabd4231236c3aa5d5cc092db8d4))
114
57
 
115
-
116
-
117
-
118
-
119
58
  ## [2.5.9](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.5.8...@jscad/regl-renderer@2.5.9) (2022-04-24)
120
59
 
121
-
122
60
  ### Bug Fixes
123
61
 
124
62
  * **regl-render:** removed unnecessary preventDefault in demo.html ([#1068](https://github.com/jscad/OpenJSCAD.org/issues/1068)) ([b2ff7c3](https://github.com/jscad/OpenJSCAD.org/commit/b2ff7c33cd3a8a0fc242b42f5e4bb2690eaef081))
125
63
 
126
-
127
64
  ### Performance Improvements
128
65
 
129
66
  * **modeling:** faster geom2.toOutlines ([#1064](https://github.com/jscad/OpenJSCAD.org/issues/1064)) ([5cb2f65](https://github.com/jscad/OpenJSCAD.org/commit/5cb2f652fa099593e6ec133fe879ecf8a09705e9))
130
67
 
131
-
132
-
133
-
134
-
135
68
  ## [2.5.8](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.5.7...@jscad/regl-renderer@2.5.8) (2022-04-03)
136
69
 
137
70
  **Note:** Version bump only for package @jscad/regl-renderer
138
71
 
139
-
140
-
141
-
142
-
143
72
  ## [2.5.7](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.5.6...@jscad/regl-renderer@2.5.7) (2022-04-03)
144
73
 
145
74
  **Note:** Version bump only for package @jscad/regl-renderer
146
75
 
147
-
148
-
149
-
150
-
151
76
  ## [2.5.6](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.5.5...@jscad/regl-renderer@2.5.6) (2022-03-13)
152
77
 
153
78
  **Note:** Version bump only for package @jscad/regl-renderer
154
79
 
155
-
156
-
157
-
158
-
159
80
  ## [2.5.5](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.5.4...@jscad/regl-renderer@2.5.5) (2022-03-06)
160
81
 
161
82
  **Note:** Version bump only for package @jscad/regl-renderer
162
83
 
163
-
164
-
165
-
166
-
167
84
  ## [2.5.4](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.5.3...@jscad/regl-renderer@2.5.4) (2022-02-19)
168
85
 
169
86
  **Note:** Version bump only for package @jscad/regl-renderer
170
87
 
171
-
172
-
173
-
174
-
175
88
  ## [2.5.3](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.5.2...@jscad/regl-renderer@2.5.3) (2021-12-26)
176
89
 
177
90
  **Note:** Version bump only for package @jscad/regl-renderer
178
91
 
179
-
180
-
181
-
182
-
183
92
  ## [2.5.2](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.5.1...@jscad/regl-renderer@2.5.2) (2021-12-11)
184
93
 
185
94
  **Note:** Version bump only for package @jscad/regl-renderer
186
95
 
187
-
188
-
189
-
190
-
191
96
  ## [2.5.1](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.5.0...@jscad/regl-renderer@2.5.1) (2021-11-07)
192
97
 
193
98
  **Note:** Version bump only for package @jscad/regl-renderer
194
99
 
195
-
196
-
197
-
198
-
199
100
  # [2.5.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.4.1...@jscad/regl-renderer@2.5.0) (2021-10-17)
200
101
 
201
-
202
102
  ### Features
203
103
 
204
104
  * **web:** changed default serialize to false, eliminating JSON serialize/deserialize ([#928](https://github.com/jscad/OpenJSCAD.org/issues/928)) ([b29993a](https://github.com/jscad/OpenJSCAD.org/commit/b29993a8fd3da3bd43a5f871edae4c60d7f56fc7))
205
105
 
206
-
207
-
208
-
209
-
210
106
  ## [2.4.1](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.4.0...@jscad/regl-renderer@2.4.1) (2021-10-04)
211
107
 
212
108
  **Note:** Version bump only for package @jscad/regl-renderer
213
109
 
214
-
215
-
216
-
217
-
218
110
  # [2.4.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.3.0...@jscad/regl-renderer@2.4.0) (2021-09-27)
219
111
 
220
-
221
112
  ### Features
222
113
 
223
114
  * **regl-renderer:** enhanced rendering to use the matrix as provided with the geometry ([#871](https://github.com/jscad/OpenJSCAD.org/issues/871)) ([40802af](https://github.com/jscad/OpenJSCAD.org/commit/40802afeb9a2a45cf3eb4f1b9dc774b8670d8259))
224
115
 
225
-
226
-
227
-
228
-
229
116
  # [2.3.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.2.0...@jscad/regl-renderer@2.3.0) (2021-09-09)
230
117
 
231
-
232
118
  ### Features
233
119
 
234
120
  * **regl-renderer:** typescript definitions and generator. ([#801](https://github.com/jscad/OpenJSCAD.org/issues/801)) ([1616876](https://github.com/jscad/OpenJSCAD.org/commit/16168761c53bbb6ffb604aa69c9c80dcc13eaad3))
235
121
 
236
-
237
-
238
-
239
-
240
122
  # [2.2.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.1.3...@jscad/regl-renderer@2.2.0) (2021-06-20)
241
123
 
242
-
243
124
  ### Features
244
125
 
245
126
  * **regl-renderer:** added new command drawLines, and adjusted demos ([#863](https://github.com/jscad/OpenJSCAD.org/issues/863)) ([02b5247](https://github.com/jscad/OpenJSCAD.org/commit/02b524775165f743b1f0bcecce92a0f7784bb89b))
246
127
 
247
-
248
-
249
-
250
-
251
128
  ## [2.1.3](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.1.2...@jscad/regl-renderer@2.1.3) (2021-06-11)
252
129
 
253
130
  **Note:** Version bump only for package @jscad/regl-renderer
254
131
 
255
-
256
-
257
-
258
-
259
132
  ## [2.1.2](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.1.1...@jscad/regl-renderer@2.1.2) (2021-06-01)
260
133
 
261
134
  **Note:** Version bump only for package @jscad/regl-renderer
262
135
 
263
-
264
-
265
-
266
-
267
136
  ## [2.1.1](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.1.0...@jscad/regl-renderer@2.1.1) (2021-05-16)
268
137
 
269
-
270
138
  ### Bug Fixes
271
139
 
272
140
  * **regl-renderer:** added reasonable defaults for drawGrid ([d64e062](https://github.com/jscad/OpenJSCAD.org/commit/d64e06228f8a92e014df3e22ea9ee48e11825420))
273
141
  * **regl-renderer:** corrected conversion of empty solids to entities, updated tests ([967fe82](https://github.com/jscad/OpenJSCAD.org/commit/967fe82ea429af14fe23a51d19099b1752ceead3))
274
142
  * **regl-renderer:** corrected determination of camera position change in orbitControls ([4f467c5](https://github.com/jscad/OpenJSCAD.org/commit/4f467c5d92132dc140db6799766f3a98716e5d68))
275
143
 
276
-
277
-
278
-
279
-
280
144
  # [2.1.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.0.3...@jscad/regl-renderer@2.1.0) (2021-04-30)
281
145
 
282
-
283
146
  ### Features
284
147
 
285
148
  * **regl-renderer:** refactored and corrected conversions of solids to entities, supporting HUGE solids ([#797](https://github.com/jscad/OpenJSCAD.org/issues/797)) ([f8baa22](https://github.com/jscad/OpenJSCAD.org/commit/f8baa222e89ac9357c795620b7f21341e202ad74))
286
149
 
287
-
288
-
289
-
290
-
291
150
  ## [2.0.3](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.0.2...@jscad/regl-renderer@2.0.3) (2021-04-20)
292
151
 
293
152
  **Note:** Version bump only for package @jscad/regl-renderer
294
153
 
295
-
296
-
297
-
298
-
299
154
  ## [2.0.2](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.0.0-alpha.0...@jscad/regl-renderer@2.0.2) (2021-04-17)
300
155
 
301
-
302
156
  ### Bug Fixes
303
157
 
304
158
  * **all:** support sparse arrays from main() ([#672](https://github.com/jscad/OpenJSCAD.org/issues/672)) ([209961d](https://github.com/jscad/OpenJSCAD.org/commit/209961d41ebf77373d427a7986934d195780f118))
@@ -307,13 +161,8 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
307
161
  * **regl-renderer:** corrected zoomToFit for 2D geometries ([#793](https://github.com/jscad/OpenJSCAD.org/issues/793)) ([2a05d3e](https://github.com/jscad/OpenJSCAD.org/commit/2a05d3e9b380e8782148c5d158c40715d6af2cd8))
308
162
  * **regl-renderer:** variable distance in pan controls ([#735](https://github.com/jscad/OpenJSCAD.org/issues/735)) ([9ad661c](https://github.com/jscad/OpenJSCAD.org/commit/9ad661c44cb87ee6ae58f20a69eaad5fd83a05a6))
309
163
 
310
-
311
-
312
-
313
-
314
164
  ## [2.0.1](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.0.0-alpha.0...@jscad/regl-renderer@2.0.1) (2021-04-15)
315
165
 
316
-
317
166
  ### Bug Fixes
318
167
 
319
168
  * **all:** support sparse arrays from main() ([#672](https://github.com/jscad/OpenJSCAD.org/issues/672)) ([209961d](https://github.com/jscad/OpenJSCAD.org/commit/209961d41ebf77373d427a7986934d195780f118))
@@ -322,143 +171,77 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
322
171
  * **regl-renderer:** corrected zoomToFit for 2D geometries ([#793](https://github.com/jscad/OpenJSCAD.org/issues/793)) ([2a05d3e](https://github.com/jscad/OpenJSCAD.org/commit/2a05d3e9b380e8782148c5d158c40715d6af2cd8))
323
172
  * **regl-renderer:** variable distance in pan controls ([#735](https://github.com/jscad/OpenJSCAD.org/issues/735)) ([9ad661c](https://github.com/jscad/OpenJSCAD.org/commit/9ad661c44cb87ee6ae58f20a69eaad5fd83a05a6))
324
173
 
325
-
326
-
327
-
328
-
329
174
  # [2.0.0](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.0.0-alpha.13...@jscad/regl-renderer@2.0.0) (2021-04-12)
330
175
 
331
176
  **Note:** Version bump only for package @jscad/regl-renderer
332
177
 
333
-
334
-
335
-
336
-
337
178
  # [2.0.0-alpha.13](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.0.0-alpha.12...@jscad/regl-renderer@2.0.0-alpha.13) (2021-03-07)
338
179
 
339
180
  **Note:** Version bump only for package @jscad/regl-renderer
340
181
 
341
-
342
-
343
-
344
-
345
182
  # [2.0.0-alpha.12](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.0.0-alpha.11...@jscad/regl-renderer@2.0.0-alpha.12) (2021-02-07)
346
183
 
347
184
  **Note:** Version bump only for package @jscad/regl-renderer
348
185
 
349
-
350
-
351
-
352
-
353
186
  # [2.0.0-alpha.11](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.0.0-alpha.10...@jscad/regl-renderer@2.0.0-alpha.11) (2021-01-02)
354
187
 
355
188
  **Note:** Version bump only for package @jscad/regl-renderer
356
189
 
357
-
358
-
359
-
360
-
361
190
  # [2.0.0-alpha.10](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.0.0-alpha.9...@jscad/regl-renderer@2.0.0-alpha.10) (2020-12-04)
362
191
 
363
-
364
192
  ### Bug Fixes
365
193
 
366
194
  * **regl-renderer:** variable distance in pan controls ([#735](https://github.com/jscad/OpenJSCAD.org/issues/735)) ([9ad661c](https://github.com/jscad/OpenJSCAD.org/commit/9ad661c44cb87ee6ae58f20a69eaad5fd83a05a6))
367
195
 
368
-
369
-
370
-
371
-
372
196
  # [2.0.0-alpha.9](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.0.0-alpha.8...@jscad/regl-renderer@2.0.0-alpha.9) (2020-11-07)
373
197
 
374
-
375
198
  ### Bug Fixes
376
199
 
377
200
  * **regl-renderer:** Changes to improve regl-renderer ([#722](https://github.com/jscad/OpenJSCAD.org/issues/722)) ([7bcc689](https://github.com/jscad/OpenJSCAD.org/commit/7bcc689e3d36cfbc3ac6f9b4c3822a72d54a996e))
378
201
 
379
-
380
-
381
-
382
-
383
202
  # [2.0.0-alpha.8](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.0.0-alpha.7...@jscad/regl-renderer@2.0.0-alpha.8) (2020-10-11)
384
203
 
385
-
386
204
  ### Bug Fixes
387
205
 
388
206
  * **all:** V2 : several fixes for modeling ([#705](https://github.com/jscad/OpenJSCAD.org/issues/705)) ([62017a4](https://github.com/jscad/OpenJSCAD.org/commit/62017a41214169d6e000f1e0c11aaefdd68e1097))
389
207
 
390
-
391
-
392
-
393
-
394
208
  # [2.0.0-alpha.7](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.0.0-alpha.6...@jscad/regl-renderer@2.0.0-alpha.7) (2020-09-29)
395
209
 
396
210
  **Note:** Version bump only for package @jscad/regl-renderer
397
211
 
398
-
399
-
400
-
401
-
402
212
  # [2.0.0-alpha.6](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.0.0-alpha.5...@jscad/regl-renderer@2.0.0-alpha.6) (2020-09-28)
403
213
 
404
214
  **Note:** Version bump only for package @jscad/regl-renderer
405
215
 
406
-
407
-
408
-
409
-
410
216
  # [2.0.0-alpha.5](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.0.0-alpha.4...@jscad/regl-renderer@2.0.0-alpha.5) (2020-09-19)
411
217
 
412
-
413
218
  ### Bug Fixes
414
219
 
415
220
  * **all:** support sparse arrays from main() ([#672](https://github.com/jscad/OpenJSCAD.org/issues/672)) ([209961d](https://github.com/jscad/OpenJSCAD.org/commit/209961d41ebf77373d427a7986934d195780f118))
416
221
 
417
-
418
-
419
-
420
-
421
222
  # [2.0.0-alpha.4](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.0.0-alpha.3...@jscad/regl-renderer@2.0.0-alpha.4) (2020-09-08)
422
223
 
423
224
  **Note:** Version bump only for package @jscad/regl-renderer
424
225
 
425
-
426
-
427
-
428
-
429
226
  # [2.0.0-alpha.3](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.0.0-alpha.2...@jscad/regl-renderer@2.0.0-alpha.3) (2020-09-02)
430
227
 
431
228
  **Note:** Version bump only for package @jscad/regl-renderer
432
229
 
433
-
434
-
435
-
436
-
437
230
  # [2.0.0-alpha.2](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.0.0-alpha.1...@jscad/regl-renderer@2.0.0-alpha.2) (2020-08-26)
438
231
 
439
232
  * **regl-renderer:** various fixes to renderer
440
233
 
441
-
442
-
443
-
444
-
445
234
  # [2.0.0-alpha.1](https://github.com/jscad/OpenJSCAD.org/compare/@jscad/regl-renderer@2.0.0-alpha.0...@jscad/regl-renderer@2.0.0-alpha.1) (2020-08-19)
446
235
 
447
236
  **Note:** Version bump only for package @jscad/regl-renderer
448
237
 
449
-
450
-
451
-
452
-
453
238
  # 2.0.0-alpha.0 (2020-08-13)
454
239
 
455
-
456
240
  ### Bug Fixes
457
241
 
458
242
  * **regl-renderer:** small tweaks and fixes for V2 ([#484](https://github.com/jscad/OpenJSCAD.org/issues/484)) ([ee50200](https://github.com/jscad/OpenJSCAD.org/commit/ee50200bfcacd8078fa6f1fd73f6cd866afce5ed))
459
243
  * **regl-renderer:** implemented an alternative caching scheme in render
460
244
 
461
-
462
245
  ### Features
463
246
 
464
247
  * **regl-renderer:** Overhaul and V2 groundwork ([#425](https://github.com/jscad/OpenJSCAD.org/issues/425)) ([7ccc789](https://github.com/jscad/OpenJSCAD.org/commit/7ccc7898ddf98f0cf9425a67a8ffdf79ebb82b2a))
package/LICENSE CHANGED
@@ -1,7 +1,7 @@
1
1
 
2
2
  The MIT License (MIT)
3
3
 
4
- Copyright (c) 2017-2024 JSCAD Organization
4
+ Copyright (c) 2017-2025 JSCAD Organization
5
5
 
6
6
  Permission is hereby granted, free of charge, to any person obtaining a copy
7
7
  of this software and associated documentation files (the "Software"), to deal
package/README.md CHANGED
@@ -9,7 +9,7 @@
9
9
  [![License](https://img.shields.io/github/license/jscad/OpenJSCAD.org)](https://github.com/jscad/OpenJSCAD.org/blob/master/LICENSE)
10
10
 
11
11
  [![User Group](https://img.shields.io/badge/maintained%20by-user%20group-blue)](https://openjscad.nodebb.com/)
12
- [![Lerna](https://img.shields.io/badge/maintained%20with-lerna-blue)](https://lerna.js.org/)
12
+ [![lerna--lite](https://img.shields.io/badge/maintained%20with-lerna--lite-e137ff)](https://github.com/ghiscoding/lerna-lite)
13
13
  [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-blue)](https://standardjs.com)
14
14
 
15
15
  [![Backers](https://img.shields.io/opencollective/backers/openjscad)](https://opencollective.com/openjscad)
@@ -32,40 +32,50 @@ npm install @jscad/regl-renderer
32
32
  ```
33
33
 
34
34
  In addition this package is hosted at [UNPKG](https://unpkg.com/), and can be imported directly into webpages.
35
-
36
35
  ```
37
- <script language="javascript" src="https://unpkg.com/@jscad/regl-renderer"</script>
36
+ <script type="module" id="MODELING">
37
+ import { cameras, commands, controls, entitiesFromSolids, prepareRender } from "./dist/jscad-regl-renderer.es.js"
38
+
39
+ ... YOUR CODE
40
+ </script>
38
41
  ```
39
42
 
40
43
  ## Usage
41
44
 
42
- ### Node.js (headless)
45
+ ### Node.js (HEADLESS)
43
46
 
44
47
  Install the following packages manually.
45
48
 
46
49
  NOTE: There are issues with continous integration testing, so 'gl' is not installed initially.
47
50
 
48
51
  ```
49
- npm install gl
52
+ pnpm install gl
50
53
  ```
51
54
 
52
- Try the demo by running ```npm run demo-cli```.
55
+ Try the demo by running ```pnpm run demo-cli```.
53
56
 
54
57
  If all goes well you should end up with an image (test.png) that renders the demo design.
55
58
 
56
- The demo code can be found in 'demo-cli.js'
59
+ The source code of the demo can be found in 'demo-cli.js'
57
60
 
58
61
  ### Browsers
59
62
 
60
- From a browser, try opening the file 'demo.html'. This should show the demo design.
63
+ This module has been tested using several browsers, includig Firefox, Chrome, Safari, etc.
64
+ For an exmple of how to use the module, please see 'demo.es.html'
65
+
66
+ NOTE: 'demo.es.html' cannot be opened from the local file system. This is due to CORS security limitiations. See the next section.
61
67
 
62
68
  ### Developers
63
69
 
64
- Run the development web server using ```npm run dev```, then open the URL shown.
70
+ Run the development web server using ```pnpm run dev```, then open the URL shown using any browser.
71
+ From the index of files, select 'demo.es.html'.
72
+
73
+ If all goes well you should end up with a web page that displays the demo design (a few solids).
74
+ The standard mouse controls are also available for rotation, etc.
65
75
 
66
- If all goes well you should end up with a web page with a rotating camera (no mouse controls) that displays the demo design (a few solids).
76
+ After making changes, just reload the web page.
67
77
 
68
- After making changes, all tests must pass. Run ```npm test```
78
+ If making changes, please make sure that all tests must pass. Run ```pnpm test```
69
79
 
70
80
  ## License
71
81
 
package/demo-cli.js CHANGED
@@ -1,12 +1,16 @@
1
- const { writeContextToFile } = require('@jscad/img-utils')
1
+ import gl from 'gl'
2
2
 
3
- const { prepareRender, drawCommands, cameras, entitiesFromSolids } = require('./src') // replace this with the correct import
3
+ import { colors, primitives, booleans } from '@jscad/modeling'
4
+
5
+ import { writeContextToFile } from '@jscad/img-utils'
6
+
7
+ import { prepareRender, commands, cameras, entitiesFromSolids } from './dist/jscad-regl-renderer.es.js'
4
8
 
5
9
  // setup demo solids data
6
10
  const demoSolids = (parameters) => {
7
- const { colorize } = require('@jscad/modeling').colors
8
- const { cube, cuboid, line, sphere, star } = require('@jscad/modeling').primitives
9
- const { intersect, subtract } = require('@jscad/modeling').booleans
11
+ const { colorize } = colors
12
+ const { cube, cuboid, line, sphere, star } = primitives
13
+ const { intersect, subtract } = booleans
10
14
 
11
15
  const logo = [
12
16
  colorize([1.0, 0.4, 1.0], subtract(
@@ -30,8 +34,8 @@ const demoSolids = (parameters) => {
30
34
  [0, 1, 0],
31
35
  [0, 0, 0.7]
32
36
  ]
33
- star2D.sides.forEach((side, i) => {
34
- if (i >= 2) side.color = colorChange[i % colorChange.length]
37
+ star2D.outlines.forEach((outline, i) => {
38
+ outline.color = colorChange[i % colorChange.length]
35
39
  })
36
40
 
37
41
  return [transpCube, star2D, line2D, ...logo]
@@ -45,7 +49,7 @@ const params = {
45
49
  const { width, height } = params
46
50
 
47
51
  // create webgl context
48
- const gl = require('gl')(width, height)
52
+ const context = gl(width, height)
49
53
 
50
54
  // process entities and inject extras
51
55
  const entities = entitiesFromSolids({}, demoSolids({ scale: 1 }))
@@ -57,14 +61,14 @@ perspectiveCamera.setProjection(camera, camera, { width, height })
57
61
  perspectiveCamera.update(camera, camera)
58
62
 
59
63
  const options = {
60
- glOptions: { gl },
64
+ glOptions: { gl: context },
61
65
  camera,
62
66
  drawCommands: {
63
67
  // draw commands bootstrap themselves the first time they are run
64
- drawAxis: drawCommands.drawAxis,
65
- drawGrid: drawCommands.drawGrid,
66
- drawLines: drawCommands.drawLines,
67
- drawMesh: drawCommands.drawMesh
68
+ drawAxis: commands.drawAxis,
69
+ drawGrid: commands.drawGrid,
70
+ drawLines: commands.drawLines,
71
+ drawMesh: commands.drawMesh
68
72
  },
69
73
  rendering: {
70
74
  background: [1, 1, 1, 1],
@@ -109,9 +113,9 @@ const options = {
109
113
  ]
110
114
  }
111
115
 
112
- // prepare
116
+ // render the contents
113
117
  const render = prepareRender(options)
114
- // do the actual render
115
118
  render(options)
119
+
116
120
  // output to file
117
- writeContextToFile(gl, width, height, 4, './test.png')
121
+ writeContextToFile(context, width, height, 4, './test.png')
package/demo-web.js CHANGED
@@ -1,10 +1,12 @@
1
- const { prepareRender, drawCommands, cameras, entitiesFromSolids } = require('./src')
1
+ import { prepareRender, drawCommands, cameras, entitiesFromSolids } from './src/index.js'
2
+
3
+ import { colors, primitives, booleans } from '@jscad/modeling'
2
4
 
3
5
  // setup demo solids data
4
6
  const demoSolids = (parameters) => {
5
- const { colorize } = require('@jscad/modeling').colors
6
- const { cube, cuboid, line, sphere, star } = require('@jscad/modeling').primitives
7
- const { intersect, subtract } = require('@jscad/modeling').booleans
7
+ const { colorize } = colors
8
+ const { cube, cuboid, line, sphere, star } = primitives
9
+ const { intersect, subtract } = booleans
8
10
 
9
11
  const logo = [
10
12
  colorize([1.0, 0.4, 1.0], subtract(