This is currently a work in progress, see the caveats below
A fork of Enrique's Skeinforge, taken from ahmetcemturan's SFACT.
- Simplify codebase in order to make the algorithms clearer.
- Seperate core Skeining functions from GUI.
- Remove dependency on TKinter.
- Simplify and consolidate configuration and profiles.
- Identify performance improvements.
-
Currently a work in progress - no guarantee the program will work nor produce identical results to Skeinforge/SFACT.
-
Functionality has been removed as part of the simplification process. For a fully developed modular system with a working GUI please refer to the original Skeinforge or SFACT derivative.
- The following plugins are currently available: carve,bottom,preface,inset,fill,multiply,speed,dimension,cool,comb,support (from raft),export
-
Only python 2.7 is supported.
-
No GUIMinimal GUI written in wxPython. Features:- Profile selection
- Profile copying, including effective profile (values from both the default profile and the selected profile)
- Basic profile editing
- Skeining
- Gcode visualisation (using Gviz module from Kliment's Printrun)
-
Supports only stepper extruders and volumetric extrusion.
usage: skeinforge_engine.py [-h] [-c config] [-p profile] [-o output] [-r reprocess] file Skeins a 3D model into gcode. positional arguments: file The file to skein. Files accepted: stl, obj, gts, and svg or pickled_slicedmodel files produced by SkeinforgeEngine. optional arguments: -h, --help show this help message and exit -c config Configuration for skeinforge engine. -p profile Profile for the skeining. -o output Output filename (including path). Overrides other export filename settings. -r reprocess Comma seperated list of plugins to reprocess a pickled sliced model file. The export plugin is automatically appended.
usage: skeinforge_engine_gui.py
- Configuration is divided into two files: skeinforge_engine.cfg for core program settings and a profile for the runtime plugin settings.
- If no profile is given on the command line then a default profile is used: fallback.profile. The default profile can be specified in skeinforge_engine.cfg.
- Profile settings are cummulative, that is the default profile is always read first, and then the given profile. Any settings not defined in the given profile will be picked up from the default.
- Reprocessing allows you to use a pickled_slicedmodel file (if this is turned on in the export settings) to reload the underlying data structure and then reapply specific plugins. For example, the following command would load an existing gcode object and reapply the fill plugin from the specified profile:
- skeinforge_engine.py -r fill -p new.profile test.pickled_slicedmodel
- The wiki contains some notes about the design and process.
- The Api Docs are generated by Epydoc are most likely out-of-date but can be browsed for an idea of the code.
- Credit to Enrique and the original contributers in making Skeinforge available, and to Ahmet for his contributions through SFACT.
- SimpleEditor and GViz classes taken from Kliment's Printrun