You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+62Lines changed: 62 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -21,22 +21,47 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
21
21
22
22
**Added**
23
23
24
+
- examples show in `compas_viewer`
25
+
24
26
**Changed**
25
27
28
+
- significant refactor
29
+
- generally a ~10x speed up was achieved in the refactor
30
+
- slow ops have been vectorised with `numpy`, see `_numpy_ops.py`
31
+
- COMPAS 2.x compatibility (__data__/__from_data__ serialization, API changes)
32
+
-`igl` dependency was factored out
33
+
- earlier version had overlapping code paths (both a pure python and a cgal or igl version). these paths are harmonised to `cgal`
34
+
- pure python calls have been replaced with `cgal` where ever possible
35
+
- Type hints added throughout codebase
36
+
- documentation was refreshened with modern `mkdocs` (none of that nasty rst litering the code)
37
+
- pathlib migration (replaced os.path)
38
+
- loguru replaced logging/print
39
+
- Dataclasses replaced dicts
40
+
- TOML-based config system (config.py + defaults.toml)
41
+
- Medial axis infill via CGAL straight skeleton
42
+
- CI modernization (py3.13 support, split workflows)
43
+
26
44
**Fixed**
27
45
28
46
**Deprecated**
29
47
48
+
-`igl`
49
+
30
50
**Removed**
31
51
52
+
- pure python paths; `compas_cgal` now is a hard dependency
53
+
54
+
32
55
## 0.6.2
33
56
34
57
**Added**
58
+
35
59
- Costa surface on curved slicing example
36
60
37
61
**Changed**
38
62
39
63
**Fixed**
64
+
40
65
- Fixed bug in sorting to vertical layers
41
66
42
67
**Deprecated**
@@ -58,16 +83,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
58
83
## 0.6.0
59
84
60
85
**Added**
86
+
61
87
- Output nested printpoints
62
88
63
89
**Changed**
90
+
64
91
- Updates in the visualization of PrintPoints
65
92
- Added seams_align(next_path) to the standard planar slicing routine
66
93
- Added unify_path_orientation back into the standard planar slicing routine
67
94
- The way the normal and up_vector are calculated in the print organizers
68
95
- Small updates in grasshopper visualization functions
69
96
70
97
**Fixed**
98
+
71
99
- spiralize_contours: After function points are reprojected on the mesh
72
100
- Curved slicing grasshopper file improved
73
101
- Bug in post-processing of slicer paths generation
@@ -79,6 +107,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
79
107
## 0.5.0
80
108
81
109
**Added**
110
+
82
111
- Zenodo integration
83
112
84
113
**Changed**
@@ -92,30 +121,35 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
92
121
## 0.4.0
93
122
94
123
**Added**
124
+
95
125
- Documentation updates
96
126
- rdp libigl function (faster than the regular rdp)
97
127
- sort_paths_minimum_travel_time: Function to sort paths by least travel time between contours in a layer
98
128
99
129
**Changed**
130
+
100
131
- Changed the blend radius to add a blend radius of 0 for the first and last point of a path
101
132
- Changed planar_slicing_cgal to add the possibility of slicing open paths with planar_slicing_cgal
102
133
- Added the option to toggle generation of mesh normals on/off in create_printpoints
103
134
- Added the possibility to slice only a certain section of the geometry by using slice_height_range in the PlanarSlicer
104
135
105
136
**Fixed**
137
+
106
138
- Fixed some bugs in seams_align
107
139
- Small bug in extruder_toggle
108
140
- Small bug in simplify_paths_rdp_igl with printing remaining no of points
109
141
- Bug in seams_smooth
110
142
111
143
**Deprecated**
144
+
112
145
- close_paths in the BaseSlicer is unused for now, as it should not be necessary
113
146
114
147
**Removed**
115
148
116
149
## 0.3.5
117
150
118
151
**Added**
152
+
119
153
- Add GH Python package to the installation
120
154
121
155
**Changed**
@@ -129,10 +163,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
129
163
## 0.3.4
130
164
131
165
**Added**
166
+
132
167
- Alternative union operations in curved slicing
133
168
- Function that adds wait time at sharp corners
134
169
135
170
**Changed**
171
+
136
172
- Small improvements in gcode
137
173
- Updated examples, and setup tutorials content (which is still empty - remaining to be filled)
138
174
- set_blend_radius function assigns 0 to ppts that have a wait time (so that we are sure they are reached exactly)
@@ -142,6 +178,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
142
178
**Deprecated**
143
179
144
180
**Removed**
181
+
145
182
- csWeightedUnion (outdated)
146
183
147
184
## 0.3.3
@@ -155,6 +192,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
155
192
**Deprecated**
156
193
157
194
**Removed**
195
+
158
196
- Removed libigl from the requirements, since it is not on pip we cannot have it in the requirements for now
159
197
160
198
## 0.3.2
@@ -172,19 +210,23 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
172
210
## 0.3.1
173
211
174
212
**Changed**
213
+
175
214
- Version to 0.3.1
176
215
177
216
## 0.3.0
178
217
179
218
**Added**
219
+
180
220
- Zig Zag paths in print organization
181
221
- Added automatic install on Rhino and GH when compas core is installed
182
222
183
223
**Changed**
224
+
184
225
- Switched from compas_viewers to compas_viewers2
185
226
- Updated csLoadPrintpoint.ghuser component on the data/gh_components and on the gh examples
186
227
187
228
**Fixed**
229
+
188
230
- Bug in PrintPoint.get_frame() method (It was throwing a 0-division error when contours where situated on flat surfaces)
189
231
- Bug in calculation of desired number of isocurves in interpolation slicer
190
232
- Bug in safety points (their frame was not matching their point position)
@@ -193,11 +235,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
193
235
**Deprecated**
194
236
195
237
**Removed**
238
+
196
239
- Feasibility parameter from printpoints visualization
197
240
198
241
## 0.2.1
199
242
200
243
**Added**
244
+
201
245
- Bumped version to 0.2.1
202
246
203
247
**Changed**
@@ -211,27 +255,32 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
211
255
## 0.2.0
212
256
213
257
**Added**
258
+
214
259
- Iterators through printpoints in PrintOrganizer
215
260
- Iterative smoothing of attributes on printpoints (ex smooth velocities, orientations etc)
216
261
- Export of (jsonable) PrintPoint attributes to json (in previous versions they were ignored upon export)
217
262
218
263
**Changed**
264
+
219
265
- Added first layer in the slicing process that was previously removed
220
266
- set_velocity function was split into separate functions depending on type (constant, by layer, by range, by overhang)
221
267
222
268
**Fixed**
269
+
223
270
- Fixed bug on the calculation of the Printpoint frame (both on PrintOrganizer and on the gh visualization)
224
271
225
272
**Deprecated**
226
273
227
274
**Removed**
275
+
228
276
- VerticalConnectivity from CurvedPrintOrganizer. This function does not need to be on its own class
229
277
- Checking feasibility of Printpoints in PrintOrganizer (anyway it was a function left not-implemented in most PrintOrganizers). Might be re-introduced in the future but with more specific tasks
230
278
- Planar slicing using MeshCut (and meshcut library from requirements)
231
279
232
280
## 0.1.3
233
281
234
282
**Added**
283
+
235
284
- Fancy badges in the readme
236
285
- Export to Gcode
237
286
@@ -246,52 +295,63 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
246
295
## 0.1.2
247
296
248
297
**Fixed**
298
+
249
299
- Small bug in example 1 regarding the raft
250
300
251
301
## 0.1.1
252
302
253
303
**Added**
304
+
254
305
- Generate raft functionality
255
306
- is_raft parameter to the Layer
256
307
257
308
**Changed**
309
+
258
310
- Simplify paths to exclude simplification of raft layers
259
311
- Error raised when brim is attempted to be applied to a raft layer
260
312
261
313
**Fixed**
314
+
262
315
- Small bug in print time calculation
263
316
264
317
## 2021-02-11
265
318
266
319
**Added**
320
+
267
321
- UVcontours, UVslicer
268
322
- VerticalLayersManager
269
323
270
324
**Changed**
325
+
271
326
- Renamed the curved_slicer and all processes named after that (i.e. curved_preprocessor, curved_slicing_parameters, curved_print_organizer etc) to interpolation_slicer. These changes make this PR a breaking change
272
327
- Reorganized the parameters folder. A lot of parameters where considered 'curved_slicing_parameters' although they were more general. So I broke those down into separate files. More parameters will be added in the future to those files
273
328
274
329
**Fixed**
330
+
275
331
- Some documentation
276
332
- Slicer printout_info bug
277
333
278
334
**Deprecated**
279
335
280
336
**Removed**
337
+
281
338
- folder slicers.curved_slicing and all its contents
282
339
283
340
## 2021-02-03
284
341
285
342
**Added**
343
+
286
344
- Reorder vertical layers functionality
287
345
- Added z_height attribute to Layer and min_max_z_height to VerticalLayer
288
346
289
347
**Changed**
348
+
290
349
- Extension of CHANGELOG
291
350
- Changed naming of sort_per_vertical_segment to sort_into_vertical_layers
292
351
- Changed naming of get_segments_centroids_list to get_vertical_layers_centroids_list
293
352
294
353
**Fixed**
354
+
295
355
- Typo in wait time
296
356
297
357
**Deprecated**
@@ -301,11 +361,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
301
361
## 2021-01-25
302
362
303
363
**Added**
364
+
304
365
- ScalarFieldPrintOrganization as a slicing method
305
366
- Transfer of attributes from mesh faces and vertices to PrintPoints (utilities/attributes_transfer.py). Added the necessary attributes in the PrintPoints. Also added an example (example_6_attributes_transfer.py) showcasing this functionality
306
367
- ScalarFieldContours as a slicing method
307
368
308
369
**Changed**
370
+
309
371
- Cleaned up the 'printout_info' methods in the BaseSlicer and BasePrintOrganizer
310
372
- Refactored GradientEvaluation so that it can be applied in general for scalar fields, instead of just for interpolation fields
Copy file name to clipboardExpand all lines: README.md
+18-3Lines changed: 18 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,6 +7,20 @@
7
7
8
8
Python slicing package for FDM 3D Printing based on the [COMPAS](https://block.arch.ethz.ch/brg/tools/compas-computational-framework-for-collaboration-and-research-in-architecture-structures-and-digital-fabrication) framework.
9
9
10
+
## What's New in 0.7.0
11
+
12
+
Major refactor with ~10x performance improvement:
13
+
14
+
***CGAL backend** - pure python replaced with `compas_cgal`, `igl` dependency removed
15
+
***Modern docs** - migrated to `mkdocs` with full API reference
16
+
***COMPAS 2.x** - full compatibility with new serialization API
17
+
***Visualization** - examples now use `compas_viewer`
18
+
***Vectorized ops** - hot loops rewritten with `numpy` (see `_numpy_ops.py`)
19
+
***Type hints** - throughout codebase
20
+
***Medial axis infill** - via CGAL straight skeleton
21
+
22
+
See [CHANGELOG.md](CHANGELOG.md) for details.
23
+
10
24
## Getting started
11
25
12
26
You can find tutorials and documentation of the project in the [compas_slicer page](https://compas.dev/compas_slicer/latest/)
@@ -25,8 +39,9 @@ For troubleshooting, see here: [troubleshooting](https://compas.dev/compas_slice
0 commit comments