* Support 'Default' filament option (index 0)
Treat filament index 0 as the new "Default" (use active object/part filament) instead of using 1. Update config defaults and tooltips for wall/sparse/solid infill filament options (min/default -> 0, tooltip explains "Default"). Adjust normalization and propagation logic to respect explicit feature overrides and only apply base extruder when feature values are zero; only copy sparse->solid infill when sparse > 0. Introduce FeatureFilamentOverrideMask and clamp_feature_filament_to_valid to resolve and clamp feature filaments. Update UI lists and selection behavior to expose a "Default" entry and handle zero-based indices in PartPlate and Plater.
* enable_filament_for_features option
Co-Authored-By: LixNix <105106115+lixnix@users.noreply.github.com>
* \n
* Allow wipe_tower_filament to equal nozzle count
Relax the assertion in Print::extruders to permit wipe_tower_filament == config().nozzle_diameter.size(). The configuration value is 1-based and the code subtracts 1 when pushing the extruder index, so equality should be valid and selecting the last nozzle should not trigger an assertion.
* Revert "Allow wipe_tower_filament to equal nozzle count"
This reverts commit 2c976574327a8bcdc74a1b296bf1aaff7752a94e.
* Revert "enable_filament_for_features option"
This reverts commit 01c13baeddb8e26793f752deab788ee4d086975b.
* Migrate legacy feature filament defaults
Add migration logic to convert legacy feature filament selections from 1 to 0 for older 3mf files. Introduces a local migrate_legacy_feature_filament_defaults lambda in src/OrcaSlicer.cpp and src/slic3r/GUI/Plater.cpp that scans keys (wall_filament, sparse_infill_filament, solid_infill_filament, support_filament, support_interface_filament) on configs/objects/volumes, updates values, counts conversions and logs the result. Also adds a Semver check for "2.4.0-dev" in OrcaSlicer to trigger the migration for files older than that version. This preserves expected default filament selections when loading older project files.
* Update OrcaSlicer.cpp
* Extract migration helper to ConfigMigrations
Centralize legacy feature-filament default migration by moving the duplicated lambda into ConfigMigrations::migrate_legacy_feature_filament_defaults (src/libslic3r/Config.cpp) and declaring it in Config.hpp. Update OrcaSlicer.cpp and slic3r/GUI/Plater.cpp to call the new function instead of inline lambdas. The helper converts specific feature filament keys (wall_filament, sparse_infill_filament, solid_infill_filament, support_filament, support_interface_filament) from int 1 to 0 and returns the count of conversions to avoid duplicated migration logic.
* Remove DynamicFilamentList1Based and consolidate lists
Delete the specialized DynamicFilamentList1Based struct and its global instance. Update Choice registrations to use the single dynamic_filament_list for wall, sparse_infill and solid_infill filaments, and remove the extra update call for the removed instance. This consolidates filament choice handling and removes duplicated logic in Plater.cpp.
* move it
* fix objects
* Update Config.hpp
* Update profiles
Reduce the size of current and new JSONs by standardising them with 1 tab indentation instead of 4 spaces.
This effectively reduces the size by almost 20 MB.
| Current | New |
|---|---|
| 85.2 Mib | 67 Mib |
Used [JQ](https://jqlang.org/) `--tab` to automatically format every current JSON.
> [!NOTE]
> Some profiles had the arrays on the same line, but those created by Orca were in the standard format (each object below the previous one). In some cases, this increases the number of tabs due to the new lines, but the increase is negligible, and this way both the base profiles and those created by Orca maintain the same style.
* explicitly set the machine_max_junction_deviation
* reworked the support settings for all profiles
* forgot the bottom interface spacing. set more accurate values
* set the wrong value, meant support_bottom_z_distance
Updated multiple filament profiles to convert fields such as filament_cost, filament_density, and filament_max_volumetric_speed from single values to arrays for consistency. Removed unnecessary fields from filament profiles to streamline data structure. This change enhances compatibility with the updated profile handling logic in the orca_filament_lib.py script.
* Update all Mk4 pla filament to have proper ramming parameters
* Update all Mk4 PETG filament to have proper ramming parameters
* Update all Mk4 ABS filament to have proper ramming parameters
---------
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
* bugfix for TPU filament overrides
* higher voluemetric flow
* bugfix for to high speed at internal solid infill
* Update Prusa.json
* updated firmware check and nozzle settings
* bugfix speed and standard for 0,15mm profiles of the 0.4mm nozzle
* variables not defined in orcaslicer
* bug fix volumetric speed, wrong value
* added high flow base process
* added highflow base process
* added first full draft of high flow profiles, further tests are necessary
* changed 0.35mm to 0.32mm for 0.6mm nozzle
* minor changes to initial layer speeds
* changed 0.35mm to 0.32mm for 0.6mm nozzle
* furcer changes on accelartion and speed
* added 0.35mm Standard @MK3.5 again for not breaking anythin for current users
* Update 0.35mm Standard @MK3.5.json
forgot to set the layer_height after creation of the 0.35mm profile
* minor fixes in filament overrides
* added profiles for high flow nozzles on the Prusa MINIIS
* added fan_speedup_time for MINIIS and MK3.5
* changes to support interface, pattern and distance
---------
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
* Replace prusa printer images with standard sizes and aspect ratio
* Rename Prusa Mini IS to specify the IS in the name
* Add missing prusa CORE One in the preset dialog and reorder prusa printers
* updated pictures to 320px
* bugfix for TPU filament overrides
* higher voluemetric flow
* bugfix for to high speed at internal solid infill
* Update Prusa.json
* updated firmware check and nozzle settings
* bugfix speed and standard for 0,15mm profiles of the 0.4mm nozzle
* variables not defined in orcaslicer
* bug fix volumetric speed, wrong value
* added high flow base process
* added highflow base process
* added first full draft of high flow profiles, further tests are necessary
* changed 0.35mm to 0.32mm for 0.6mm nozzle
* minor changes to initial layer speeds
* changed 0.35mm to 0.32mm for 0.6mm nozzle
* furcer changes on accelartion and speed
* added 0.35mm Standard @MK3.5 again for not breaking anythin for current users
* Update 0.35mm Standard @MK3.5.json
forgot to set the layer_height after creation of the 0.35mm profile
* First set of fixes
* Add FLEX filament to PrintConfig.cpp
* Add new FLEX filament profiles to main Prusa json
* Comment out M104.1 code
* Revert "Comment out M104.1 code"
This reverts commit 831414adb7.
* bugfix for TPU filament overrides
* higher voluemetric flow
* bugfix for to high speed at internal solid infill
* Update Prusa.json
* updated firmware check and nozzle settings
* bugfix speed and standard for 0,15mm profiles of the 0.4mm nozzle
* variables not defined in orcaslicer
* Whitespace cleanup in Prusa profile
```
$ diff -u Prusa.json <(jq --indent 4 < Prusa.json) | wc -l
0
```
* Add Prusa MK4S profiles
There were generated from the PrusaSlicer profiles[0] using some scripts
which try to faithfully convert the profiles[1]. The high flow nozzle
settings have been modeled as a separate printer model.
A few things I'm aware of that haven't been converted:
- Filament multi-material settings (eg loading speeds)
- High-flow and abrasive nozzle check in gcode, which, as far as I
know, isn't available in the current firmware anyways
I've also found that disabling z-hop on layer change in OrcaSlicer seems
more similar to the behavior in PrusaSlicer (which allows travel
distance limitations to override that setting), so I've disabled that.
Fixes#7391
[0]: 0bca90da13/resources/profiles/PrusaResearch.ini
[1]: https://github.com/rcloran/SuperSlicer_to_Orca_scripts/tree/20d2881
Fix issue `Preset name "0.20mm Speed @MK3S 0.4" was marked as renamed from "0.20mm Standard @MK3S", though preset name "0.20mm Detail @MK3S 0.6" was marked as renamed from "0.20mm Standard @MK3S" as well.`
* added Prusa Mini with Input Shaper to profiles
* Merge branch 'SoftFever:main' into main
* refactoring to more reusable settings
* Merge branch 'SoftFever:main' into main
* added more processes, changed settings
* Merge branch 'main' of https://github.com/koppensb/OrcaSlicer
* Update 0.15mm Speed @MINIIS.json
* Update 0.10mm Speed @MINIIS.json
* changed to cubic because of speed
* Merge branch 'main' of https://github.com/koppensb/OrcaSlicer
* further changes after reviewing prusa slicer settings
* simplified machine settings
* retraction speeds according to prusa slicer
* Merge branch 'SoftFever:main' into main
* changed max flow according to prusa slicer
* Merge branch 'main' of https://github.com/koppensb/OrcaSlicer
* after clearification at the prusaslicer repository M900 got removed
* Merge branch 'SoftFever:main' into main
* precise wall per default
* Merge branch 'main' of https://github.com/koppensb/OrcaSlicer
* enable reverse overhang on odd by default
* added settings from prusa slicer
* changed cooling setings
* Merge branch 'SoftFever:main' into main
* changed default to inner-outer-inner wall
inner-outer-inner gives pretty good overhangs with better surface
* new profiles for bigger nozzles, changed some cooling settings according to prusaslicer
* profiles for different nozzles sizes, better speed settings
* initial layer height was wrong
* wrong initial layer height
* set the correct accelerations
* Merge branch 'main' of https://github.com/koppensb/OrcaSlicer
* changed firmware version number
* using pressure advance UI setting instead of custom filament g-code
* Merge branch 'SoftFever:main' into main
* Update Prusa Generic PC.json
* Update Prusa Generic PC.json
* changed max flow for PC
* added PVA filament profiles
* bug fix in filament loading
* Merge branch 'SoftFever:main' into main
* Merge branch 'SoftFever:main' into main
* changed line width according to prusa slicer
* Merge branch 'main' of https://github.com/koppensb/OrcaSlicer
* Merge branch 'main' into main
* changed heatbed temperature for Minis capabilities
* Merge branch 'main' of https://github.com/koppensb/OrcaSlicer
* Merge branch 'main' into main
* Merge branch 'SoftFever:main' into main
* set default support to snug
* changed default filament setting to the correct value