mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-06-12 23:13:32 +00:00
* 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 commit2c97657432. * Revert "enable_filament_for_features option" This reverts commit01c13baedd. * 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
92 lines
2.9 KiB
JSON
92 lines
2.9 KiB
JSON
{
|
|
"type": "process",
|
|
"name": "process_common_mk4s",
|
|
"inherits": "fdm_process_common",
|
|
"from": "system",
|
|
"instantiation": "false",
|
|
"bottom_shell_layers": "4",
|
|
"bottom_shell_thickness": "0.5",
|
|
"bridge_acceleration": "1500",
|
|
"compatible_printers_condition": "printer_notes=~/.*MK4IS.*/ and nozzle_diameter[0]==0.4",
|
|
"default_acceleration": "4000",
|
|
"elefant_foot_compensation": "0.2",
|
|
"enable_arc_fitting": "1",
|
|
"enable_overhang_speed": "1",
|
|
"enable_prime_tower": "1",
|
|
"enforce_support_layers": "0",
|
|
"exclude_object": "1",
|
|
"filename_format": "{input_filename_base}_{nozzle_diameter[0]}n_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode",
|
|
"gap_infill_speed": "120",
|
|
"gcode_comments": "0",
|
|
"gcode_label_objects": "1",
|
|
"infill_anchor": "2",
|
|
"infill_anchor_max": "12",
|
|
"infill_wall_overlap": "15%",
|
|
"initial_layer_line_width": "0.5",
|
|
"initial_layer_speed": "40",
|
|
"inner_wall_acceleration": "4000",
|
|
"inner_wall_line_width": "0.45",
|
|
"inner_wall_speed": "170",
|
|
"internal_solid_infill_acceleration": "4000",
|
|
"internal_solid_infill_line_width": "0.45",
|
|
"internal_solid_infill_speed": "200",
|
|
"line_width": "0.45",
|
|
"min_bead_width": "85%",
|
|
"min_feature_size": "25%",
|
|
"minimum_sparse_infill_area": "0",
|
|
"ooze_prevention": "0",
|
|
"outer_wall_acceleration": "4000",
|
|
"outer_wall_line_width": "0.45",
|
|
"outer_wall_speed": "170",
|
|
"overhang_1_4_speed": "80%",
|
|
"overhang_2_4_speed": "30",
|
|
"overhang_3_4_speed": "25",
|
|
"overhang_4_4_speed": "15",
|
|
"raft_contact_distance": "0.15",
|
|
"raft_expansion": "1.5",
|
|
"raft_first_layer_density": "80%",
|
|
"raft_first_layer_expansion": "3.5",
|
|
"reduce_infill_retraction": "0",
|
|
"resolution": "0",
|
|
"slice_closing_radius": "0.049",
|
|
"small_perimeter_speed": "170",
|
|
"solid_infill_filament": "0",
|
|
"sparse_infill_acceleration": "4000",
|
|
"sparse_infill_filament": "0",
|
|
"sparse_infill_line_width": "0.45",
|
|
"sparse_infill_pattern": "crosshatch",
|
|
"sparse_infill_speed": "200",
|
|
"support_angle": "0",
|
|
"support_base_pattern": "rectilinear",
|
|
"support_base_pattern_spacing": "2",
|
|
"support_interface_bottom_layers": "0",
|
|
"support_interface_pattern": "auto",
|
|
"support_interface_spacing": "0.2",
|
|
"support_interface_speed": "60",
|
|
"support_interface_top_layers": "5",
|
|
"support_line_width": "0.36",
|
|
"support_object_xy_distance": "0.36",
|
|
"support_speed": "120",
|
|
"support_style": "snug",
|
|
"support_threshold_angle": "40",
|
|
"thick_bridges": "0",
|
|
"top_shell_layers": "5",
|
|
"top_shell_thickness": "0.7",
|
|
"top_surface_acceleration": "1200",
|
|
"top_surface_line_width": "0.42",
|
|
"top_surface_speed": "100",
|
|
"travel_acceleration": "4000",
|
|
"travel_speed": "300",
|
|
"travel_speed_z": "12",
|
|
"tree_support_angle_slow": "25",
|
|
"tree_support_branch_angle": "40",
|
|
"tree_support_branch_diameter": "2",
|
|
"tree_support_branch_diameter_angle": "5",
|
|
"tree_support_branch_diameter_double_wall": "3",
|
|
"tree_support_tip_diameter": "0.8",
|
|
"tree_support_top_rate": "30%",
|
|
"wall_filament": "0",
|
|
"wall_generator": "arachne",
|
|
"wall_loops": "2"
|
|
}
|