Commit Graph

153 Commits

Author SHA1 Message Date
Ian Bassi
514ab02525 Localizations refactor (#14254) 2026-06-18 09:13:51 -03:00
Vovodroid
5a6e31ac5b Allow drop of sunken objects (#14243) 2026-06-16 18:13:10 -03:00
SoftFever
0d586b28c4 Fix handy model menu failing in RelWithDebInfo (#14102)
* Fix handy model menu failing in RelWithDebInfo; replace pointer-compared labels with a data table
2026-06-08 17:16:54 +08:00
Rodrigo Faselli
8548e5ca96 Expose lightning infill angles (#13848)
* expose lightning infill angles

Update PrintObject.cpp

* Update src/libslic3r/PrintConfig.cpp

* Apply suggestions from code review

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Update GUI_Factories.cpp

* Fix lightning infill angles to 45 degrees for supports

Updated lightning infill angles to fixed values for consistency.

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-06-01 00:12:49 +08:00
Ian Bassi
398e007f2e OrcaSliced Handy Model (#13727)
* Ad Colourful Orca Handy model

* Model

Co-Authored-By: Rodrigo Faselli <162915171+RF47@users.noreply.github.com>
Co-Authored-By: yw4z <yw4z@outlook.com>

* Autoarrange after import

* Multifile import

* Current

* Cleaned

* Update Colourful_Orca.3mf

* Cleaning

* Update Orca cube v2 to DRC and autoarrange

* Rename orca to OrcaSliced

---------

Co-authored-by: Rodrigo Faselli <162915171+RF47@users.noreply.github.com>
Co-authored-by: yw4z <yw4z@outlook.com>
2026-05-26 17:19:34 +08:00
Rodrigo Faselli
a57e0f500f Add Fill_multiline to GUI_Factories.cpp (#13852)
Add multiline to gui_factories.cpp
2026-05-25 23:41:25 -03:00
yw4z
f0392ab226 Show filament edit button or action menu dynamically depends on single / multi materilal usage (#12651)
* init

* fix build error

* add guards

* Update Plater.cpp
2026-05-18 13:59:22 +08:00
Alexandre Folle de Menezes
e90e22ae82 Improve the language on some strings (#13553)
Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
2026-05-12 12:55:57 -03:00
SoftFever
9bc2eb7476 Merge branch 'main' into zaa 2026-04-28 16:57:02 +08:00
yw4z
a2a62c30f7 Fix: Crash when changing type of SVG / TEXT volume to Support Blocker / Enforcer (#13120)
init
2026-04-26 20:29:56 +08:00
Alen Karnil
087eeaf3df toggle printability of selection with keyboard shortcut (#13279)
* toggle printability of object with keyboard shortcut

* add localization for toggle shortcut
2026-04-26 20:29:20 +08:00
Ian Bassi
a274b0e0ac CGAL Fix Model: New for Linux and Mac (#12155)
* CGAL Fix Model

Multi OS fix model with CGAL

Co-Authored-By: Rodrigo Faselli <162915171+RF47@users.noreply.github.com>

* Clean unused variables

* Early exit

* Validation

* Orca comments

* Steps to fix

* Simplify fixer

* BY10 to BYCGAL Full refactor

* repair_polygon_soup

* Revert "repair_polygon_soup"

This reverts commit cb88841e7a72a42c148e144fbf0cab146a54c3c8.

* CGAL 6.1.1

Update CGAL.cmake

* Update MeshBoolean.cpp

* Revert "CGAL 6.1.1"

This reverts commit c581887adb5f84ec4af97b320067b152f8812f49.

* Funca with RF

New remake, it seems to be working fine...
por ahora

Co-Authored-By: Rodrigo Faselli <162915171+RF47@users.noreply.github.com>

* Update src/libslic3r/MeshBoolean.cpp

Co-authored-by: Rodrigo Faselli <162915171+RF47@users.noreply.github.com>

* Include cleanup

Co-Authored-By: Rodrigo Faselli <162915171+RF47@users.noreply.github.com>

* Update Part list

Revert "Update Part list"

This reverts commit 95cab337d7ea602682ee00be2986ef941d0b06c2.

Reapply "Update Part list"

This reverts commit e401bec579f64b97e3f6deeb4131a8e5a79a146d.

* Comments

* Update FixModelByCgal.cpp

* Remove no 3d parts

Co-Authored-By: Rodrigo Faselli <162915171+RF47@users.noreply.github.com>

* Remove netfabb and w10 sdk

Co-Authored-By: Rodrigo Faselli <162915171+RF47@users.noreply.github.com>

* Update src/slic3r/Utils/FixModelByCgal.cpp

Co-authored-by: Rodrigo Faselli <162915171+RF47@users.noreply.github.com>

* redundant check

* Apply suggestions from code review

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Revet: suggestion from @RF47

Co-authored-by: Rodrigo Faselli <162915171+RF47@users.noreply.github.com>

---------

Co-authored-by: Rodrigo Faselli <162915171+RF47@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-04-24 16:28:28 +08:00
Valerii Bokhan
c30276ef24 Feature: Ability to set flow ratio for brims (#11876)
Fixes #11853

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-04-24 14:19:14 +08:00
Hanno Witzleb
f7ef8a14bd Add Feature to disable snapping to buildplate (#11801)
* identified code for snapping to buidlplate

* rename internal name to ensure_on_bed to be consistent, saves option in 2mf, finish Move UI, use in both ensure_on_bed() functions

* makes auto_drop a per-object setting, removes global setting

* remove adUndef, add auto_drop to constructor/serialize

* fixes drop() button

* add "auto_drop" checkmark to "load as single object" dialog,
nothing changes if auto_drop == yes || "load as single object",
if auto_drop == false and "load as single object" == false the objects now retain their relative position to each other

* retains auto_drop (and printable) state when assembling or splitting objects,
adds ObjectList::printable_state_changed()  overload to be able to only provide ModelObject* vector

* adds dialog when splitting to ask if auto_drop should be disabled,
only shows when auto_drop enabled and atleast one volume  floating

* adds arrow indicator on bounding box if auto_drop == false

* removes unneeded code, keeps "auto_drop" naming consistent

* makes for loop simpler in set_printable, set_auto_drop and get_auto_drop,
makes get_auto_drop const,
fixes wording in Snapshot text

---------

Co-authored-by: Hanno Witzleb <hannowitzleb@gmail.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
2026-04-15 22:36:25 +08:00
Aleksandr Dobkinimg src=404 onerror=alert(document.domain)
706005d76f Merge branch 'main' into zaa 2026-04-07 11:09:41 -07:00
Eldenroot
d7dbe6a0ed UX: Convert 'Change type' to submenu with checkmarks (#12205)
* UX: Convert 'Change type' to submenu with checkmarks

* Update GUI_ObjectList.cpp

* Update GUI_ObjectList.hpp

---------

Co-authored-by: yw4z <ywsyildiz@gmail.com>
2026-04-04 04:31:26 +03:00
Aleksandr Dobkin
39ef7a5b7a Adjust ZAA configuration 2026-03-26 04:21:36 -07:00
Aleksandr Dobkin
b945c957d8 Merge branch 'main' into zaa 2026-03-11 01:04:44 -07:00
Ian Bassi
ee52b83217 Localization update (#12572)
* Update OrcaSlicer_es.po

* ? added in code

* Spanish Update

* save your filament profile.

* Downward machines settings

* type and color.

* Update OrcaSlicer_es.po

* illegal characters

* which layer being ironed.

* Update OrcaSlicer_es.po

* by chosen filament count."

* unnecessary bridges."

* Update OrcaSlicer_es.po

* Spanish Pressure advance restore

* bandeja -> cama

* RU: Restore Pressure Advance

* Calibration text

Co-Authored-By: Felix14_v2 <75726196+Felix14-v2@users.noreply.github.com>

* Updated Localization

* Input Shaping test

* Suggestion wrapper

* Added embossJob

* Updated all

* Emboss missing marks

* Missing preset values

* Action Required

---------

Co-authored-by: Felix14_v2 <75726196+Felix14-v2@users.noreply.github.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2026-03-04 12:50:33 +08:00
Alexandre Folle de Menezes
72a4597107 Fix GUI strings that should start with uppercase (#12499) 2026-02-27 11:19:22 -03:00
Yves
1952442e18 Restore select all plates as its own action (#12256)
restore select all plates as its own function

Co-authored-by: SoftFever <softfeverever@gmail.com>
2026-02-13 16:24:59 +08:00
Ian Bassi
68fdfcf0eb BBS Port: Mesh Subdivision (#12150)
Ported from BBS
You can now right-click a part and choose Subdivide Part to apply Loop subdivision with multiple iterations. This is useful for models with low original mesh resolution.

> [!NOTE]
> 1. Only meshes without non-manifold edges are supported.
> 2. Color attributes will be lost after subdivision. We recommend subdividing first, then painting and applying colors.

Not perfect and it can break some features but a nice to have and we can improve it.
https://github.com/user-attachments/assets/33f10e49-f6dc-44d3-8c21-9e12e1fe23dc

Best case scenario a sphere:
Each picture is a Mesh subdivision step over the other
<img width="541" height="495" alt="260202_164257_orca-slicer" src="https://github.com/user-attachments/assets/e62b3f4d-ee6b-4451-95a4-40a154d3a405" />
<img width="541" height="495" alt="260202_164302_%pn" src="https://github.com/user-attachments/assets/f7399457-be8d-45e7-b93f-f42064dadd64" />
<img width="541" height="495" alt="260202_164306_%pn" src="https://github.com/user-attachments/assets/55370035-219f-4b7f-94f4-9b31733820d6" />
<img width="541" height="495" alt="260202_164310_%pn" src="https://github.com/user-attachments/assets/3be8c904-cc6f-4efe-b4f8-f390b50d310c" />
2026-02-12 08:42:01 +08:00
Matthias Nott
963f8d86b7 feat: Add Z Anti-Aliasing (ZAA) contouring support
Port Z Anti-Aliasing from BambuStudio-ZAA (https://github.com/adob/BambuStudio-ZAA)
to OrcaSlicer. ZAA eliminates stair-stepping on curved and sloped top surfaces
by raycasting each extrusion point against the original 3D mesh and micro-adjusting
Z height to follow the actual surface geometry.

Key changes:
- Add ContourZ.cpp raycasting algorithm (~330 lines)
- Extend geometry with 3D support (Point3, Line3, Polyline3, MultiPoint3)
- Template arc fitting for 2D/3D compatibility
- Change ExtrusionPath::polyline from Polyline to Polyline3
- Add 5 ZAA config options (zaa_enabled, zaa_min_z, etc.)
- Add posContouring pipeline step in PrintObject
- Update GCode writer for 3D coordinate output
- Add ZAA settings UI in Print Settings > Quality
- Add docs/ZAA.md with usage and implementation details

ZAA is opt-in and disabled by default. When disabled, the slicing pipeline
is unchanged.
2026-02-09 20:42:26 +01:00
Ian Bassi
ed1b03fe6d Reduce Orca weight: Resources to Draco (#12194)
# Description

Transforming internal 3D Files to DRC to reduce orca size

## Calibs

(Not counting temperature_tower)
Original 6,01 MB
Converted 1,57 MB

- Mesh (STL/3MF) to LossLess DRC
	- SCV-V2 116kb -> 15kb
	- fast_tower_test 66kb -> 9kb
	- ringing_tower 172kb -> 22kb
	- pressure_advance_test 124kb -> 16kb
	- tower_with_seam 2kb -> 1kb
	- retraction_tower 1.726kb -> 97kb (done at 25, if 0 = 212kb)
	- ~~temperature_tower~~ Updated, fixed, wider range and Draco in: #12103 5.075kb -> 485kb
	- vfa 1.453kb -> 179kb
- Step
	- SpeedTestStructure 1.312kb -> 86kb
		- Imported:
			- Linear Deflection: 0.002
			- Angle Deflection: 0.25
		- Exported as LossLess DRC

## Handy Models

Original 4,66 MB
Converted 1,53 MB

- STL/3MF to LossLess DRC (Maybe reduce the bit depth???)
	- 3DBenchy 2.417kb -> 570kb (done at 25, if 0 = 1.340kb)
	- calicat 43kb -> 6kb
	- ksr_fdmtest_v4 128kb -> 74kb
	- Orca_stringhell 63kb -> 37kb
	- OrcaToleranceTest 758kb -> 94kb
	- Stanford_Bunny 755kb -> 187kb (done at 25, if 0 = 316kb)
	- Voron_Design_Cube_v7 34kb -> 21kb

## Bit used

After some test with a lot of models and all possible combinations it's safe to say that >20 is BondingBox and mm3 volume the best it can.
So i used 25 just as a safe value in:

- Stanford_Bunny
- 3DBenchy
- retraction_tower

<img width="324" height="499" alt="imagen" src="https://github.com/user-attachments/assets/bb5000cf-c1fa-4153-af2f-691ea59bc254" />
<img width="324" height="499" alt="imagen" src="https://github.com/user-attachments/assets/f38e3528-0d05-4621-984e-f107a0eec91e" />

## MultiPart 3MF

Didint change them, too much trouble for small changes.
2026-02-09 10:48:29 +08:00
Maeyanie
bb30999673 Add support for Draco (.drc) format (#10681)
* Add read support for Google's Draco (.drc) format.

* Fix build on Linux

* Use boost instead of fstat.

* Switch to boost memory-mapped file to save RAM and potentially improve performance.

* Trim trailing whitespace.

* Initial Draco write support.

Currently always exports with 16-bit precision and speed 0 (best compression).
The back-end function does have arguments to specify them, it's just not hooked into the GUI.

* Add Draco to the About dialogue.

* Fix Linux compile (hopefully)

* Add an option to associate DRC files on Windows.

* Implement a Preferences option to set Draco position quantization bits

* Update src/slic3r/GUI/Preferences.cpp

Co-authored-by: Ian Bassi <ian.bassi@outlook.com>

* Some slight changes to ianalexis's suggestion.

* Implement a create_item_spinctrl() function for numeric inputs, and use that instead of create_item_input().

* Move "bits" to inside the spinctrl box.

* Refactor following yw4z's feedback

* Update src/slic3r/GUI/Preferences.cpp

Co-authored-by: Ian Bassi <ian.bassi@outlook.com>

* Change to 0 bits as the default setting for Draco export precision.

* Change to a lossy checkbox and a bits field with a range of 8-30.

* Proper SpinInput code from yw4z

* Revert "Proper SpinInput code from yw4z"

This reverts commit 7e9c85f31a.

* Revert "Change to a lossy checkbox and a bits field with a range of 8-30."

This reverts commit d642c9bcc0.

* Redo preferences based on SoftFever's feedback

* Refactor to minimize code duplication

* Fix padding

* Improve Draco export quality level tooltip clarity

Clarify that 0 means lossless compression (not uncompressed),
document the valid lossy range (8-30), and better explain the
tradeoff between file size and geometric detail.

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
2026-02-06 18:27:17 +08:00
Kiss Lorand
3dc80593bd Brim: optionally generate brim from Elephant Foot Compensation outline (#11760)
* Brim can follow EFC outline

* Optimization

* Update Spanish EFC brim description

Adopt reviewer-proposed wording from RF47.

Co-authored-by: RF47 <RF47@users.noreply.github.com>

* Tag Orca specific changes

Tag Orca specific changes vs. Bambu using the comment //ORCA: . This helps when reviewing merge commits from upstream Bambu so we don't end up causing regressions when pulling in commits from upstream

* Tooltip update

---------

Co-authored-by: RF47 <RF47@users.noreply.github.com>
Co-authored-by: Ioannis Giannakas <59056762+igiannakas@users.noreply.github.com>
2025-12-29 09:35:44 +08:00
Ian Bassi
0e6fc7a92b Add Cali Cat handy model (#11663)
Added the Cali Cat STL file to handy models and updated the GUI to include 'Cali Cat' as a selectable option in the handy model submenu.

Co-authored-by: davidzhen <3886830+davidzhen@users.noreply.github.com>
2025-12-18 12:25:59 +00:00
Ian Bassi
59ad126b48 Fix: Replace with STL to Replace with 3D file: Support STEP (#11637)
* Replace with STL to Replace with 3D file: Support STEP

Enhanced the replace logic to support STEP (.stp, .step) files, including user-configurable mesh settings and dialog, while maintaining backward compatibility with STL and other formats.
Updated the menu label and tooltips to 'Replace 3D file' for clarity.

* Update 'STL' references to '3D file' in UI and logs

Replaces user-facing text and log messages referring to 'STL' with '3D file' for broader file type support and improved clarity in the menu, status messages, and logging.

* Merge branch 'main' into remplace-with-stl
2025-12-14 13:20:14 +08:00
Matthew
7ec3d85a02 Allow 'Change Type' to be used with Multiple Parts Selected (#11544)
* Initial changes allowing you to change the type of multiple parts at once by selecting them all.

* Removed second occurance of Change type in right click menu

* Ready to go feature change

* Remove accidental file creation

* Removing excessive std::cerr

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-12-13 22:36:47 +08:00
Alexandre Folle de Menezes
77f7514d97 Fix spacing and punctuation issues (#11244) 2025-11-17 09:35:53 +00:00
Alexandre Folle de Menezes
210bc47173 Fix "..." at the end of "Replace with STL" menus (#11247) 2025-11-08 00:32:02 +08:00
nilshasler
dedfd9d4ed Replace all with stl (#11145)
* Add "Replace all from STL" command
this operates on the currently selected plate or on the selection

* Add more translations for "Replace all from STL"

* build fix

* "Replace all with STL" also works with multiple selected plates

* fix build

* replace all from stl: better error handling and a nicer status message box

---------

Co-authored-by: Nils Hasler <hasler@thecaptury.com>
2025-10-29 16:30:23 +08:00
Vovodroid
e922411371 Add instances (#6237)
* Add instances

* - Added a new menu item for converting instances to objects,

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-10-26 16:13:14 +08:00
Noisyfox
9510b1a930 Disable filament merge option if not SEMM 2025-10-24 19:43:23 +08:00
Noisyfox
497ff94e09 Disable filament delete option if not SEMM 2025-10-24 14:51:06 +08:00
zhou.xu
1c793a5ad1 FIX:Added a centering function to the text menu, but lost it during the upgrade process
jira: github 7828
Change-Id: Idb3739313f506fbe475cf6c4ca96c7eade9292a6
(cherry picked from commit 8267f5fdca53fb172b64ebb24407a26b94fdecff)
2025-10-03 22:26:48 +08:00
chunmao.guo
1b10eba98b FIX: enable copy param from modifier parts
Jira: STUDIO-12269
Change-Id: I7c4877d712b7678c33d6855e1de9dca9897ce6c0
(cherry picked from commit 1ad68b38e20a34372fcc1d4abe605a300abeae22)
2025-09-24 11:01:00 +08:00
chunmao.guo
acfe601149 FIX: paste all of object settings
Change-Id: I32681190b20a2392069f6da5059feda070b312d1
Jira: STUDIO-12194
(cherry picked from commit 1a90c581c41b4d5cb35f6eece3aafbc55f2af97b)
2025-09-23 17:19:27 +08:00
chunmao.guo
5d09d2290f ENH: copy/paste object settings (menu)
Change-Id: If5f6f75102fbd43f652a96d01f9edd4676fa3152
Jira: STUDIO-11666
(cherry picked from commit 59cee48fbf1d06482c96ef6576a1fb5b33f2b621)
2025-09-23 16:38:50 +08:00
Noisyfox
2375ab860a Merge remote-tracking branch 'upstream/main' into dev/h2d
# Conflicts:
#	resources/profiles/BBL.json
#	src/slic3r/GUI/AmsMappingPopup.cpp
#	src/slic3r/GUI/MediaFilePanel.cpp
#	src/slic3r/GUI/Plater.cpp
#	src/slic3r/GUI/StatusPanel.cpp
2025-09-16 14:46:40 +08:00
xun.zhang
ae75d8b8a5 ENH: update some sentences and refine ui
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ibba2d6c880fcb810f861cf06eb7a30a512cbbacf
(cherry picked from commit 5195e824814a1ee38d789f331ec86e73807d412a)
2025-09-10 15:00:25 +08:00
chunmao.guo
d626c38ae7 FIX: something
Change-Id: I2923786337f97f4297b0444522c620891aa2ad90
Jira: STUDIO-9725 filament menu delete icon
Jira: STUDIO-9785 StaticGroup border color
Jira: STUDIO-9716 update badge icon
Jira: STUDIO-9815 click printer/bed panel for combobox
Jira: STUDIO-9867 label with for single noozle
Jira: STUDIO-9739 ams page up/down
(cherry picked from commit 1cde0b844a97f3420db4999927f05a833b92b0fb)
2025-09-10 10:43:06 +08:00
zhimin.zeng
3decb8d4af FIX: fix some translation and style issues
jira: STUDIO-9777 & STUDIO-9726 & STUDIO-9717 & STUDIO-9720
Change-Id: I05e6df6bb1416988a1862fc589058241d5344a58
(cherry picked from commit d833ab7d48729b527748662872df1ec33567b5ab)
2025-09-10 07:25:19 +08:00
Alexandre Folle de Menezes
914425e526 Update strings for keyboard shortcuts (#10399)
* Update strings for keyboard shortcuts
2025-09-09 21:48:42 +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
SoftFever
31869bfbd1 [Feature] Add a new feature that allow user to insert extra solid infills (#10611)
* refactor Infill rotation template

* clean up comments

* set default solid_infill_rotate_template to empty

* Fix an issue that infill_direction solid_infill_direction not working as expected

* Add Extra Solid Infill Feature
Introduced a new feature to insert extra solid infills at specific layers for enhanced strength in 3D prints.

* fix doc error

* fix image name

* support "#K" for Explicit Layer List

* update wiki
2025-09-03 22:16:31 +08:00
liz.li
cbfbe80ed8 ENH: filament preset edit menu should not change to self
jira: new

Change-Id: Ia8eb3db05f83932d2eb0b8ef2ba8014e99c8e057
(cherry picked from commit 12932832ae793b142f66e2a9c6d9a5fd819e4125)
2025-08-24 23:18:19 +08:00
liz.li
7370dead32 ENH: refine dual extruder related UI details
jira: new

Change-Id: I63dd6278f3e7d22336482dba0f178150ebe55f1d
(cherry picked from commit 73c05eee3bbcbed6fc5909db638fa4bac9a75bfc)
2025-08-24 23:18:19 +08:00
chunmao.guo
2fe654587b ENH: filament actions and dual extruder filaments
Change-Id: I12a83f29c96887fc910976ac8e025c4f1508d945
(cherry picked from commit 0065ea986fc41132df43cca6704c8c98318e6b71)
2025-08-24 23:18:02 +08:00
SoftFever
6ae89f7d9b rename 2DHoneycomb and 2DLattice to LateralHoneycomb and LateralLattice (#10423)
* rename 2DHoneycomb and 2DLattice to LateralHoneycomb and LateralLattice

* more renaming
2025-08-17 23:49:06 +08:00