Commit Graph

308 Commits

Author SHA1 Message Date
Eric Maglio
95c170e33b Add "2D Lattice" fill pattern for lightweight aircraft structures (#8293)
* Add 2D lattice infill pattern

* Add state invalidation behavior for lattice infill angles

* Update SurfaceFillParams methods to account for lattice infill angles

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-02-12 08:39:29 +08:00
Ioannis Giannakas
978434b6a3 Enhancement: Internal Bridge angle override (#7908)
Internal Bridge angle override
2025-02-09 22:00:16 +08:00
Ioannis Giannakas
0d356496a9 Enhancement: Enable separate internal bridge fan speed control (#7906)
* Separate internal bridge fan speed control

* Merge branch 'SoftFever:main' into Allow-separate-internal-bridge-fan-control

* Merge branch 'main' into Allow-separate-internal-bridge-fan-control

* Merge branch 'SoftFever:main' into Allow-separate-internal-bridge-fan-control

* Merge branch 'main' into Allow-separate-internal-bridge-fan-control

* Merge remote-tracking branch 'upstream/main' into Allow-separate-internal-bridge-fan-control

* Merge branch 'main' into Allow-separate-internal-bridge-fan-control

* Merge branch 'main' into Allow-separate-internal-bridge-fan-control

* Merge branch 'main' into Allow-separate-internal-bridge-fan-control

* Merge branch 'main' into Allow-separate-internal-bridge-fan-control
2025-02-09 21:53:57 +08:00
Nick Johnson
e7abd7e118 Add support for structured noise (perlin) fuzzy skin (#7678)
* Add support for perlin noise fuzzy skin

* Support multiple types of coherent noise

* Updated tooltips for more clarity.

* Reorder options as suggested by @discip

* Fix accidental removal of &

* Move libnoise to deps

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-01-27 22:45:16 +08:00
SoftFever
48ef0c038f Merge branch 'main' into feature/OrcaFilamentLibrary 2025-01-24 22:12:38 +08:00
Vovodroid
49a25a75c8 Support threshold overlap (#6606)
* Support threshold overlap

* Update tooltip
2025-01-23 18:01:38 +08:00
SoftFever
64beedcb90 Merge branch 'main' into feature/OrcaFilamentLibrary 2025-01-22 21:42:13 +08:00
Noisyfox
baa3efaf51 Fix extruder number issue when SEMM is not enabled (#8027)
* Revert ac80575b28

* Fix issue that extruder number is not initialized properly when SEMM is not enabled
2025-01-22 10:02:57 +08:00
Heiko Liebscher
d844c2a019 fix little typo Customize (#8069)
Customize
2025-01-20 20:44:30 +08:00
SoftFever
182a45e89f Move compatible_printers from developer mode to Advance mode 2025-01-15 22:54:56 +08:00
Azi
1fbfbbbd81 enabled dependency setting for filament and process (#6235)
* enabled dependency setting for filament and process

* Add information about inheritance back to Dependencies tab

* Merge pull request #1 from michmela44/Add_inherits_to_dependencies

Add information about inheritance back to Dependencies tab

* Merge branch 'main' into feature/enable_profile_dependencies
2025-01-13 20:49:46 +08:00
Marius Wachtler
e6c49c8a73 Fix some errors uncovered via compiler warnings (#7954)
* fix: tray_exist_bits != tray_exist_bits comparison

* fix: title == GetTitle() == title comparison

* fix: possibly dangling reference to a temporary
```
OrcaSlicer/src/libslic3r/calib.cpp:456:17: warning: possibly dangling reference to a temporary [-Wdangling-reference]
  456 |     const auto &w         = bed_ext.size().x();
OrcaSlicer/src/libslic3r/calib.cpp:456:45: note: the temporary was destroyed at the end of the full expression ‘((Eigen::DenseCoeffsBase<Eigen::Matrix<double, 2, 1, 2>, 1>*)(& Slic3r::BoundingBoxBase<PointClass>::size() const [with PointClass = Eigen::Matrix<double, 2, 1, 2>]()))->Eigen::DenseCoeffsBase<Eigen::Matrix<double, 2, 1, 2>, 1>::x()’
  456 |     const auto &w         = bed_ext.size().x();
```

* fix: mixup of | and ||
in this case I think it actually does not change the semantics it just means that both comparison have to be evaluated.

* fix: multi-character character constants need "

OrcaSlicer/src/slic3r/GUI/MediaPlayCtrl.cpp:392: warning: multi-character character constant [-Wmultichar]
  392 |     if (auto n = tunnel.find_first_of('/_'); n != std::string::npos)
OrcaSlicer/src/slic3r/GUI/MediaPlayCtrl.cpp: In member function ‘void Slic3r::GUI::MediaPlayCtrl::Stop(const wxString&)’:
OrcaSlicer/src/slic3r/GUI/MediaPlayCtrl.cpp:392: warning: overflow in conversion from ‘int’ to ‘char’ changes value from ‘12127’ to ‘95’ [-Woverflow]

* fix: missing paranthesis - skips null check

* NFC: Remove this check it can never be false

* NFC: fix warning: statement has no effect
2025-01-08 13:06:39 +08:00
Diogo Santos
c00bda7b75 Feature Ironing Inset added (#7969) 2025-01-08 11:35:08 +08:00
xiaoyeliu
515bb32b5f Fix:wrong extruder count by switching printers with tab (#7860)
1.Fix: wrong extruder_counts by Switching between multi-extruder printers using tabs 2. unneccessary unsaved dialog
2025-01-08 11:33:23 +08:00
Ioannis Giannakas
511b7fcfe3 Enhancement: ERS - Option to limit ERS to external perimeters and overhangs only (#7399)
* Option to limit ERS to external perimeters and overhangs only

* Label name

* Label update

* Merge branch 'main' into Limit-ERS-to-external-perimeters-and-overhangs

* Merge branch 'main' into Limit-ERS-to-external-perimeters-and-overhangs

* Merge branch 'SoftFever:main' into Limit-ERS-to-external-perimeters-and-overhangs

* Merge branch 'SoftFever:main' into Limit-ERS-to-external-perimeters-and-overhangs

* Merge branch 'main' into Limit-ERS-to-external-perimeters-and-overhangs

* Merge branch 'SoftFever:main' into Limit-ERS-to-external-perimeters-and-overhangs

* Merge branch 'main' into Limit-ERS-to-external-perimeters-and-overhangs

* Merge branch 'SoftFever:main' into Limit-ERS-to-external-perimeters-and-overhangs

* Merge branch 'main' into Limit-ERS-to-external-perimeters-and-overhangs
2025-01-05 23:19:00 +08:00
Ioannis Giannakas
131f8ffe0a Fix regressions with introduction of supertak plate for non BBL printers. Generalised plate title. (#7883) 2025-01-01 22:34:38 +08:00
xiaoyeliu
aa7e91209a Fix: Switching between multi-extruder printers using tabs can cause t… (#7483)
fix: Switching between multi-extruder printers using tabs can cause the filament count to be incorrect.
2024-12-14 14:38:35 +08:00
discip
f50e975564 reordering and renaming certain menu items (#7573)
* reordered Z-Hop settings

* Update Tab.cpp

* Update PrintConfig.cpp

* reordering **`Compare presets`** to match the layout in the sidebar
2024-12-14 14:34:08 +08:00
f0x52
5df5cc1549 [feature] Add Bambu Cool Plate SuperTack (#7670)
* ENH: add supertrack plate

Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I89017c9933597ee035aa20ba3852db6f629f5e20
(cherry picked from commit 78572cbff864e5e78255f2e0eb6e40237bc0bab9)

* NEW:add SuperTack svg

jira: none
Change-Id: Id6153f76f8634d1f00485991b75cbe526fb64adc
(cherry picked from commit 6404f06e79d38ffa8f7f296b10af2af1c2a3974d)

---------

Co-authored-by: zhou.xu <zhou.xu@bambulab.com>
2024-12-14 14:16:24 +08:00
xiaoyeliu
3009d16bdc Feature: set different colors to tools on devices with multitools (#7125)
For devices with multitools, set the default colors of filaments for each tool to different colors
2024-12-01 20:49:55 +08:00
Vovodroid
792e84c115 Retract on top layer option. (#6188)
Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-11-23 23:23:04 +08:00
SoftFever
73a0be7a35 Merge branch 'main' into feature/show-extruder-values-on-filament-overrides-tab 2024-10-07 19:43:50 +08:00
SoftFever
24106e39e7 Add support for textured cool plate (#6860)
support textured cool plate
2024-09-22 16:48:49 +08:00
SoftFever
a56675dfcb updates for PR #6638 - typos and grammar (#6673)
Including a marathon of resolving merge conflicts due to PRs today.
We should abolish multi-line msgids :-)


# Description
This looks like a huge PR, but it is only fixes for typos and grammar.
On the previous PR #6638 I mistakenly used _en.po as the reference
instead of the .pot.
It caused missed strings in the source and other .po files.
This around I triple checked again to make sure the msgids are in sync
with the L"" strings in the code.

Comments, variable names and non-English translation strings were
excluded.

I learnt that typos were "fixed" before by using translations. After
this PR, those translations are no longer relevant and can be cleaned
up.
Hopefully this sets a new baseline which will last us a while. :-)

<!--
> Please provide a summary of the changes made in this PR. Include
details such as:
  > * What issue does this PR address or fix?
  > * What new features or enhancements does this PR introduce?
> * Are there any breaking changes or dependencies that need to be
considered?
-->

# Screenshots/Recordings/Graphs

<!--
> Please attach relevant screenshots to showcase the UI changes.
> Please attach images that can help explain the changes.
-->

## Tests
The code compiled and ran successfully.
The translation files were verified with ./run_gettext.sh

I did not se any issues when running ./run_gettext.sh --full
Please confirm it again, before the merge.

<!--
> Please describe the tests that you have conducted to verify the
changes made in this PR.
-->
2024-09-08 22:11:20 +08:00
SoftFever
2efdb56495 deprecate overhang_speed_classic option and enable slowdown_for_curled_perimeters by default 2024-09-08 22:05:13 +08:00
Henri van der Riet
11d540d42d merge conflicts 2024-09-08 01:04:19 +02:00
Henri van der Riet
179b943413 updates for PR #6638 - typos and grammar
Including resolved merge conflicts.
2024-09-08 00:16:33 +02:00
SoftFever
3e61d6dcb7 Enabling object skirt. (#6487)
Implements individual object skirts, as requested in  **Individual skirts when printing by object. #3486** and  **Skirt around each object when using "by object" sequence #2652**

Now skirt type could be
![image](https://github.com/user-attachments/assets/532ecd91-fe3e-4bdb-b22f-ef28439ab7a6)

This PR based on several refactorings, including  **Configure skirt start point #6490** PR. To make review more easy each step was committed individually. Obviously them could be separated to different PRs or dropped.

I removed `prime_extruder && first_layer && extruder_id == first_extruder_id` as explicit object skirt is available.

Open question : do we need both common and object skirt together, probably with separate loop number?


All four combinations are possible.

Print by layer, common skirt:
![image](https://github.com/user-attachments/assets/5509f10b-ed3b-4243-8763-7ddcb101c67a)

Print by layer, object skirt:
![image](https://github.com/user-attachments/assets/deca3ca6-8bf7-4e5b-a356-2f5dd6e81566)

Print by object , object skirt:
![image](https://github.com/user-attachments/assets/7d1b2ddc-e61f-4d77-9ed4-e33fdd62d290)

Print by object , common skirt (any meaning?):
![image](https://github.com/user-attachments/assets/e7883eb4-b1a3-4158-a7f4-ce0658bc1939)
2024-09-07 23:46:54 +08:00
SoftFever
cce40fd154 Revert "Fix typos and grammar (#6638)"
This reverts commit 1afc1372bc.
2024-09-07 20:04:17 +08:00
henrivdr
0da135f4b8 Fix typos and grammar (#6638)
* fix lots of typos, grammar etc.

* merge conflict

* merge conflict

* merge conflict

* merge conflict

* revert gettext comments

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-09-07 18:00:01 +08:00
Ioannis Giannakas
ee7b694d80 Combined infill max layer height (optional) parameter (#6401)
* Combined infill max layer height parameter

* Combine sparse infill - allow % over nozzle diameter too.

* Updated defaults and tooltips

* Update PrintConfig.cpp
2024-09-07 16:20:46 +08:00
SoftFever
91f55f6870 Merge branch 'main' into skirt-object-fix-pr 2024-09-07 10:57:59 +08:00
SoftFever
ef23b4f27d hide adaptive_bed_mesh and thumbnails parameters for bbl machines 2024-09-03 22:56:24 +08:00
Ioannis Giannakas
91fca76e0f Ported filament shrinkage compensation for XY and independent Z from Prusa Slicer (fixing MMU painting, seam painting, support painting issues) (#6507)
* Ported filament shrinkage compensation from Prusa Slicer. Updated logic to be 100 = no shrinkage to be consistent with orca definitions

* Code comments update

* Merge branch 'main' into Filament-Shrinkage-compension---port-from-Prusa-slicer

* Merge remote-tracking branch 'upstream/main' into Filament-Shrinkage-compension---port-from-Prusa-slicer

* Merge branch 'main' into Filament-Shrinkage-compension---port-from-Prusa-slicer
2024-08-28 23:15:39 +08:00
Victor Usoltsev
b2ce7b20b4 Merge branch 'main' into feature/show-extruder-values-on-filament-overrides-tab 2024-08-28 20:22:40 +12:00
Noisyfox
6853e16b70 A bunch of tab fixes (#6551)
* Make sure the speed tab is properly hidden when toggle off advance mode

* Clear each page before clearing the parent, otherwise the child pages will be destroyed twice

* Fix crash if current selected tab is positioned after the removed tab

* Fix issue that sometimes the printer config first page is not displayed

* Fix issue that the wrong tab item get bold if the number of tabs changed
2024-08-26 20:21:59 +08:00
vovodroid
8df8f6390a Object skirt 2024-08-26 13:48:51 +03:00
vovodroid
5f04072d58 Configure skirt start point 2024-08-24 15:37:46 +03:00
Noisyfox
a4a8ef0913 Fix crash in printer config when switching tabs (#6537)
* Fix ASAN with MSVC

* Make ASAN happy

* Avoid deleting activated tab button by not calling `DeleteAllItems` (#SoftFever/OrcaSlicer#6486)
2024-08-23 22:55:10 +08:00
Ioannis Giannakas
e9ad66152c Wiki updates v2 & adaptive PA documentation (#6491)
* Wiki home page fix links and readme update to link to wiki

* Update README.md

* Fixed developer reference links

* Update linkage from slicer settings to Wiki for layer height, line width and seam settings

* adaptive PA documentation

* Update adaptive-pressure-advance.md

* updated screenshots

* formatting

* Update adaptive-pressure-advance.md

* Update adaptive-pressure-advance.md

* Update adaptive-pressure-advance.md

* Include adaptive PA link
2024-08-23 00:01:30 +08:00
Noisyfox
569c09a2f4 Fix crash on Linux when switching between tabs in printer config (#6437)
* Fix crash due to the wrong window get returned in `PointCtrl` (SoftFever/OrcaSlicer#6261).
`getWindow()` must return the control itself, not its child control; otherwise the child control will be destroyed twice when the tab container is destroyed.

* Fix another crash on Linux caused by unused undo button
2024-08-18 16:30:45 +08:00
SoftFever
ab3d04312b Revert "Fix Compile Warnings (#5963)"
This reverts commit b83e16dbdd.

Found regressions like auto orientation didn't work anymore after this change, revert it
2024-08-12 00:00:20 +08:00
SoftFever
af70e8aef4 Feature/mmu toolchange time (#6426)
* Revert "Fix #3311: filament Load / Unload time was not used in time estimation (#3706)"

This reverts commit 252788419b.

* revamp tool/filament change time

* tweak message
2024-08-11 22:56:32 +08:00
Victor Usoltsev
1a7d8e9acc Shows extruder's values on filament's Setting Overrides tab. 2024-08-07 23:26:00 +12:00
SoftFever
5d5c33f8c0 Merge branch 'main' into feature/multitool 2024-07-29 22:51:13 +08:00
Ocraftyone
dab6fa4db2 Fix Compile Warnings (#5963)
* Fix calls to depreciated wxPen constructor

* Fix use of wxTimerEvent

* Fix unrecognized character escape sequence

* Fix signed/unsigned mismatch

At least as much as possible without significantly altering parts of the application

* Clean unreferenced variables

* fix mistyped namespace selector

* Update deprecated calls

* Fix preprocessor statement

* Remove empty switch statements

* Change int vector used as bool to bool vector

* Remove empty control statements and related unused code

* Change multi character constant to string constant

* Fix discarded return value

json::parse was being called on the object, rather than statically like it should be. Also, the value was not being captured.

* Rename ICON_SIZE def used by MultiMachine

By having the definition in the header, it causes issues when other files define ICON_SIZE. By renaming it to MM_ICON_SIZE, this lessens the issue. It would probably be ideal to have the definitions in the respective .cpp that use them, but it would make it less convenient to update the values if needed in the future.

* Remove unused includes

* Fix linux/macOS compilation

* Hide unused-function errors on non-Windows systems

* Disable signed/unsigned comparison mismatch error

* Remove/Disable more unused variables

Still TODO: check double for loop in Print.cpp

* Remove unused variable that was missed

* Remove unused variables in libraries in the src folder

* Apply temporary fix for subobject linkage error

* Remove/Disable last set of unused variables reported by GCC

* remove redundant for loop

* fix misspelled ifdef check

* Update message on dialog

* Fix hard-coded platform specific modifier keys

* Remove duplicate for loop

* Disable -Wmisleading-indentation warning

* disable -Wswitch warning

* Remove unused local typedefs

* Fix -Wunused-value

* Fix pragma error on Windows from subobject linkage fix

* Fix -Waddress

* Fix null conversions (-Wconversion-null)

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-07-29 21:00:26 +08:00
Ioannis Giannakas
080d06858d Enhancement: Adaptive Pressure advance (#5609)
* Adaptive Pressure advance options setup

* Dynamic PA - PCHIP interpolator code and tests

* Integrate dynamic PA with slicing code - emit new PA values per speed change

* Link adaptive PA to role change instead of speed change

* Adaptive PA - Alpha 2

Reduce the frequency of requested PA changes by introducing a "state" variable.
Implement user toggle for adapting PA for external walls for overhangs

* Hide adaptive PA for overhangs

* Convert Adaptive PA to use volumetric flow model and start preparing for converting to Gcode post processor

* Converted Dynamic PA to a post processing filter. Reverted changes in GCode cpp and created tagging mechanism to allow filter to apply PA changes.

* Removed adaptive PA for overhangs

* Foundations for two dimensional adaptive PA based on acceleration and volumetric flow speed

* Minor code cleanup and updating of tooltips

* Renaming files for better clarity and generate classes documentation

* Update src/libslic3r/PrintConfig.cpp

Co-authored-by: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com>

* Update src/libslic3r/PrintConfig.cpp

Co-authored-by: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com>

* Update src/libslic3r/PrintConfig.cpp

Co-authored-by: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com>

* Introduce average mm3_mm over the length of a multipath for adaptive PA

* Updates for multipath handling part 2

* Introduce average mm3_mm over the length of a multipath for adaptive PA

* Trigger PA evaluation more frequently to catch edge cases where speed changes across islands of the same feature type.

* Updates for multipath handling part 2

* Adaptive PA: Implement average flow estimation on loops

* Code formatting

* Fix adaptive PA not adapting for small disconnected external wall line segments.

* Updated to take max print speed of upcoming feature to calculate new PA value.

This is to resolve issue of incorrect PA value used when starting a new feature at an overhang.

* Code clean up

* Performance tuning

* Further performance tuning by reducing use of regex commands in the nested loops and fix bug preventing gcode line output

* Further performance tuning and tweaks to stop searching for max speed after the first travel move.

* Reduce debug information

* Updated debug info

* Fix an issue on seams on specific models when wipe before external perimeter was enabled. Also cleanup documentation and add new to-do's

* Prepare for adaptive PA for overhangs, fix wipe bug & clean up code and comments

* Initial commit for adapting PA when extruding fully overhanging perimeters

* Ignore wipe command when identifying current print speed

* Option to evaluate adaptive PA on overhang regions in preparation for Klipper experimental option testing

* Update to issue PA changes for varying flow conditions within the same feature

* Fix bug where adaptive PA was enabled erroneously for role changes and ignoring user's preference.

* Refactored some code

* More refactoring

* Some bug fixes and enabled comments only when verbose g-code is enabled

* Introduced dedicated PA option for bridges

* Code refactoring to optimise initialisation of PA processor (making it faster). Fix a bug where PA was not always set after a toolchange. Improve general error handling and robustness.

* Updates to adaptive PA tooltips

* Bridging PA check with Epsilon instead of 0.

* Adaptive PA: addressing comments

---------

Co-authored-by: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com>
2024-07-28 22:52:08 +08:00
SoftFever
e05f2b4fbe Merge branch 'main' into feature/multitool 2024-07-23 18:21:19 +08:00
yw4z
bdbb502ee6 Color fixes (#5712)
* Flushing volumes button background color for active state

* Sliced plates bar > Use different colors on plate numbers for light / dark theme

* Remove 3D navigator background

* Device & Project Tab > Sidebar > Selected tab background color

* Merge branch 'SoftFever:main' into color-fixes-3

* Correct sidebar button color for light mode for bbl monitor / calibration and project page

* Homepage fixes

* Fix parameters group title color too bright on dark theme

* Search popup hovered item background color

* Sidebar > Search box > match border color with other input/combo boxes

* fix indents

* Add descriptions to statecolors

* Paint gizmos > remove background of non active Tool / Brush buttons on dark mode

* Merge branch 'SoftFever:main' into color-fixes-3

* Top bar / Main tab bar button hover background

* Fix broken color change from last merges

* Gizmos selected text background

* Keyboard shortcuts window selected tab bg color

* About page link color

* Project page fixes

* match disabled text color on combo boxes with input boxes

* Use better background color for disabled elements on dark mode

* match all colors for disabled elements

* BBL > Monitor tab > Add printer text and icon not visible on dark theme

* even darker bg color for homepage thumbnails

* Sidebar arrow not visible

* Better bg color for row highlighting

* match style of gizmo combo box

* Merge branch 'SoftFever:main' into color-fixes-3

* Revert changes for main tab bar background color of button while hover
2024-07-23 18:00:21 +08:00
SoftFever
1ef97913d8 hide/disable options accordingly 2024-07-23 00:43:12 +08:00