Commit Graph
100 Commits
Author SHA1 Message Date
Noisyfox 168dd08042 Fix load step as modifier (#9946)
Fix load step as modifier (SoftFever/OrcaSlicer#9940)
2025-06-23 22:28:55 +08:00
Noisyfox 3696d43590 Fix invalid value for symmetric_infill_y_axis (#9983) 2025-06-23 16:53:35 +08:00
Noisyfox 6ed9b08173 Link libspnav statically (#9964)
* Link libspnav statically

* Find static libspnav

* Force linking libspnav.a
2025-06-21 19:08:59 +08:00
Noisyfox 7cbd0d2b74 Remove classic overhang speed code (#9934)
* Remove code related to classic overhang speed

* Remove `overhang_degree` and `curve_degree`
2025-06-20 23:01:09 +08:00
Noisyfox b9cce6c179 Ironing support interfaces (#9548)
* Generate support interface iron extrusion

* Always ironing last

* Add options

* Move ironing speed to speed tab

* Don't iron places that are covered by upper support layers

* Disable support interface spacing settings when support ironing is enabled

* Update text
2025-06-19 15:19:05 +08:00
fe4a72ec94 Upgrade clipper & improve multi-thread performance (#7177)
* Clipper: Verify range of int32 coordinates on input.

Cherry-picked from prusa3d/PrusaSlicer@fa7debf49d

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>

* ClipperLib: Optimized PointInPolygon() to calculate cross products
 with int64s instead of doubles.

Cherry-picked from prusa3d/PrusaSlicer@9dca8403fe

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>

* Reworked the ClipperLib / Polygon types to use
the tbb::scallable_allocator to better scale on multiple threads.

Cherry-picked from prusa3d/PrusaSlicer@9cde96993e

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>

* use tbb::scallable_allocator for Polygons and ExPolygon::holes
to better scale on multiple threads

Cherry-picked from prusa3d/PrusaSlicer@b67ad6434d

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>

* Fixed compilation on GCC and CLang

Cherry-picked from prusa3d/PrusaSlicer@b3b44681a9

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>

* Remove clipper2 which is not used

* Removed shiny profiler from clipperlib

Cherry-picked from prusa3d/PrusaSlicer@7e77048593

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>

* ClipperLib: Further optimization of memory allocation using scalable_allocator.
ClipperLib: SimplifyPolygon() - changed default winding number to positive,
      added strictly_simple parameter.
ClipperUtlis simplify_polygons() - removed "remove_collinear" parameter

Cherry-picked from prusa3d/PrusaSlicer@a7e17df25f

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>

* ClipperLib: emplace_back() instead of push_back().

Cherry-picked from prusa3d/PrusaSlicer@2e150795b1

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>

* Fixed issue in a 32bit clipper, where IntersectPoint() checked for
the Y coordinate of the calculated intersection point for validity,
but the Y coordinate was already rounded to 32bits, thus an overflow
may have in rare cases masked invalidity of the result.

Cherry-picked from prusa3d/PrusaSlicer@b39c33414f

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>

* Fixed Vojtech's out of boundary assert in Clipper library.

Cherry-picked from prusa3d/PrusaSlicer@0a202dcff3

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>

* Update clipper to 6.4.2.

Cherry-picked from prusa3d/PrusaSlicer@b8b3cccb40

Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>

* Try fix cmake opencv

---------

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>
Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
2025-06-18 17:50:44 +08:00
Noisyfox 1aee8a0783 Don't split tiny cracks on first layer (#9917)
Don't split tiny cracks on first layer to get an uninterrupted bottom surface
2025-06-17 19:22:16 +08:00
Noisyfox ec44768eb9 Fix staticbox content margin on macOS (#9901) 2025-06-14 11:32:31 +08:00
Noisyfox b2ed8ff53e Remove sensitive data in 3mf files (#9825)
* Do not store BBL user id in 3mf file

* Do not store creation & modification date in 3mf file
2025-06-08 17:55:15 +08:00
Noisyfox 0242e9462b Fix error when drag-n-drop a file from network location to home screen (#9821)
Fix error when drag-n-drop a file from network location to home screen on Windows
2025-06-07 17:38:23 +08:00
Noisyfox 7f8f36bf40 Fix crash on Linux when you searched the placeholder in gcode editor dialog (#9815)
Fix crash on Linux when you searched the placeholder in gcode editor dialog (SoftFever/OrcaSlicer#5671)
2025-06-07 11:03:25 +08:00
Noisyfox b3598ea3cc Add missing close tag in MacOSXBundleInfo.plist.in (#9799) 2025-06-04 17:00:47 +08:00
Noisyfox 340da6fa85 Fix event table baseclass error (#9777) 2025-06-01 22:49:54 +08:00
Noisyfox beaaa09f2f Fix project info editor dark mode text color (#9775) 2025-06-01 21:37:53 +08:00
Noisyfox 4ae4634976 Fix tree support bed exclusion area calculation (#9633)
Fix tree support bed exclusion area calculation (SoftFever/OrcaSlicer#9624)
2025-06-01 13:18:03 +08:00
Noisyfox 09d309ee9c Make sure filament_id is not longer than 8 chars if the filament can be set in AMS (#9574)
Make sure `filament_id` is not longer than 8 chars if the filament is compatiable with AMS
2025-05-25 00:06:07 +08:00
NoisyfoxandMack a91fa2a40c Brim ear updates model object in real-time (#9625)
* ENH:Brim ear updates model object in real-time

jira: studio-8687 8683
Change-Id: Ic730957bf8c1e96c0464791cce60cb097d1a4dc9
(cherry picked from commit af174cb8b64e870929f926d3957d3471d0b09e29)
(cherry picked from commit a1037509aef57b2276bba3ddcab33a6bfeebf87a)

* Fix build error

---------

Co-authored-by: Mack <yongfang.bian@bambulab.com>
2025-05-16 23:52:48 +08:00
Noisyfox 294d07a2a0 Fix several crash when build in debug mode (#9650)
* Fix crash when open bed shape dialog.

DO NOT USE `auto` FOR EIGEN EXPRESSION RESULT!

* Fix assertion failure when switching printer models
2025-05-16 23:49:19 +08:00
Noisyfox ff9ce434a2 Fix preview gcode misalignment caused by placeholder postprocess (#9529)
* Fix layer number placeholder process

* Fix gcode move id misalignment when M73 is disabled

* Fix gcode move id misalignment when M73 is enabled
2025-05-16 09:28:30 +08:00
NoisyfoxandLukas Matena aebc01abfc Removed dependency on libtiff (#9514)
(cherry picked from commit prusa3d/PrusaSlicer@f12e0b4d21)

Co-authored-by: Lukas Matena <lukasmatena@seznam.cz>
2025-05-14 15:04:49 +08:00
Noisyfox 3b658cba3b Fix new project crash on Windows if multi-extruder printer profile is edited (#9600)
Fix new project crash on Windows if profile is edited
2025-05-14 11:36:50 +08:00
Noisyfox bd67bd8270 Fix brim ear render when camera projection changed (#9605)
* Fix brim ear render when camera projection changed (SoftFever/OrcaSlicer#9602)

* Remove unnecessary shader uniform
2025-05-12 21:18:19 +08:00
Noisyfox 0cc495b425 Make Custom GCode Editor resizable (#9405)
* Make gcode editor window resizable

* Make param list expands with the window

* Make dialog shrinkable and give it a proper initial size

* Revert "Hardcode Location of Add Button"

This reverts commit aef74ab005.

* Make sure the dialog fits inside current screen

* Fix compile error
2025-05-09 23:00:27 +08:00
Noisyfox 0c4f778ddb Fix crash when switching back to prepare tab after clicking the support paint icon in preview (#9417) 2025-05-09 22:59:18 +08:00
Noisyfox b0b6e000f2 Don't show "remember my choice" on 3mf open dialog (#9547)
Don't show "remember my choice" on 3mf open dialog (SoftFever/OrcaSlicer#9108)

Lots of people accidentally checked it without realizing the consequences, now we make it more explicit by
only allowing change this in preference settings.
2025-05-09 22:58:46 +08:00
Noisyfox 9b18c82bfb Fix crash when start_extruder_id is empty (#9584)
Fix crash when `start_extruder_id` is empty (SoftFever/OrcaSlicer#9580)
2025-05-09 22:47:18 +08:00
Noisyfox be2d193117 Fix floating brim (#9393)
* FIX: brim should be extruded only on first layer

github: github.com/bambulab/BambuStudio/issues/4678

Change-Id: Ib00795dfba2e6d869c30ac906385f170088bbfd6
(cherry picked from commit b51ff1721ddc2080c4f7e487f67c4f1a722bf091)

* Fix compile
2025-05-05 11:27:42 +08:00
Noisyfox 038b25627e Show proper printer names on printer selection page (#9363)
* Show actual printer name from sub_path files on printer selection screen

* Merge branch 'main' into bugfox/preset-name-consistency
2025-05-04 16:02:15 +08:00
Noisyfox 86f4c3a014 PA calib: Don't decrease speed too much for the speed trick line (#9358)
* Don't decrease speed too much for the speed trick line (SoftFever/OrcaSlicer#9354)

* Make sure no negative accel/speed
2025-05-03 19:26:37 +08:00
Noisyfox 81f1cd4532 Fix filament/printer selection loading page translation (#9530) 2025-05-03 18:06:04 +08:00
Noisyfox 8c4b7456c1 Fix vendor/model selector on create printer dialog (#9344)
* Make sure printer vendor matches

* Handle cases where some vendor do not have printers (such as `OrcaFilamentLibrary`)

* Ignore vendor `custom printer` from create printer vendor list

* Fix missing end bracket

* Update printer vendor and model list on create printer dialog
2025-05-01 17:12:03 +08:00
Noisyfox a9d426a3dc Fix Xcode 16.3 build (#9422)
* Fix build with Xcode 16.3

* Simplify OpenVDB patch, from https://github.com/AcademySoftwareFoundation/openvdb/commit/930c3acb8e0c7c2f1373f3a70dc197f5d04dfe74#diff-bc3061cc2fe6c64a3d67c8350330bb3a530d01037faace6da27ad9a12aa03e29

* Fix CGAL header under clang 19
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=281880

* Fix compile error due to removal of base template for `std::char_traits` in clang 19
https://releases.llvm.org/19.1.0/projects/libcxx/docs/ReleaseNotes.html#deprecations-and-removals
2025-05-01 17:09:45 +08:00
NoisyfoxandSoftFever 66830d2344 Fix object search bar on macOS and Linux (#9473)
* Remove unused search code

* Reimplement the object search bar (SoftFever/OrcaSlicer#7438)

* Fix result list when search text is empty

* Prevent infinite focus loop

* Update layout on Linux

* Fix focus on macOS

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-05-01 15:21:11 +08:00
Noisyfox 940800b059 Merge tiny cracks that is part of a large bottom surface into bottom surface (#9332)
* Merge tiny cracks that is part of a large bottom surface into bottom surface (SoftFever/OrcaSlicer#9329)

* Revert bottom offset

* Top surfaces will have perimeters around, which need to be removed from bottom surfaces so bridges not extended to visible areas
2025-04-29 22:19:30 +08:00
Noisyfox 032e6c8580 Fix non-windows build (#9509) 2025-04-29 13:02:22 +08:00
Noisyfox 2cc5b3e335 Make sure exclusion area is correctly rendered even in wrong orientation 2025-04-26 12:38:13 +08:00
Noisyfox 6938d2da7f Merge branch 'main' into bugfox/bed-shape-orientation 2025-04-26 12:35:23 +08:00
Noisyfox 09f2ee467b Enable deploy orca_custom_preset_tests (#9465) 2025-04-24 09:37:05 +08:00
Noisyfox e2b16f527a Improve gcode preview flow rate scale (#9319)
* Ignore very tiny extrusions in flow rate scale (SoftFever/OrcaSlicer#9190)

* Don't show flow rate if it's not extrusion

* Merge branch 'main' into bugfox/gcode-viewer-flow-scale
2025-04-23 23:37:08 +08:00
Noisyfox bfe0778421 Merge branch 'main' into bugfox/bed-shape-orientation 2025-04-20 18:21:31 +08:00
Noisyfox cd2df8f5ef Fix profile check error msg (#9414)
* Ensure file encoding

* Show correct file path in error message
2025-04-20 14:21:40 +08:00
NoisyfoxandSoftFever cd2077ebaf Fix prime tower wipe volume calculation (#9235)
* Revert "Fixed an bug that filament_minimal_purge_on_wipe_tower option doesn't work for soluable filament (#8397)"

This reverts commit fcc5489911.

* Fixed an bug that filament_minimal_purge_on_wipe_tower option doesn't work for soluable filament (#8397)

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-04-20 13:36:11 +08:00
Noisyfox f5849e5c08 Improve profile check script (#9389)
* Make missing `compatible_printers` error message more clear

* Support checking `compatible_printers` from parent profiles
2025-04-18 10:48:08 +08:00
Noisyfox 3369a394e6 add filament_vendors:FusRock (#9361)
Add FusRock and keep the alphabetical order

# Description

<!--
> 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

<!--
> Please describe the tests that you have conducted to verify the
changes made in this PR.
-->
2025-04-16 11:48:05 +08:00
Noisyfox bae3a1e6b8 Fix selected filament not shown up (#9371)
* Add `renamed_from` so existing user won't break

(cherry picked from commit f8f3b5c2c9b0b15c209d8307a6eaba24e393ddda)

* Add check for profile name consistency

(cherry picked from commit 7343aa5b55cab9a9f7cbdcdddd4e7650f1577598)

* Update filament name checking script

(cherry picked from commit 7c4c1bf191de1fd6b86a07bf62c1ab634faa9f55)

* Fix filament name inconsistency

(cherry picked from commit 36225fc3dbd88babbc5a227fcc6247528d0de6a4)
2025-04-16 10:59:29 +08:00
Noisyfox 2b5fd7ad2e Fix filament name inconsistency
(cherry picked from commit 36225fc3dbd88babbc5a227fcc6247528d0de6a4)
2025-04-16 10:57:24 +08:00
Noisyfox eb57036dab Update filament name checking script
(cherry picked from commit 7c4c1bf191de1fd6b86a07bf62c1ab634faa9f55)
2025-04-16 10:50:50 +08:00
Noisyfox eb38474bb2 Add check for profile name consistency
(cherry picked from commit 7343aa5b55cab9a9f7cbdcdddd4e7650f1577598)
2025-04-16 10:50:05 +08:00
Noisyfox 5a39e6beda Add renamed_from so existing user won't break
(cherry picked from commit f8f3b5c2c9b0b15c209d8307a6eaba24e393ddda)
2025-04-16 10:49:53 +08:00
Noisyfox bbf17e919e Fix non-rectangular bed rendering offset issue 2025-04-15 14:05:08 +08:00
Noisyfox 228b50f858 Ensure bed shape is in correct orientation (SoftFever/OrcaSlicer#9345) 2025-04-15 12:51:01 +08:00
Noisyfox 035b047fef Fix AMS filament selection compatible check (#9126)
* Fix AMS filament selection compatible check (SoftFever/OrcaSlicer#9112)
2025-04-14 23:31:20 +08:00
Noisyfox c90b3a2cce Attempt to speed up outside bed detection (#8869)
* Don't check intersection if points below bed is also inside the bed, when the bed is convex

* Skip intersection check if bbox not overlapping

* Remove duplicated out of bed check

* Faster (but less accurate) bbox test

* Merge branch 'main' into dev/faster-outside-check

# Conflicts:
#	src/libslic3r/Model.cpp
2025-04-14 23:23:08 +08:00
Noisyfox 8dd9e64af8 Update profile selector loading text color (#9334)
Update loading text color
2025-04-13 23:18:46 +08:00
8e38ac234f Fix rare crash when calculating bridge expansion (#9287)
* Fix #12469 - crash caused by bridge expansion.

Handle a very rare case in which the algorithm picks a wrong
polygon for expansion seed.

(cherry picked from commit 5f843cc93470c96483abcbd47cf8ee5fe38dffe2)

* SPE-2698: Fix crash during regions expansion.

(cherry picked from commit a3f75133c8baead6f8d7bb01722a6bfcdc2e9038)

---------

Co-authored-by: Martin Šach <martin.sachin@gmail.com>
Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
2025-04-13 17:39:28 +08:00
Noisyfox 7a40ebda66 Fix orca filament lib load (#9260) 2025-04-13 17:38:58 +08:00
Noisyfox 97ec03692c Fix wipe tower initial movement when switching extruder offsets (#9222)
Fix wipe tower initial movement when switching extruder offsets (SoftFever/OrcaSlicer#9214)
2025-04-13 17:38:29 +08:00
Noisyfox 443034553b Fix M486 still presented even with obj exclusion disabled (#9202)
Make sure `m_enable_exclude_object` is initialized correctly from user config (SoftFever/OrcaSlicer#7775)
2025-04-13 17:38:13 +08:00
Noisyfox 2f8fa3fec2 Avoid unnecessary travel in scarf seam (#9197)
* Avoid unnecessary travel in scarf seam (SoftFever/OrcaSlicer#9139)

* Fix typo
2025-04-13 17:37:40 +08:00
Noisyfox 0a3cbabae6 Fix flow calibration overlapping objects with nozzle > 0.4mm (#9189)
* Make sure the objects are refreshed after scaling

* Scale the calib pattern using `selection.scale` so they won't overlap (SoftFever/OrcaSlicer#9085)
2025-04-13 17:36:51 +08:00
Noisyfox 74df3a450b Fix wrong travel before printing first skirt point (#9179)
Fix wrong travel before printing first skirt point (SoftFever/OrcaSlicer#9109)

don't modify `last_pos`, otherwise it could move out of plate/to wrong places and cause issue
2025-04-13 17:36:36 +08:00
Noisyfox abcd6e7847 Don't apply adaptive PA in PA calibration (#9149)
Don't apply adaptive PA in PA calibration (SoftFever/OrcaSlicer#9140)
2025-04-13 17:35:57 +08:00
Noisyfox 61a68fb497 Don't allow selection change in paint gizmo (#8776)
If object has modifier, in some paint gizmos such as seam and support
paint, if you click the modifier, the gizmo will exit:

![paint-modifier](https://github.com/user-attachments/assets/5680a19f-5de7-485e-bf73-3d79b6a080a9)

This PR fixes this issue so the gizmo won't accidentally exit.
2025-04-13 17:35:12 +08:00
Noisyfox 5ed855aeef Improve brim paint gizmo shortcuts (#9174)
* Change section view hotkey to alt+mouse wheel

* Use ctrl+mouse wheel up/down to change brim size

* Update current brim brush size
2025-04-13 17:34:05 +08:00
Noisyfox 672a829cdb Fix issue that option visibility not updated after resetting (#9150)
Fix
https://github.com/SoftFever/OrcaSlicer/issues/8895#issuecomment-2764217763
2025-04-13 17:33:02 +08:00
Noisyfox ee07700aa7 Fix brim ear paint memory leaking & multi-selection with shift+left click (#9167)
* Fix issue that you cannot select multiple brim ears with shift+left click

* Fix brim ear size preview when dragging the slide

* Fix `render_hover_point` memory leaking by using `std::optional`
2025-04-13 17:32:39 +08:00
Noisyfox d54c139cdb Fix PA calib crash when default line width is set to 0 (#9146)
Fix PA calib crash when default line width is set to 0 (SoftFever/OrcaSlicer#9144)
2025-04-13 17:31:54 +08:00
Noisyfox 697fc5b8d3 Async profile load on printer/filament selection screen (#9118)
The selection screen shows a loading indicator instead of frozen during
the page loading process, during that time you will able to close the
window if you want, instead of been stuck at this screen until it
loaded:


![profile-select-async](https://github.com/user-attachments/assets/ff6c810e-72f8-4398-b86f-2ca5b516fbe2)

Ported from BambuStudio, huge thanks to BambuLab!
2025-04-13 17:30:37 +08:00
Noisyfox b149cb0682 Remove MAX_FLUSH_VALUE (#9262)
# Description

Fixes https://github.com/SoftFever/OrcaSlicer/issues/8342

Some printers require extreme flushes to prevent color bleeding or weird
mixed material issues. This change simply bumps the UI constraint by an
order of magnitude.

Filament manufacturers rejoice at the waste!

## Tests

I have made no attempt to test this change or its impact on
purge/flushing calculations.
2025-04-09 21:09:53 +08:00
Noisyfox 32efc176d9 Vfa calibs - Input Shaping & Junction Deviation (#9160)
@RF47 and I have been working on a **two-step input shaping
calibration** to help fine-tune print quality and Junction Deviation
Test for Marlin2 printers.
This is based on [Klipper's Resonance
Compensation](https://www.klipper3d.org/Resonance_Compensation.html#resonance-compensation),
[Marlin’s M593 G-code](https://marlinfw.org/docs/gcode/M593.html),
discussions from
[SoftFever/OrcaSlicer#1820](https://github.com/SoftFever/OrcaSlicer/issues/1820),
some elements from the [input_shaping
branch](https://github.com/SoftFever/OrcaSlicer/tree/feature/input_shaping)
and Junction Deviation [Marlin
Documentation](https://marlinfw.org/docs/configuration/configuration.html#junction-deviation-)

This is for Marlin only, but I'm working on a future Klipper-compatible
version here:
[VFA-Calibs+Klipper](https://github.com/ianalexis/OrcaSlicer/tree/VFA-Calibs%2BKlipper).
However, we don't own a Klipper machine, so we're unsure how to improve
it or verify if it works correctly.

### Calibration Steps

1. **Frequency Test** – Helps identify the optimal input shaping
frequency.
2. **Damping Test** – Fine-tunes the damping ratio for smoother prints. 

### Screenshots

![imagen](https://github.com/user-attachments/assets/bfa9ef9c-3a81-499e-b7f8-d60a77952304)

![imagen](https://github.com/user-attachments/assets/df764cfd-85ca-4048-8748-c95a56bc2c8b)

![imagen](https://github.com/user-attachments/assets/cb991d1b-d1f5-489c-81f2-c25d4f9e394c)

![imagen](https://github.com/user-attachments/assets/7da6607c-7644-49af-8c13-97349d7226ef)

![imagen](https://github.com/user-attachments/assets/db8ce73a-6b51-4bcd-ad7e-b654074096e5)

![imagen](https://github.com/user-attachments/assets/5deea699-e5d1-4a09-85f4-809d07395ca1)

![imagen](https://github.com/user-attachments/assets/cc87c756-75a3-40e4-9df3-7437ea78ac4e)

![imagen](https://github.com/user-attachments/assets/de5a8329-3567-473f-bf40-8649d84279b6)

## Tests
- Marlin tested on **Ender 3-class printers** (@RF47 and @ianalexis)
- Klipper tested in Voron 2.4 and an FLSun T1 Pro @ShaneDelmore 
- Tested in Windows and MacOs.
2025-04-06 20:16:12 +08:00
Noisyfox 1fd21371b1 Camera rotate around current plate center if plate is empty (#8912)
* Camera rotate around current plate center if plate is empty (SoftFever/OrcaSlicer#8856)

* Don't expand plate bounding box when camera rotating
2025-04-05 23:23:26 +08:00
Noisyfox ecd91bcf01 Make sure sidebar is not triggered by child notebook tab changes (#8934)
* Make sure sidebar is not triggered by child notebook tab changes such as AMS group selection (SoftFever/OrcaSlicer#8656)
2025-04-05 23:21:36 +08:00
NoisyfoxandArthur f14232396a FIX: prevent dead loop of conflict checker (#9115)
jira: STUDIO-10282
Change-Id: I5722e9967cdd83cde5ef59aee37b0f7019e53d89
(cherry picked from commit b952006e4db49f00054cc2ac539074222c890d08)

Co-authored-by: Arthur <arthur.tang@bambulab.com>
2025-04-05 17:51:16 +08:00
Noisyfoxandtao wang a2bf46fc53 Make gcode 3mf file smaller when sending to BBL printers (#9114)
FIX:remove the auxiliary directory when sending for printing

jira:[for send gcode]

Change-Id: I0774ca97043e25ce1f731371739052921f721087
(cherry picked from commit 0dda96f91ee68c89b16f0f2622902817a1171798)
(cherry picked from commit 73b45f347bba8654fa5a415b673beb0d3ab1f5bf)
(cherry picked from commit 6eb533019eda9c810f3eaf80a81fd7698ebb4578)

Co-authored-by: tao wang <tao.wang@bambulab.com>
2025-04-05 17:50:41 +08:00
Noisyfox 4aafa7a90d Merge branch 'main' into VFA-Calibs 2025-04-05 14:50:12 +08:00
1b8f798d3b Port coordinate system selection for Move, Scale and Rotate gizmo (#9099)
* NEW:add move and rotate gizmo in assemble view

Cherry-picked from bambulab/BambuStudio@d9e47bd9a9

Co-authored-by: zhou.xu <zhou.xu@bambulab.com>

* Deselect other parts if Alt is pressed when selecting

Cherry-picked from bambulab/BambuStudio@f5eb2899e7

Co-authored-by: zhou.xu <zhou.xu@bambulab.com>

* FIX:z offset is error after copy and paste several objects

jira: STUDIO-6753 STUDIO-7135
Change-Id: I6d9c8eb0c957ff1e3194709704ceb6c3920baa4f
(cherry picked from commit 847a7141a6f47e409566b19e73c0ebdeb08f39e2)
(cherry picked from commit a5cc52beb7eef5848368e660ca4f14e95ad5f7d5)

* FIX:arrow direction in scaling tool is incorrect

Jira: STUDIO-5672
Change-Id: I82c0ab336805e34c8380f93e64d3b9dbbf283805
(cherry picked from commit f6f27b700f0305854fcdbcb1191af25a4b8bdbe4)

* FIX:world cs is displayed incorrectly

The value of world coordinate system for model_volume
is displayed incorrectly

Jira: STUDIO-6399
code is from PrusaSlicer
thanks for PrusaSlicer and enricoturri1966
commit 325709c5ae9b937867b36103a41d12a102c99292
Author: enricoturri1966 <enricoturri@seznam.cz>
Date:   Thu Jan 26 15:49:00 2023 +0100

    SPE-1419 - Fixed reset skew resetting mirror, reset scale resetting mirror, changed labels in Object Manipulator panel, scale of instances using the Object Manipulator panel always made as absolute

Change-Id: I30fdd39effd73b8dc027e4263fa7e64937b84326

Cherry-picked from bambulab/BambuStudio@0b46b9848b

Co-authored-by: enricoturri1966 <enricoturri@seznam.cz>

* FIX:fix scale problem
add tool tip for move,rotate,scale gizmo
Jira: STUDIO-6425 STUDIO-6419

Change-Id: I0b89c9b70f83cde21c6a407bcecd78c925515cfa

Cherry-picked from bambulab/BambuStudio@6dad59102b

Co-authored-by: zhou.xu <zhou.xu@bambulab.com>

* NEW:add Object coordinates in move gizmo
jira: none
Part of the code references PrusaSlicer,thanks for PrusaSlicer and enricoturri1966
commit c12eeee12f9e2c91a9dfe7905f1370143805f038
Author: enricoturri1966 <enricoturri@seznam.cz>
Date:   Mon Oct 2 14:26:36 2023 +0200

    SPE-1926: Tech ENABLE_CGAL_BOUNDING_SPHERE - Use selection's bounding sphere center as pivot for rotations

Change-Id: Iae7e4539c198af3ff1aa99e1c0ce015fbcf80256
(cherry picked from commit 2b73bc915ee27218c9803ba0a01b0d3e47adf1da)

Cherry-picked from bambulab/BambuStudio@98cce3b656

Co-authored-by: enricoturri1966 <enricoturri@seznam.cz>
Co-authored-by: zhou.xu <zhou.xu@bambulab.com>

* FIX:fix imgui style at Object coordinate

in move tool
jira:STUDIO-7141

Change-Id: Ib2900012c28878c4e7ad97eb0cf319f693cb9f6f
(cherry picked from commit b7b09c82897678c4f3615713bc5d1cc7a3b17b19)
(cherry picked from commit c89732a04619a6d910b723c126515bae802f7167)

* ENH:use local cs for non_model_part better

jira: STUDIO-7234
Change-Id: I0f0e99429e5e0b7cc4932a661eceffcff4a495f6
(cherry picked from commit b4305a3bfc9e5ae05c1785a710238a70f2dfb44a)
(cherry picked from commit b28ac4f812f0024ec619c5d1b3c96e4cef4debdb)

* ENH:add a cross mark for object cs
jira: STUDIO-6947
Change-Id: Iaaab4f072045756ac3ba12c3f65e1c7f04ba65b8
(cherry picked from commit a2a2f49b4d94f257d36c9d17b4ec952e5dc9f0eb)

Cherry-picked from bambulab/BambuStudio@8400e162a7

Co-authored-by: zhou.xu <zhou.xu@bambulab.com>

* NEW:add tip button for move,rotate,scale

jira: STUDIO-7273
Change-Id: I44aeecd8aaa17ec49ac1d8ff2bee5c3729c52061
(cherry picked from commit 998f33b4ce588f59cef345e327a97f6f669f6089)
(cherry picked from commit f5eb2899e7252ea3ff0f8a79ef8d55c6009ebb28)

* FIX:scale and size sholud >0 in scale tool

jira: STUDIO-7433
Change-Id: Ibd4d00d9ca4762d002049e97a6d0819649f464db
(cherry picked from commit eaaf11031ee49009af14abbd05bb4a07c88aceda)
(cherry picked from commit 0d393d64b804ba7ae05454bf158de470cc74a6a6)

* Fix crossmark rendering

* Use combox as coord selection

Cherry-picked from bambulab/BambuStudio@56f628dac1

Co-authored-by: zhou.xu <zhou.xu@bambulab.com>

* NEW:add "world coordinates" scale for scale gizmo
upgrade Transformation class
jira:none
about 75% code is from PrusaSlicer,thanks for PrusaSlicer and enricoturri1966
commit b32e9366606dce7d4f8de8db84fd902113bdbe28
Author: enricoturri1966 <enricoturri@seznam.cz>
Date:   Tue Mar 7 14:32:18 2023 +0100

    Rework of constrained scaling

Change-Id: I1248ea586e6b8f2fb6cdf3aa901ed7f525c3f111
(cherry picked from commit e10381aad1412b0c47afa340b634faa3af9d1a1f)

Cherry-picked from bambulab/BambuStudio@c0536c09b4

Co-authored-by: enricoturri1966 <enricoturri@seznam.cz>
Co-authored-by: zhou.xu <zhou.xu@bambulab.com>

* ENH:set "Rotate (relative)"

jira:none
code is from PrusaSlicer,thanks for PrusaSlicer and enricoturri1966

commit 243985173e70c189ad9a86eefaaea0757d9749cb
Author: enricoturri1966 <enricoturri@seznam.cz>
Date:   Thu May 12 14:33:41 2022 +0200

    Tech ENABLE_TRANSFORMATIONS_BY_MATRICES - Allow for relative rotations

Change-Id: I851939093ffb6881542fb21b434e17cc31a6dab2
(cherry picked from commit e412fa3492fa2ef59b84a84be1ede80935fb8a8d)

* FIX:limit scaling ratio by grabber in scale tool

jira: none
Change-Id: I20a4404d4e4025ae230ab46ba8d8d3e5ffed10e3
(cherry picked from commit 97f63f167e80e859fec49666c8986f5a01f61838)

* FIX:selection should be not empty when update_ui_from_settings

jira: none
Change-Id: I74b76733eba03d148dfd70279ec2ba65f19cc39a
(cherry picked from commit f402685aee747fe5c3740b2cb80fc2a60e129918)

* ENH:add "volume selection" checkbox

jira: none
Change-Id: I68b5f54e37ea2ab9e2b65ac84abc834060f400df
(cherry picked from commit eec7de441bd40408fe688587d2834b0c42c0d66f)

* FIX:add can_sequential_clearance_show_in_gizmo api

jira: STUDIO-7836
Change-Id: Ie0cded272596bafee4e491e379722dcc23035dc4
(cherry picked from commit 715d2b9b7840939663e99e0ecbfcefd8ecf2904f)

* FIX:select all should ban in paint,cut and so on gizmo

jira: STUDIO-7872
Change-Id: Ic6496dbdd892814e1fc41625ee34ffc46f171657
(cherry picked from commit 95e8ca728553081db4ecbb3d865c8b999a6ff2fa)

* FIX:add wipe tower'position in move gizmo

jira: STUDIO-7861
Change-Id: I8147717bc61ba06a7e1fba45532cdadc2ba1174e
(cherry picked from commit 065dddb890d3ec81643b9767397bdad72ae69ebd)

* ENH:fix text coordinate system calculation
jira: STUDIO-6449
Change-Id: I36214c14c348e8f52b96501cd027205819b0dabc
(cherry picked from commit 44287812a0cb212f1bf6fe70e32e1075f532886d)

Cherry-picked from bambulab/BambuStudio@4091f3e042

Co-authored-by: zhou.xu <zhou.xu@bambulab.com>

* FIX:delete old selection.translate api
jira: STUDIO-8201
code is from PrusaSlicer,thanks for PrusaSlicer and enricoturri1966
commit 88ce6ccdef5f680709ea8b676688784a7af287dd
Author: enricoturri1966 <enricoturri@seznam.cz>
Date:   Wed May 11 10:54:42 2022 +0200

    Tech ENABLE_TRANSFORMATIONS_BY_MATRICES -
Change-Id: Iafe963f0f7bf9028f32a4fb4a4cc8cc609662283

Change-Id: Ibbc36c004734f35564f0028dd1e537ac926a2f1f

Cherry-picked from bambulab/BambuStudio@c6d9f2685e

Co-authored-by: enricoturri1966 <enricoturri@seznam.cz>
Co-authored-by: zhou.xu <zhou.xu@bambulab.com>

* FIX:add protection for null pointer

jira: none
Change-Id: I9a9231bab893f5d2afa008f65165269ae176c962
(cherry picked from commit f27a713aaf77b1109fc57b8650efa6b23081f799)

* FIX:when two dir is perpendicular to each other,scale error

(plane_normal.dot(ray_dir))
jira:STUDIO-8274

Change-Id: Ib3145ab75e18c832d20065d204aa41b75f73b673
(cherry picked from commit fbdc9cd580f835d1a873d08ed64baed3b3db6f9a)

* ENH:add "reset real zeros" button in rotate gizmo

jira: STUDIO-8291
Change-Id: Ia10e4d8a2a3a073c22a1306aeab9ffa3e7b77c2b
(cherry picked from commit 738e3f004daa9082709800e4e3d0d9bbe1b7ed7e)

* FIX:add "absolute rotation" in rotate gizmo

jira: STUDIO-8726
Change-Id: I23deb4ab11cf24ca4f0f0c5a35a74268c34f60f6
(cherry picked from commit d26b8f9fcadf8f7709a302991e43be711560e84e)
(cherry picked from commit 496d69f9d1b91c6bd84804e57a276bccf79f0cbd)

* Fix tooltip button size

* Fix issue that reative rotation history not cleared after gizmo closed

* Show selection box in assemble view

* ENH:add an tip icon for assembly view

jira: STUDIO-7155
Change-Id: Ie9e4fa578c8aa5bda9ff771d82f396f8b51026bb
(cherry picked from commit 515f9473347fb912a9dc8c365f1c318506096083)

---------

Co-authored-by: zhou.xu <zhou.xu@bambulab.com>
Co-authored-by: enricoturri1966 <enricoturri@seznam.cz>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-04-04 23:07:00 +08:00
Noisyfox b4c17d6e97 Fix split to objects crash (#9066)
* Fix split to objects crash (SoftFever/OrcaSlicer#9047)

* Avoid unnecessary trigger of `ObjectList::list_manipulation` when object selection changed programmly
2025-04-03 21:55:44 +08:00
Noisyfox 0cb458db89 Fix wxEVT_UPDATE_UI event been consumed by wrong control (#9061)
* Fix `wxEVT_UPDATE_UI` event been consumed by wrong control (SoftFever/OrcaSlicer#9059)
2025-04-02 22:48:32 +08:00
Noisyfox 2e9c30883b Fix brim type combox in object table (#9019)
* Fix brim type combox in object table (SoftFever/OrcaSlicer#8969)
2025-04-02 22:20:27 +08:00
Noisyfox 9fc51ba22e Disable BBL server error dialog (#9060)
* Disable BBL server error dialog (SoftFever/OrcaSlicer#9045)

* Log server error
2025-04-01 22:53:57 +08:00
Noisyfox a3984a706e FIX: enable circle fitting of tree support with larger threshold (#9038)
* FIX: enable circle fitting of tree support with larger threshold

jira: STUDIO-8588
Change-Id: Ia566fa14f7f786ff905fc3484885634811a6d686
(cherry picked from commit bambulab/BambuStudio@82c72b19bd)
2025-04-01 22:39:15 +08:00
Noisyfox 075565f4f4 Do not loade web page until switching to device page (#9031)
* Do not loade web page until switching to device page
2025-04-01 22:38:38 +08:00
Noisyfox 67681c971f Add extra anchor line to PA line test (#9022)
* Add extra anchor line to PA line test (SoftFever/OrcaSlicer#8945)
2025-04-01 22:37:12 +08:00
Noisyfox 64ac0ecd41 Fix render_hover_point memory leaking by using std::optional 2025-04-01 16:08:24 +08:00
Noisyfox 19e5ee3f42 Update current brim brush size 2025-04-01 15:51:01 +08:00
Noisyfox 00cf9be46e Use ctrl+mouse wheel up/down to change brim size 2025-04-01 15:34:49 +08:00
Noisyfox b832370421 Change section view hotkey to alt+mouse wheel 2025-04-01 11:43:04 +08:00
Noisyfox d31546b2ae Fix brim ear size preview when dragging the slide 2025-03-31 23:37:49 +08:00
Noisyfox 8210d76449 Fix issue that you cannot select multiple brim ears with shift+left click 2025-03-31 23:23:23 +08:00
Noisyfox c163d11fdb Fix filament editor crash on Linux (#9016)
Fix filament editor crash on Linux (SoftFever/OrcaSlicer#8895)
2025-03-30 22:02:36 +08:00
Noisyfox 9db74c05c0 Fix vase mode with filament change (#8404)
* Fix lift in vase mode

* Disable vase mode of layers that have color change (SoftFever/OrcaSlicer#8387)
2025-03-30 15:34:48 +08:00
Noisyfox ec752671da Ensure the flow calib pattern to be printed in desired order 2025-03-30 15:21:52 +08:00
Noisyfox 2fbeb75ced Fix display of command key 2025-03-30 01:11:04 +08:00
Noisyfox eb0d0386a0 Fix shortcut collision on macOS (SoftFever/OrcaSlicer#8152) 2025-03-30 00:42:04 +08:00
Noisyfox c2a1a8c39b Use different threshold for top & bottom surfaces 2025-03-30 00:08:26 +08:00
Noisyfox 6bd2355a69 Avoid creating bridges on very tiny surface cracks (SoftFever/OrcaSlicer#8563) 2025-03-30 00:08:26 +08:00
Noisyfoxandtamasmeszaros ed45bf425e Use boost::nowide directly from boost (#9037)
* Use `boost::nowide` directly from boost

Cherry-picked from prusa3d/PrusaSlicer@bffa3f8578

Co-authored-by: tamasmeszaros <meszaros.q@gmail.com>

* Replaced all occurrences of boost::nowide::narrow for wxStrings with into_u8

Cherry-picked from prusa3d/PrusaSlicer@8d6497297a

Co-authored-by: tamasmeszaros <meszaros.q@gmail.com>

* Fix flatpak build
2025-03-29 20:14:10 +08:00
Noisyfox 41c3a059a7 Use Orca color 2025-03-28 23:21:02 +08:00
Noisyfox 5dee7297cf Fix mac build error 2025-03-28 09:31:16 +08:00
Noisyfox 5c7cb0578f Update link color 2025-03-28 09:13:50 +08:00