# Python: module skeinforge_application.skeinforge_plugins.craft_plugins.whittle

skeinforge_application.skeinforge_plugins.craft_plugins.whittle ($Date: 2008/28/04 $) | index /home/enrique/Desktop/backup/babbleold/script/reprap/fabmetheus/skeinforge_application/skeinforge_plugins/craft_plugins/whittle.py

Previous / Next / Contents

`
Whittle will convert each polygon of a gcode file into a helix which has a vertical step down on each rotation.
Operation
Settings
Maximum Vertical Step'
Examples
`

## Operation

The default 'Activate Whittle' checkbox is on. When it is on, the functions described below will work, when it is off, the functions will not be called. If the cutting tool can cut the slab in one cut, the 'Activate Whittle' checkbox should be off, the default is off.

## Settings

### Maximum Vertical Step'

Default is 0.1 mm.
Defines the maximum distance that the helix will step down on each rotation. The number of steps in the helix will be the layer thickness divided by the 'Maximum Vertical Step', rounded up. The amount the helix will step down is the layer thickness divided by the number of steps. The thinner the 'Maximum Vertical Step', the more times the cutting tool will circle around on its way to the bottom of the slab.

## Examples

The following examples whittle the file Screw Holder Bottom.stl. The examples are run in a terminal in the folder which contains Screw Holder Bottom.stl and whittle.py.
> python whittle.py
This brings up the whittle dialog.
> python whittle.py Screw Holder Bottom.stl
The whittle tool is parsing the file:
Screw Holder Bottom.stl
..
The whittle tool has created the file:
.. Screw Holder Bottom_whittle.gcode
> python
Python 2.5.1 (r251:54863, Sep 22 2007, 01:43:31)
[GCC 4.2.1 (SUSE Linux)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import whittle
>>> whittle.main()
This brings up the whittle dialog.
>>> whittle.writeOutput('Screw Holder Bottom.stl')
The whittle tool is parsing the file:
Screw Holder Bottom.stl
..
The whittle tool has created the file:
.. Screw Holder Bottom_whittle.gcode

Previous / Next / Contents

Modules

``

__init__ fabmetheus_utilities.fabmetheus_tools.fabmetheus_interpret fabmetheus_utilities.gcodec | math fabmetheus_utilities.settings skeinforge_application.skeinforge_utilities.skeinforge_craft | skeinforge_application.skeinforge_utilities.skeinforge_polyfile skeinforge_application.skeinforge_utilities.skeinforge_profile sys |

Classes

``

WhittleRepository
WhittleSkein

class WhittleRepository
`` | `A class to handle the whittle settings.`

Methods defined here:

__init__(self)
  `Set the default settings, execute title & settings fileName.`

execute(self)
  `Whittle button has been clicked.`

class WhittleSkein
`` | `A class to whittle a skein of extrusions.`

Methods defined here:

__init__(self)

getCraftedGcode(self, whittleRepository, gcodeText)
  `Parse gcode text and store the whittle gcode.`

getLinearMove(self, line, splitLine)
  `Get the linear move.`

parseInitialization(self)
  `Parse gcode initialization and store the parameters.`

parseLine(self, line)
  `Parse a gcode line and add it to the whittle skein.`

repeatLines(self)
  `Repeat the lines at decreasing altitude.`

setLayerThinknessVerticalDeltas(self, splitLine)
  `Set the layer thickness and the vertical deltas.`

Functions

``

getCraftedText(fileName, text='', whittleRepository=None)
  `Whittle the preface file or text.`

getCraftedTextFromText(gcodeText, whittleRepository=None)
  `Whittle the preface gcode text.`

getNewRepository()
  `Get the repository constructor.`

main()
  `Display the whittle dialog.`

writeOutput(fileName='')
  `Whittle the carving of a gcode file. If no fileName is specified, whittle the first unmodified gcode file in this folder.`

Data
`` |  | __author__ = 'Enrique Perez (perez_enrique@yahoo.com)' __date__ = '$Date: 2008/28/04 $' __license__ = 'GPL 3.0' absolute_import = _Feature((2, 5, 0, 'alpha', 1), (2, 7, 0, 'alpha', 0), 16384)

Author
`` |  | Enrique Perez (perez_enrique@yahoo.com)