Commit graph

81 commits

Author SHA1 Message Date
Vojtech Bubnik
9ce81d6d12 Organic Supports improvements:
Added support_tree_branch_distance parameter to UI
Fixed error in calculation of placeable areas, which made some trees to cut through an object.
Locked the tree tips against smoothing of their centerline path.
Reduced density of tips with zero interface layers (see continuous_tips).
Reduced default support_tree_top_rate to 15%
Refactored placement of interfaces for readability.
2023-03-10 09:42:22 +01:00
YuSanka
2a6f53ce35 Code cleaning 2023-03-08 09:52:03 +01:00
PavelMikus
d5a1b59869 Remove "ensure_vertical_shell_thickenss" option, it is now permanently ON 2023-03-03 10:52:29 +01:00
Pavel Mikus
7edd813fc8 fix bugs in ExtrusionEstimator 2023-03-02 15:30:41 +01:00
Pavel Mikus
a496444b7e make fixed overlap levels for dynamic overhang speed 2023-03-02 15:30:41 +01:00
YuSanka
b767c76adb Localization: Updated POT 2023-02-27 10:07:45 +01:00
Lukas Matena
e2045a60ee Separate acceleration control for external perimeters and (top) solid infill 2023-02-15 15:03:37 +01:00
YuSanka
4162689a65 Unify Tree/Organic terminology.
+ Implemented Enabling/Disabling for parameters of Organic support
SPE-1478(https://dev.prusa3d.com/browse/SPE-1478)
2023-02-14 10:18:06 +01:00
YuSanka
8b3ff9b9c4 Fix std::optional value() build error on older macOS SDK
For old macOS (pre 10.14), std::optional does not have .value() method, so the code is using operator*() instead.
2023-02-09 09:08:58 +01:00
Vojtech Bubnik
d58c8b1bbd Refactor of ConfigDef / ConfigOptionDef / PrintConfigDef /
Field and other UI elements to handle enums in a generic way.
Needs a review by @yusanka
2023-02-09 09:08:58 +01:00
tamasmeszaros
76d0e11699 Merge branch 'master' into et_tm_sla_volumes_6-SPE-1285 2023-01-18 16:40:12 +01:00
tamasmeszaros
6238595ac6 adding separate config values for support tree algorithms
Realize config matrix on supports tab
2023-01-18 09:26:28 +01:00
tamasmeszaros
878f3b30dd wip adding separate config values for support tree algorithms 2023-01-18 09:26:28 +01:00
tamasmeszaros
84784259ba Add max_weight_on_model parameter
Limiting the weight of subtrees going to the model body
2023-01-18 09:26:28 +01:00
tamasmeszaros
fc9b7ed59c Merge branch 'master' into et_tm_sla_volumes_6-SPE-1285 2023-01-13 11:02:06 +01:00
Pavel Mikus
cfb702be99 rename avoid_curled_filament_during_travels to avoid_crossing_curled_overhangs
mark avoid_crossing_curled_overhangs as Experimental
rename overhang_steepness_levels to overhang_overlap_levels
2023-01-11 17:15:11 +01:00
PavelMikus
9bf7ce5e28 change parameter name, fix and improve intersection insertions 2022-12-14 14:49:20 +01:00
Pavel Mikus
f730fd21d4 refactoring overhang speed 2022-12-14 14:49:20 +01:00
PavelMikus
11353a4a5c UI integration, new option for speed on overhangs 2022-12-14 14:49:20 +01:00
tamasmeszaros
7b207aaf5c Add "Enforcers only" option into support combo box
And also make it work
2022-12-13 09:49:59 +01:00
PavelMikus
30e81fad3b Disallow enabling options avoid_crossing_perimeters and
avoid_curled_filament_during_travels at the same time,
throw warning if both options enabled together - in this case ignore curled filament avoidance
2022-12-12 11:36:21 +01:00
Pavel Mikuš
06fbab12fe
Pm overhang extra perimeters ()
Implementation of extra perimeters on steep overhangs/flat unsupported parts
Also contains:
Principal components computation over polygon area
New fast bridge direction estimation which minimizes amount of unanchored bridge endpoints
2022-11-09 10:38:36 +01:00
PavelMikus
464a37110f Staggered inner seams 2022-09-06 11:25:39 +02:00
Lukas Matena
bce2b148f4 Merged 2.5.0-beta1 into master (NO CONFLICTS FIXED) 2022-08-15 13:41:40 +02:00
Lukáš Hejl
c9ddf7315e Replaced parameters wall_add_middle_threshold and wall_split_middle_threshold with automatic computation based on extrusion width.
That allows computed better values in cases when the extrusion width of the first layer or for the infill differs from the extrusion width for perimeters.

Parameters min_feature_size and wall_transition_length now can be set in percentages, and then they will be calculated based on nozzle size. Old profiles with default values are forced to replace old default values with new default values in percentages.
2022-08-08 10:21:55 +02:00
tamasmeszaros
371da354a0 Adjust configuration layer to better reflect tree strategies. 2022-07-29 13:05:39 +02:00
tamasmeszaros
b1317be78a Selectable support tree type 2022-07-29 13:05:39 +02:00
Lukáš Hejl
c76c497234 Renamed slicing engine to perimeter generator and slightly rearrangement of Arachne parameters. 2022-06-01 21:43:00 +02:00
Lukáš Hejl
3942cf958c Updated Arachne with Cura master. 2022-06-01 21:41:40 +02:00
Lukáš Hejl
d868261399 Updated the default values for wall_add_middle_threshold and wall_split_middle_threshold, which should decrease the number of missing tiny islands. 2022-06-01 21:40:15 +02:00
YuSanka
5243abcece Check "support_material" and "overhangs" relations only on global settings level.
Note: It can be changed in the future, when infrastructure for saving of this relation per configuration will be implemented
2021-12-14 10:49:47 +01:00
YuSanka
f5dc746e94 Fix for - Non-modal settings window loses focus after accepting dialog (MSW specific issue)
MessageDialog is used instead of wxMessageDialog on MSW for supporting of the Light/Dark color mode.
But a constructor of the MsgDialog replaces a parent which is equal to nullptr with the MainFrame .
That is why non-modal dialog with Preset Settings loses a focus after close of the MessageDialog.

"m_msg_dlg_parent" is added to ConfigManipulation class. ConfigManipulation's instance owed by Tab will use the Tab as a parent for MessageDialogs.
=> The MessageDialog with information about configuration incompatibility will always appear over related SettingsTab
and a non-modal dialog with Preset Settings will not lose the focus.
2021-12-06 11:44:29 +01:00
YuSanka
84c4f181e4 Next fix for .
"support_material_overhangs_queried" variable have not to be static after a fixing of the .
2021-11-26 11:35:29 +01:00
YuSanka
871311c95c Fix for - Endless loop telling me 'Supports work better if the following feature is enabled: bridging perimeters' when setting 'generate support material' on a single object
This bug was from 0c29eb9943
2021-11-15 10:48:53 +01:00
YuSanka
e5b51a654d Follow-up to 0c29eb9943
Next code refactoring: m_support_material_overhangs_queried have to be initialized from outside just once
2021-10-26 16:36:07 +02:00
YuSanka
0c29eb9943 Follow up e2475c9576 = code refactoring 2021-10-25 16:55:02 +02:00
YuSanka
e2475c9576 Workaround for 2021-10-25 14:45:03 +02:00
YuSanka
670ec06b97 "CANCEL" button is deleted from "Support Generator" MessageDialog
to avoid confusions when "Supports mode" is switched from right panel
2021-09-10 15:31:18 +02:00
Vojtech Bubnik
b29c0ead7d Implemented configurable speed and acceleration settings for the first
object layer over raft interface:
"first_layer_speed_over_raft", "first_layer_acceleration_over_raft".
Fixes I have a question about the speed of the first layer after the raft. 
Fixes Layer After Raft Is Not Considered First Layer! 
2021-08-31 16:03:14 +02:00
Vojtech Bubnik
5f26bfd397 Brim separation from object, follow up to 82373334bc
1) Changed the name of the variable "brim_offset" to "brim_separation"
   for clarity.
2) Added legacy conversion after loading an old 3MF that does not define
   then new "brim_separation" variable: The "brim_separation" is being
   filled in with the "elefant_foot_compensation" value to produce
   equal brim separation to the old PrusaSlicer that saved that 3MF file.
2021-08-31 12:22:44 +02:00
Vojtech Bubnik
30bca80cc5 Fix of Top solid infill settings cannot be changed in Vase mode 2021-08-23 08:50:10 +02:00
Lukas Matena
b466f18326 Draft shield option is now an enum (Disabled/Limited/Enabled) 2021-07-14 16:02:04 +02:00
Oleksandra Yushchenko
fd071421cb
DarkMode for MSW ()
* MSW specific: Dark Mode: First implementation

* Use menu instead of NoteBook

* Implemented MessageDialog
+ Fixed DarkMode for all dialogs and ColorPicker

* MSW DarkMode: Added missed updates for the switching between modes

* MSW DarkMode: Updated all existed context menus after switching of the mode
+ Added markers for the menu item witch is related to the selected tab

* Used wxFrame instead of wxDialog for SettingsDialog
(this change allow us to use menu bar in SettingsDialog)

+ fix for  - Prusa Slicer 2.3.1 not activating non-modal settings window if settings window is minimized

* Implemented "Always use Dark mode colors" preference option

* Fixes for non_MSW build

* Next fixes for non-MSW builds

* Preferences: Fixed selection of the Settings Layout for non-MSW platforms
+ Updated DarkMode for colorpickers

* Windows DarkMode next fixes

* MSWDarkMode: Suppress to use system color to the PrusaSlicer
Select "Preferences -> Use Dark color mode (experimental)" to allow dark mode for the application

* Fixed MSW build

* MSWDarkMode: Upadteed color mode for ExtruderSequenceDialog and for dialogs related to the DoubleSlider

* Implemented Auto recreation of the PrusaSlicer when color mode is changed.

* Preferences: Added option "Set settings tabs as menu items (experimental)"
2021-06-18 19:46:04 +02:00
YuSanka
4be1d62259 Fixed update of the "Supports" in frequently used parameters when Vase mode is selected 2021-05-12 15:54:20 +02:00
Vojtech Bubnik
0c1953a929 Further fixes of the first_layer_height refactoring. 2021-04-21 14:34:49 +02:00
Vojtech Bubnik
dbd1c09523 FDM snug supports: New parameter "closing radius", inspired by Cura's
support_join_distance
2021-04-12 14:56:36 +02:00
Vojtech Bubnik
af9c7c967f Implementing a new switch for the shape of support towers:
expanded to a grid (the old way) vs.
snug (like the upstream Slic3r, Cura or Ideamaker).

Snug supports suffered from the degeneracies when merging overhang islands
over a large number of layers when projecting the support towers down.
We borrowed the idea & a bit of code from Cura by simplifying the support
polygons by closing the concave cracks, see the smooth_outward() function
and the MutablePolygon class.

Fixes Support problems with models with hole in the walls. 
Fixes Support in the Air 
Fixes [Bug] Supports generated beyond bed edges (X<0 and X>250) and where none are needed. 
Fixes Unable to remove support material/can't change support "inflation distance" 
Fixes FR: support inflation and support conform to boundary 
Fixes Support blocker not working on this model 
Fixes Unnecessary support material 
Fixes support blocker enforcer issue 
2021-03-23 11:06:45 +01:00
Vojtech Bubnik
73b88e6ce0 Splitting FDM support gap to top / bottom, introducing
support_material_bottom_contact_distance
Fixing Crash in support generation after fcb714c (repro attached) 
2021-03-15 09:55:57 +01:00
Vojtech Bubnik
00db3dc419 WIP: Splitting the number of top / bottom support interface layers.
If the new support_material_bottom_interface_layers is left at default -1,
then support_material_interface_layers is used for both top and bottom
interface layers.
If support_material_interface_layers == 0, then neither top nor bottom
interface layers are being extruded.
2021-03-15 09:55:56 +01:00
Lukas Matena
1efa9a06f6 Adjustable wipe tower brim 2021-03-05 16:41:02 +01:00