Commit Graph

280 Commits

Author SHA1 Message Date
xun.zhang
c8fa5e1e4e ENH: update extruder unprintable tip before slice
jira:none

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I3a47e1505c3410e1ba41e4d12903ccf4db486240
(cherry picked from commit 086e977d897c2a9022321e2611c82f39147462be)
2025-09-10 14:42:30 +08:00
zhimin.zeng
10e676e439 ENH: Add prompt information when mixture of PLA and PETG
jira: STUDIO-9659
Change-Id: I03a09dd796074d0872010672bdd85688bb7f1715
(cherry picked from commit 903b230f389ac8fce2816a8d46a0675019af0b04)
2025-09-10 08:53:00 +08:00
xun.zhang
7315b69b02 ENH: update trans
jira: NONE
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iec86e9f51c10d10f81764eef09aa81a3562bd273
(cherry picked from commit 69ff576c2d505030f2ee4d5b3154eeb8c219769c)
2025-09-09 17:22:41 +08:00
xun.zhang
9732c0b845 ENH: some tip logic optimize
1. Only check printablily if have explicit filament map
2. Refine some sentences

jira:STUDIO-9753,STUDIO-9727

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I2fc3aa2276dc6f514c50ac2fcaf9509f41e778f3
(cherry picked from commit 73f92d27dab667c8893ab96e47f3832ce9d2de60)
2025-09-09 17:16:41 +08:00
zhimin.zeng
6ab141e0e1 ENH: add PPS-CF/PPA-CF detection for multi-extruder printer
jira: STUDIO-9660

Change-Id: I1df024e178b8561569b493888d6057d8f96aea3c
(cherry picked from commit b68a7b3bd6ad5c980885fbaed3c635ae1a424f73)
2025-09-09 14:41:23 +08:00
zhou.xu
926c22b797 NEW:add "obj preview thumnailData" function
jira: none

Change-Id: I688c2f05bf85fca376418115acddb5066ef980eb
(cherry picked from commit 16f2b2bcb5fd157f25aa7012dabd99a8d31aec07)
(cherry picked from commit 7cc21b5e9745a84d75ea13b66f5653520bb1cba3)
2025-09-09 09:39:43 +08:00
zhou.xu
28e55e4ec8 ENH:move get_extruders_colors api to plater class
jira: none
Change-Id: I8c2b31d4963b01cb193b7f2a2a3650cf7252ebc5
(cherry picked from commit 3eeabc0722027b789c59130762bd57c2745cf188)
2025-09-07 18:52:14 +08:00
xun.zhang
52d18ab03a FIX: wrong filament map when switch printer preset
1. Clear filament map info in plate when switch to single extruder
profile
2. Use real filament map when check tpu validality

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I45a3e8c91dd52e7300a563eda3ffb167c19b7074
(cherry picked from commit d27304e5ef2f43424046b1a1fabc8d999508be4e)
2025-09-06 23:52:49 +08:00
xun.zhang
05bf5c114b ENH: filament map params switch to global param
1.Add more filament map modes
2.Filament map and mode are set as project config
3.Plate filament map is only valid when plate filament mode is
manual

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I33b2f853e0b77b9d605be1f2f1172b44df43da15
(cherry picked from commit e45f8c6dc2146e1e31a1c21e8aaada540af112d0)
2025-09-06 23:49:11 +08:00
zhimin.zeng
db026b7f87 FIX: cannot show printable area error
jira: STUDIO-9199
Change-Id: I1a02175b173496e2b9b4fd67e2c6b8680a3e3bb3
(cherry picked from commit 3daf67ef2115e196034e9012bdfb6d29a1eb3dbc)
2025-09-06 22:22:47 +08:00
lane.wei
a2c6ea7d15 FIX: cali: fix the 3mf wrong issue when cali for multi-extruder
jira: no-jira
Change-Id: I352e4dd499f4e4dd22cdc21f3f62428a0baa5bfb
(cherry picked from commit f9cd3dd8764ab551c2aa85cdb7383b19bc345f36)
2025-08-26 20:27:08 +08:00
lane.wei
eac07fd8e3 ENH: buildvolume: add logic to support extruder_printable_height
jira: no-jira
Change-Id: I962c4aed8c536c0fd8b89ae090cd0463c5d645db
(cherry picked from commit 43773d77010492453473797e77e83e9a4630c25f)
2025-08-24 23:18:30 +08:00
zhimin.zeng
5935b75fe5 ENH: Add extruder_printable_height
to support different printable height of multi_extruder
jira:none

Change-Id: I265c65e15fc8f598c3456556557bb6977b5de820
(cherry picked from commit 933adbaaf0eaf361e39f131dd5536dca91214d43)
2025-08-24 23:18:29 +08:00
xun.zhang
f8375d2199 ENH: wrong filament id in MultiExtPrintableError
jira:STUDIO-8645

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I20d84fab66486ef6d90e86f0f2d8c5db98175b5e
(cherry picked from commit f618caa07711d86e69832161d0e26b08dd3bfa3f)
2025-08-24 23:18:27 +08:00
zhimin.zeng
6599f37c83 ENH: add tpu check before slicing
jira: none
Change-Id: I7d4f053e67f4a4aa22ef990d597d28cb894c4195
(cherry picked from commit 60cdf3b6551a8c18c10db0a746e1b15b764eda66)
2025-08-24 23:18:25 +08:00
zhimin.zeng
a1586b348f NEW:add "slice error" for double extruder
jira: none
Change-Id: I58e86c33bc91456d42efcc1a0cad003432bb13df
(cherry picked from commit 166a46caa8157e246adfeec591dc13383a47b252)
2025-08-24 23:18:24 +08:00
lane.wei
6c79e8262a ENH: Scene: check object position error in 3DScene for multi-extruder
for some obvious error, we identified it and show to user

JIRA: no-jira
Change-Id: Id0365e89c4121ccccb9b5627a98428704432ab58
(cherry picked from commit 270ae086fbca576b75901313959c92cbfb913db6)
2025-08-24 23:18:24 +08:00
zhimin.zeng
56af264273 FIX: add object id for gcode check
and display plater limit error individually
jira: none

Change-Id: Ie6105642667530901be494b344ce853e728ae5fa
(cherry picked from commit acd6016fc834c749307205448e05bffee954c71e)
2025-08-24 23:18:23 +08:00
zhimin.zeng
3e9e9a1fa0 ENH: modify the error information of gcode check
jira: none
Change-Id: Icccd17e110408f2fdb9890307139de0f9821f008
(cherry picked from commit 2ee87600cb6d1d09808447bb6ec996224d633905)
2025-08-24 23:18:19 +08:00
qing.zhang
1b70bd38f2 ENH: check wethether filaments print on first layer
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I1cc7cd9e9bbbcdf72112c0949196c09ef414cf91
(cherry picked from commit 67039a6f4d51482fe689a2aad0a900f3339a5c62)
2025-08-24 23:18:14 +08:00
zhimin.zeng
f2bfd51492 FIX: limit the wipe tower to common areas for multi_extruder
jira: none
Change-Id: I58d061904610a5e33679e7254721bc43dcc22e64
(cherry picked from commit 64f471c2cceb9c08ff8b5f6af10ca95771ccaf57)
2025-08-24 23:18:14 +08:00
zhimin.zeng
6e7b2e9614 FIX: fix build error
(cherry picked from commit 885e96d8db30a688c3fc65f828c2c4b78499b4c3)
2025-08-24 23:18:14 +08:00
zhimin.zeng
135b39526e ENH: Add gcode check for multi_extruder
jira: none
Change-Id: Iebc43e608c4509eb62b280af2d401fa9e0e089ba
(cherry picked from commit c75c10e312b8d0bd5404d92db88c95a9e6186bc1)
2025-08-24 23:18:14 +08:00
lane.wei
f702ad9fd2 ENH: dual_extruder: add logic to process extruder_printable_area
JIRA: STUDIO-7498
Change-Id: I1cf53db93acf41b06cb1b9569a0679487c9f1e41
(cherry picked from commit e5be69dedd1ba6dc289a14b89598c9a6101dacb3)
2025-08-24 23:18:12 +08:00
Noisyfox
50e64d5961 Add fuzzy skin painting (#9979)
* SPE-2486: Refactor function apply_mm_segmentation() to prepare support for fuzzy skin painting.

(cherry picked from commit 2c06c81159f7aadd6ac20c7a7583c8f4959a5601)

* SPE-2585: Fix empty layers when multi-material painting and modifiers are used.

(cherry picked from commit 4b3da02ec26d43bfad91897cb34779fb21419e3e)

* Update project structure to match Prusa

* SPE-2486: Add a new gizmo for fuzzy skin painting.

(cherry picked from commit 886faac74ebe6978b828f51be62d26176e2900e5)

* Fix render

* Remove duplicated painting gizmo `render_triangles` code

* SPE-2486: Extend multi-material segmentation to allow segmentation of any painted faces.

(cherry picked from commit 519f5eea8e3be0d7c2cd5d030323ff264727e3d0)

---------

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

* SPE-2486: Implement segmentation of layers based on fuzzy skin painting.

(cherry picked from commit 800b742b950438c5ed8323693074b6171300131c)

* SPE-2486: Separate fuzzy skin implementation into the separate file.

(cherry picked from commit efd95c1c66dc09fca7695fb82405056c687c2291)

* Move more fuzzy code to separate file

* Don't hide fuzzy skin option, so it can be applied to paint on fuzzy

* Fix build

* Add option group for fuzzy skin

* Update icon color

* Fix reset painting

* Update UI style

* Store fuzzy painting in bbs_3mf

* Add missing fuzzy paint code

* SPE-2486: Limit the depth of the painted fuzzy skin regions to make regions cover just external perimeters.

This reduces the possibility of artifacts that could happen during regions merging.

(cherry picked from commit fa2663f02647f80b239da4f45d92ef66f5ce048a)

* Update icons

---------

Co-authored-by: yw4z <ywsyildiz@gmail.com>

* Make the region compatible check a separate function

* Only warn about multi-material if it's truly multi-perimeters

* Improve gizmo UI & tooltips

---------

Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
Co-authored-by: yw4z <ywsyildiz@gmail.com>
2025-07-18 16:01:25 +08:00
Noisyfox
18f17a10c9 Fix issue that clicking paint gizmos while mouse is hovering above the model, view panning doesn't work (#10164)
Fix issue that clicking paint gizmos while mouse is hovering above the model, view panning doesn't work.

The issue was introduced in #8776.
2025-07-18 07:31:14 +08:00
yw4z
0726819547 Color & Icon fixes / improvements (#9773)
* init

* update

* update

* revert changes for stepmesh dialog

* make highlight arrow more obvious

* reset to zero icons

* modernize return icon

* better dark mode icon for project page

* fix return arrow

* revert changes for hyperlinks

* update

* Update SelectMachine.cpp

* Update SendToPrinter.cpp

* update

* update plate icons

* dragcanvas dark mode support

* revert changes for calibration page

* revert changes for bind dialog

* Update BindDialog.cpp

* fix green text on bbl calibration window

* Update AmsMappingPopup.cpp

* match measure axis color

* fix

* update

* Update AmsMappingPopup.cpp

* revert color change for hyperlink

* Update NotificationManager.cpp

* update

* add icon for resonance avoidance

* update

* Fix wrong icon color after switching dark mode

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-07-17 15:26:55 +08:00
Kiss Lorand
5707f8f4a5 Swap pan and rotate mouse buttons (#9972)
* Swap pan and rotate buttons

* Add translation
2025-06-24 23:41:41 +08:00
Dipl.-Ing. Raoul Rubien, BSc
3ecca6116d fixes compiler warnings (#9619)
* compiler warnings: adds SYSTEM to [target_]include_directories to skip warnings originating from dependencies

* compiler warnings: uninitialized/unused variables, missing parenthesis, pragma

* compiler warnings: redundant template type, missing curly braces, pass 0 instead of NULL as int argument

* compiler warnings: removes fclose(fp) where fp==nullptr since fclose() has attribute __nonnull((1))

* compiler warnings: uninitialized variables, missing parentheses, missing curly braces

* compiler warnings: ? as lower precedence than <<

* compiler warnings: unused variable

* compiler warnings: unused result

* compiler warnings: undefined/unused variable

* compiler warnings: uninitialized variable
2025-06-14 21:05:25 +08:00
yw4z
a60b65367a Use proper case for "return" (#9831)
init
2025-06-10 09:42:06 +08:00
Alexandre Folle de Menezes
b8c5ddd0ee Fix the spelling/grammar on the original english strings (#9487)
* Fix the spelling/grammar on english strings

* Fix the spelling/grammar on english strings, part 2
2025-06-01 19:32:36 +08:00
yw4z
895b21fb2b Fix scaling on Plates toolbar for Windows (#9674)
Update GLCanvas3D.cpp
2025-06-01 15:40:44 +08:00
Kiss Lorand
24784bae9a Auto orient shortcuts (#9615) 2025-05-14 11:45:08 +08:00
yw4z
f0384e7bc3 Color & shape improvements for Axes (#9495)
init
2025-05-08 16:00:48 +08:00
Alexandre Folle de Menezes
d37f1b6a81 Fix english strings consistency (#8881)
* "non zero" -> "non-zero"

* "Z hop" -> "Z-hop"

* "works" -> "is working"

* "version at least x" -> "version x or higher"

* "printing job" -> "print job"
"to print on" -> "printing on"

* "is not find" -> "was not found"

* "boundary of plate" -> "plate boundaries"

* "toolchange" -> "tool change"

* "colour" -> "color"

* "cancelled" -> "canceled"

* "can not" -> "cannot"

* "gcode" -> "G-code"
2025-04-26 19:59:49 +08:00
yw4z
5b3109945e Allow right click on empty space while an object selected (#9335)
Update GLCanvas3D.cpp
2025-04-14 10:13:39 +08:00
yw4z
cc81be0992 Improvements for Sliced Plates Toolbar (#9313)
* initial

* fix scaling related issues

* Update GLCanvas3D.cpp

* update

* Update GLCanvas3D.cpp

* Update GLCanvas3D.cpp

* Update GLCanvas3D.cpp

* Update GLCanvas3D.cpp

* Update GLCanvas3D.cpp

* update

* Update GLCanvas3D.cpp

* Update GLCanvas3D.cpp

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-04-13 14:57:08 +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
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
Graham Held
933b282c53 Add in a pref for camera orbit speed multiplier (#8725)
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-03-30 16:16:08 +08:00
Noisyfox
345ab82f91 QoL: Add auto perspective (#8312)
* 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>
2025-03-09 14:04:46 +08:00
Noisyfox
85cf995458 Fix fov so off-plate objects can be rendered properly.
Adopted from bambulab/BambuStudio@ba19513380 and bambulab/BambuStudio@d0e91b5164

Co-authored-by: zhou.xu <zhou.xu@bambulab.com>
2025-02-19 10:21:16 +08:00
Noisyfox
185fb3cb26 Initial port of Brim ear gizmo
Cherry-picked from bambulab/BambuStudio@92c85a13d0

Co-authored-by: Mack <yongfang.bian@bambulab.com>
2025-02-17 11:19:07 +08:00
Dima Buzdyk
7b3e0cc637 glcanvas: scale icons using icon size, not scale factor
Calculate toolbar icon size the same way as it done on windows:
 manipulate icon size, not toolbar scale.

Scaling icons this way makes images sharper since they getting
rasterized to a target size rather than being rasterized for 40px and
scaled to a desired size later.
2025-02-03 21:14:08 +10:00
Dima Buzdyk
c0533eba6f Fix sticky camera rotate for touchpad navigation style on Windows (#8249)
* glcanvas: add modifiers to mouse events logging

* glcanvas: workaround for touchpad nav on Win

Releasing ALT on windows platform result in GLCanvas losing focus.
Because of this mouse movements not being processed by on_mouse() event
handler and camera rotation have not cleaned up.

Make a workaround for Windows to cleanup camera rotate state on
releasing ALT modifier.
2025-02-01 18:02:10 +08:00
Noisyfox
a3de7cf0bd Fix random crash when opening 3mf files that have bed size different than current (#7955)
* Fix bed raycast id

* Fix bed raycaster UAF crash due to bed resizing
2025-01-22 09:58:15 +08:00
SoftFever
8ce992b640 Merge branch 'main' into dev/bbs-measure 2024-12-01 21:33:20 +08:00
Vovodroid
b3b0961d91 Adaptive layers - respect layer height range modifiers. (#5941)
* Adaptive layers - respect layer height range modifiers.

* Remove #pragma optimize
2024-11-21 21:40:51 +08:00
Noisyfox
e3b1e30387 Disable right-click menu display in gizmo 2024-11-06 22:08:46 +08:00
Noisyfox
ae31f4fb1f Fix issue that thumbnail color not updated properly when AMS slot mapping changes (#7194)
* Fix issue that thumbnail color not updated properly when AMS slot mapping changes
2024-10-25 23:25:17 +08:00