From: daid Date: Tue, 12 Nov 2013 16:20:33 +0000 (+0100) Subject: Add ooze-shield and wipe-tower settings. X-Git-Tag: 13.11.2~14 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=7294e578709d43c09b686ac499dfd75b667421ad;p=cura.git Add ooze-shield and wipe-tower settings. --- diff --git a/Cura/gui/simpleMode.py b/Cura/gui/simpleMode.py index 4c8f8548..d985008c 100644 --- a/Cura/gui/simpleMode.py +++ b/Cura/gui/simpleMode.py @@ -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) diff --git a/Cura/util/profile.py b/Cura/util/profile.py index 58689145..17a13daa 100644 --- a/Cura/util/profile.py +++ b/Cura/util/profile.py @@ -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') diff --git a/Cura/util/sliceEngine.py b/Cura/util/sliceEngine.py index 5fb60e3b..21b79a3d 100644 --- a/Cura/util/sliceEngine.py +++ b/Cura/util/sliceEngine.py @@ -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):