From: daid Date: Fri, 16 Mar 2012 10:51:44 +0000 (+0100) Subject: Added advanced config for support X-Git-Tag: RC1~81 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=7954a951a688123558d47d87e2c9c77317d1a94d;p=cura.git Added advanced config for support --- diff --git a/SkeinPyPy_NewUI/fabmetheus_utilities/settings.py b/SkeinPyPy_NewUI/fabmetheus_utilities/settings.py index e3e46890..951f8b62 100644 --- a/SkeinPyPy_NewUI/fabmetheus_utilities/settings.py +++ b/SkeinPyPy_NewUI/fabmetheus_utilities/settings.py @@ -72,6 +72,11 @@ def firstLayerSpeedRatio(setting): speed = float(getProfileSetting('print_speed')) return bottomSpeed/speed +def calcSupportDistanceRatio(setting): + edgeWidth = calculateEdgeWidth(setting) + distance = float(getProfileSetting('support_distance', '0.5')) + return distance / edgeWidth + def getSkeinPyPyProfileInformation(): return { 'carve': { @@ -207,8 +212,8 @@ def getSkeinPyPyProfileInformation(): 'Raft_Additional_Margin_over_Length_%': DEFSET, 'Raft_Margin_mm': DEFSET, 'Support_Cross_Hatch': 'False', - 'Support_Flow_Rate_over_Operating_Flow_Rate_ratio': DEFSET, - 'Support_Gap_over_Perimeter_Extrusion_Width_ratio': DEFSET, + 'Support_Flow_Rate_over_Operating_Flow_Rate_ratio': storedPercentSetting('support_rate'), + 'Support_Gap_over_Perimeter_Extrusion_Width_ratio': calcSupportDistanceRatio, 'Support_Material_Choice_': storedSetting("support"), 'Support_Minimum_Angle_degrees': DEFSET, },'skirt': { diff --git a/SkeinPyPy_NewUI/newui/advancedConfig.py b/SkeinPyPy_NewUI/newui/advancedConfig.py index 185af56d..dbc4ba68 100644 --- a/SkeinPyPy_NewUI/newui/advancedConfig.py +++ b/SkeinPyPy_NewUI/newui/advancedConfig.py @@ -28,10 +28,14 @@ class advancedConfigWindow(configBase.configWindowBase): c = configBase.SettingRow(left, "Print order sequence", 'sequence', ['Loops > Perimeter > Infill', 'Loops > Infill > Perimeter', 'Infill > Loops > Perimeter', 'Infill > Perimeter > Loops', 'Perimeter > Infill > Loops', 'Perimeter > Loops > Infill'], 'Sequence of printing. The perimeter is the outer print edge, the loops are the insides of the walls, and the infill is the insides.'); c = configBase.SettingRow(left, "Force first layer sequence", 'force_first_layer_sequence', True, 'This setting forces the order of the first layer to be \'Perimeter > Loops > Infill\'') - configBase.TitleRow(left, "Infill") - c = configBase.SettingRow(left, "Infill pattern", 'infill_type', ['Line', 'Grid Circular', 'Grid Hexagonal', 'Grid Rectangular'], 'Pattern of the none-solid infill. Line is default, but grids can provide a strong print.') - c = configBase.SettingRow(left, "Solid infill top", 'solid_top', True, 'Create a solid top surface, if set to false the top is filled with the fill percentage. Useful for cups/vases.') - c = configBase.SettingRow(left, "Infill overlap (%)", 'fill_overlap', '15', 'Amount of overlap between the infill and the walls. There is a slight overlap with the walls and the infill so the walls connect firmly to the infill.') + configBase.TitleRow(right, "Infill") + c = configBase.SettingRow(right, "Infill pattern", 'infill_type', ['Line', 'Grid Circular', 'Grid Hexagonal', 'Grid Rectangular'], 'Pattern of the none-solid infill. Line is default, but grids can provide a strong print.') + c = configBase.SettingRow(right, "Solid infill top", 'solid_top', True, 'Create a solid top surface, if set to false the top is filled with the fill percentage. Useful for cups/vases.') + c = configBase.SettingRow(right, "Infill overlap (%)", 'fill_overlap', '15', 'Amount of overlap between the infill and the walls. There is a slight overlap with the walls and the infill so the walls connect firmly to the infill.') + + configBase.TitleRow(right, "Support") + c = configBase.SettingRow(right, "Support material amount (%)", 'support_rate', '100', 'Amount of material used for support, less material gives a weaker support structure which is easier to remove.') + c = configBase.SettingRow(right, "Support distance from object (mm)", 'support_distance', '0.5', 'Distance between the support structure and the object.') configBase.TitleRow(left, "Joris") c = configBase.SettingRow(left, "Joris the outer edge", 'joris', False, '[Joris] is a code name for smoothing out the Z move of the outer edge. This will create a steady Z increase over the whole print. It is intended to be used with a single walled wall thickness to make cups/vases.')