mandoline-py icon indicating copy to clipboard operation
mandoline-py copied to clipboard

Printable G-code with correct extrusion calculation and misc improvements, more test models

Open Spiritdude opened this issue 3 years ago • 0 comments

I documented all changes in new CHANGES file, here a copy:

2021/04/11: 0.8.5:

  • adding -S shell_speed=..
  • added Makefile and tests/Makefile and more test models

2021/04/06: 0.8.4:

  • SVG output: supporting slicing to SVG, using "-o test.svg", very experimental
  • intern: model.scale([x,y,z]) implemented
  • cli: support for -M scale=s or -M scale=x,y,z
  • intern: fixed vector.py normalize() and truediv() supporting STL with bad normals
  • un/retract enabled again

2021/04/04: 0.8.3:

  • cli & extending configs:
    • cool_fan_speed_{min/max}
    • cool_fan_full_layer=2 (starting fan after e.g. layer 2 is reached),
    • start_gcode and end_gcode and new config type 'str' as well
    • skirt_lines=3 only considered if skirt_layers != 0
    • gcode_comments = True|False (adding various useful info in Gcode)
    • random_pos = True|False: randomize position of model on the build-plate
  • all the config included in Gcode
  • intern: carrying over 'typ' ('type' in python ;-) of the extrusion in _raw_add_paths, to refine the retract/unretract, this allowed have output gcode more descriptive with ';TYPE:..',
  • cli: support -l or --load=... to load more configs (e.g. per printer, or material)
  • cli: support -Q <term> partial match
  • output filament used at the end of slicing
  • most un/retract disabled for now to confirm extrusion calculation working
  • prints simple models like 10/20mm cube and xyzHollowCalibrationCubeV2
  • finally was able to to run code without build & install, me newbie with python
  • changed various from ... import ... to work locally
  • created Makefile to support make build install

I also added comments in slicer.py for my own sake and other contributors to understand the code better. A few stale/inactive code I left inside for future changes and left old code available where I was unsure which approach is better.

Note: I'm rather new to Python so I struggled to find a way to code on the source files and tests it right away without build/install, so I changed all imports and alter sys.path in __init.py__ in case mandoline is called from installed location.

Spiritdude avatar Apr 11 '21 06:04 Spiritdude