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

Previous / Next / Contents


Skirt is a plugin to give the extruder some extra time to begin extruding properly before beginning the object, and to put a baffle around the model in order to keep the extrusion warm.

The skirt manual page is at:
http://fabmetheus.crsndoo.com/wiki/index.php/Skeinforge_Skirt

It is loosely based on Lenbook's outline plugin:

http://www.thingiverse.com/thing:4918

it is also loosely based on the outline that Nophead sometimes uses:

http://hydraraptor.blogspot.com/2010/01/hot-metal-and-serendipity.html

and also loosely based on the baffles that Nophead made to keep corners warm:

http://hydraraptor.blogspot.com/2010/09/some-corners-like-it-hot.html

If you want only an outline, set 'Layers To' to one. This gives the extruder some extra time to begin extruding properly before beginning your object, and gives you an early verification of where your object will be extruded.

If you also want an insulating skirt around the entire object, set 'Layers To' to a huge number, like 912345678. This will additionally make an insulating baffle around the object; to prevent moving air from cooling the object, which increases warping, especially in corners.


Operation
Settings
  Convex
  Gap over Perimeter Width
  Layers To
Examples

Operation


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

Settings


Convex

Default is on.

When selected, the skirt will be convex, going around the model with only convex angles. If convex is not selected, the skirt will hug the model, going into every nook and cranny.

Gap over Perimeter Width

Default is three.

Defines the ratio of the gap between the object and the skirt over the edge width. If the ratio is too low, the skirt will connect to the object, if the ratio is too high, the skirt willl not provide much insulation for the object.

Layers To

Default is a one.

Defines the number of layers of the skirt. If you want only an outline, set 'Layers To' to one. If you want an insulating skirt around the entire object, set 'Layers To' to a huge number, like 912345678.

Examples


The following examples skirt the file Screw Holder Bottom.stl. The examples are run in a terminal in the folder which contains Screw Holder Bottom.stl and skirt.py.

> python skirt.py
This brings up the skirt dialog.

> python skirt.py Screw Holder Bottom.stl
The skirt tool is parsing the file:
Screw Holder Bottom.stl
..
The skirt tool has created the file:
.. Screw Holder Bottom_skirt.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
fabmetheus_utilities.geometry.solids.triangle_mesh

 
Classes
       
LoopCrossDictionary
SkirtRepository
SkirtSkein

 
class LoopCrossDictionary
    Loop with a horizontal and vertical dictionary.
 
  Methods defined here:
__init__(self)
Initialize LoopCrossDictionary.
__repr__(self)
Get the string representation of this LoopCrossDictionary.

 
class SkirtRepository
    A class to handle the skirt settings.
 
  Methods defined here:
__init__(self)
Set the default settings, execute title & settings fileName.
execute(self)
Skirt button has been clicked.

 
class SkirtSkein
    A class to skirt a skein of extrusions.
 
  Methods defined here:
__init__(self)
Initialize variables.
addFlowRate(self, flowRate)
Add a line of temperature if different.
addSkirt(self, z)
At skirt at z to gcode output.
addTemperatureLineIfDifferent(self, temperature)
Add a line of temperature if different.
createSegmentDictionaries(self, loopCrossDictionary)
Create horizontal and vertical segment dictionaries.
createSkirtLoops(self)
Create the skirt loops.
getCraftedGcode(self, gcodeText, repository)
Parse gcode text and store the skirt gcode.
getHorizontalXIntersectionsTable(self, loop)
Get the horizontal x intersections table from the loop.
parseBoundaries(self)
Parse the boundaries and union them.
parseInitialization(self)
Parse gcode initialization and store the parameters.
parseLine(self, line)
Parse a gcode line and add it to the skirt skein.
setSkirtFeedFlowTemperature(self)
Set the skirt feed rate, flow rate and temperature to that of the next extrusion.
unifyLayer(self, loopCrossDictionary)
Union the loopCrossDictionary with the unifiedLoop.

 
Functions
       
getCraftedText(fileName, text='', repository=None)
Skirt the fill file or text.
getCraftedTextFromText(gcodeText, repository=None)
Skirt the fill text.
getNewRepository()
Get new repository.
getOuterLoops(loops)
Get widdershins outer loops.
main()
Display the skirt dialog.
writeOutput(fileName, shouldAnalyze=True)
Skirt 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)