* 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>
* Make sure the objects are refreshed after scaling
* Scale the calib pattern using `selection.scale` so they won't overlap (SoftFever/OrcaSlicer#9085)
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
* 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`
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:

Ported from BambuStudio, huge thanks to BambuLab!
# 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.
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>
* 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>
* FIX: enable circle fitting of tree support with larger threshold
jira: STUDIO-8588
Change-Id: Ia566fa14f7f786ff905fc3484885634811a6d686
(cherry picked from commit bambulab/BambuStudio@82c72b19bd)
* ImGuizmo: Comment out unused code
* 3DNav: Avoid gimbal lock by using polar coordinates
* 3DNav: Make sure top and bottom are oriented correctly
* Add auto perspective
* Add options
---------
Co-authored-by: SoftFever <softfeverever@gmail.com>
Move init sys font into GUI_App, after logging has been set up properly (#8603)
This avoid annoying messagebox if somehow failed to load font on windows, and write the message into log files instead
According to https://eigen.tuxfamily.org/dox/TopicPitfalls.html one
should just avoid using `auto` as the type of an Eigen expression.
This PR fixes most of them I could found in the project. There might be
cases that I missed, and I might update those later if I noticed.
This should prevent issues like #7741 and hopefully fix some mysterious
crashes happened inside Eigen calls.
jira:[STUDIO-6649]
If the model comes from model mall, the name from the mall will be used when sending and printing. When there are special characters in the name, it will cause the sending to fail.
Change-Id: I324441cc7177e7062b79280c5d23afe9eeb5e4c2
(cherry picked from commit 1bcf30c39c648763952703c9060573baa2782f87)
Co-authored-by: tao wang <tao.wang@bambulab.com>
PROBLEM
• Current color palette has many repeating or very similar colors
• Colors looks came from 80s and all raw colors like rgb(0,255,255)
• Black and White colors shows less details on surfaces due to shadows
and highlights
SOLUTION
• Picked more specific color tones. Tried to make every alternative to
easily identifiable
• Didnt used black, white or gray
QUESTIONABLE
• New colors follows given order and i used orca color as first. Maybe
orange one is better pick
• I can add, remove, or change order of colors
COMPARISON
before

after

old color set

new color set

as text if you want to experiment
`
wxColour("#00C1AE"),
wxColour("#F4E2C1"),
wxColour("#ED1C24"),
wxColour("#00FF7F"),
wxColour("#F26722"),
wxColour("#FFEB31"),
wxColour("#7841CE"),
wxColour("#115877"),
wxColour("#ED1E79"),
wxColour("#2EBDEF"),
wxColour("#345B2F"),
wxColour("#800080"),
wxColour("#FA8173"),
wxColour("#800000"),
wxColour("#F7B763"),
wxColour("#A4C41E"),
`
We decide to set brim width of all objects to MAX_BRANCH_RADIUS_FIRST_LAYER if there is an object with tree support after discussion.
Jira: MAK-2009
Change-Id: I4c4940800632c433235966b01c44ac910e33a51c
(cherry picked from commit bambulab/BambuStudio@2bd6b11505)
Co-authored-by: Arthur <arthur.tang@bambulab.com>
1. Improve generation speed by removing unnecessary get_avoidance.
2. Fix a bug of hybrid support's interface (Jira: STUDIO-4878,
STUDIO-4726, Github#2614)
3. Fix a bug of tree support pass through objects (Jira: STUDIO-4252, STUDIO-4608
STUDIO-4298)
4. Fix a bug with first layer + Arachne (Jira: STUDIO-4281, Github #2423)
Change-Id: I40978c93ab93fa6964483514dad552d73a66c710
(cherry picked from commit 2ccbbe49c74d4aab4f086e79a6f8262b7fc80f15)
(cherry picked from commit bambulab/BambuStudio@d7a4623380)
Co-authored-by: Arthur <arthur.tang@bambulab.com>
1. add a hook inside tree branches for improved strength
2. fix the issue that interface may fly as a mess (delete the logic
where gap nodes can skip dropping down)
3. fix the issue that base nodes may fly as a mess (smoothing should
skip polygon nodes, see Jira:STUDIO-4403)
Change-Id: Ie9f2039813c2ca3127ed8913304cc455fec8e7ee
(cherry picked from commit 83cef5f91d49ff3d275a89ec3df8b5f0fd573f8c)
(cherry picked from commit bambulab/BambuStudio@76f876a3c6)
Co-authored-by: Arthur <arthur.tang@bambulab.com>
**The latest download link can be found from the "Checks" tab above or
[here](https://github.com/SoftFever/OrcaSlicer/pull/8256/checks). There
should be an "artifact" dropdown on top of that page once the build is
completed.**
This PR solves the following problems:
- Bind printers in different subnet
- Binded LAN printers are not automatically connected when switching to
Device tab



Few improtant things to know:
The automatic printer info detection (ie, the step in the first image)
doesn't work on MacOS, when you click "Connect" you will immediately be
prompted to the second image to enter the printer details. (I don't know
why but Bambu does not provide this capability on MacOS for their
network plugin)
AFAIK, P1 series do not support automatic printer info detection (as
tested by @SoftFever and myself), so the first step is gauranteed to
fail, which is unfortunate but expected. Simply click the "Manual Setup"
button (which will appear after clicking the "Connect" button then wait
for a while) and enter the printer detail and you should be good to go.
If anything entered wrong, you could simply unbind the printer and do it
all over again.
I know current binding flow is not very user-friendly, but consider how
rare this will be used, I think it's OK. Given the current situation
this is the best I could do with the closed-source Bambu network plugin.
I only have a P1 so I couldn't throughly test this PR. Please if you
have different printers and home network configurations, your feedback
are valuable to help validating and improving this PR, thanks in
advance!
Fix#6169Fix#8097