add z offset option
This commit is contained in:
parent
0851e0934b
commit
6023f79be3
7 changed files with 23 additions and 20 deletions
|
@ -2199,7 +2199,7 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
|
|||
this->placeholder_parser().set("first_layer_bed_temperature", new ConfigOptionInts(*first_bed_temp_opt));
|
||||
this->placeholder_parser().set("first_layer_temperature", new ConfigOptionInts(m_config.nozzle_temperature_initial_layer));
|
||||
this->placeholder_parser().set("max_print_height",new ConfigOptionInt(m_config.printable_height));
|
||||
this->placeholder_parser().set("z_offset", new ConfigOptionFloat(0.0f));
|
||||
this->placeholder_parser().set("z_offset", new ConfigOptionFloat(m_config.z_offset));
|
||||
this->placeholder_parser().set("plate_name", new ConfigOptionString(print.get_plate_name()));
|
||||
this->placeholder_parser().set("first_layer_height", new ConfigOptionFloat(m_config.initial_layer_print_height.value));
|
||||
|
||||
|
@ -2440,8 +2440,7 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
|
|||
if (has_wipe_tower && ! layers_to_print.empty()) {
|
||||
m_wipe_tower.reset(new WipeTowerIntegration(print.config(), print.get_plate_index(), print.get_plate_origin(), * print.wipe_tower_data().priming.get(), print.wipe_tower_data().tool_changes, *print.wipe_tower_data().final_purge.get()));
|
||||
//BBS
|
||||
//file.write(m_writer.travel_to_z(initial_layer_print_height + m_config.z_offset.value, "Move to the first layer height"));
|
||||
file.write(m_writer.travel_to_z(initial_layer_print_height, "Move to the first layer height"));
|
||||
file.write(m_writer.travel_to_z(initial_layer_print_height + m_config.z_offset.value, "Move to the first layer height"));
|
||||
#if 0
|
||||
if (print.config().single_extruder_multi_material_priming) {
|
||||
file.write(m_wipe_tower->prime(*this));
|
||||
|
@ -2528,8 +2527,7 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato
|
|||
DynamicConfig config;
|
||||
config.set_key_value("layer_num", new ConfigOptionInt(m_layer_index));
|
||||
//BBS
|
||||
//config.set_key_value("layer_z", new ConfigOptionFloat(m_writer.get_position()(2) - m_config.z_offset.value));
|
||||
config.set_key_value("layer_z", new ConfigOptionFloat(m_writer.get_position()(2)));
|
||||
config.set_key_value("layer_z", new ConfigOptionFloat(m_writer.get_position()(2) - m_config.z_offset.value));
|
||||
config.set_key_value("max_layer_z", new ConfigOptionFloat(m_max_layer_z));
|
||||
if (print.config().single_extruder_multi_material) {
|
||||
// Process the filament_end_gcode for the active filament only.
|
||||
|
@ -4093,8 +4091,7 @@ std::string GCode::preamble()
|
|||
position of our writer object so that any initial lift taking place
|
||||
before the first layer change will raise the extruder from the correct
|
||||
initial Z instead of 0. */
|
||||
//m_writer.travel_to_z(m_config.z_offset.value);
|
||||
m_writer.travel_to_z(0.0);
|
||||
m_writer.travel_to_z(m_config.z_offset.value);
|
||||
|
||||
return gcode;
|
||||
}
|
||||
|
@ -4107,8 +4104,7 @@ std::string GCode::change_layer(coordf_t print_z)
|
|||
// Increment a progress bar indicator.
|
||||
gcode += m_writer.update_progress(++ m_layer_index, m_layer_count);
|
||||
//BBS
|
||||
//coordf_t z = print_z + m_config.z_offset.value; // in unscaled coordinates
|
||||
coordf_t z = print_z; // in unscaled coordinates
|
||||
coordf_t z = print_z + m_config.z_offset.value; // in unscaled coordinates
|
||||
if (EXTRUDER_CONFIG(retract_when_changing_layer) && m_writer.will_move_z(z)) {
|
||||
LiftType lift_type = this->to_lift_type(ZHopType(EXTRUDER_CONFIG(z_hop_types)));
|
||||
//BBS: force to use SpiralLift when change layer if lift type is auto
|
||||
|
@ -4128,7 +4124,7 @@ std::string GCode::change_layer(coordf_t print_z)
|
|||
m_need_change_layer_lift_z = true;
|
||||
}
|
||||
|
||||
m_nominal_z = print_z;
|
||||
m_nominal_z = z;
|
||||
|
||||
// forget last wiping path as wiping after raising Z is pointless
|
||||
// BBS. Dont forget wiping path to reduce stringing.
|
||||
|
|
|
@ -10,9 +10,7 @@ class SpiralVase {
|
|||
public:
|
||||
SpiralVase(const PrintConfig &config) : m_config(config)
|
||||
{
|
||||
//BBS
|
||||
//m_reader.z() = (float)m_config.z_offset;
|
||||
m_reader.z() = 0.0f;
|
||||
m_reader.z() = (float)m_config.z_offset;
|
||||
m_reader.apply_config(m_config);
|
||||
};
|
||||
|
||||
|
|
|
@ -833,7 +833,9 @@ static std::vector<std::string> s_Preset_printer_options {
|
|||
"printhost_user", "printhost_password", "printhost_ssl_ignore_revoke", "thumbnails", "thumbnails_format",
|
||||
"use_firmware_retraction", "use_relative_e_distances", "printer_notes",
|
||||
"cooling_tube_retraction",
|
||||
"cooling_tube_length", "high_current_on_filament_swap", "parking_pos_retraction", "extra_loading_move", "purge_in_prime_tower", "enable_filament_ramming"};
|
||||
"cooling_tube_length", "high_current_on_filament_swap", "parking_pos_retraction", "extra_loading_move", "purge_in_prime_tower", "enable_filament_ramming",
|
||||
"z_offset"
|
||||
};
|
||||
|
||||
static std::vector<std::string> s_Preset_sla_print_options {
|
||||
"layer_height",
|
||||
|
|
|
@ -289,8 +289,8 @@ bool Print::invalidate_state_by_config_options(const ConfigOptionResolver & /* n
|
|||
|| opt_key == "wiping_volumes_extruders"
|
||||
|| opt_key == "enable_filament_ramming"
|
||||
|| opt_key == "purge_in_prime_tower"
|
||||
|| opt_key == "z_offset"
|
||||
) {
|
||||
//|| opt_key == "z_offset") {
|
||||
steps.emplace_back(psWipeTower);
|
||||
steps.emplace_back(psSkirtBrim);
|
||||
} else if (opt_key == "filament_soluble"
|
||||
|
|
|
@ -3426,6 +3426,16 @@ def = this->add("filament_loading_speed", coFloats);
|
|||
def->mode = comAdvanced;
|
||||
def->set_default_value(new ConfigOptionEnum<SlicingMode>(SlicingMode::Regular));
|
||||
|
||||
def = this->add("z_offset", coFloat);
|
||||
def->label = L("Z offset");
|
||||
def->tooltip = L("This value will be added (or subtracted) from all the Z coordinates "
|
||||
"in the output G-code. It is used to compensate for bad Z endstop position: "
|
||||
"for example, if your endstop zero actually leaves the nozzle 0.3mm far "
|
||||
"from the print bed, set this to -0.3 (or fix your endstop).");
|
||||
def->sidetext = L("mm");
|
||||
def->mode = comAdvanced;
|
||||
def->set_default_value(new ConfigOptionFloat(0));
|
||||
|
||||
def = this->add("enable_support", coBool);
|
||||
//BBS: remove material behind support
|
||||
def->label = L("Enable support");
|
||||
|
|
|
@ -1117,7 +1117,7 @@ PRINT_CONFIG_CLASS_DERIVED_DEFINE(
|
|||
// BBS: wipe tower is only used for priming
|
||||
((ConfigOptionFloat, prime_volume))
|
||||
((ConfigOptionFloat, flush_multiplier))
|
||||
//((ConfigOptionFloat, z_offset))
|
||||
((ConfigOptionFloat, z_offset))
|
||||
// BBS: project filaments
|
||||
((ConfigOptionFloats, filament_colour_new))
|
||||
// BBS: not in any preset, calculated before slicing
|
||||
|
|
|
@ -3121,10 +3121,7 @@ void TabPrinter::build_fff()
|
|||
optgroup->append_single_option_line("printable_height");
|
||||
optgroup->append_single_option_line("nozzle_volume");
|
||||
optgroup->append_single_option_line("best_object_pos");
|
||||
|
||||
#if 0
|
||||
//optgroup->append_single_option_line("z_offset");
|
||||
#endif
|
||||
optgroup->append_single_option_line("z_offset");
|
||||
|
||||
// ConfigOptionDef def;
|
||||
// def.type = coInt,
|
||||
|
|
Loading…
Reference in a new issue