mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-10-04 22:31:02 +00:00
Belt: show the axis remap options in Develop mode only
preslice_remap_*, preslice_remap_global and gcode_remap_* describe the printer's kinematics and are set once by its profile. A wrong value sends the gantry outside the machine (a user preset with the pre-slice remap in place of the G-code remap emitted gantry moves to Y=646 mm), so they are no longer offered in Expert mode.
This commit is contained in:
@@ -7281,19 +7281,19 @@ void PrintConfigDef::init_fff_params()
|
||||
"your belt printer's physical bed plane. For a printer whose bed is in the XZ plane, "
|
||||
"set Y to +Z and Z to +Y (or -Y) to swap the vertical and belt-travel axes. "
|
||||
"Default +X: no change.",
|
||||
RemapAxis::PosX, comExpert);
|
||||
RemapAxis::PosX, comDevelop);
|
||||
add_belt_remap("preslice_remap_y", "Y",
|
||||
"Before slicing, which model-space axis becomes the slicer's Y axis. "
|
||||
"The slicer treats Y as one of the two horizontal bed axes. If your physical "
|
||||
"belt surface runs along the Z axis, map Y to +Z here so the slicer slices "
|
||||
"along the correct plane. Default +Y: no change.",
|
||||
RemapAxis::PosY, comExpert);
|
||||
RemapAxis::PosY, comDevelop);
|
||||
add_belt_remap("preslice_remap_z", "Z",
|
||||
"Before slicing, which model-space axis becomes the slicer's Z axis (layer stacking direction). "
|
||||
"The slicer builds layers upward along this axis. If your printer's layer-stacking "
|
||||
"direction is the physical Y axis, map Z to +Y (or -Y for inverted direction). "
|
||||
"Rev mode mirrors relative to the build volume maximum. Default +Z: no change.",
|
||||
RemapAxis::PosZ, comExpert);
|
||||
RemapAxis::PosZ, comDevelop);
|
||||
|
||||
def = this->add("preslice_remap_global", coBool);
|
||||
def->label = L("Global");
|
||||
@@ -7302,12 +7302,12 @@ void PrintConfigDef::init_fff_params()
|
||||
"Without this, the remap is applied locally around each object's center, so "
|
||||
"objects at different positions don't get a position-dependent contribution. "
|
||||
"Mirrors the 'Global' option on the belt slicing rotation, but for the remap.");
|
||||
def->mode = comExpert;
|
||||
def->mode = comDevelop;
|
||||
def->set_default_value(new ConfigOptionBool(false));
|
||||
|
||||
add_belt_remap("gcode_remap_x", "X", "Which slicing axis maps to machine X in G-code output. Applied AFTER slicing, during G-code generation.", RemapAxis::PosX, comExpert);
|
||||
add_belt_remap("gcode_remap_y", "Y", "Which slicing axis maps to machine Y in G-code output. Applied AFTER slicing, during G-code generation.", RemapAxis::PosY, comExpert);
|
||||
add_belt_remap("gcode_remap_z", "Z", "Which slicing axis maps to machine Z in G-code output. Applied AFTER slicing, during G-code generation.", RemapAxis::PosZ, comExpert);
|
||||
add_belt_remap("gcode_remap_x", "X", "Which slicing axis maps to machine X in G-code output. Applied AFTER slicing, during G-code generation.", RemapAxis::PosX, comDevelop);
|
||||
add_belt_remap("gcode_remap_y", "Y", "Which slicing axis maps to machine Y in G-code output. Applied AFTER slicing, during G-code generation.", RemapAxis::PosY, comDevelop);
|
||||
add_belt_remap("gcode_remap_z", "Z", "Which slicing axis maps to machine Z in G-code output. Applied AFTER slicing, during G-code generation.", RemapAxis::PosZ, comDevelop);
|
||||
|
||||
// The machine-frame G-code transform (shear + scale) is no longer configured
|
||||
// by per-axis keys: it is derived from the belt tilt (belt_slice_rotation axis
|
||||
|
||||
@@ -6214,8 +6214,10 @@ void TabPrinter::toggle_options()
|
||||
toggle_line("belt_slice_rotation", is_belt);
|
||||
|
||||
// Remap, back-transform, and global mesh-transforms toggles are gated by belt
|
||||
// mode here; finer mode-based visibility (Advanced vs Expert) is handled by
|
||||
// each option's ConfigOptionMode in PrintConfig.cpp.
|
||||
// mode here; finer mode-based visibility is handled by each option's
|
||||
// ConfigOptionMode in PrintConfig.cpp. Both axis remaps are Develop-only: a
|
||||
// printer profile sets them once for its kinematics, and a wrong value sends
|
||||
// the gantry outside the machine.
|
||||
for (auto el : {"preslice_remap_x", "gcode_remap_x", "gcode_back_transform"})
|
||||
toggle_line(el, is_belt);
|
||||
toggle_line("belt_preslice_global", is_belt);
|
||||
|
||||
Reference in New Issue
Block a user