Skip to content

Commit 03d1565

Browse files
jf---claude
authored andcommitted
docs: update changelog and README for 0.7.0
1 parent 809c355 commit 03d1565

File tree

2 files changed

+80
-3
lines changed

2 files changed

+80
-3
lines changed

CHANGELOG.md

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,22 +21,47 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
2121

2222
**Added**
2323

24+
- examples show in `compas_viewer`
25+
2426
**Changed**
2527

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+
2644
**Fixed**
2745

2846
**Deprecated**
2947

48+
- `igl`
49+
3050
**Removed**
3151

52+
- pure python paths; `compas_cgal` now is a hard dependency
53+
54+
3255
## 0.6.2
3356

3457
**Added**
58+
3559
- Costa surface on curved slicing example
3660

3761
**Changed**
3862

3963
**Fixed**
64+
4065
- Fixed bug in sorting to vertical layers
4166

4267
**Deprecated**
@@ -58,16 +83,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
5883
## 0.6.0
5984

6085
**Added**
86+
6187
- Output nested printpoints
6288

6389
**Changed**
90+
6491
- Updates in the visualization of PrintPoints
6592
- Added seams_align(next_path) to the standard planar slicing routine
6693
- Added unify_path_orientation back into the standard planar slicing routine
6794
- The way the normal and up_vector are calculated in the print organizers
6895
- Small updates in grasshopper visualization functions
6996

7097
**Fixed**
98+
7199
- spiralize_contours: After function points are reprojected on the mesh
72100
- Curved slicing grasshopper file improved
73101
- 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
79107
## 0.5.0
80108

81109
**Added**
110+
82111
- Zenodo integration
83112

84113
**Changed**
@@ -92,30 +121,35 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
92121
## 0.4.0
93122

94123
**Added**
124+
95125
- Documentation updates
96126
- rdp libigl function (faster than the regular rdp)
97127
- sort_paths_minimum_travel_time: Function to sort paths by least travel time between contours in a layer
98128

99129
**Changed**
130+
100131
- Changed the blend radius to add a blend radius of 0 for the first and last point of a path
101132
- Changed planar_slicing_cgal to add the possibility of slicing open paths with planar_slicing_cgal
102133
- Added the option to toggle generation of mesh normals on/off in create_printpoints
103134
- Added the possibility to slice only a certain section of the geometry by using slice_height_range in the PlanarSlicer
104135

105136
**Fixed**
137+
106138
- Fixed some bugs in seams_align
107139
- Small bug in extruder_toggle
108140
- Small bug in simplify_paths_rdp_igl with printing remaining no of points
109141
- Bug in seams_smooth
110142

111143
**Deprecated**
144+
112145
- close_paths in the BaseSlicer is unused for now, as it should not be necessary
113146

114147
**Removed**
115148

116149
## 0.3.5
117150

118151
**Added**
152+
119153
- Add GH Python package to the installation
120154

121155
**Changed**
@@ -129,10 +163,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
129163
## 0.3.4
130164

131165
**Added**
166+
132167
- Alternative union operations in curved slicing
133168
- Function that adds wait time at sharp corners
134169

135170
**Changed**
171+
136172
- Small improvements in gcode
137173
- Updated examples, and setup tutorials content (which is still empty - remaining to be filled)
138174
- 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
142178
**Deprecated**
143179

144180
**Removed**
181+
145182
- csWeightedUnion (outdated)
146183

147184
## 0.3.3
@@ -155,6 +192,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
155192
**Deprecated**
156193

157194
**Removed**
195+
158196
- Removed libigl from the requirements, since it is not on pip we cannot have it in the requirements for now
159197

160198
## 0.3.2
@@ -172,19 +210,23 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
172210
## 0.3.1
173211

174212
**Changed**
213+
175214
- Version to 0.3.1
176215

177216
## 0.3.0
178217

179218
**Added**
219+
180220
- Zig Zag paths in print organization
181221
- Added automatic install on Rhino and GH when compas core is installed
182222

183223
**Changed**
224+
184225
- Switched from compas_viewers to compas_viewers2
185226
- Updated csLoadPrintpoint.ghuser component on the data/gh_components and on the gh examples
186227

187228
**Fixed**
229+
188230
- Bug in PrintPoint.get_frame() method (It was throwing a 0-division error when contours where situated on flat surfaces)
189231
- Bug in calculation of desired number of isocurves in interpolation slicer
190232
- 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
193235
**Deprecated**
194236

195237
**Removed**
238+
196239
- Feasibility parameter from printpoints visualization
197240

198241
## 0.2.1
199242

200243
**Added**
244+
201245
- Bumped version to 0.2.1
202246

203247
**Changed**
@@ -211,27 +255,32 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
211255
## 0.2.0
212256

213257
**Added**
258+
214259
- Iterators through printpoints in PrintOrganizer
215260
- Iterative smoothing of attributes on printpoints (ex smooth velocities, orientations etc)
216261
- Export of (jsonable) PrintPoint attributes to json (in previous versions they were ignored upon export)
217262

218263
**Changed**
264+
219265
- Added first layer in the slicing process that was previously removed
220266
- set_velocity function was split into separate functions depending on type (constant, by layer, by range, by overhang)
221267

222268
**Fixed**
269+
223270
- Fixed bug on the calculation of the Printpoint frame (both on PrintOrganizer and on the gh visualization)
224271

225272
**Deprecated**
226273

227274
**Removed**
275+
228276
- VerticalConnectivity from CurvedPrintOrganizer. This function does not need to be on its own class
229277
- 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
230278
- Planar slicing using MeshCut (and meshcut library from requirements)
231279

232280
## 0.1.3
233281

234282
**Added**
283+
235284
- Fancy badges in the readme
236285
- Export to Gcode
237286

@@ -246,52 +295,63 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
246295
## 0.1.2
247296

248297
**Fixed**
298+
249299
- Small bug in example 1 regarding the raft
250300

251301
## 0.1.1
252302

253303
**Added**
304+
254305
- Generate raft functionality
255306
- is_raft parameter to the Layer
256307

257308
**Changed**
309+
258310
- Simplify paths to exclude simplification of raft layers
259311
- Error raised when brim is attempted to be applied to a raft layer
260312

261313
**Fixed**
314+
262315
- Small bug in print time calculation
263316

264317
## 2021-02-11
265318

266319
**Added**
320+
267321
- UVcontours, UVslicer
268322
- VerticalLayersManager
269323

270324
**Changed**
325+
271326
- 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
272327
- 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
273328

274329
**Fixed**
330+
275331
- Some documentation
276332
- Slicer printout_info bug
277333

278334
**Deprecated**
279335

280336
**Removed**
337+
281338
- folder slicers.curved_slicing and all its contents
282339

283340
## 2021-02-03
284341

285342
**Added**
343+
286344
- Reorder vertical layers functionality
287345
- Added z_height attribute to Layer and min_max_z_height to VerticalLayer
288346

289347
**Changed**
348+
290349
- Extension of CHANGELOG
291350
- Changed naming of sort_per_vertical_segment to sort_into_vertical_layers
292351
- Changed naming of get_segments_centroids_list to get_vertical_layers_centroids_list
293352

294353
**Fixed**
354+
295355
- Typo in wait time
296356

297357
**Deprecated**
@@ -301,11 +361,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
301361
## 2021-01-25
302362

303363
**Added**
364+
304365
- ScalarFieldPrintOrganization as a slicing method
305366
- 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
306367
- ScalarFieldContours as a slicing method
307368

308369
**Changed**
370+
309371
- Cleaned up the 'printout_info' methods in the BaseSlicer and BasePrintOrganizer
310372
- Refactored GradientEvaluation so that it can be applied in general for scalar fields, instead of just for interpolation fields
311373
- Bug fixes on CurvedSlicingPreprocessor

README.md

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,20 @@
77

88
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.
99

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+
1024
## Getting started
1125

1226
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
2539

2640
## Authors
2741

28-
* Ioanna Mitropoulou <<[email protected]>> [@ioannaMitropoulou](https://github.com/ioannaMitropoulou)
29-
* Joris Burger <<[email protected]>> [@joburger](https://github.com/joburger)
30-
* Andrei Jipa <<[email protected]>> [@stratocaster](https://github.com/stratocaster)
42+
* Ioanna Mitropoulou [@ioannaMitropoulou](https://github.com/ioannaMitropoulou)
43+
* Joris Burger [@joburger](https://github.com/joburger)
44+
* Andrei Jipa [@stratocaster](https://github.com/stratocaster)
45+
* Jelle Feringa [@jf---](https://github.com/jf---)
3146

3247

0 commit comments

Comments
 (0)