<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head><title>Python: module skeinforge_application.skeinforge_plugins.craft_plugins.comb</title> </head><body bgcolor="#f0f0f8"> <table width="100%" cellspacing=0 cellpadding=2 border=0 summary="heading"> <tr bgcolor="#7799ee"> <td valign=bottom> <br> <font color="#ffffff" face="helvetica, arial"> <br><big><big><strong><a href="skeinforge_application.html"><font color="#ffffff">skeinforge_application</font></a>.<a href="skeinforge_application.skeinforge_plugins.html"><font color="#ffffff">skeinforge_plugins</font></a>.<a href="skeinforge_application.skeinforge_plugins.craft_plugins.html"><font color="#ffffff">craft_plugins</font></a>.comb</strong></big></big> ($Date: 2008/21/04 $)</font></td ><td align=right valign=bottom ><font color="#ffffff" face="helvetica, arial"><a href=".">index</a><br><a href="file:/home/enrique/Desktop/backup/babbleold/script/reprap/fabmetheus/skeinforge_application/skeinforge_plugins/craft_plugins/comb.py">/home/enrique/Desktop/backup/babbleold/script/reprap/fabmetheus/skeinforge_application/skeinforge_plugins/craft_plugins/comb.py</a></font></td></tr></table> <p> <a href="skeinforge_application.skeinforge_plugins.craft_plugins.coil.html">Previous</a> / <a href="skeinforge_application.skeinforge_plugins.craft_plugins.cool.html">Next</a> / <a href="contents.html">Contents</a> </p> <p><tt><br> Comb is a craft plugin to bend the extruder travel paths around holes in the slices, to avoid stringers.<br> <br> The comb manual page is at:<br> <a href="http://fabmetheus.crsndoo.com/wiki/index.php/Skeinforge_Comb">http://fabmetheus.crsndoo.com/wiki/index.php/Skeinforge_Comb</a><br> <br> <br /> <a href="#Operation">Operation</a><br /> <a href="#Settings">Settings</a><br /> <a href="#Running Jump Space">Running Jump Space</a><br /> <a href="#Examples">Examples</a><br /> <br /> <a name="Operation" id="Operation"></a><h2>Operation</h2> <hr> The default 'Activate Comb' checkbox is off. When it is on, the functions described below will work, when it is off, nothing will be done.<br> <br> <a name="Settings" id="Settings"></a><h2>Settings</h2> <hr> <a name="Running Jump Space" id="Running Jump Space"></a><h3>Running Jump Space</h3> Default: 2 mm<br> <br> Defines the running jump space that is added before going from one island to another. If the running jump space is greater than zero, the departure from the island will also be brought closer to the arrival point on the next island so that the stringer between islands will be shorter. For an extruder with acceleration code, an extra space before leaving the island means that it will be going at high speed as it exits the island, which means the stringer between islands will be thinner.<br> <br> <a name="Examples" id="Examples"></a><h2>Examples</h2> <hr> The following examples comb the file Screw Holder Bottom.stl. The examples are run in a terminal in the folder which contains Screw Holder Bottom.stl and comb.py.<br> <br> > python comb.py<br> This brings up the comb dialog.<br> <br> > python comb.py Screw Holder Bottom.stl<br> The comb tool is parsing the file:<br> Screw Holder Bottom.stl<br> ..<br> The comb tool has created the file:<br> .. Screw Holder Bottom_comb.gcode</tt> <br /> <br /> <p> <a href="skeinforge_application.skeinforge_plugins.craft_plugins.coil.html">Previous</a> / <a href="skeinforge_application.skeinforge_plugins.craft_plugins.cool.html">Next</a> / <a href="contents.html">Contents</a> </p> <hr> </p> <p> <table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section"> <tr bgcolor="#aa55cc"> <td colspan=3 valign=bottom> <br> <font color="#ffffff" face="helvetica, arial"><big><strong>Modules</strong></big></font></td></tr> <tr><td bgcolor="#aa55cc"><tt> </tt></td><td> </td> <td width="100%"><table width="100%" summary="list"><tr><td width="25%" valign=top><a href="__init__.html">__init__</a><br> <a href="fabmetheus_utilities.archive.html">fabmetheus_utilities.archive</a><br> <a href="fabmetheus_utilities.euclidean.html">fabmetheus_utilities.euclidean</a><br> </td><td width="25%" valign=top><a href="fabmetheus_utilities.fabmetheus_tools.fabmetheus_interpret.html">fabmetheus_utilities.fabmetheus_tools.fabmetheus_interpret</a><br> <a href="fabmetheus_utilities.gcodec.html">fabmetheus_utilities.gcodec</a><br> <a href="fabmetheus_utilities.intercircle.html">fabmetheus_utilities.intercircle</a><br> </td><td width="25%" valign=top><a href="math.html">math</a><br> <a href="fabmetheus_utilities.settings.html">fabmetheus_utilities.settings</a><br> <a href="skeinforge_application.skeinforge_utilities.skeinforge_craft.html">skeinforge_application.skeinforge_utilities.skeinforge_craft</a><br> </td><td width="25%" valign=top><a href="skeinforge_application.skeinforge_utilities.skeinforge_polyfile.html">skeinforge_application.skeinforge_utilities.skeinforge_polyfile</a><br> <a href="skeinforge_application.skeinforge_utilities.skeinforge_profile.html">skeinforge_application.skeinforge_utilities.skeinforge_profile</a><br> <a href="sys.html">sys</a><br> </td></tr></table></td></tr></table><p> <table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section"> <tr bgcolor="#ee77aa"> <td colspan=3 valign=bottom> <br> <font color="#ffffff" face="helvetica, arial"><big><strong>Classes</strong></big></font></td></tr> <tr><td bgcolor="#ee77aa"><tt> </tt></td><td> </td> <td width="100%"><dl> <dt><font face="helvetica, arial"><a href="skeinforge_application.skeinforge_plugins.craft_plugins.comb.html#BoundarySegment">BoundarySegment</a> </font></dt><dt><font face="helvetica, arial"><a href="skeinforge_application.skeinforge_plugins.craft_plugins.comb.html#CombRepository">CombRepository</a> </font></dt><dt><font face="helvetica, arial"><a href="skeinforge_application.skeinforge_plugins.craft_plugins.comb.html#CombSkein">CombSkein</a> </font></dt><dt><font face="helvetica, arial"><a href="skeinforge_application.skeinforge_plugins.craft_plugins.comb.html#DistancePoint">DistancePoint</a> </font></dt></dl> <p> <table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section"> <tr bgcolor="#ffc8d8"> <td colspan=3 valign=bottom> <br> <font color="#000000" face="helvetica, arial"><a name="BoundarySegment">class <strong>BoundarySegment</strong></a></font></td></tr> <tr bgcolor="#ffc8d8"><td rowspan=2><tt> </tt></td> <td colspan=2><tt>A boundary and segment.<br> </tt></td></tr> <tr><td> </td> <td width="100%">Methods defined here:<br> <dl><dt><a name="BoundarySegment-__init__"><strong>__init__</strong></a>(self, begin)</dt><dd><tt>Initialize</tt></dd></dl> <dl><dt><a name="BoundarySegment-getSegment"><strong>getSegment</strong></a>(self, boundarySegmentIndex, boundarySegments, edgeWidth, runningJumpSpace)</dt><dd><tt>Get both paths along the loop from the point closest to the begin to the point closest to the end.</tt></dd></dl> </td></tr></table> <p> <table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section"> <tr bgcolor="#ffc8d8"> <td colspan=3 valign=bottom> <br> <font color="#000000" face="helvetica, arial"><a name="CombRepository">class <strong>CombRepository</strong></a></font></td></tr> <tr bgcolor="#ffc8d8"><td rowspan=2><tt> </tt></td> <td colspan=2><tt>A class to handle the comb settings.<br> </tt></td></tr> <tr><td> </td> <td width="100%">Methods defined here:<br> <dl><dt><a name="CombRepository-__init__"><strong>__init__</strong></a>(self)</dt><dd><tt>Set the default settings, execute title & settings fileName.</tt></dd></dl> <dl><dt><a name="CombRepository-execute"><strong>execute</strong></a>(self)</dt><dd><tt>Comb button has been clicked.</tt></dd></dl> </td></tr></table> <p> <table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section"> <tr bgcolor="#ffc8d8"> <td colspan=3 valign=bottom> <br> <font color="#000000" face="helvetica, arial"><a name="CombSkein">class <strong>CombSkein</strong></a></font></td></tr> <tr bgcolor="#ffc8d8"><td rowspan=2><tt> </tt></td> <td colspan=2><tt>A class to comb a skein of extrusions.<br> </tt></td></tr> <tr><td> </td> <td width="100%">Methods defined here:<br> <dl><dt><a name="CombSkein-__init__"><strong>__init__</strong></a>(self)</dt><dd><tt>Initialize</tt></dd></dl> <dl><dt><a name="CombSkein-addGcodePathZ"><strong>addGcodePathZ</strong></a>(self, feedRateMinute, path, z)</dt><dd><tt>Add a gcode path, without modifying the extruder, to the output.</tt></dd></dl> <dl><dt><a name="CombSkein-addIfTravel"><strong>addIfTravel</strong></a>(self, splitLine)</dt><dd><tt>Add travel move around loops if the extruder is off.</tt></dd></dl> <dl><dt><a name="CombSkein-addToLoop"><strong>addToLoop</strong></a>(self, location)</dt><dd><tt>Add a location to loop.</tt></dd></dl> <dl><dt><a name="CombSkein-getAroundBetweenLineSegment"><strong>getAroundBetweenLineSegment</strong></a>(self, begin, boundaries, end)</dt><dd><tt>Get the path around the loops in the way of the original line segment.</tt></dd></dl> <dl><dt><a name="CombSkein-getAroundBetweenPath"><strong>getAroundBetweenPath</strong></a>(self, begin, end)</dt><dd><tt>Get the path around the loops in the way of the original line segment.</tt></dd></dl> <dl><dt><a name="CombSkein-getBoundaries"><strong>getBoundaries</strong></a>(self)</dt><dd><tt>Get boundaries for the layer.</tt></dd></dl> <dl><dt><a name="CombSkein-getBoundaryIndexes"><strong>getBoundaryIndexes</strong></a>(self, begin, boundaries, end, points)</dt><dd><tt>Get boundary indexes and set the points in the way of the original line segment.</tt></dd></dl> <dl><dt><a name="CombSkein-getBoundarySegments"><strong>getBoundarySegments</strong></a>(self, begin, boundaries, end)</dt><dd><tt>Get the path broken into boundary segments whenever a different boundary is crossed.</tt></dd></dl> <dl><dt><a name="CombSkein-getCraftedGcode"><strong>getCraftedGcode</strong></a>(self, gcodeText, repository)</dt><dd><tt>Parse gcode text and store the comb gcode.</tt></dd></dl> <dl><dt><a name="CombSkein-getInsidePointsAlong"><strong>getInsidePointsAlong</strong></a>(self, begin, end, points)</dt><dd><tt>Get the points along the segment if it is required to keep the path inside the widdershin boundaries.</tt></dd></dl> <dl><dt><a name="CombSkein-getPathBetween"><strong>getPathBetween</strong></a>(self, loop, points)</dt><dd><tt>Add a path between the edge and the fill.</tt></dd></dl> <dl><dt><a name="CombSkein-getWiddershins"><strong>getWiddershins</strong></a>(self)</dt><dd><tt>Get widdershins for the layer.</tt></dd></dl> <dl><dt><a name="CombSkein-parseBoundariesLayers"><strong>parseBoundariesLayers</strong></a>(self, line)</dt><dd><tt>Parse a gcode line.</tt></dd></dl> <dl><dt><a name="CombSkein-parseInitialization"><strong>parseInitialization</strong></a>(self)</dt><dd><tt>Parse gcode initialization and store the parameters.</tt></dd></dl> <dl><dt><a name="CombSkein-parseLine"><strong>parseLine</strong></a>(self, line)</dt><dd><tt>Parse a gcode line and add it to the comb skein.</tt></dd></dl> </td></tr></table> <p> <table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section"> <tr bgcolor="#ffc8d8"> <td colspan=3 valign=bottom> <br> <font color="#000000" face="helvetica, arial"><a name="DistancePoint">class <strong>DistancePoint</strong></a></font></td></tr> <tr bgcolor="#ffc8d8"><td rowspan=2><tt> </tt></td> <td colspan=2><tt>A class to get the distance of the point along a segment inside a loop.<br> </tt></td></tr> <tr><td> </td> <td width="100%">Methods defined here:<br> <dl><dt><a name="DistancePoint-__init__"><strong>__init__</strong></a>(self, begin, loop, runningJumpSpace, segment)</dt><dd><tt>Initialize</tt></dd></dl> </td></tr></table></td></tr></table><p> <table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section"> <tr bgcolor="#eeaa77"> <td colspan=3 valign=bottom> <br> <font color="#ffffff" face="helvetica, arial"><big><strong>Functions</strong></big></font></td></tr> <tr><td bgcolor="#eeaa77"><tt> </tt></td><td> </td> <td width="100%"><dl><dt><a name="-getCraftedText"><strong>getCraftedText</strong></a>(fileName, text, repository<font color="#909090">=None</font>)</dt><dd><tt>Comb a gcode linear move text.</tt></dd></dl> <dl><dt><a name="-getCraftedTextFromText"><strong>getCraftedTextFromText</strong></a>(gcodeText, repository<font color="#909090">=None</font>)</dt><dd><tt>Comb a gcode linear move text.</tt></dd></dl> <dl><dt><a name="-getJumpPoint"><strong>getJumpPoint</strong></a>(begin, end, loop, runningJumpSpace)</dt><dd><tt>Get running jump point inside loop.</tt></dd></dl> <dl><dt><a name="-getJumpPointIfInside"><strong>getJumpPointIfInside</strong></a>(boundary, otherPoint, edgeWidth, runningJumpSpace)</dt><dd><tt>Get the jump point if it is inside the boundary, otherwise return None.</tt></dd></dl> <dl><dt><a name="-getNewRepository"><strong>getNewRepository</strong></a>()</dt><dd><tt>Get new repository.</tt></dd></dl> <dl><dt><a name="-getPathsByIntersectedLoop"><strong>getPathsByIntersectedLoop</strong></a>(begin, end, loop)</dt><dd><tt>Get both paths along the loop from the point closest to the begin to the point closest to the end.</tt></dd></dl> <dl><dt><a name="-main"><strong>main</strong></a>()</dt><dd><tt>Display the comb dialog.</tt></dd></dl> <dl><dt><a name="-writeOutput"><strong>writeOutput</strong></a>(fileName, shouldAnalyze<font color="#909090">=True</font>)</dt><dd><tt>Comb a gcode linear move file.</tt></dd></dl> </td></tr></table><p> <table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section"> <tr bgcolor="#55aa55"> <td colspan=3 valign=bottom> <br> <font color="#ffffff" face="helvetica, arial"><big><strong>Data</strong></big></font></td></tr> <tr><td bgcolor="#55aa55"><tt> </tt></td><td> </td> <td width="100%"><strong>__author__</strong> = 'Enrique Perez (perez_enrique@yahoo.com)'<br> <strong>__date__</strong> = '$Date: 2008/21/04 $'<br> <strong>__license__</strong> = 'GNU Affero General Public License http://www.gnu.org/licenses/agpl.html'<br> <strong>absolute_import</strong> = _Feature((2, 5, 0, 'alpha', 1), (2, 7, 0, 'alpha', 0), 16384)</td></tr></table><p> <table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section"> <tr bgcolor="#7799ee"> <td colspan=3 valign=bottom> <br> <font color="#ffffff" face="helvetica, arial"><big><strong>Author</strong></big></font></td></tr> <tr><td bgcolor="#7799ee"><tt> </tt></td><td> </td> <td width="100%">Enrique Perez (perez_enrique@yahoo.com)</td></tr></table> </body></html>