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

Previous / Next / Contents

`
This craft tool jitters the loop end position to a different place on each layer to prevent a ridge from being created on the side of the object.
The jitter manual page is at:
http://fabmetheus.crsndoo.com/wiki/index.php/Skeinforge_Jitter
Operation
Settings
Jitter Over Perimeter Width
Examples
`

## Operation

The default 'Activate Jitter' checkbox is on. When it is on, the functions described below will work, when it is off, nothing will be done.

## Settings

### Jitter Over Perimeter Width

Default: 2
Defines the amount the loop ends will be jittered over the edge width. A high value means the loops will start all over the place and a low value means loops will start at roughly the same place on each layer.
For example if you turn jitter off and print a cube every outside shell on the cube will start from exactly the same point so you will have a visible "mark/line/seam" on the side of the cube. Using the jitter tool you move that start point around hence you avoid that visible seam.

## Examples

The following examples jitter the file Screw Holder Bottom.stl. The examples are run in a terminal in the folder which contains Screw Holder Bottom.stl and jitter.py.
> python jitter.py
This brings up the jitter dialog.
> python jitter.py Screw Holder Bottom.stl
The jitter tool is parsing the file:
Screw Holder Bottom.stl
..
The jitter tool has created the file:
.. Screw Holder Bottom_jitter.gcode

Previous / Next / Contents

Modules
`` |  |
__init__ fabmetheus_utilities.archive fabmetheus_utilities.euclidean | fabmetheus_utilities.fabmetheus_tools.fabmetheus_interpret fabmetheus_utilities.gcodec fabmetheus_utilities.intercircle | math fabmetheus_utilities.settings skeinforge_application.skeinforge_utilities.skeinforge_craft | skeinforge_application.skeinforge_utilities.skeinforge_polyfile skeinforge_application.skeinforge_utilities.skeinforge_profile sys

Classes
`` |  | JitterRepository JitterSkein
class JitterRepository
`` | `A class to handle the jitter settings.`
| Methods defined here: __init__(self) `Set the default settings, execute title & settings fileName.` execute(self) `Jitter button has been clicked.`
class JitterSkein
`` | `A class to jitter a skein of extrusions.`
| Methods defined here: __init__(self) `Initialize.` addGcodeFromThreadZ(self, thread, z) `Add a gcode thread to the output.` addGcodeMovementZ(self, feedRateMinute, point, z) `Add a movement to the output.` addGcodePathZ(self, feedRateMinute, path, z) `Add a gcode path, without modifying the extruder, to the output.` addTailoredLoopPath(self) `Add a clipped and jittered loop path.` getCraftedGcode(self, jitterRepository, gcodeText) `Parse gcode text and store the jitter gcode.` parseInitialization(self, jitterRepository) `Parse gcode initialization and store the parameters.` parseLine(self, line) `Parse a gcode line, jitter it and add it to the jitter skein.` setFeedRateLocationLoopPath(self, line, splitLine) `Set the feedRateMinute, oldLocation and loopPath.`

Functions
`` |  | getCraftedText(fileName, text, jitterRepository=None) `Jitter a gcode linear move text.` getCraftedTextFromText(gcodeText, jitterRepository=None) `Jitter a gcode linear move text.` getJitteredLoop(jitterDistance, jitterLoop) `Get a jittered loop path.` getNewRepository() `Get new repository.` isLoopNumberEqual(betweenX, betweenXIndex, loopNumber) `Determine if the loop number is equal.` main() `Display the jitter dialog.` writeOutput(fileName, shouldAnalyze=True) `Jitter a gcode linear move file.`

Data
`` |  | __author__ = 'Enrique Perez (perez_enrique@yahoo.com)' __date__ = '$Date: 2008/21/04 $' __license__ = 'GNU Affero General Public License http://www.gnu.org/licenses/agpl.html' absolute_import = _Feature((2, 5, 0, 'alpha', 1), (2, 7, 0, 'alpha', 0), 16384)

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