chiark / gitweb /
Add ooze-shield and wipe-tower settings.
authordaid <daid303@gmail.com>
Tue, 12 Nov 2013 16:20:33 +0000 (17:20 +0100)
committerdaid <daid303@gmail.com>
Tue, 12 Nov 2013 16:20:33 +0000 (17:20 +0100)
Cura/gui/simpleMode.py
Cura/util/profile.py
Cura/util/sliceEngine.py

index 4c8f85489ca65d1e8dec28ee46815731e107bbca..d985008c959132b4f776c8569651819a6bf4e50e 100644 (file)
@@ -35,7 +35,7 @@ class simpleModePanel(wx.Panel):
                sizer = wx.GridBagSizer()
                self.SetSizer(sizer)
 
-               sb = wx.StaticBox(printTypePanel, label=_("Select a print profile:"))
+               sb = wx.StaticBox(printTypePanel, label=_("Select a quickprint profile:"))
                boxsizer = wx.StaticBoxSizer(sb, wx.VERTICAL)
                boxsizer.Add(self.printTypeHigh)
                boxsizer.Add(self.printTypeNormal)
index 586891455acaa85cf6e812b905e99a0cc5f65fc3..17a13daa5ce97b524f98d01583454d2bfdac1eb2 100644 (file)
@@ -165,6 +165,8 @@ setting('print_bed_temperature',      70, int,   'basic',    _('Speed and Temper
 setting('support',                'None', [_('None'), _('Touching buildplate'), _('Everywhere')], 'basic', _('Support')).setLabel(_("Support type"), _("Type of support structure build.\n\"Touching buildplate\" is the most commonly used support setting.\n\nNone does not do any support.\nTouching buildplate only creates support where the support structure will touch the build platform.\nEverywhere creates support even on top of parts of the model."))
 setting('platform_adhesion',      'None', [_('None'), _('Brim'), _('Raft')], 'basic', _('Support')).setLabel(_("Platform adhesion type"), _("Different options that help in preventing corners from lifting due to warping.\nBrim adds a single layer thick flat area around your object which is easy to cut off afterwards, and the recommended option.\nRaft adds a thick raster at below the object and a thin interface between this and your object.\n(Note that enabling the brim or raft disables the skirt)"))
 setting('support_dual_extrusion',  'Both', [_('Both'), _('First extruder'), _('Second extruder')], 'basic', _('Support')).setLabel(_("Support dual extrusion"), _("Which extruder to use for support material, for break-away support you can use both extruders.\nBut if one of the materials is more expensive then the other you could select an extruder to use for support material. This causes more extruder switches.\nYou can also use the 2nd extruder for soluble support materials."))
+setting('wipe_tower',              False, bool,  'basic',    _('Dual extrusion')).setLabel(_("Wipe tower"), _("The wipe-tower is a tower printed on every layer when switching between nozzles.\nThe old nozzle is wiped off on the tower before the new nozzle is used to print the 2nd color."))
+setting('ooze_shield',             False, bool,  'basic',    _('Dual extrusion')).setLabel(_("Ooze shield"), _("The ooze shield is a 1 line thick shell around the object which stands a few mm from the object.\nThis shield catches any oozing from the unused nozzle in dual-extrusion."))
 setting('filament_diameter',        2.85, float, 'basic',    _('Filament')).setRange(1).setLabel(_("Diameter (mm)"), _("Diameter of your filament, as accurately as possible.\nIf you cannot measure this value you will have to calibrate it, a higher number means less extrusion, a smaller number generates more extrusion."))
 setting('filament_diameter2',          0, float, 'basic',    _('Filament')).setRange(0).setLabel(_("Diameter2 (mm)"), _("Diameter of your filament for the 2nd nozzle. Use 0 to use the same diameter as for nozzle 1."))
 setting('filament_diameter3',          0, float, 'basic',    _('Filament')).setRange(0).setLabel(_("Diameter3 (mm)"), _("Diameter of your filament for the 3th nozzle. Use 0 to use the same diameter as for nozzle 1."))
@@ -404,6 +406,8 @@ settingsDictionary['filament_diameter3'].addCondition(lambda : int(getMachineSet
 settingsDictionary['filament_diameter4'].addCondition(lambda : int(getMachineSetting('extruder_amount')) > 3)
 settingsDictionary['support_dual_extrusion'].addCondition(lambda : int(getMachineSetting('extruder_amount')) > 1)
 settingsDictionary['retraction_dual_amount'].addCondition(lambda : int(getMachineSetting('extruder_amount')) > 1)
+settingsDictionary['wipe_tower'].addCondition(lambda : int(getMachineSetting('extruder_amount')) > 1)
+settingsDictionary['ooze_shield'].addCondition(lambda : int(getMachineSetting('extruder_amount')) > 1)
 #Heated bed
 settingsDictionary['print_bed_temperature'].addCondition(lambda : getMachineSetting('has_heated_bed') == 'True')
 
index 5fb60e3b6c55f79529a16ac5975a70b09d798cdc..21b79a3dce5aafef10b0885a739aedb04ad07998 100644 (file)
@@ -335,6 +335,10 @@ class Slicer(object):
                        settings['gcodeFlavor'] = 1
                if profile.getProfileSetting('spiralize') == 'True':
                        settings['spiralizeMode'] = 1
+               if profile.getProfileSetting('wipe_tower') == 'True':
+                       settings['enableWipeTower'] = 1
+               if profile.getProfileSetting('ooze_shield') == 'True':
+                       settings['enableOozeShield'] = 1
                return settings
 
        def _runSliceProcess(self, cmdList):