mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-09-27 02:41:17 +00:00
Update README and implement dithering features: Change download link in README, add mixed filament management enhancements including filament removal and layer height adjustments for dithering in the MixedFilamentManager. Introduce new configuration options for dithering in the PrintConfig and GUI, and ensure proper handling of mixed filament states during filament deletion.
This commit is contained in:
@@ -1724,7 +1724,8 @@ void TriangleSelector::deserialize(const TriangleSplittingData& data,
|
||||
bool needs_reset,
|
||||
EnforcerBlockerType max_ebt,
|
||||
EnforcerBlockerType to_delete_filament,
|
||||
EnforcerBlockerType replace_filament)
|
||||
EnforcerBlockerType replace_filament,
|
||||
const EnforcerBlockerStateMap* state_map)
|
||||
{
|
||||
if (needs_reset)
|
||||
reset(); // dump any current state
|
||||
@@ -1790,11 +1791,15 @@ void TriangleSelector::deserialize(const TriangleSplittingData& data,
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (state == to_delete_filament)
|
||||
state = replace_filament;
|
||||
else if (to_delete_filament != EnforcerBlockerType::NONE && state != EnforcerBlockerType::NONE) {
|
||||
state = state > to_delete_filament ? EnforcerBlockerType((int) state - 1) : state;
|
||||
if (state_map != nullptr && state != EnforcerBlockerType::NONE) {
|
||||
const size_t state_idx = static_cast<size_t>(state);
|
||||
state = state_idx < state_map->size() ? (*state_map)[state_idx] : EnforcerBlockerType::NONE;
|
||||
} else {
|
||||
if (state == to_delete_filament)
|
||||
state = replace_filament;
|
||||
else if (to_delete_filament != EnforcerBlockerType::NONE && state != EnforcerBlockerType::NONE) {
|
||||
state = state > to_delete_filament ? EnforcerBlockerType((int) state - 1) : state;
|
||||
}
|
||||
}
|
||||
|
||||
if (state > max_ebt) {
|
||||
|
||||
Reference in New Issue
Block a user