From d2d2fce6c0e1b47f681d281096a840933fe917fb Mon Sep 17 00:00:00 2001 From: daid Date: Wed, 23 Apr 2014 13:14:21 +0200 Subject: [PATCH] Add more raft settings and enable the surface layers for the raft. --- Cura/util/profile.py | 2 ++ Cura/util/sliceEngine.py | 8 ++++++++ 2 files changed, 10 insertions(+) diff --git a/Cura/util/profile.py b/Cura/util/profile.py index 7e858869..75852fa9 100644 --- a/Cura/util/profile.py +++ b/Cura/util/profile.py @@ -234,6 +234,8 @@ setting('raft_base_thickness', 0.3, float, 'expert', _('Raft')).setRange(0).setL setting('raft_base_linewidth', 0.7, float, 'expert', _('Raft')).setRange(0).setLabel(_("Base line width (mm)"), _("When you are using the raft this is the width of the base layer lines which are put down.")) setting('raft_interface_thickness', 0.2, float, 'expert', _('Raft')).setRange(0).setLabel(_("Interface thickness (mm)"), _("When you are using the raft this is the thickness of the interface layer which is put down.")) setting('raft_interface_linewidth', 0.2, float, 'expert', _('Raft')).setRange(0).setLabel(_("Interface line width (mm)"), _("When you are using the raft this is the width of the interface layer lines which are put down.")) +setting('raft_airgap', 0.2, float, 'expert', _('Raft')).setRange(0).setLabel(_("Airgap"), _("Gap between the last layer of the raft and the first printing layer. A small gap of 0.2mm works wonders on PLA and makes the raft easy to remove.")) +setting('raft_surface_layers', 2, int, 'expert', _('Raft')).setRange(0).setLabel(_("Surface layers"), _("Amount of surface layers put on top of the raft, these are fully filled layers on which the model is printed.")) setting('fix_horrible_union_all_type_a', True, bool, 'expert', _('Fix horrible')).setLabel(_("Combine everything (Type-A)"), _("This expert option adds all parts of the model together. The result is usually that internal cavities disappear. Depending on the model this can be intended or not. Enabling this option is at your own risk. Type-A is dependent on the model normals and tries to keep some internal holes intact. Type-B ignores all internal holes and only keeps the outside shape per layer.")) setting('fix_horrible_union_all_type_b', False, bool, 'expert', _('Fix horrible')).setLabel(_("Combine everything (Type-B)"), _("This expert option adds all parts of the model together. The result is usually that internal cavities disappear. Depending on the model this can be intended or not. Enabling this option is at your own risk. Type-A is dependent on the model normals and tries to keep some internal holes intact. Type-B ignores all internal holes and only keeps the outside shape per layer.")) setting('fix_horrible_use_open_bits', False, bool, 'expert', _('Fix horrible')).setLabel(_("Keep open faces"), _("This expert option keeps all the open bits of the model intact. Normally Cura tries to stitch up small holes and remove everything with big holes, but this option keeps bits that are not properly part of anything and just goes with whatever is left. This option is usually not what you want, but it might enable you to slice models otherwise failing to produce proper paths.\nAs with all \"Fix horrible\" options, results may vary and use at your own risk.")) diff --git a/Cura/util/sliceEngine.py b/Cura/util/sliceEngine.py index 40245a9b..2e7a0d9f 100644 --- a/Cura/util/sliceEngine.py +++ b/Cura/util/sliceEngine.py @@ -520,6 +520,14 @@ class Engine(object): settings['raftBaseLinewidth'] = int(profile.getProfileSettingFloat('raft_base_linewidth') * 1000) settings['raftInterfaceThickness'] = int(profile.getProfileSettingFloat('raft_interface_thickness') * 1000) settings['raftInterfaceLinewidth'] = int(profile.getProfileSettingFloat('raft_interface_linewidth') * 1000) + settings['raftAirGap'] = int(profile.getProfileSettingFloat('raft_airgap') * 1000) + settings['raftBaseSpeed'] = int(profile.getProfileSettingFloat('bottom_layer_speed')) + settings['raftFanSpeed'] = 0 + settings['raftSurfaceThickness'] = 200 + settings['raftSurfaceLinewidth'] = int(profile.calculateEdgeWidth() * 1000) + settings['raftSurfaceLineSpacing'] = int(profile.calculateEdgeWidth() * 1000) + settings['raftSurfaceLayers'] = int(profile.getProfileSettingFloat('raft_surface_layers')) + settings['raftSurfaceSpeed'] = int(profile.getProfileSettingFloat('bottom_layer_speed')) else: settings['skirtDistance'] = int(profile.getProfileSettingFloat('skirt_gap') * 1000) settings['skirtLineCount'] = int(profile.getProfileSettingFloat('skirt_line_count')) -- 2.30.2