Made the config value support_material_xy_spacing relative

to the external perimeter width.
This commit is contained in:
bubnikv 2017-01-05 09:12:24 +01:00
parent bbdaa44acb
commit 1ba03af2da
3 changed files with 12 additions and 8 deletions

View File

@ -426,9 +426,9 @@ $j
Support material angle in degrees (range: 0-90, default: $config->{support_material_angle}) Support material angle in degrees (range: 0-90, default: $config->{support_material_angle})
--support-material-contact-distance --support-material-contact-distance
Vertical distance between object and support material (0+, default: $config->{support_material_contact_distance}) Vertical distance between object and support material (0+, default: $config->{support_material_contact_distance})
--support-material-xy-spacing --support-material-xy-spacing
horizontal distance between object and support material (0+, default: $config->{support_material_xy_spacing}) "XY separation between an object and its support. If expressed as percentage (for example 50%),
it will be calculated over external perimeter width (default: half of exteral perimeter width)
--support-material-interface-layers --support-material-interface-layers
Number of perpendicular layers between support material and object (0+, default: $config->{support_material_interface_layers}) Number of perpendicular layers between support material and object (0+, default: $config->{support_material_interface_layers})
--support-material-interface-spacing --support-material-interface-spacing

View File

@ -1121,12 +1121,16 @@ PrintConfigDef::PrintConfigDef()
def->cli = "support-material!"; def->cli = "support-material!";
def->default_value = new ConfigOptionBool(false); def->default_value = new ConfigOptionBool(false);
def = this->add("support_material_xy_spacing", coFloat); def = this->add("support_material_xy_spacing", coFloatOrPercent);
def->label = "Extra separation between part and support (mm)"; def->label = "XY separation between an object and its support";
def->category = "Support material"; def->category = "Support material";
def->tooltip = "Add offset to support material separation (0 is 1 extrusion width)."; def->tooltip = "XY separation between an object and its support. If expressed as percentage (for example 50%), it will be calculated over external perimeter width.";
def->cli = "support-material-xy-spacing=f"; def->sidetext = "mm or %";
def->default_value = new ConfigOptionFloat(0.0); def->cli = "support-material-xy-spacing=s";
def->ratio_over = "external_perimeter_extrusion_width";
def->min = 0;
// Default is half the external perimeter width.
def->default_value = new ConfigOptionFloatOrPercent(50, true);
def = this->add("support_material_angle", coInt); def = this->add("support_material_angle", coInt);
def->label = "Pattern angle"; def->label = "Pattern angle";

View File

@ -164,7 +164,7 @@ class PrintObjectConfig : public virtual StaticPrintConfig
ConfigOptionBool support_material_synchronize_layers; ConfigOptionBool support_material_synchronize_layers;
ConfigOptionInt support_material_threshold; ConfigOptionInt support_material_threshold;
ConfigOptionBool support_material_with_sheath; ConfigOptionBool support_material_with_sheath;
ConfigOptionFloat support_material_xy_spacing; ConfigOptionFloatOrPercent support_material_xy_spacing;
ConfigOptionFloat xy_size_compensation; ConfigOptionFloat xy_size_compensation;
PrintObjectConfig(bool initialize = true) : StaticPrintConfig() { PrintObjectConfig(bool initialize = true) : StaticPrintConfig() {