mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-10-09 08:41:14 +00:00
Belt printer: retire the redundant and unused options
Removed, with the keys added to handle_legacy()'s ignore list so saved
profiles and 3MFs keep loading:
- belt_slice_rotation_global and preslice_remap_global. Both were only
consulted when belt_preslice_global ("Global mesh transforms") was off,
which no profile does; belt_preslice_global is now the single global
mode and is presumed on everywhere the old flags were ORed in
(PrintObjectSlice, BeltBackTransform, BeltGCode, Print::process,
PrintApply). The Belt tilt row is axis + angle only.
- preslice_remap_x/y/z. No profile used the pre-slice axis remap; the belt
tilt axis plus the G-code axis remap cover the machines that exist, and
its implementation only agreed with itself for a plain swap (matrix
columns vs remap_bbox rows). BeltTransformPipeline::build_preslice_remap,
remap_bbox and has_preslice_remap are gone, the forward transform is the
rotation, and the G-code header no longer carries the remap.
- belt_support_z_offset_mode. Saved and invalidated steps, but no support
generator read it.
- first_layer_plane and first_layer_plane_offset, with FirstLayerPlane.cpp.
On every shipped configuration the band is measured from the belt
surface (GCode::belt_height_above_floor) and the evaluator was only
reached for an explicit XY/YZ/XZ choice or a non-zero offset, which
nobody set. first_layer_plane_thickness stays as the band unit,
relabelled "First layer band thickness".
UI: the Machine frame transforms group is five single-option rows (G-code
remap X / Y / Z, Decouple machine-frame tilt, Machine-frame tilt angle;
the angle row is shown only when decoupled) instead of two multi-column
lines, and the remap fields carry full labels.
Also carries the phong.fs struct fix from #16226 so the worktree build
links its shaders.
libslic3r_tests and fff_print_tests pass; clang-tidy diff check clean;
orca_profile_tool.py check clean.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5.1
parent
199758f67f
commit
8039d4d2ac
+5
-17
@@ -177,7 +177,7 @@ bool Print::invalidate_state_by_config_options(const ConfigOptionResolver & /* n
|
||||
// Machine-frame transform (derived from belt tilt; only affects G-code output).
|
||||
"belt_frame_tilt_decouple", "belt_frame_tilt_angle",
|
||||
"gcode_back_transform",
|
||||
"first_layer_plane", "first_layer_plane_offset", "first_layer_plane_thickness",
|
||||
"first_layer_plane_thickness",
|
||||
// Only inflates the GUI bed volume, like printable_area.
|
||||
"belt_printer_infinite_y",
|
||||
//BBS
|
||||
@@ -389,17 +389,11 @@ bool Print::invalidate_state_by_config_options(const ConfigOptionResolver & /* n
|
||||
|| opt_key == "belt_printer"
|
||||
|| opt_key == "belt_slice_rotation"
|
||||
|| opt_key == "belt_slice_rotation_angle"
|
||||
|| opt_key == "belt_slice_rotation_global"
|
||||
|| opt_key == "belt_preslice_global"
|
||||
|| opt_key == "preslice_remap_global"
|
||||
|| opt_key == "preslice_remap_x"
|
||||
|| opt_key == "preslice_remap_y"
|
||||
|| opt_key == "preslice_remap_z") {
|
||||
|| opt_key == "belt_preslice_global") {
|
||||
osteps.emplace_back(posSlice);
|
||||
} else if (
|
||||
opt_key == "belt_support_floor_offset"
|
||||
|| opt_key == "belt_support_floor_mode"
|
||||
|| opt_key == "belt_support_z_offset_mode") {
|
||||
|| opt_key == "belt_support_floor_mode") {
|
||||
osteps.emplace_back(posSupportMaterial);
|
||||
} else if (
|
||||
opt_key == "print_sequence"
|
||||
@@ -2107,9 +2101,7 @@ StringObjectException Print::validate(std::vector<StringObjectException> *warnin
|
||||
bool have_height = false;
|
||||
|
||||
if (belt_printer) {
|
||||
double raw_z = print_object.model_object()->max_z();
|
||||
if (BeltTransformPipeline::has_preslice_remap(this->config()))
|
||||
raw_z = BeltTransformPipeline::remap_bbox(*print_object.model_object(), this->config()).size().z();
|
||||
const double raw_z = print_object.model_object()->max_z();
|
||||
effective_max_z = raw_z;
|
||||
have_height = raw_z > 0;
|
||||
} else {
|
||||
@@ -3069,11 +3061,7 @@ void Print::process(long long *time_cost_with_cache, bool use_cache)
|
||||
std::set<PrintObject*> re_slicing_objects;
|
||||
// Belt global modes couple each object's bed position into its layer Z values,
|
||||
// so sharing layers between "identical" objects is wrong.
|
||||
bool belt_no_share = m_config.belt_printer.value &&
|
||||
((m_config.belt_slice_rotation_global.value
|
||||
&& m_config.belt_slice_rotation.value != BeltRotationAxis::None)
|
||||
|| m_config.preslice_remap_global.value
|
||||
|| m_config.belt_preslice_global.value);
|
||||
bool belt_no_share = m_config.belt_printer.value && m_config.belt_preslice_global.value;
|
||||
if (!use_cache) {
|
||||
for (int index = 0; index < object_count; index++)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user