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

Previous / Next / Contents

`
Clip clips the ends of loops to prevent bumps from forming.
The clip manual page is at:
http://www.bitsfrombytes.com/wiki/index.php?title=Skeinforge_Clip
Operation
Settings
Clip Over Perimeter Width
Maximum Connection Distance Over Perimeter Width
Examples
`

## Operation

The default 'Activate Clip' checkbox is on. When it is on, the functions described below will work, when it is off, the functions will not be called.

## Settings

### Clip Over Perimeter Width

Default is 0.2.
Defines the ratio of the amount each end of the loop is clipped over the perimeter width. The total gap will therefore be twice the clip. If the ratio is too high loops will have a gap, if the ratio is too low there will be a bulge at the loop ends.

### Maximum Connection Distance Over Perimeter Width

Default is ten.
Defines the ratio of the maximum connection distance between loops over the perimeter width. If the ratio is zero, nothing will be done. If it is ratio greater than zero, clip will connect nearby loops, combining them into a spiral. For loop connection, nearby means that the distance between a pair of loops is smaller or equal to the maximum connection distance.

## Examples

The following examples clip the file Screw Holder Bottom.stl. The examples are run in a terminal in the folder which contains Screw Holder Bottom.stl and clip.py.
> python clip.py
This brings up the clip dialog.
> python clip.py Screw Holder Bottom.stl
The clip tool is parsing the file:
Screw Holder Bottom.stl
..
The clip tool has created the file:
.. Screw Holder Bottom_clip.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 clip
>>> clip.main()
This brings up the clip dialog.
>>> clip.writeOutput('Screw Holder Bottom.stl')
The clip tool is parsing the file:
Screw Holder Bottom.stl
..
The clip tool has created the file:
.. Screw Holder Bottom_clip.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
`` |  | ClipRepository ClipSkein
class ClipRepository
`` | `A class to handle the clip settings.`
| Methods defined here: __init__(self) `Set the default settings, execute title & settings fileName.` execute(self) `Clip button has been clicked.`
class ClipSkein
`` | `A class to clip a skein of extrusions.`
| Methods defined here: __init__(self) addGcodeFromThreadZ(self, thread, z) `Add a gcode thread to the output.` addSegmentToPixelTables(self, location, maskPixelTable, oldLocation) `Add the segment to the layer and mask table.` addTailoredLoopPath(self, line) `Add a clipped loop path.` getConnectionIsCloseWithoutOverlap(self, location, path) `Determine if the connection is close enough and does not overlap another thread.` getCraftedGcode(self, clipRepository, gcodeText) `Parse gcode text and store the clip gcode.` getNextThreadIsACloseLoop(self, path) `Determine if the next thread is a loop.` isNextExtruderOn(self) `Determine if there is an extruder on command before a move command.` linearMove(self, splitLine) `Add to loop path if this is a loop or path.` parseInitialization(self, clipRepository) `Parse gcode initialization and store the parameters.` parseLine(self, line) `Parse a gcode line and add it to the clip skein.` setLayerPixelTable(self) `Set the layer pixel table.`

Functions
`` |  | getCraftedText(fileName, text, clipRepository=None) `Clip a gcode linear move file or text.` getCraftedTextFromText(gcodeText, clipRepository=None) `Clip a gcode linear move text.` getNewRepository() `Get the repository constructor.` main() `Display the clip dialog.` writeOutput(fileName='') `Clip a gcode linear move file. Chain clip the gcode if it is not already clipped. If no fileName is specified, clip the first unmodified gcode file in this folder.`

Data
`` |  | __author__ = 'Enrique Perez (perez_enrique@yahoo.com)' __date__ = '$Date: 2008/21/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)