chiark / gitweb /
Move extruder switching GCode to profile instead of hardcoded.
authordaid <daid303@gmail.com>
Mon, 7 May 2012 15:42:46 +0000 (17:42 +0200)
committerdaid <daid303@gmail.com>
Mon, 7 May 2012 15:42:46 +0000 (17:42 +0200)
Cura/gui/alterationPanel.py
Cura/gui/sliceProgessPanel.py
Cura/util/profile.py

index 5f5098d63bf57134355dd0833850e4b937640bae..144f3d94175a7f7f9174bd3ef7a4421b711f3caf 100644 (file)
@@ -9,6 +9,8 @@ class alterationPanel(wx.Panel):
                wx.Panel.__init__(self, parent,-1)\r
 \r
                self.alterationFileList = ['start.gcode', 'end.gcode', 'support_start.gcode', 'support_end.gcode', 'nextobject.gcode', 'replace.csv']\r
+               if int(profile.getPreference('extruder_amount')) > 1:\r
+                       self.alterationFileList.append('switchExtruder.gcode')\r
                self.currentFile = None\r
 \r
                #self.textArea = wx.TextCtrl(self, style=wx.TE_MULTILINE|wx.TE_DONTWRAP|wx.TE_PROCESS_TAB)\r
index 9e49e5b37bfda043cd51367fea15755aa99de720..d2240a565754bd788f7f4faef0ab10dc03482bc2 100644 (file)
@@ -190,11 +190,10 @@ class WorkerThread(threading.Thread):
                                                resultFile.write(';LAYER:%d\n' % (layerNr))
                                                resultFile.write(';EXTRUDER:%d\n' % (nextExtruder))
                                                if nextExtruder != currentExtruder:
-                                                       resultFile.write("G1 E-5 F5000\n")
-                                                       resultFile.write("G92 E0\n")
-                                                       resultFile.write("T%d\n" % (nextExtruder))
-                                                       resultFile.write("G1 E5 F5000\n")
-                                                       resultFile.write("G92 E0\n")
+                                                       resultFile.write(';TYPE:CUSTOM\n')
+                                                       profile.setTempOverride('extruder', nextExtruder)
+                                                       resultFile.write(profile.getAlterationFileContents('switchExtruder.gcode'))
+                                                       profile.resetTempOverride()
                                                        currentExtruder = nextExtruder
                                                layerHasLine = True
                                        resultFile.write(line)
index 5e6f67ef7b8d2b8705b9fb850b7dd3f399c434a0..22d30fb0a0a7fca15b99c89b2331107c500b9b95 100644 (file)
@@ -122,6 +122,13 @@ G92 E0
 G1 Z0 F{max_z_speed}\r
 """,\r
 #######################################################################################\r
+       'switchExtruder.gcode': """;Switch between the current extruder and the next extruder, when printing with multiple extruders.\r
+G1 E-5 F5000\r
+G92 E0\r
+T{extruder}\r
+G1 E5 F5000\r
+G92 E0\r
+""",\r
 }\r
 preferencesDefaultSettings = {\r
        'wizardDone': 'False',\r