Compare commits

...

1958 Commits

Author SHA1 Message Date
SoftFever
1e87666487 Add support for OrcaSlicer 2.3.1-alpha infill rotation template warning
Implement a check for projects created with OrcaSlicer 2.3.1-alpha to warn users about potential issues with infill rotation template settings. If the infill pattern is not safe to rotate, prompt the user to clear the rotation template settings to avoid print quality issues.
2025-09-14 20:35:58 +08:00
boromyr
5cee8ed086 Correct 4 Italian translations (#10704)
* ita fix

* ita fix

* ita fix
2025-09-14 16:32:48 +08:00
Heiko Liebscher
71c7944eab fix some german translations (#10702)
* fix some german translations

* fix Maximun

* is better
2025-09-14 16:15:12 +08:00
SoftFever
3c0c36d11c bump version to 2.3.1-beta 2025-09-12 00:24:17 +08:00
SoftFever
2f2018f9ee Fix logic for precise_outer_wall condition in PerimeterGenerator to only apply when wall_sequence is set to InnerOuter. 2025-09-12 00:24:17 +08:00
SoftFever
d76524f03f Update the Filament Selection Guide page by moving the generic filaments to the front. 2025-09-11 23:09:48 +08:00
SoftFever
466aa76642 fix typo and tweak precise_outer_wall message 2025-09-11 21:07:46 +08:00
SoftFever
d2eb007d57 Ignore the precise outer wall option when the wall sequence is not set to InnerOuter. (#10687) 2025-09-11 20:10:51 +08:00
SoftFever
4f50fdc94e Fixed many profile issues and cleaned up some messes. (#10686) 2025-09-11 17:50:53 +08:00
SoftFever
5e9570c946 fix check_filament_compatible_printers 2025-09-10 23:21:45 +08:00
SoftFever
f9973bc2c5 Enable Precise wall by default 2025-09-10 23:21:45 +08:00
SoftFever
e3d55b3c5b update profiles 2025-09-10 23:21:45 +08:00
SoftFever
13e8189b80 delete unused files 2025-09-10 23:21:45 +08:00
SoftFever
88a29dc7e2 update locale and Simp Chinese translation 2025-09-10 21:08:58 +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
yw4z
0eef794824 [DOC] Fix typo "rotatation" (#10592)
init
2025-09-09 11:22:21 +08:00
David Eccles (gringer)
d6c6e0785e [OPTIMIZATION] Update Fill3DHoneycomb.hpp - remove bridge flow (#10453)
Update Fill3DHoneycomb.hpp

Bridge flow isn't necessary; the pattern is fully supported on the lines that matter for structural stability.
2025-09-09 11:08:17 +08:00
Rodrigo
f7e546e78c Fisher koch Infill optimization (#10428)
* Fisher koch optimization
2025-09-09 11:02:45 +08:00
Shuwn Hsu
9ab2092fd7 Updated part of the Traditional Chinese translation (#10526)
* update OrcaSlicer_zh_TW.po

* add monitor-filee

* Updated part of the Traditional Chinese translation.

* Updated part of the Traditional Chinese translation.
2025-09-09 11:01:28 +08:00
Overture3D Filament
c219600a17 Add Official overture preset (#10631)
* add overture preset

* Fix PLA pro profile missing issus

* fixed profile lib indexing order issus

* Merge branch 'main' into main

* Merge branch 'main' into main
2025-09-09 10:57:58 +08:00
Ian Bassi
4faaa5e6ee Wiki Update 12 - Others (#10452)
* Update others_settings_brim.md

* Improved brim

* brim wiki

* Update others_settings_brim.md

* Skirt

* Icons to settings sections

* Create Built-in-placeholders-variables.md

* Update others_settings_g_code_output.md

* Update others_settings_notes.md

* Update others_settings_post_processing_scripts.md

* special mode

* Fuzzy skin

* Image fix

* PA update

* Update pressure-advance-calib.md

* Phishing report link in README

* pa wiki link

* Esthetic -> Aesthetic
2025-09-09 10:52:40 +08:00
SoftFever
78eb3b464f Fix the bug where FillRectilinear generates an unoptimized toolpath. Ensure that fill_surface_by_lines is used when multiline is 1, as it provides optimized traversal. 2025-09-08 00:17:53 +08:00
HYzd766
783f533a15 [Profiles] Enable Arc fitting for QIDI plus4 and Q2 printers (#10618)
* New Machine

This update introduces new consumables and a new model, Q2

* Delete HATCHBOX PLA @Qidi - 副本.json

* The arc fitting for QIDI plus4 and Q2 has been initiated
2025-09-04 00:13:54 +08:00
Evintos
bb75f93500 [Profiles] Optimize Phrozen Arco 0.4 nozzle.json start up gcode (#10600)
Update Phrozen Arco 0.4 nozzle.json start up gcode

Changes m109 S200 in machine_start_gcode to allow printer to properly utilize filament profile temperatures. With original code, the temperature will be stuck at 200c despite filament profile having different first layer and other layer temperatures.
2025-09-04 00:12:38 +08:00
Hugo Costa
8e6d69dc9f [Profiles] Optimize profiles for BLOCKS RF50 printer (#10597)
* Update BLOCKS RF50 profiles

* Fix z_hop_types value attribution

* Fix: invalid z_hop_types parameter: slope
2025-09-04 00:11:28 +08:00
FlyingbearOfficial
6d0933d27c [Profile] Fix start_gcode for FlyingBear machines (#10593)
* Update FlyingBear S1 0.4 nozzle.json

* Update 0.16mm Optimal @FlyingBear Reborn3.json

* Update 0.16mm Optimal @FlyingBear S1.json

* Update fdm_process_common.json

* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_process_common.json

* Update fdm_process_common_S1.json

fix some parameters

* Update fdm_process_common.json

* Update FlyingBear S1 0.4 nozzle.json

* Update 0.08mm Extra Fine @FlyingBear S1.json

* Update 0.12mm Fine @FlyingBear S1.json

* Update 0.16mm Optimal @FlyingBear S1.json

* Update 0.20mm Standard @FlyingBear S1.json

* Update 0.24mm Draft @FlyingBear S1.json

* Update 0.08mm Extra Fine @FlyingBear Reborn3.json

* Update 0.12mm Fine @FlyingBear Reborn3.json

* Update 0.16mm Optimal @FlyingBear Reborn3.json

* Update 0.20mm Standard @FlyingBear Reborn3.json

* Update 0.24mm Draft @FlyingBear Reborn3.json

* Update FlyingBear S1 0.4 nozzle.json

* Update fdm_process_common_S1.json

* Update fdm_process_common.json

* Update 0.08mm Extra Fine @FlyingBear S1.json

* Update 0.12mm Fine @FlyingBear S1.json

* Update 0.16mm Optimal @FlyingBear S1.json

* Update 0.08mm Extra Fine @FlyingBear Reborn3.json

* Update 0.12mm Fine @FlyingBear Reborn3.json

* Update 0.16mm Optimal @FlyingBear Reborn3.json

* Update FlyingBear S1 0.4 nozzle.json

fix zhop type

* Update fdm_machine_common.json

fix zhop type

* Update fdm_process_common_S1.json

* Update fdm_process_common.json

* Update FlyingBear Generic PLA.json

* Update FlyingBear PLA @S1.json

* Update Other PLA @S1.json

* Update fdm_filament_pla @S1.json

* Update fdm_filament_pla_Hyper @S1.json

* Update fdm_filament_pla_other @S1.json

* Update fdm_filament_pla_Hyper_other @S1.json

* Update fdm_filament_pla.json

* Update fdm_filament_pla_Hyper.json

* Update fdm_process_common_S1.json

* Update fdm_process_common.json

* Update fdm_machine_common.json

* Update fdm_klipper_common.json

* Update 0.08mm Extra Fine @FlyingBear S1.json

* Update 0.08mm Extra Fine @FlyingBear Reborn3.json

* Update 0.08mm Extra Fine @FlyingBear S1.json

* Update 0.08mm Extra Fine @FlyingBear Reborn3.json

* Update 0.12mm Fine @FlyingBear Reborn3.json

* Update 0.12mm Fine @FlyingBear S1.json

* Update 0.16mm Optimal @FlyingBear S1.json

* Update 0.16mm Optimal @FlyingBear Reborn3.json

* Update fdm_filament_pla.json

* Update fdm_filament_pla_Hyper.json

* Update fdm_filament_abs.json

* Update fdm_filament_pc.json

* Update fdm_filament_pet.json

* Update fdm_filament_pa.json

* Update fdm_filament_tpu.json

* Update fdm_filament_abs @S1.json

* Update fdm_filament_abs_other @S1.json

* Update fdm_filament_pa @S1.json

* Update fdm_filament_pa_other @S1.json

* Update fdm_filament_pc @S1.json

* Update fdm_filament_pc_other @S1.json

* Update fdm_filament_pet @S1.json

* Update fdm_filament_pet_other @S1.json

* Update fdm_filament_pla @S1.json

* Update fdm_filament_pla_other @S1.json

* Update fdm_filament_pla_Hyper @S1.json

* Update fdm_filament_pla_Hyper_other @S1.json

* Update fdm_filament_tpu @S1.json

* Update fdm_filament_tpu_other @S1.json

* Update fdm_filament_tpu.json

* Update FlyingBear PETG @S1.json

* Update Other PETG @S1.json

* Update Other PETG @S1.json

* Update FlyingBear PETG @S1.json

* Update FlyingBear Generic PETG.json

* Update fdm_filament_pet.json

* Update fdm_filament_pet @S1.json

* Update fdm_filament_pet_other @S1.json

* Update FlyingBear Generic PLA.json

* Update FlyingBear PLA @S1.json

* Update Other PLA @S1.json

* Update FlyingBear S1 0.4 nozzle.json
2025-09-04 00:02:05 +08:00
yw4z
38ed01f61f gCode Legend Fixes / Improvements (#10501)
* Update GCodeViewer.cpp

* Update GCodeViewer.cpp

* Update GCodeViewer.cpp

* Update GCodeViewer.cpp

* Update GCodeViewer.cpp

* Update GCodeViewer.cpp

* Update GCodeViewer.cpp

* Update GCodeViewer.cpp

* Update GCodeViewer.cpp

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-09-04 00:00:26 +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
SoftFever
266bfeb9e2 Refactor infill rotation (#10587)
* 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

* update based on feedback
2025-09-02 22:53:56 +08:00
dependabot[bot]
b100915eba Bump tj-actions/changed-files from 44 to 46 (#10604)
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 44 to 46.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v44...v46)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-version: '46'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-02 22:52:20 +08:00
dependabot[bot]
2ba6f9a5e4 Bump takanome-dev/assign-issue-action from 2.2 to 2.3 (#10606)
Bumps [takanome-dev/assign-issue-action](https://github.com/takanome-dev/assign-issue-action) from 2.2 to 2.3.
- [Release notes](https://github.com/takanome-dev/assign-issue-action/releases)
- [Commits](https://github.com/takanome-dev/assign-issue-action/compare/v2.2...v2.3)

---
updated-dependencies:
- dependency-name: takanome-dev/assign-issue-action
  dependency-version: '2.3'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-02 22:51:49 +08:00
dependabot[bot]
719c1687e2 Bump actions/checkout from 4 to 5 (#10605)
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-02 22:51:21 +08:00
frawg
756129fff2 Fix Anycubic Kobra 2 Neo Machine Profile (#10548)
* Updated machine start and end gcodes

* fix: Update Kobra 2 Neo profile for improved compatibility

- Switch gcode_flavor from marlin to marlin2
- Enable relative E distances for better extrusion control
- Add M420 S1 to start gcode to enable bed leveling mesh
- Add G92 E0 before layer changes to reset extruder position
- Fix end gcode formatting and add M83 for consistent relative mode
- Adjust purge line start position from Y3 to X10 Y5

* fix: Typo in end machine gcode

---------

Co-authored-by: frawg <>
2025-08-30 13:22:10 +08:00
Simone
6e1856cb55 Update Italian translation (#10554)
* Update Italian translation

* my bad, i forgot quotes
2025-08-30 12:56:05 +08:00
GlauTech
a8b7522f9d Update TURKISH translations (V2.3.1-alpha) (#10568) 2025-08-30 12:55:54 +08:00
HYzd766
510f0c3242 [Profile] Add Qidi Q2 (#10539)
* New Machine

This update introduces new consumables and a new model, Q2

* Delete HATCHBOX PLA @Qidi - 副本.json
2025-08-30 12:54:49 +08:00
Byeon Ho cheol.
90a6c53ad5 Feat/profiles cubicon xceler i (#10373)
* profiles(Cubicon):
add xCeler-I 0.4 nozzle printer profile
add Cubicon 0.4 nozzle filament profile

* Fixed missed profile name.

* removed default filament colors.

* Cover image size changed.

---------

Co-authored-by: cubi-sw <hcbyeon@hyvision.co.kr>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-08-26 23:22:16 +08:00
Nanashi
fa4161eaae Correct OrcaSlicer_profile_validator path (again) (#10512)
* Correct OrcaSlicer_profile_validator path (again)
2025-08-26 23:15:31 +08:00
xxxvodnikxxx
4e1952057c Cs cz updates (#10492)
* Update OrcaSlicer_cs.po

* Update Czech localization file with new strings and corrections

* Update OrcaSlicer_cs.po

* possible fix- double quotes

* added comma at endline

* formatting fix- multiline translation

* Update OrcaSlicer_cs.po

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-08-26 23:13:57 +08:00
Alexandre Folle de Menezes
0ba336647c Fix misc issues with the translated strings (#10400)
* Spell check "part selectiont" and "printetrs"

* Remove translation of "°"

* Fix the abbreviation of Watts

* Fix capitalization issues

* Fix punctuation issues

* Fix spacing issues

* Adding more missing periods
2025-08-26 22:39:14 +08:00
coryrc
ca46e06966 Add Assign Issue workflow (#10408)
Allow users to assign issues to themselves.

I don't know if its comments (i.e. unassigning) affects orca bot's
inactivity and stale. Probably. I didn't see a way for actions/stale
to exempt particular comments. This is set for 30 days and stale for
90 days, so if people are using this the stale timing can jump up to
120 days.
2025-08-26 22:35:05 +08:00
SoftFever
f063e87f06 Revert "Show axis on selected plate" (#10530)
Revert "Show axis on selected plate (#9419)"

This reverts commit 8b78fe98aa.
2025-08-26 22:15:49 +08:00
SoftFever
71fd381c3c Fix tests build errors on Mac 2025-08-25 19:19:31 +08:00
yw4z
4c3081d654 Fix scaling on bed and extruder icons in BBL > Device tab (#10416)
Update StatusPanel.cpp
2025-08-25 01:30:44 +08:00
Nanashi
89b9eb0ebe Correct OrcaSlicer_profile_validator path (#10510)
* Correct OrcaSlicer_profile_validator path

* Update build_orca.yml
2025-08-25 01:26:30 +08:00
Rodrigo
6b34eb5322 Fix netfab model repair service in github compilation (#10507)
* Update build_deps.yml

* Update build_orca.yml

* Revert "Update build_deps.yml"

This reverts commit 9e2350c6fb.
2025-08-24 21:16:06 +08:00
SoftFever
b16a6052cb Feature/re enable tests (#10503)
* re-enable tests

* Add comprehensive testing guide for OrcaSlicer in CLAUDE.md

* fix build errors on Win

* fix appimage errors
2025-08-24 20:58:18 +08:00
niklasb
586921fa4d GCodeViewer will now always show the estimations (#10333)
Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-08-24 20:13:34 +08:00
coryrc
09034d87b7 Run shellcheck on build_linux.sh and add it to workflows (#10317)
* Shellcheck on build_linux.sh and tiny refactor

`shellcheck -e SC1090 build_linux.sh` and fixed the issues.

Also fixed the usage command to return an error, simplify directory
creation to use `mkdir -p`, and made printing of the cmake commands
consistent instead of having three different ways of doing it.

* Reorder functions in more pleasing way

* Add shellcheck to workflows

This is the beginning of adding some safety nets for making
changes. Currently it just runs shellcheck against `build_linux.sh`.

You can see it working at
https://github.com/coryrc/OrcaSlicer/actions/workflows/shellcheck.yml
I forked and tested it running in PRs and against pushes to HEAD.

* Rerun shellcheck

Missed quotes on the merge
2025-08-24 19:26:14 +08:00
Pierre Poissinger
7dfce56fbb Imported Artillery M1 Pro profiles from ArtilleryStudio (#10383)
* Imported Artillery M1 Pro profiles from ArtilleryStudio

* Removed duplicate overhang_fan_speed - keeping 90 as other profiles

* Replace by octo/klipper as it seems Artillery made a custom host_type on ArtilleryStudio...

* Changed sparse_infill_pattern to gyroid for M1 profile, as suggested
2025-08-24 00:42:20 +08:00
Grantland Chew
311f651d12 Update Ender-3 V3 KE processes to use percentage based line widths (#10392)
* Update Ender-3 V3 KE processes
2025-08-24 00:36:36 +08:00
yw4z
8b78fe98aa Show axis on selected plate (#9419)
* Update 3DBed.cpp

* Update 3DBed.cpp

* Merge branch 'main' into axis-on-selected
2025-08-24 00:31:28 +08:00
Vovodroid
5fa35342fd Add stl, step, etc. to recent list (#9481)
* Add stl, step, etc. to recent list

* Make configurable

* Merge branch 'main' into recent-files-pr
2025-08-24 00:24:30 +08:00
Ian Bassi
5ebb490a8d Wiki Update 11 - Strength (#10369)
* Create Patterns specific wiki

* Fix typos in installation instructions

Corrected the winget flag from --exact to -e and removed an extraneous backtick from the Mac xattr command in the README installation instructions.

* Improve README formatting and clarity

* Calibration Flow Ratio Yolo Archimedean cords

Co-Authored-By: MxBrnr <142743732+MxBrnr@users.noreply.github.com>

* redirection/tab.cpp section

* Missing Frequent

* remove auto-cooling

* remove thumbnails

* seam pointers

* walls

* infill

* Image standarization

* Fix broken internal links

* Add reference note to Arachne wall generator docs

* OrcaSlicer std

* PrusaSlicer std

* 2d-lateral xlsx

* vertical patterns

* Redirections fix

* Update speed_settings_overhang_speed.md

* Fix to action

* FlowRate

Co-Authored-By: MxBrnr <142743732+MxBrnr@users.noreply.github.com>

* Top Bottom Shells

* advanced strength

* Action fix

* Update How-to-wiki.md

* Home.md icons and reorganize sections

* Home Icons fix

* Update cornering-calib.md

* Update strength_settings_infill.md

* Update Auxiliary-fan.md

Co-Authored-By: Fisheye_3D <78997080+fisheye3d@users.noreply.github.com>

* Add warning about wiki maintenance status
2025-08-23 23:43:45 +08:00
yw4z
099dbb4046 Fix: Reset object settings not working for plate's Skirt Start Angle and Other Layers Sequence (#10482)
* init
2025-08-23 23:19:00 +08:00
Ian Bassi
15a835af20 Missing permissions validate-documentation.yml (#10495)
* Add permissions to documentation validation workflow
2025-08-23 23:01:53 +08:00
Brandon Wees
bd6ccbd451 feat: use "nightly" instead of version code for nightly builds (#10444)
* feat: use "nightly" instead of version code for nightly builds
2025-08-22 22:44:30 +08:00
Ian Bassi
e56d4cc1b9 Fix IS & JD test (#10481)
Fix IS + JD test
2025-08-22 22:30:59 +08:00
Heiko Liebscher
77bfddd0e1 fix more de translation (#10489)
fix more
2025-08-22 22:27:16 +08:00
Ian Bassi
4b48ba1004 Wiki Validation Workflow Action (#10447)
Wiki Action
2025-08-22 22:23:59 +08:00
Heiko Liebscher
bdfae96095 Fix de translation (#10487)
fix some german translations
2025-08-22 21:18:53 +08:00
SoftFever
883607e1d4 Refactor folder (#10475)
Move many third-party components' source codes from the src folder to a new folder called deps_src. The goal is to make the code structure clearer and easier to navigate.
2025-08-22 20:02:26 +08:00
GlauTech
3808f7eb28 Update TURKISH translations (V2.3.1-alpha) (#10440)
* Valmet filament pla derivative filaments have been added.

Valmet filament pla derivative filaments have been added.

* Update TURKISH translations (V2.3.1-alpha)

* Update TURKISH translations (V2.3.1-alpha)

* Update TURKISH translations (V2.3.1-alpha)
2025-08-21 22:12:04 +08:00
Alexandre Folle de Menezes
1263b2ed48 Update the pt-BR translation (#10395)
Update pt-BR translation
2025-08-21 22:11:32 +08:00
Azi
4981b0b3e4 Fix: export printer config skipping currently selected preset (#10380)
* Fix: export printer config skipping currently selected preset
2025-08-21 22:10:22 +08:00
Noisyfox
684f5b44ee Fix crash when opening AMS humidity popup (#10472) 2025-08-21 00:18:17 +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
SoftFever
9e0df24b9a use Ninja for deps build on Mac (#10426) 2025-08-17 14:00:29 +08:00
GlauTech
173788b25c Update TURKISH translations (V2.3.1-alpha) (#10419)
* Valmet filament pla derivative filaments have been added.

Valmet filament pla derivative filaments have been added.

* Update TURKISH translations (V2.3.1-alpha)

* Update TURKISH translations (V2.3.1-alpha)
2025-08-16 22:16:55 +08:00
SoftFever
721ce0cb6d Bump version to 2.3.1-alpha 2025-08-13 00:13:17 +08:00
yw4z
739e4b374e Infill pattern icons improvements / fixes (#10354)
* init

* Update param_quartercubic.svg

* update 2D icons
2025-08-13 00:10:00 +08:00
Maxime3d77
cdb22a3505 Add profiles with pooptool for wanhao d12 (#10321)
* Update Wanhao D12

* update wanhao

* Update D12_texture.svg

* update wanhao

* pixel boot

* add layer

* start

* add multi layer

* m600

* images

* new

* d12 300 plate

* new fix

* m600

* jerk

* area 300

* restore wanhao

* add pooptool v1

* update img to 320x320

* add pooptool for 300 and 500

* update pooptool and end gcode

* Update D12 300 PRO SMARTPAD MONO DUAL 0.4 nozzle PoopTool.json

* Update D12 300 PRO SMARTPAD MONO DUAL 0.4 nozzle PoopTool.json

* Update D12 300 PRO SMARTPAD MONO DUAL 0.4 nozzle PoopTool.json

* Update D12 230 PRO M2 MONO DUAL PoopTool.json

* merge

* printer_setting id

* rename pooptol test

* clean pooptool

* 230 pooptool

* 230 pooptool

* Update Wanhao France.json

* 230 pooptool

* 230 pooptool update

* name 230 pooptool

* 230 clean

* name

* setting clean

* Update D12 230 PRO SMARTPAD MONO DUAL PoopTool 0.4 nozzle.json

* 230 reset

* Update D12 230 PRO SMARTPAD MONO DUAL 0.4 nozzle PoopTool.json

* name d12

* 230

* Update Wanhao France.json

* 230

* Update Wanhao France.json

* link

* Delete Wanhao France.zip

* end gcode update

---------

Co-authored-by: Xtrack33 <44250528+xtrack33@users.noreply.github.com>
2025-08-12 21:05:06 +08:00
SoftFever
5973cc2fbc Add wonderMaker profiles(on behalf) (#10387)
Add wonderMaker profiles
2025-08-12 20:49:56 +08:00
SoftFever
3d2b332c01 Update default profile folder path for macOS
Adjusted the default profile folder path in the OrcaSlicer profile validator for macOS to ensure correct resource access, as Multi configure is now set as the default.
2025-08-12 20:07:54 +08:00
Jojoistauchdabei
90b59ff7d6 feat: expand Creality Ender-3 V3 KE profile with multiple nozzle diameters and new machine configurations (#10277)
* feat: expand Creality Ender-3 V3 KE profile with multiple nozzle diameters and new machine configurations

* Merge branch 'main' into main

* Merge branch 'main' into main
2025-08-12 00:24:07 +08:00
SoftFever
612d5c42b4 Update localization files with new strings and corrections 2025-08-12 00:20:17 +08:00
Jo Kroese
e5d6de9080 Fix inability to create custom filament due to hidden printer selection checkbox (#10362)
Fix clipped printer selection in Create Filament Preset dialog

Ensure the scrolled panel in the Create Filament Preset dialog expands vertically by changing `m_main_sizer->Add(..., proportion=0)` to `proportion=1`. This exposes the printer selection checkbox, which is required to create a custom filament.

Fixes #6719

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-08-12 00:14:18 +08:00
SoftFever
eb92a2ddde Fix focus stealing issue in dialog windows (#9874) (#10374)
Remove RequestUserAttention calls on window deactivation to prevent random window activation when multiple OrcaSlicer instances are running.
2025-08-11 23:49:06 +08:00
SoftFever
05adf5f9c9 Update macOS build script to use Ninja Multi-Config generator (#10377)
* Update macOS build script to use Ninja Multi-Config generator

* fix
2025-08-11 22:35:17 +08:00
Jack Boswell
05181779d1 Update WebView2 to 1.0.3351.48 (#10239) 2025-08-11 13:44:01 +08:00
coryrc
53440fd390 Don't overwrite config if the new one was not successfully written (#10284)
* Don't overwrite config if the new one was not successfully written

The errors weren't being checked, now they are.

Fixes #10283
2025-08-11 09:59:01 +08:00
Ian Bassi
9ae20024aa Wiki Update 10 - Quality (#10301)
* Update quality_settings_wall_generator.md

* Expand layer height wiki

* Rework height

* Update quality_settings_line_width.md

* Update quality_settings_precision.md

* Update quality_settings_seam.md

* Minor linking

* Update quality_settings_wall_and_surfaces.md

* Reverse on odd improved

* Extra perimeter on overhangs

* Images fixes

* Update speed_settings_jerk_xy.md

* quality_settings_ironing

* Update quality_settings_seam.md

* Update quality_settings_bridging.md

* Remove precision sub-section links

* Add icons to settings links in Home documentation

* Moved fuzzy skin

Remove Fuzzy Skin section from special mode settings to it's own place.

* Fix image adaptive-pressure-advance-calib.md

* Update image references

Standardized image alt text and filenames for consistency and clarity.

* Update image alt text and file references in docs

Standardized and clarified image alt text in Calibration.md for easy md to html conversion.

* Update seam

* Base scarf joint seam

* Update quality_settings_seam.md

* Update quality_settings_wall_generator.md

* Update quality_settings_overhangs.md

* Fuzzy Skin Generator Mode Wiki

Co-Authored-By: π² <189209038+pi-squared-studio@users.noreply.github.com>

* Infill Templates Wiki

Co-Authored-By: π² <189209038+pi-squared-studio@users.noreply.github.com>

* basic md formating

* Update infill and advanced strength settings docs

* Moved + Linked Metalanguage

* image preview (change befor ready)

* Update strength_settings_infill_rotation_template_metalanguage.md

* reorder image description

* Some credits

* Spelling infill rotation metalanguage docs

* Crop metalanguage fills

* fix image reference

* Update strength_settings_infill_rotation_template_metalanguage.md

* Update strength_settings_infill_rotation_template_metalanguage.md

* standard characters images

* flow rate update division

* Update Tab.cpp

* Reworking flow rate calibration guide

* Update strength_settings_top_bottom_shells.md

* Flow Calib WIP

---------

Co-authored-by: π² <189209038+pi-squared-studio@users.noreply.github.com>
Co-authored-by: pi-squared-studio <pi.squared.studio@gmail.com>
2025-08-11 09:51:49 +08:00
Rodrigo
202875a4bb TPMS-FK Infill ( Triply Periodic Minimal Surface Fischer Koch S) (#10360)
* seteo inicial

* version inicial

* Update FillTpmsFK.cpp

* marching squares

* Multiline support

* density adjusted

* tuning

cleaning

* symplify points

* optimization

* smoothing

* center offset contour

* icon

* bugfix 1

* reverse tbb scalar field bug fix

* safety

* Update Icon

Co-Authored-By: yw4z <28517890+yw4z@users.noreply.github.com>

* Update FillTpmsFK.cpp

* delete allptpos

---------

Co-authored-by: yw4z <28517890+yw4z@users.noreply.github.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-08-10 23:10:35 +08:00
SoftFever
2e63ce2196 Disable the Claude Code Review workflow for PRs from forks, as CLAUDE_CODE_OAUTH_TOKEN cannot be retrieved for such PRs. 2025-08-10 18:49:01 +08:00
SoftFever
0ac0263542 Add Claude Code GitHub Workflow (#10368)
* "Update Claude PR Assistant workflow"

* "Update Claude Code Review workflow"
2025-08-10 15:45:08 +08:00
SoftFever
ce67aa43ea Add claude GitHub actions 1754810265440 (#10366)
* "Claude PR Assistant workflow"

* "Claude Code Review workflow"
2025-08-10 15:20:23 +08:00
Marek-Dvorny
6f44ca576c Fixed a mistake in Max volumetric flow Wiki (#10339) 2025-08-09 23:54:50 +08:00
Alexandre Folle de Menezes
4cab501f14 Fix inconsistencies on new translated strings (#10310)
* Unmark string that don't need to be translated

* Spellcheck

* Fix calibration strings consistency
2025-08-09 23:52:48 +08:00
Kirill Ziuzin
255d7153f4 feat: add ABS, HIPS, PETG, PLA, SBS, TPU filaments by FDplast (#10346) 2025-08-09 12:02:20 +08:00
innovatiQ
31aa149a1e InnovatiQ additional material (#10295)
* Added InnovatiQ Vendor Files

* Cover image corrected

* Corrected Texture Image

* Support Interface Pattern modified

* Fix file name casing

* Added new filament(PETG)

---------

Co-authored-by: MohanS <sibi.mohan@innovatiq.com>
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
Co-authored-by: Ashidsha Jaleel <JaA0@germanreprap.local>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-08-09 11:07:36 +08:00
SoftFever
aacbcab468 Allow default_bed_type to be defined in machine profile
update some profiles
2025-08-09 10:51:00 +08:00
Noisyfox
b84fe5561a Update BBL network plugin to 2.1.1 which allows debugger again (#10320)
* Update to latest bbs network plugin, which should allow debugging

* Remove debugger detection and warnings

* Downgrade to 2.1.1 as 2.2 seems to be unstable
2025-08-05 22:57:41 +08:00
Ian Bassi
f4d2d050f5 Wiki Update 9 - Speed (#10173)
* Improve initial layer speed documentation

Expanded explanations for initial layer speed settings, including benefits of slower first layers, detailed descriptions for each speed parameter, and added an illustrative image for the 'number of slow layers' setting.

* Update Volumetric speed calib + images

* Update speed_settings_other_layers_speed.md

* Improved MVFS descriptions

Co-Authored-By: dewi-ny-je <2866139+dewi-ny-je@users.noreply.github.com>
Co-Authored-By: MxBrnr <142743732+mxbrnr@users.noreply.github.com>
Co-Authored-By: Rodrigo <162915171+RF47@users.noreply.github.com>

* Clarify bed temperature effects

* MVF images from 14 to 19

To match description

* Update temp-calib.md

* Expand and clarify temperature calibration guide

Added a standard temperature ranges table for common 3D printing materials, clarified and expanded sections on bed and chamber temperature, and improved formatting and tips for optimal print quality.

Co-Authored-By: dewi-ny-je <2866139+dewi-ny-je@users.noreply.github.com>

* Update links for acceleration and jerk settings

* Small perimeters

* Update speed_settings_other_layers_speed.md

* Add reference to ironing speed settings

* Update overhang speed

* Add travel speed illustration

* Update avoid crossing

* Update speed_settings_acceleration.md

* Update speed_settings_overhang_speed.md

* Update speed_settings_acceleration.md

* Update speed_settings_jerk_xy.md

* Update speed_settings_jerk_xy.md

* Update ERS documentation and replace images with PNGs

* Seam Aligned Back

* Copilot FIX

Co-Authored-By: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: dewi-ny-je <2866139+dewi-ny-je@users.noreply.github.com>
Co-authored-by: MxBrnr <142743732+mxbrnr@users.noreply.github.com>
Co-authored-by: Rodrigo <162915171+RF47@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-08-05 22:57:00 +08:00
SoftFever
f27a40d29b Remap filament for pre-colored models (#10303)
* Add a new feature to allow users to remap filament for a pre-painted model.

* Fix the color issues to support the theme

* clean up code

* Fix broken freetype-2.12.1.tar.gz link
2025-08-03 13:28:03 +08:00
SoftFever
e5ea789b89 Fix broken freetype-2.12.1.tar.gz link 2025-08-02 17:23:26 +08:00
Ian Bassi
b16d3a2f4a Fix Ironing/Support patterns (#10278)
NoisyGoat

Co-authored-by: Rodrigo <162915171+RF47@users.noreply.github.com>
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-08-02 10:59:01 +08:00
GuoGeTiertime
468c8492b6 Add 0.6/0.8 nozzle for tiertime printer. (#10264) 2025-08-01 11:42:46 +08:00
SoftFever
dc3da3df8f Revert "Stagger concentric infill seams. (#6184)"
This reverts commit 0286c36f42.
2025-07-30 23:33:35 +08:00
SoftFever
13bd1a4d68 Revert "Refactor stagger concentric seams (#6432)"
This reverts commit bd8c2ffaeb.
2025-07-30 23:33:21 +08:00
Noisyfox
282cdd111a Avoid cross perimeter improvements ported from BBS (#10220)
* FIX: fix avoid crossing perimeters not work[github issue #6597]

jira: STUDIO-11682

github: #6597

Change-Id: Ib86fac93280504e0040f1cce44dad4d02f709c01
(cherry picked from commit 35afceb9a7f4e5a3baba97f054d0e6768e4f59cf)

* FIX: optimize avoid crossing wall

jira: STUDIO-11682

Change-Id: I49b6756a5d3aeb482c019813074d8f6f9cc3c6ef
(cherry picked from commit e9b7006db994d78b9153dedfd0f89447c941cb76)

* Sync with latest BBS code

---------

Co-authored-by: huicong.li <huicong.li@bambulab.com>
2025-07-30 21:42:39 +08:00
SoftFever
c86eb27675 Fix a bug where the maximum line width limit is inconsistent across different checks.
Fixes #10188
2025-07-30 21:22:40 +08:00
Ian Bassi
3f1e4ca55a Wiki Update 8 - Lorita (#10094)
* Wiki Home

Fix process-others
VFA test

* Add wall GIFs and update documentation

* Quality Overhangs Wiki Basic

Update README.md
Update Home.md

* Better only one wall

* Add infill ghosting image and update wall order

* Updates process options

* Fix calibration step numbering in documentation

Corrected the step numbers in the calibration order list to maintain sequential order.

* Update Calibration.md

* Update wall and surface quality docs with images and details

* Revise Linux build instructions and restructure sections

Co-Authored-By: cefiar <cefiar@gmail.com>

* APA Clarify compatibility notes

Co-Authored-By: dewi-ny-je <2866139+dewi-ny-je@users.noreply.github.com>

* Removed Tolerance test from calibration guide. Keeped as note

Co-Authored-By: Noisyfox <timemanager.rick@gmail.com>

* Copilot Review

---------

Co-authored-by: cefiar <cefiar@gmail.com>
Co-authored-by: dewi-ny-je <2866139+dewi-ny-je@users.noreply.github.com>
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-07-30 00:15:18 +08:00
Kirill Ziuzin
d93671bbc7 feat: add ABS, PLA, PETg filaments by NIT (#10205)
* feat: add ABS, PLA, PETg filaments by NIT

* feat: Set value of default_filament_colour to empty string
2025-07-30 00:12:38 +08:00
SoftFever
8f3ed9bc7b Introduce a new seam alignment option: Aligned back (#10255)
* Introduce a new seam alignment option: spAlignedBack.
2025-07-29 21:11:35 +08:00
SoftFever
4cdbe5fa30 fix an issue that OrcaSlicer_profile_validator for Mac was not published to nightly build 2025-07-27 22:04:09 +08:00
Simon
7bf79a1a6c Prevent collision: end load line at X(old+5) to avoid nozzle scratching (#10193)
End load line at X(old+5) top prevent drip collision
2025-07-27 16:49:34 +08:00
Rodrigo
42e820e505 Bug fix: avoid crossing perimeters (#10185)
* avoid crossing perimeters

avoid crossing perimeters

Timelapse issue

Update GCode.cpp

Update GCode.cpp

Update GCode.cpp

Update GCode.cpp

* Update GCode.cpp

* Update GCode.cpp

Update GCode.cpp

* Update GCode.cpp

Update GCode.cpp

* Replace tab with space

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-07-27 16:13:36 +08:00
Robert M Lugg
3461577d57 correct winget command --e (#10198)
winget seems to accept -e or --exact.  Modified README.md to use --exact.
2025-07-27 09:24:09 +08:00
Heiko Liebscher
f51b887928 fix / add de locale (#10236)
* fix many stings

* fix
2025-07-27 08:59:42 +08:00
SoftFever
0cd3030c53 include OrcaSlicer_profile_validator in nightly build (#10233)
* include OrcaSlicer_profile_validator in nightly build

* build OrcaSlicer_profile_validator on Win

* create dmg
2025-07-27 00:13:30 +08:00
SoftFever
c7e66637f9 udpate locale 2025-07-26 15:08:54 +08:00
SoftFever
611e1f7718 add CLAUDE.md 2025-07-26 15:08:48 +08:00
SoftFever
40123e1c0d Adjust the CAUTION format to make it more visible, as there are more fake websites claim to be official (#10230)
Update README.md
2025-07-26 09:36:56 +08:00
SoftFever
6996d317df update readme 2025-07-26 00:19:54 +08:00
Noisyfox
85e66de431 Do not connect to default BBL device during app startup (#10214)
* Do not connect to default device during app startup

* Connect to last selected machine automatically even if it's lan machine
Simplify default machine connection logic

* Select last machine automatically when available

* Check for LAN connection state after updating combobox selection.
This matches the logic of `SendPrint.cpp`.

* Avoid showing same error message multiple times until next connection attempt.

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-07-26 00:18:56 +08:00
SoftFever
68110eeecc Feature/add_snapmaker_u1_profiles (#10225)
* add snapmaker u1 profiles

* tweak some parameters for U1
2025-07-25 22:25:28 +08:00
π²
1ef427f661 Add template metalanguage support for infill rotation template (#9996)
* Add some new non-overlapping functions for rotation surfaces/infills

I can't post the entire package of changes yet, but this is just the beginning. These features do not affect the latest changes to the pattern rotation system. They are merely adding new functionality.

* Added relative rotation of the infill according to the template.

* Update PrintConfig.cpp

* Update PrintConfig.cpp

* Update PrintConfig.cpp

* Add height limitation

* Both sparse and solid. +one-time instructions

* implementation v3

need for clean code in future

* + Multiply Instructions

* Add solid layers into sparse infill

* Update Layer.hpp

* Update PrintObject.cpp

* Update Tab.cpp

* Remove some bugs and increase quality

* rename apply_model_direction to align_infill_direction_to_model

* Change the data type of top_surface_direction and bottom_surface_direction to float so that they are consistent with other infill direction parameters.

* remove top_surface_direction and bottom surface_direction options

* clean code

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-07-25 20:29:08 +08:00
π²
3d16c7f4c8 Feature: Fuzzy Skin Extrusion Mode (#9878)
* Feature: Fuzzy Skin Extrusion Mode

This extension allows you to add new features to the fuzzy skin generator.

* Add auto switch to Arachne mode

* Move dialog to `update_print_fff_config` and update how `is_msg_dlg_already_exist` is used

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-07-25 15:36:18 +08:00
Ian Bassi
43a84842e8 Disable resonance avoidance in calibration routines + Calibration Reorder (#10174)
* Disable resonance avoidance in calibration routines

* Reorder Calibrations

* Moved Tolerance to Handy Models
2025-07-25 15:21:22 +08:00
Jack Boswell
c8a27715a9 Replace DEPS_BITS with DEPS_ARCH (#10183)
* Replace DEPS_BITS with DEPS_ARCH

* Restore missing DEP_MSVC_GEN

* STREQUAL

* STREQUAL

* Other cmakelists

* webview2 rename
2025-07-23 19:17:05 +08:00
InnovatiQ
7f27c9b37b InnovatiQ Vendor Addition (#10163)
* Added InnovatiQ Vendor Files

* Cover image corrected

* Corrected Texture Image

* Support Interface Pattern modified

* Fix file name casing

---------

Co-authored-by: MohanS <sibi.mohan@innovatiq.com>
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-07-22 19:49:17 +08:00
Noisyfox
daeedc51a3 Fix build issue caused by renamed fill pattern (#10197)
Fix issue caused by renamed fill pattern
2025-07-22 16:44:09 +08:00
Ian Bassi
bb5dbd7bfd Fix ubuntu build - Continous appimagetool (#10190)
Co-authored-by: Rodrigo <162915171+RF47@users.noreply.github.com>
2025-07-22 08:50:39 +08:00
Ian Bassi
c8b3899c5e New Fill & Patterns Order (#10055)
* New Fill Order

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

* Reorder Wiki

* Support infills grouped

* Update old rectilinear profiles into new ZigZag algorithm.

Co-Authored-By: dewi-ny-je <2866139+dewi-ny-je@users.noreply.github.com>

* Renaming compatibility fix + Rename Wiki

Co-Authored-By: SoftFever <softfeverever@gmail.com>

---------

Co-authored-by: Rodrigo <162915171+RF47@users.noreply.github.com>
Co-authored-by: dewi-ny-je <2866139+dewi-ny-je@users.noreply.github.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-07-21 23:08:43 +08:00
KrisMorr
16d7a1458f Update OrcaSlicer_pl.po (#10186) 2025-07-21 23:00:18 +08:00
SoftFever
823d27b128 VOLUMIC profils updates v0.36 (#10086)
Machines added
Machines updated
Materials updated
Optimisations
2025-07-21 22:45:06 +08:00
SoftFever
69520bdf97 Merge branch 'main' into main 2025-07-20 21:00:39 +08:00
Noisyfox
e44ec1f27b Update 3mf key for fuzzy skin painting to match BBS (#10169) 2025-07-18 16:09:34 +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
c00502638c Add ironing fan speed control (#9944)
* Internal bridge fan speed should be applied only if overhang bridge fan control is enabled

* Reduce duplicate code

* Add ironing fan speed control
2025-07-18 16:01:15 +08:00
mosfet80
46c0f19cc9 Update unordered_dense.h (#10101)
* Update unordered_dense.h

update lib version from 3.1.1 to 4.5.0

changelog:
https://github.com/martinus/unordered_dense/releases

* Update README.txt
2025-07-18 15:51:40 +08:00
krmz-krmz
11e2c054d0 add user name placeholder (#10109)
* Add user name placeholder

* non-ASCII character support

* fix: Explicitly include <boost/nowide/cstdlib.hpp>
2025-07-18 15:43:46 +08:00
discip
46af00aa01 hide Reverse threshold when not editable (#10161)
* make **`Reverse threshold`** inactive when **`Reverse only internal perimeters`**  is activated

* Update ConfigManipulation.cpp

* 100%% => 100%

Also fixed a typo along the way.
2025-07-18 14:06:48 +08:00
Andy
41659bcfda Update OrcaSlicer_ru.po (#10077)
Improving translation, correcting errors.
2025-07-18 07:52:23 +08:00
Kappa971
365376ec2e Update Italian translation (#10142) 2025-07-18 07:50:54 +08:00
shimmyx
521d2470eb Add CR10 V3 (Marlin) Profile to Orcaslicer (#10122)
* Update Creality.json

Added Creality CR-10 V3, 0.4 and 0.6 nozzles

* CR10 V3 /profiles/creality

CR10 V3 Image cover, buildplate model, buildplate texture

* CR10 V3 /profiles/creality/process

CR10 V3 Process files

* CR10 V3 /resources/profiles/Creality/machine

CR10 V3 machine files, 0.4, 0.6 nozzle

* Update Creality CR-10 V3 0.4 nozzle.json

Fixed typo

* Update Creality Generic ABS.json

* Update Creality Generic ASA.json

Add CR-10 V3

* Update Creality Generic PETG.json

* Update Creality Generic ABS.json

* Add CR10 V3

* Add CR10 V3

* Add CR10 V3

* Add CR10 V3

* Add CR10 V3

* Fix missing nozzle size

* Fix nozzle size missing

* Update 0.20mm Standard @Creality CR10V3 0.6.json

Fixed naming

* Update 0.20mm Standard @Creality CR10V3 0.4.json

* Update Creality CR-10 V3 0.6 nozzle.json

* Update Creality CR-10 V3 0.4 nozzle.json

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-07-18 07:49:50 +08:00
EmilVitus
571adb9a3f Fixed error in Anycubic Kobra 2 0.4 nozzle.json (#10128)
Update Anycubic Kobra 2 0.4 nozzle.json

Fixed error:
Relative extruder addressing requires resetting the
extruder position at each layer to prevent loss of
floating point accuracy.
2025-07-18 07:48:28 +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
Pepe-Polymaker
821e5ac597 Add more Polymaker filaments to Global Library and BBL (#10152) 2025-07-17 23:16:45 +08:00
yw4z
e9e069c167 Styling management for buttons and matching all button styles (#8184)
* Add button styling

* Fix dark mode compability

* printable area button

* Connection dialog icons

* Add aligment control

* Fix alignment

* add new styles

* Update BedShapeDialog.cpp

* Use darker text color on dark mode

* update code

* Update

* update

* Update

* Update WipeTowerDialog.cpp

* update

* Update Button.cpp

* update

* Update Button.cpp

* add enums for style and type

* update

* Update Button.cpp

* fix

* update

* Update DialogButtons.cpp

* Update UnsavedChangesDialog.cpp

* update

* update

* update

* Update Button.cpp

* cleanup

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-07-17 20:44:45 +08:00
VOLUMIC
83f578ae50 Merge branch 'main' into main 2025-07-17 13:14:18 +02:00
Maxime3d77
37d8bec3e1 Add official profiles for Wanhao Duplicator D12 Series (230/300/500 – Bowden/Direct – M2/SmartPad) (#9614)
* Update Wanhao D12

* update wanhao

* Update D12_texture.svg

* update wanhao

* pixel boot

* add layer

* start

* add multi layer

* m600

* images

* new

* d12 300 plate

* new fix

* m600

* jerk

* area 300

* restore wanhao

* add pooptool v1

* update img to 320x320

* add pooptool for 300 and 500

---------

Co-authored-by: Xtrack33 <44250528+xtrack33@users.noreply.github.com>
2025-07-17 15:43:51 +08:00
Vlad
203dfa1b84 Improving Z-Bolt Profiles (#10017)
* bugfixes (tree supports, dual wipe, travel speed)

* Update fdm_process_zbolt_common.json

* S800 Dual profiles added

* S1000 profiles added

* Dual printers layer change bugfix

* Max layer for 06 nozzle bugfix

* 0.4-0.48 layers slicing bugfix

* First layers budfix

---------

Co-authored-by: zavodik <zavodva@gmail.com>
2025-07-17 15:41:20 +08:00
Ian Bassi
5202fe30ea Improved New ZAG infills SVGs (#10066)
* Improved New ZAG infills SVGs

* Improve Dark mode
2025-07-17 15:30:22 +08:00
KIMDONGYEON00
a729d7ce35 Security Fix : CVE-2024-45492 in libexpat library. (#10141)
CVE-2024-45492
2025-07-17 15:28:29 +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
Ian Bassi
3e186d2393 Fix firware to firmware typo (#10014) 2025-07-17 11:20:00 +08:00
Alexandre Folle de Menezes
fd0d716f53 Standard units don't need translation, part 2 (#9974)
* Revert unit change made by mistake, and fix some unit translations

* Fix the declaration of untranslated Unicode strings
2025-07-17 09:48:29 +08:00
Noisyfox
03d25c97b4 Skip the layer initial travel properly in vase mode (#10135)
Skip the layer initial travel properly in vase mode (SoftFever/OrcaSlicer#10072)

---------

Co-authored-by: Rodrigo <162915171+RF47@users.noreply.github.com>
Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
2025-07-14 21:21:40 +08:00
Ian Bassi
f45155a966 Enable ironing and shell options for spiral vase mode (#10115)
* Enable ironing and shell options for spiral vase mode

Co-Authored-By: Kaarel Pärtel <kaarelp2rtel@gmail.com>

* Remove boolean

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

* Tab fix

* bool has_top_shell

* Fix some missing toggle lines

* Update Fill.cpp

* unnecessary check.

Co-Authored-By: Noisyfox <timemanager.rick@gmail.com>

---------

Co-authored-by: Kaarel Pärtel <kaarelp2rtel@gmail.com>
Co-authored-by: Rodrigo <162915171+RF47@users.noreply.github.com>
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-07-14 21:17:13 +08:00
Rodrigo
bf52f5b4bf Handy Models geometry improvement. (#10092)
* helper disk by code

Co-Authored-By: Ian Bassi <12130714+ianalexis@users.noreply.github.com>

* Torus

Delete torus.stl

Co-Authored-By: Ian Bassi <12130714+ianalexis@users.noreply.github.com>

* traingle count tunning

Co-Authored-By: Ian Bassi <12130714+ianalexis@users.noreply.github.com>

* Update TriangleMesh.hpp

Co-Authored-By: Ian Bassi <12130714+ianalexis@users.noreply.github.com>

* adjusting disk diameter

---------

Co-authored-by: Ian Bassi <12130714+ianalexis@users.noreply.github.com>
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-07-13 22:07:55 +08:00
Michele Stefanelli
65e3bcc183 Add Multimaterial "ramming parameters" to Prusa MK4/MK4S filament profiles (#10006)
* Update all Mk4 pla filament to have proper ramming parameters

* Update all Mk4 PETG filament to have proper ramming parameters

* Update all Mk4 ABS filament to have proper ramming parameters

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-07-13 22:07:18 +08:00
Michele Stefanelli
686a9bd44a Ramming config improvements to enable support for Prusa MMU3 (#9935)
* Ported ramming configuration improvements from prusa slicer: Hold cmd to move all values, more granular time settings and higher maximum values.

* improve variable name, change space

* Move the label under the ramming chart

* Experimenting with values label for ramming chart

* Fix the label position and make the background 20% transparent

* update the way the multiline label is done

* reorder commands

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-07-13 20:10:42 +08:00
yw4z
b410154cb3 Improvements / Fixes for RadioGroup and apply to more windows II (#10089)
* init

* Fix issue that `Button` is not focusable on Linux

See: https://github.com/SoftFever/OrcaSlicer/pull/10089#issuecomment-3065050902

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-07-12 19:26:47 +08:00
Ian Bassi
eba08bf727 Wiki Update 7 (#10007)
* Large images optimizations

* Add image and update instructions for junction deviation

Added a new image illustrating the printer jerk limitation setting and updated the calibration documentation to clarify steps for setting Maximum Junction Deviation. Improved formatting and corrected a typo in the instructions.

* Update README links to Wiki

* Fix Wiki image paths + Typos

* Fixes, typos and Infill improvements

* Update VFA calibration guide and add resonance avoidance

Expanded the VFA calibration documentation with more detailed explanations of VFA causes, the VFA Speed Test, and how to use the Resonance Avoidance Speed Range. Added a new image illustrating the resonance avoidance configuration.

* Add surface density setting to top/bottom shells docs

* Ironing Wiki Wip

* Wall and surfaces wiki wip

* Fix top/bottom link

* Better topbottom reddirect

* bridging wiki wip

* Fix TOP bottom

* Wall wiki wip

* strength advanced wiki wip

* speed advance renaming

* inital speed wiki wip

* Other Layer Speed Wiki Wip...

* Speed overhang Wiki WIP

* Travel speed wiki wip

* Speed acceleration wiki wip

* Update speed_settings_initial_layer_speed.md

* Jerk Wiki Wip

* support wiki wip

* Raft wiki wip

* support filamnet wiki wip

* Support ironing wiki wip

* Support advanced Wiki Wip

* Tree wiki wip

* STL images optimizations

* Prime tower wiki wip

* Update PA line diagram images

Were bigger than original used to crop this ones.

* Ooze wiki wip

* Flush wiki wip

* Image optimizatios

* Clarify TPMS-D infill description

Updated the TPMS-D infill section to specify that it refers to the Schwarz Diamond surface, improving clarity for users. Also updated the infill calculator spreadsheet.

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

* images+++

* Multimaterial advanced Wiki Wip

* Skirt Wiki Wip

* Brim wiki wip

* Add Junction Deviation formula to documentation

Included the mathematical formula for Junction Deviation in the cornering calibration documentation to clarify its calculation.

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

* Others special mode Wiki Wip

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

* Fix links

* Fill Multiline infill Wiki

Introduced a new section in the infill documentation describing the Fill Multiline setting, its differences from other slicers, and its use cases. Added a comparison table and illustrative GIF to clarify how OrcaSlicer maintains density and material usage when using multiple infill lines.

* Multiline infill wiki update

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

* Multiline Tab.cpp

* Gcode output Wiki Wip

* Others wiki wips

* Home quality

* Add process links in home

* Quality Basic Missing descriptions

* Update quality_settings_bridging.md

* basic desc

* basic advance strentgth

* Basic speed

* basic other speeds

* Fix link

* Update speed_settings_overhang_speed.md

* Update speed_settings_travel.md

* Update speed_settings_acceleration.md

* Fix

* Expand documentation for acceleration and jerk settings

* Support wiki

* Raft wiki

* Support wiki desc

* Prime tower wiki

* Multimaterial wiki desc

* Filament to features wiki

* Ooze improve

* Fix duplicate text

* Fix typo in volumetric speed calibration guide

Corrected 'promoted' to 'prompted' in the instructions for entering test settings in the volumetric speed calibration documentation.

* centeres image

* Overlapping gif

* Others wiki basic desc

* Clarify retraction calibration recommendation

Expanded the explanation for calibrating retraction settings, specifying that it should be done after Flow and Pressure Advance calibration for optimal extrusion setup.

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

* Links in Readme + minor change

Refined links and formatting in README for better navigation. Expanded wall printing order section in quality settings documentation to clarify Inner/Outer, Inner/Outer/Inner, and Outer/Inner modes. Updated calibration guide images and formatting for improved clarity.

* Add SVG icons to infill pattern comparison table

* Delete doc/images/gui directory

remplaced with GUI

* Create process-preset-full.png

---------

Co-authored-by: Rodrigo <162915171+RF47@users.noreply.github.com>
2025-07-08 08:53:53 +08:00
VOLUMIC
41000db5bc Create desactive.json 2025-07-07 12:29:33 +02:00
VOLUMIC
c6399f6ee0 Delete Desactive.json 2025-07-07 12:29:06 +02:00
VOLUMIC
dbc6cb74b6 VOLUMIC profils update (v0.36) 2025-07-07 12:15:58 +02:00
VOLUMIC
f595f40d1d Merge branch 'SoftFever:main' into main 2025-07-07 12:12:11 +02:00
SoftFever
b785f40fb0 Support latest BambuLab P/X/A firmwares & AMS 2/HT (#9517)
# How to download this
To download the latest test version of this PR, click the "Checks" tab
on top of this page, then click "Build All", then you will find the
latest build:

![image](https://github.com/user-attachments/assets/48bd3d59-941b-48d8-a004-8e8944a31984)

![image](https://github.com/user-attachments/assets/82945f81-2d31-4962-9307-c9a74975aba4)


-----------------


# About this PR

An option has been added in preference to toggle between the new network
plugin and the legacy one:

![image](https://github.com/user-attachments/assets/1b059f60-cd53-40b4-9415-d786048f41ba)


By default it uses the legacy network plugin, which does not come with
the authentication feature. You can use it if your printer is on an old
firmware and do not need to use the new AMS 2 pro/HT etc.

To support the new AMS 2 or if you just decided to update to the latest
firmware, uncheck this option and restart Orca, which will tell it to
use the latest bambu network plugin. I don't have X1/A1 so I could not
test it to see if you could still use the BambuCloud print with the new
plugin, or maybe you have to switch to Lan/Dev mode. However cloud print
does still work for P1 with firmware 1.8.0.




![image](https://github.com/user-attachments/assets/35ffd8bf-90b7-4ef3-8e6f-edd7f8cafadb)

![Image](https://github.com/user-attachments/assets/b3b43bc1-6aa2-4b1f-acd2-ebe0f0123dc9)

![image](https://github.com/user-attachments/assets/8f880110-83ea-4e1f-bddc-ebd0afde2f82)

![image](https://github.com/user-attachments/assets/44915c4b-f02a-4ae3-9466-dc533c047702)


Other updates:

- [x] Support print all plates for P1P/P1S
- [x] Support showing humidity percentage
- [x] Support showing info of AMS 2 pro
- [x] Work with AMS HT properly
- [x] Show AMS temp & drying
2025-07-06 16:28:02 +08:00
yw4z
c4e8b26f17 Dialog for Clone (#9897)
* init

* update

* Update CloneDialog.cpp

* fix focus
2025-07-06 11:34:47 +08:00
SoftFever
0fa846823a Merge branch 'main' into dev/bbl-network-upd 2025-07-05 19:02:11 +08:00
Rodrigo
ea7cfbc050 Multiline infill support for 2D lattice and 2DHoneycomb patterns (#10060)
* 2d Laticce multiline

Update FillRectilinear.cpp

* Optimize remove overlapp

* 2D Honeycomb multiline

* Calculate distance at midpoint
2025-07-05 18:42:28 +08:00
Jessy LANGE
e348923283 GUI: Add filament notes to material selector tooltip (#10051)
* GUI: Add filament notes to material selector tooltip

Enhances material selector tooltip to display filament notes from preset configuration.
Adds automatic truncation for notes longer than 200 characters with ellipsis.
Improves user experience by providing material context directly in tooltip.

Fixes #10037

* GUI: Add filament notes to material selector tooltip

Enhances material selector tooltip to display filament notes from preset configuration.
Adds automatic truncation for notes longer than 200 characters with ellipsis.
Improves user experience by providing material context directly in tooltip.

Fixes #10037

* GUI: Fix tooltip display for unsaved profile notes
2025-07-05 00:29:47 +08:00
SoftFever
7f8f807500 Fixed an issue that Orca won't run if multi-Config generator is used on Linux(Fedora) 2025-07-04 23:02:24 +08:00
SoftFever
a332167e5a add clang support on Linux 2025-07-04 23:02:24 +08:00
SoftFever
b39893078a Fix error for Clang 20 2025-07-04 23:02:24 +08:00
Jack_up
da2d2a07b5 Updated the documentation on how to build OrcaSlicer (#10026)
* chore: Updated the documentation on how to build OrcaSlicer, adding instructions for macOS and Linux, and improving the structure and clarity of the sections.

* chore: Improve structure and clarity of the build instructions for macOS and Linux
2025-07-04 23:01:50 +08:00
Rodrigo
f8ef9bc363 Small improvement of tpmsd infill (#10049)
* smooth tpmsd

Changed the number of initial segments in the make_waves function from 4 to 16 for finer wave discretization. This should improve the accuracy of the generated wave polylines.

* Update param_tpmsd.svg
2025-07-04 14:09:44 +08:00
Rodrigo
a8141ef360 Infill Line Multiplier (#9432)
* Infill Line Multiplier

* Modular Offset Function

* Lightning multiline

* Crosshatch Multiline

ipCrosshatch

* cleaning

Cleaning

clean2

* 3d Honeycomb

cut poliline ends

* Fill Tpmsd Multiline

Fill Tpmsd Multiline

* Update Multiline function

multiline funcion simplify

* Update FillTpmsD

* FillHoneycomb

* Update src/libslic3r/PrintConfig.cpp

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

* Fix Honeycomb Multiline

Simplify polylines in honeycomb infill generation

* Improve multiline infill support and pattern simplification

Moved multiline infill application after pattern translation and simplification in Fill3DHoneycomb, and added multiline support to FillAdaptive. Updated honeycomb and 3D honeycomb infill to simplify polylines to 5x line width. Extended GUI and config to support multiline for Adaptive Cubic infill pattern and clarified max value comment.

minimum changes

Co-Authored-By: Ian Bassi <12130714+ianalexis@users.noreply.github.com>

* Increase multiline fill spacing in honeycomb infill

Adjusts the spacing parameter in the multiline_fill function to 1.1 times the original spacing, potentially improving infill distribution or print quality.

* Refine fill_multiline tooltip and pattern support logic

Updated the tooltip for the 'fill_multiline' parameter to improve clarity and punctuation. Refactored the logic in ConfigManipulation.cpp to clarify which infill patterns support multiline infill.

* better management of non supported infill patterns

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
Co-authored-by: Ian Bassi <12130714+ianalexis@users.noreply.github.com>
2025-06-30 23:07:33 +08:00
SoftFever
10687085ee Fix an issue that Orca rebuilds every time. (#10033)
remove SLIC3R_BUILD_TIME as it cause rebuild everytime
2025-06-30 23:05:53 +08:00
Ian Bassi
3f7d5b85fd Enable toggling of surface density and overlap options (#10013)
* Enable toggling of surface density and overlap options

Added toggling for 'top_surface_density', 'bottom_surface_density', and 'top_bottom_infill_wall_overlap' fields in based on shell presence.

* un toggle shell overlapping option

---------

Co-authored-by: Rodrigo <162915171+RF47@users.noreply.github.com>
2025-06-29 23:03:01 +08:00
Jack_up
cc3a3fcd76 added skin_infill_line_width and skeleton_infill_line_width to fix Ginger Additive profiles (#9994)
* fix: added skin_infill_line_width and skeleton_infill_line_width to print profiles as nozzle_size is greater than 0.4

* fix: update version to 0.0.0.1 in multiple process profiles
2025-06-28 10:51:24 +08:00
Jack_up
a8f1220f19 fix: Set the default value for the skeleton infill width to 0 fork sk… (#9995)
* fix: Set the default value for the skeleton infill width to 0 fork skipping the min check

* fix: Update default value for skeleton infill line width to 100%
2025-06-28 10:49:29 +08:00
Ian Bassi
c2eda0b0fa Wiki Update 6 (#9952)
* Add process images

* Reorder like GUI + images

* GUI images subfolder

* MVF restandarizarion (naming pending)

Update volumetric speed calibration docs and image paths

* Improved SVGs

* Infill Wall Overlap

* Apply gap fill + Anchor

* Minor change

* Internal Solid Infill

* Images++

* Step file import image update

* Add VFA calibration documentation and images

* fix pa-tower image not visible

* Removed WIP in not implemented features.

* Added Old and New Order in xlsx

* Wall generator

* Wiki #9924

* New Zag Infills

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

* Infill Rescaled images + sharpness

2d honeycomb image fix

* Update infill_desc_calculator.xlsx

* Rename extrusion rate smoothing references for consistency

* Add wiki and link for top/bottom shells settings

* Updated Wiki Links tab.cpp

* Update infill_desc_calculator.xlsx

* Fix indentation in top/bottom shells option group

* Fill images optimized

Removed Metadata
Reduce color bit to 16

---------

Co-authored-by: Rodrigo <162915171+RF47@users.noreply.github.com>
2025-06-27 21:20:25 +08:00
Ian Bassi
d80bb1cfc9 Fix typos in infill rotation tooltips (#9986)
Corrected duplicated word 'all' in the tooltips for sparse and solid infill rotation parameters.
2025-06-25 19:47:18 +08:00
VOLUMIC
e276e15b1b Merge branch 'main' of https://github.com/VOLUMIC/OrcaSlicer 2025-06-25 11:25:46 +02:00
VOLUMIC
414c8a36e4 VOLUMIC profils updates 2025-06-25 11:24:49 +02:00
VOLUMIC
aeea69706e Merge branch 'SoftFever:main' into main 2025-06-25 11:21:44 +02:00
Noisyfox
9988d0a1f8 Merge branch 'main' into dev/bbl-network-upd 2025-06-25 08:49: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
yw4z
bec5d9ea57 Fixes for LabeledStaticBox & Height Range UI (#9991)
init
2025-06-24 22:29:30 +08:00
Eryoneoffical
9d79eefc28 Optimize the default settings for the printer Eryone X400 (#9879)
* 1) Optimize some default settings for printer Thinker X400,  2) adding eryone filament

* fix the file check error

* recover and modify the process files( 0.12 0.16 0.24mm layer profile)
2025-06-24 10:26:11 +08:00
kris buggenhout
9be13033a0 fix for printer time estimate on anker/eufy M5 M5C printers (#9990)
Update fdm_marlin_common.json

fix for time discrepancy, ;LAYER_COUNT was missing which made it impossible for the anker M5/M5C to have a correct predicted time.
2025-06-24 09:03:35 +08:00
Noisyfox
168dd08042 Fix load step as modifier (#9946)
Fix load step as modifier (SoftFever/OrcaSlicer#9940)
2025-06-23 22:28:55 +08:00
Rodrigo
392a3dd7ab Fillgyroid Bug Fix (#9975)
Bugfix Fillgyroid
2025-06-23 20:42:12 +08:00
yw4z
661d7b88da Fix notification position on scaling (#9982)
Update NotificationManager.cpp
2025-06-23 17:00:42 +08:00
Noisyfox
3696d43590 Fix invalid value for symmetric_infill_y_axis (#9983) 2025-06-23 16:53:35 +08:00
Jonathan Dyrekilde Sommerlund
51d844af2c Top/bottom surface pattern density (#9783)
* Create top surface density option

* Update tooltip

* Specify what 0% top infill means

* Add density for bottom layers

* Discourage users from using top/bottom density incorrectly

* Fix percent don't need translation

* Fix incorrect indentation

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-06-23 10:28:21 +08:00
SoftFever
88fb8187d9 Allow specifying rotation patterns for Sparse and Solid infill (#9924)
* SPE-2405: Add Zig Zag infill that is rectilinear infill but with a consistent pattern between layers.

This Zig Zag infill is inspired by the Zig Zag infill in Cura.

Change-Id: I798affa99f4b5c3bd67f47643e67530fb7c3e0cb
(cherry picked from commit 2808d04d5deef6f99f9618648e46f11de03efc98)

* Add Cross zag and locked-zag for shoes

Ported from BambuStudio

* wip

* sparse infill roratation template

* solid_infill_rotate_template

* remove rotate_solid_infill_direction

* hide sparse infill rotation template for non applicable infill pattern

* hide solid_infill_rotate_template for non supported solid infill patterns

* update icon

* support empty string for ConfigOptionFloats deserialize

* fix build errors

---------

Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
2025-06-22 23:10:35 +08:00
Alexandre Folle de Menezes
fa70582ed1 Standard units don't need translation (#9965) 2025-06-22 15:10:40 +08:00
Rodrigo
bd1281954d Better TpmsD infill implementation (#9966)
Better TpmsD implementation

Better TpmsD

Density Adjusted
2025-06-22 13:52:12 +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
d60fcb0d11 Merge branch 'main' into dev/bbl-network-upd
# Conflicts:
#	src/slic3r/GUI/SelectMachine.cpp
2025-06-21 10:27:10 +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
Jack_up
dec21efe7f Fix: DockerBuild.sh script (#9958)
* Aggiungi eccezione per build_linux.sh nel file .dockerignore

* Aggiungi sezioni di risoluzione dei problemi per lo script DockerRun.sh

* fix: typo
2025-06-20 21:47:16 +08:00
Jack_up
5c42b396e0 Add check for obsolete keys in profiles (#9955)
* feat: Add check for obsolete keys in filament profiles and improve error handling

* feat: Enhance error handling in machine profile checks and filament name consistency

* feat: Add option to check for obsolete keys in profile validation

* feat: Clarify help message for obsolete keys check in filament profiles
2025-06-20 21:38:02 +08:00
yw4z
8aec3f69e5 Remove usage of titlebar icons (#9932)
* ibit

* update

* Update RecenterDialog.cpp

* Update AboutDialog.cpp
2025-06-20 16:52:15 +08:00
Ian Bassi
4ec16fd714 Wiki Update part 5 (#9873)
* BASE

* precise wall and z moved

* PolyHoles

* Arc-fitting

* X-Y Compensation

* Elephant foot + moved images

* Update quality_settings_precision.md

* Wall generator and more

* Full Reorder

* TPMS-D bases

* Update strength_settings_infill.md

* Image Fix + Infill desc calculator

* Descriptions + image fix

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

* Update cornering-calib.md

* minor fixes

* Wip updated

* Missing fills

* Update infill_desc_calculator.xlsx

* Update infill_desc_calculator.xlsx

* Update infill documentation and images

Removed outdated 'iso' infill images and updated 'top' infill images with new versions. Added new images for adaptive cubic and 2D honeycomb infill patterns. Updated strength_settings_infill.md to revise infill strength values, descriptions, and remove references to deleted images. Introduced documentation for 2D honeycomb infill and made minor corrections and clarifications throughout.

* Revise infill pattern documentation and add comparison table

Updated strength_settings_infill.md to clarify infill density calculation, add a comprehensive comparison table of infill patterns, and standardize terminology for strength and print time. Expanded pattern descriptions to use qualitative strength ratings instead of numeric values. Updated infill_desc_calculator.xlsx to reflect these changes.

* Indentation in  code examples

Adjusted the indentation of code blocks in the cornering calibration documentation for clarity and consistency with the rest of the document.

* Update 3D Honeycomb infill strength ratings

Adjusted the horizontal strength rating for 3D Honeycomb infill from 'Normal' to 'Normal-High' in the strength settings documentation and table. Updated the infill_desc_calculator.xlsx file to reflect these changes.

* Formatting and fix in ERS documentation

Updated headings to use consistent Markdown syntax, improved clarity in explanations, and reworded references for better readability.

* Fix wall generator doc link and filename

Updated the Home.md to reference the correct 'quality_settings_wall_generator' section and renamed the corresponding documentation file for consistency.

---------

Co-authored-by: Rodrigo <162915171+RF47@users.noreply.github.com>
2025-06-20 10:19:48 +08:00
Vlad
3e3a07a5b8 Adding printers Z-Bolt S800 Dual, Z-Bolt S1000 and Z-Bolt S1000 Dual (#9953)
* fix: tree supports, dual wipe, travel speed

* Add printers Z-Bolt S800 Dual, Z-Bolt S1000 and Z-Bolt S1000 Dual
2025-06-20 10:05:48 +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
Michele Stefanelli
961b73c6be Reduce printers images size using lossless compression and adjusting resolution (#9936)
* Performed lossless compression on prusa images

* Reduce excessive size of images to be 320px

* compressed sovol png (lossless)
2025-06-19 09:03:44 +08:00
Noisyfox
d4536fae9c Merge branch 'main' into dev/bbl-network-upd 2025-06-18 20:51:14 +08:00
Noisyfox
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
GlauTech
95b4334bf7 Valmet filament pla derivative filaments have been added. (#9913)
Valmet filament pla derivative filaments have been added.
2025-06-18 09:04:55 +08:00
Henk
0010dc6bb4 Add 2D honeycomb infill pattern (#9483)
* Add 2D honeycomb infill pattern

* Reverted change of 2D lattice infill void area estimation

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-06-18 08:48:48 +08:00
Noisyfox
a136ba1837 Merge branch 'main' into dev/bbl-network-upd 2025-06-17 20:43:27 +08:00
xin.zhang
f62e9a71e2 FIX: do not popup for AMS1
jira: [STUDIO-12083]
Change-Id: Id2297576fa2b520282d8e4ce9af8e47817fc7088
(cherry picked from commit 8d29e09c1b8c1b9598f869235e99038d48b1bffc)
2025-06-17 20:41:42 +08:00
Simone
dd6b0fb793 Fix character spacing issue in GCODE preview for Italian (#9778) (#9914) 2025-06-17 20:36:04 +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
Ioannis Giannakas
5041e0772e Disable detect thin wall for VFA test (#9912) 2025-06-16 22:11:26 +08:00
Noisyfox
043abb4389 Merge branch 'main' into dev/bbl-network-upd 2025-06-16 14:02:04 +08:00
EpiphanyPrinting
3a81a8f358 Adds resonance avoidance ported from qidi slicer (#9403)
* Update tab.cpp for resonance avoidance

* update files for resonance avoidance

updated gcode.cpp, gcode.hpp, preset.cpp, printconfig.cpp, printconfig.hpp to add resonance avoidance. Based on qidi slicer changes.

* Update README.md

* Update README.md

* Update Tab.cpp

* Update Preset.cpp

Updating code comments

* Update PrintConfig.cpp

* Update PrintConfig.hpp

* Update .gitattributes

* Remove carriage return

* Update doc

* Move resonance avoidance settings to printer settings

* Disable resonance avoidance by default

* Update options

---------

Co-authored-by: Paul Mourer <paul.mourer@gmail.com>
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-06-16 13:14:00 +08:00
Vovodroid
b259ee22b3 Disable SAFC and retract for Hilbert curve (#9592)
* SAFC flow for rectilinear/monotonic only and Hilbet curve retract

* Refactor

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-06-15 20:50:34 +08:00
Bernhard Koppensteiner
52e4d2af82 High Flow Profiles for MINIIS; minor Profile Tweaks for MK3.5 and MINIIS (#9485)
* bugfix for TPU filament overrides

* higher voluemetric flow

* bugfix for to high speed at internal solid infill

* Update Prusa.json

* updated firmware check and nozzle settings

* bugfix speed and standard for 0,15mm profiles of the 0.4mm nozzle

* variables not defined in orcaslicer

* bug fix volumetric speed, wrong value

* added high flow base process

* added highflow base process

* added first full draft of high flow profiles, further tests are necessary

* changed 0.35mm to 0.32mm for 0.6mm nozzle

* minor changes to initial layer speeds

* changed 0.35mm to 0.32mm for 0.6mm nozzle

* furcer changes on accelartion and speed

* added 0.35mm Standard @MK3.5 again for not breaking anythin for current users

* Update 0.35mm Standard @MK3.5.json

forgot to set the layer_height after creation of the 0.35mm profile

* minor fixes in filament overrides

* added profiles for high flow nozzles on the Prusa MINIIS

* added fan_speedup_time for MINIIS and MK3.5

* changes to support interface, pattern and distance

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-06-15 19:44:39 +08:00
dremc
d8683fc045 add filament_vendors:DREMC (#9519)
* Update CreatePresetsDialog.cpp

* Update generate_presets_vendors.py
2025-06-15 19:41:46 +08:00
Rodrigo
1471276580 TPMS-D Infill ( Triply Periodic Minimal Surface D) (#9613)
* Fill TPMS-D

limpieza

* delete unused function

* cleaning

* Icon update

* fix missing header

* density Adjusted

Co-Authored-By: Ian Bassi <12130714+ianalexis@users.noreply.github.com>

* Improve Precision +  refactoring

clean tpms.hpp

Co-Authored-By: Ian Bassi <12130714+ianalexis@users.noreply.github.com>

---------

Co-authored-by: Ian Bassi <12130714+ianalexis@users.noreply.github.com>
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-06-15 19:38:54 +08:00
Alexandre Folle de Menezes
e13ec786d5 Fix english strings punctuation mistakes (#8901)
* Fix punctuation of enumerations

* Add missing '?' at the end of questions on hints

* Add periods after error messages

* Add punctuation to all tooltips

* Add missing periods on the pt-BR translation
2025-06-15 16:12:03 +08:00
Noisyfox
c72e8a24f1 Merge branch 'main' into dev/bbl-network-upd
# Conflicts:
#	src/slic3r/GUI/SelectMachine.cpp
2025-06-15 15:28:10 +08:00
lodriguez
be3bbfa39e remove OSMesa (#9708)
* remove OSMesa

OSMesa is depricated for quite a while and got removed with Mesa 25.1.0

* remove OSMesa from all buildfiles, readmes, etc…

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-06-15 14:53:42 +08:00
anjis
ecfe53e488 The multi-color printing wipe tower now includes the Bambu RIB wall feature (#9881)
* Add new Bambu RIB wall feature, including only the rib wall generation algorithm.

* Fix Linux compilation errors.

* Attempt to fix flatpak build

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-06-15 14:53:35 +08:00
Vasily Khoruzhick
b72e28c116 Various flatpak fixes and improvements (#9527)
* Revert 98be94a729

We carry a wxgtk patch [1] that detects dark theme automatically. If it
doesn't work, it means that either selected Gtk theme is not installed
in flatpak environment, or appropriate xdg-desktop-portal for the DE is not
installed.

Plasma users may need to install org.gtk.Gtk3theme.Adapta

Also see https://flatpak.github.io/xdg-desktop-portal/docs/doc-org.freedesktop.portal.Settings.html

[1] 0001-Enable-using-a-dark-theme-when-Gnome-dark-style-is-s.patch

* flatpak: introduce ORCA_SLICER_DARK_THEME to force dark theme

If ORCA_SLICER_DARK_THEME is set, dark theme will be applied regardless
of system settings.

* FIX: occt build failure

Pick up build error fix from upstream:
7236e83dcc

/run/build/BambuStudio/deps/build/dep_OCCT-prefix/src/dep_OCCT/src/StdPrs/StdPrs_BRepFont.cxx: In member function ‘Standard_Boolean StdPrs_BRepFont::renderGlyph(Standard_Utf32Char, TopoDS_Shape&)’:
/run/build/BambuStudio/deps/build/dep_OCCT-prefix/src/dep_OCCT/src/StdPrs/StdPrs_BRepFont.cxx:465:30: error: invalid conversion from ‘unsigned char*’ to ‘const char*’ [-fpermissive]
  465 |     const char* aTags      = &anOutline->tags[aStartIndex];
      |                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                              |
      |                              unsigned char*

* Set policy CMP0167 to NEW

Newer cmake switched to using BoostConfig.cmake shipped with boost-1.70
or later for detecting boost, to preserve old behavior policy CMP0167
was introduced.

Set it to "NEW" to indicate that we want to use .cmake shipped with
boost

* Add OpenSSL tarball link to the manifest

* Add curl zip to the manifest

* flatpak: bump runtime version to 47

Gnome 47 has been released a while ago

---------

Co-authored-by: Bastien Nocera <hadess@hadess.net>
2025-06-15 12:10:51 +08:00
Dipl.-Ing. Raoul Rubien, BSc
6da7fe62a2 Fixes, refactors and enhances Linux build-scripts (#8269)
* fixes and refactors linux build scripts
 - build_linux.sh: fixes wrong AppImage build folder; refactors script; enhances help text
 - harmonizes names: BuildLinux.sh and BuildLinuxImage.sh
 - fixes file permissions: cmake inherits .in-file permission; removes chmod 755 in scripts
 - linux.d/debian: removes false positive error message
 - updates documentation

* enables ANSI-colored output for GNU or Clang

* build_linux.sh: adds -p flag to disable PCH for boosting ccache hit rate

* Allow compilation on distributions based on Ubuntu/Debian (#8625)

* build_linux.sh: takes over changes from BuildLinux.sh

* CMakeLists.txt: removes leftovers, enables ANSI-colored output

* CMakeLists.txt: fixes issue where FORCE_COLORED_OUTPUT was not respected form environment (introduces -C cli arg)

* merges 5df4275: Make it easy to pass extra build args to deps and orca in BuildLinux.sh (#9648)
2025-06-15 00:41:20 +08:00
_mightyMax147
153c478c35 Add Phrozen Arco machine profiles and bed plate assets (#9486)
* feat: add Phrozen Arco machine profiles and bed plate assets

- Upload JSON profiles for the Phrozen Arco printer series
- Include 3D bed plate model and corresponding texture files
- Enables accurate slicing configuration and scene rendering for Arco

* fix: add missing "instantiation" attribute

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-06-14 21:26:07 +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
9569841091 Ramming dialog improvements & add step control for SpinInput class (#9651)
* init

* update dialog buttons

* Fix color on Linux & macOS

* Fix dark mode dialog title color on Windows

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-06-14 15:19:25 +08:00
Noisyfox
13e4b54754 Merge branch 'main' into dev/bbl-network-upd 2025-06-14 11:49:30 +08:00
Noisyfox
ec44768eb9 Fix staticbox content margin on macOS (#9901) 2025-06-14 11:32:31 +08:00
yw4z
0999cb057d DialogButtons fixes and apply to more windows (#9809)
* step import dialog

* update

* update

* drop file dialog

* Update UnsavedChangesDialog.cpp

* update

* fix focus

* Update CreatePresetsDialog.cpp

* improve usage of return button

* fix first button not getting hover effects

* update

* update

* improve button styles

* update button events

* update button events

* update button events

* remove Raise()
2025-06-14 10:27:10 +08:00
Noisyfox
d0bf8746d0 Merge branch 'main' into dev/bbl-network-upd 2025-06-14 09:52:33 +08:00
Ian Bassi
33dc7bc1f2 Wiki Update part 4 (#9872)
* How to wiki

* Local images + pressure-advance realocation

* fill patterns WIP

+ Patch Until they fix this: https://github.com/orgs/community/discussions/118296

* Wiki images update 8fff1ca

Updated images with new style from commit 8fff1ca (pr: #9797)

* Internal Wiki Links + standardization

* Update Flow Calibration image

Co-Authored-By: Dowsha3d <216038220+dowsha3d@users.noreply.github.com>

* Seam wiki merge

* Updated Wiki Home

* MD Final lines

* How to index

---------

Co-authored-by: Dowsha3d <216038220+dowsha3d@users.noreply.github.com>
2025-06-13 23:09:05 +08:00
zefir-o
25785abfe0 Generate GCode for skirt prior wipe tower. (#9885) 2025-06-13 14:24:26 +08:00
Ian Bassi
f44e90b884 Transparent printers (#9888) 2025-06-13 14:23:47 +08:00
Ondřej Bartas
db926cd9f4 Fix Voron profile printable_height value (#9889)
fix Voron printable_height
2025-06-13 14:21:13 +08:00
yw4z
8fff1caa39 Class for RadioGroup & LabeledStaticBox and improvements for Calibration Dialogs, Windows with wxStaticBoxSizer (#9797)
* update

* Update calib_dlg.cpp

* Update LabeledStaticBox.hpp

* Update calib_dlg.cpp

* update

* update

* RadioGroup fix

* update

* update

* update

* update

* RadioGroup

* Fix render issue when position is set to default (-1)

* Fix macOS render issue by removing default NSBox border

* Fix compile

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-06-12 20:15:02 +08:00
Ondřej Bartas
5c2fe4da87 fix BBL bed_model stl hacks (#9882) 2025-06-12 18:11:52 +08:00
yw4z
a60b65367a Use proper case for "return" (#9831)
init
2025-06-10 09:42:06 +08:00
Ian Bassi
3b2fa4469a Wiki fix images and links (#9858)
* Fix Wiki Links

Co-Authored-By: StdVectorBool <4926951+StdVectorBool@users.noreply.github.com>

* Fix Wiki images

* Chamber temp Wiki update

---------

Co-authored-by: StdVectorBool <4926951+StdVectorBool@users.noreply.github.com>
2025-06-10 09:02:19 +08:00
Ocraftyone
15f0d2a514 Remove CORES env variable from devcontainer (#9662) 2025-06-08 18:06:59 +08:00
Brian Schmidt Pedersen
e52eb480d6 Transparent versions (#9771)
Replaced FLSun T1 and S1 cover images with transparent versions from FLSunSlicer.
2025-06-08 18:06:05 +08:00
Michele Stefanelli
5a173bb1c4 Improve printers pictures and sorting (prusa printers) (#9824)
* Replace prusa printer images with standard sizes and aspect ratio

* Rename Prusa Mini IS to specify the IS in the name

* Add missing prusa CORE One in the preset dialog and reorder prusa printers

* updated pictures to 320px
2025-06-08 18:04:04 +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
Ian Bassi
4e59b0abc6 Wiki + Readme: MD security and improvements (#9807)
* Wiki + Readme: MD, security and improvements

Standardized MD GitHub Wiki format
Removed outdated and malicious links
Modularized calibrations
Suggested calibration order added
Minor bug fixes
Image improvements and corrections
Added winget commands
Completed previous WIPs
Added new WIPs
Removed obsolete references
Visual Changes

Co-Authored-By: Noisyfox <timemanager.rick@gmail.com>
Co-Authored-By: dewi-ny-je <2866139+dewi-ny-je@users.noreply.github.com>
Co-Authored-By: Nico Domino <7415984+ndom91@users.noreply.github.com>
Co-Authored-By: Martin Ulmschneider <7497782+mulmschneider@users.noreply.github.com>
Co-Authored-By: Rodrigo <162915171+RF47@users.noreply.github.com>

* MD Indentation + images update

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
Co-authored-by: dewi-ny-je <2866139+dewi-ny-je@users.noreply.github.com>
Co-authored-by: Nico Domino <7415984+ndom91@users.noreply.github.com>
Co-authored-by: Martin Ulmschneider <7497782+mulmschneider@users.noreply.github.com>
Co-authored-by: Rodrigo <162915171+RF47@users.noreply.github.com>
2025-06-08 11:11:43 +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
yw4z
4b893b40a1 wxDataViewCtrl fixes (#9818)
* init

* update
2025-06-07 17:15:41 +08:00
Simone
8b1277b554 Update Italian translations for clarity and accuracy (#9804)
improving Italian translation
2025-06-07 12:19:26 +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
Jack_up
3900042280 Update dev docs (#9383)
* chore: update how to build doc

* chore: add how to validate profiles doc

* remove old build info from readme.md

* fix: typo

* fix: typo

* chore: minor fix

* fix: typo

* chore: minor fix

* chore: minor fix

* chore: remove lfs

* fix: note 2 procedure for repair build

* fix: update CMake installation instructions for macOS to specify version 3.31.x

* fix: clarify CMake installation instructions for macOS and remove outdated commands

* fix: enhance documentation for profile structure and templates in OrcaSlicer

* fix: update profile validation documentation and remove obsolete guide

* chore: update path for building on mac
2025-06-05 16:17:56 +08:00
John Parton
9bf5cf0fb9 Use backticks instead of single quotes on code example in README.md (#9728)
Instructions for building on Ubuntu used single quotes. Changed to use backticks so that Github applies the `code` style
2025-06-04 17:09:16 +08:00
Gabriel Janucik
dec18f5c70 Update Adventurer3 machine start g-code.json (#9726) 2025-06-04 17:08:07 +08:00
Noisyfox
b3598ea3cc Add missing close tag in MacOSXBundleInfo.plist.in (#9799) 2025-06-04 17:00:47 +08:00
GuoGeTiertime
83b28ff2d6 add profiles of tiertime printer (#9739)
* add profiles of tiertime printer

* Fix: correct filament name(300HS)

* add Tiertime as prefix for all generic filament.
2025-06-04 11:32:41 +08:00
yw4z
dd549a6c52 class for DialogButtons (#9639)
* init

* match code

* update

* Update DialogButtons.hpp

* make Ok uppercase

* update

* fix and cleanup

* Update DialogButtons.cpp

* update

* Update DialogButtons.cpp

* update

* Update CreatePresetsDialog.cpp

* update

* update

* update
2025-06-04 09:30:36 +08:00
Sebastian Kuzminsky
91ffc79c7b better version check in linux build script (#9496)
* better version check in linux build script

Running `BuildLinux.sh` on Debian Trixie (and probably on other platforms)
results in this warning:
```
$ sudo ./BuildLinux.sh -u
./linux.d/debian: line 32: [: ==: unary operator expected
./linux.d/debian: line 32: [: ==: unary operator expected
...
```

The script is looking for the `VERSION_ID` variable
in `/etc/os-release`, but that variable is optional (see
https://www.linux.org/docs/man5/os-release.html) and is not present in
my install of Debian Trixie.  The script handles the missing variable
incorrectly, resulting in the above warning.

This commit fixes the version check to be more tolerant and IMO clearer.

Tested on Ubuntu 22.04, 24.04, and Debian Trixie.
2025-06-02 23:11:19 +08:00
Frank Pian
f978a584fe Revert #6867: remove bambustudioopen:// protocol on Mac (#9680)
Fix link redirection defaulting to Orca
2025-06-02 23:03:53 +08:00
Lee Jong Mun
32aa040287 kor translation update (#9756)
* kor translation update
2025-06-02 22:40:37 +08:00
Heiko Liebscher
90e00eec66 Add new de lang (#9716)
* fix de

* Merge remote-tracking branch 'upstream/main' into add_new_de_lang

* Merge branch 'main' into add_new_de_lang
2025-06-02 22:38:41 +08:00
Noisyfox
7d7308feb2 Log network msg 2025-06-02 21:20:43 +08:00
Noisyfox
aac6e2a3d0 Fix potential crash during calib 2025-06-02 19:18:11 +08:00
xin.zhang
57e5f5c4c4 FIX: wrong update info about AMS1
jira: [STUDIO-9089]
Change-Id: I7ce5b1069abddd8aaa187ade03d0271b0b16dc9e
(cherry picked from commit 032b34eded21f452535086f672dd408200461d5a)
2025-06-02 19:11:23 +08:00
Stone Li
40be2d5ef0 ENH: format to utf8 when parse_json failed
JIRA: STUDIO-none

Change-Id: I3bb7b209962c15e94ef24d24f752e8cdafc42975
Signed-off-by: Stone Li <stone.li@bambulab.com>
(cherry picked from commit d5f9b35b911aabc0bf3683744f980838934f5bf7)
(cherry picked from commit 499b0d8e4f2295dd07a5d84e4917e04a404efd53)
2025-06-02 18:58:47 +08:00
Noisyfox
81c14f60b6 Remove unused code 2025-06-02 18:57:51 +08:00
楼兰碎叶
522aa8e585 Update OrcaSlicer_zh_CN.po (#9746)
* Update OrcaSlicer_zh_CN.po
2025-06-02 17:13:03 +08:00
楼兰碎叶
21f25b9365 Update OrcaSlicer_zh_CN.po (#9745)
* Update OrcaSlicer_zh_CN.po

add some chinese translate item
2025-06-02 17:11:22 +08:00
noisyfox
fc33a680d1 Add debugger detector for Linux 2025-06-02 16:48:58 +08:00
Noisyfox
1441da246b Add debugger detector for macOS 2025-06-02 16:17:11 +08:00
tao wang
e8f5b374b2 ENH:support u0 firmware homing
jira:[none]

Change-Id: I9533944c343007897d25929739e5eb175bad6689
(cherry picked from commit 533911e2cd46fadc92bd7d908e81ad51ce14944c)
2025-06-01 23:39:42 +08:00
tao wang
50fe1f7312 NEW:use new homing command
jira:[none]

Change-Id: I9d60d0b5c2d0e2cf7ac5c5e4b0dbcf2daf6edbb1
(cherry picked from commit 9dce95d401e8333077db63dbad57bda837d0ce19)
2025-06-01 23:38:27 +08:00
felix-ebbe
736da49da4 updated Anycubic Kobra S1 cover to png with no background (#9776) 2025-06-01 22:54:20 +08:00
Noisyfox
b01ccc8def Merge branch 'main' into dev/bbl-network-upd 2025-06-01 22:51:13 +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
9444d61bb6 Merge branch 'main' into dev/bbl-network-upd 2025-06-01 19:33:39 +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
Alexandre Folle de Menezes
a2f87dc980 Fix casing issues on the original english strings (#9513)
* Use lowercase after comma

* Use uppercase after period
2025-06-01 19:31:55 +08:00
Nanashi
be7312f153 Remove dead (unsafe) Orcalibrate link (#9761)
* Remove dead (unsafe) link

Removed as noted in <https://github.com/SoftFever/OrcaSlicer/issues/9731>

* Add new calibration site link

* remove link entirely as per conversation with @ianalexis

Related to https://github.com/SoftFever/OrcaSlicer/pull/9761
2025-06-01 19:28:23 +08:00
twonfi
50fb11dddc add official Twitter/X account in security alert (#9734)
* add official Twitter/X account in security Alert

account mentioned on https://orcaslicer.com

* fix quotes
2025-06-01 19:27:06 +08:00
Noisyfox
3d64af917a Merge branch 'main' into dev/bbl-network-upd 2025-06-01 19:25:21 +08:00
kfbest
63bca8ab64 Additional Model metadata - Description (#9398)
* starting to add description field to GUI

* additional work to add GUI

* make a multi-line entry

* Remove building of non-mac

* fix tag collision

* debugging suggestions from CoPilot

* yet another debug suggestion

* Fix build with Xcode 16.3

* Simplify OpenVDB patch, from 930c3acb8e (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

* Update Auxiliary.cpp trying to prevent crash

* Add files via upload

* from other branch

* rolling back changes

---------

Co-authored-by: Kaleb Best <kalebbest@MacBook-Air.local>
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-06-01 18:35:48 +08:00
Maciej Lisiewski
5df4275c18 Make it easy to pass extra build args to deps and orca in BuildLinux.sh (#9648) 2025-06-01 15:41:19 +08:00
yw4z
895b21fb2b Fix scaling on Plates toolbar for Windows (#9674)
Update GLCanvas3D.cpp
2025-06-01 15:40:44 +08:00
Ian Bassi
9565f39c7a Fix #9439 - IS Calib - Use default Filament MVS (#9703)
IS Calib - Use default Filament MVS

To fix #9439 added a comment in wiki and remove Max Volumetric Speed overload.

Co-authored-by: Rodrigo <162915171+RF47@users.noreply.github.com>
2025-06-01 13:38:09 +08:00
Ian Bassi
6423d521cd Fix Line Infill with no anchor (#9768)
* Fix Line Fill with no anchor

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

* Disable anchor option for Line Infill

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

---------

Co-authored-by: Rodrigo <162915171+RF47@users.noreply.github.com>
Co-authored-by: Henk <40023052+elektrohenk@users.noreply.github.com>
2025-06-01 13:34:44 +08:00
wrathernaut
17586cf0a1 simplified model and corrected part origin- taz4/5 (#9658) 2025-06-01 13:31:50 +08:00
BelligerentBash
c0da25f036 Fix 9620 (#9717)
* fix #9620

* fix-9620

* fix-9620
2025-06-01 13:31:19 +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
yw4z
c93e321ef0 Fix scaling on SideButton (#9673)
* Update MainFrame.cpp

* fix scaling on gap
2025-06-01 13:16:51 +08:00
yw4z
23ee612c03 Fix scaling on about dialog (#9672)
* Update AboutDialog.cpp

* Update AboutDialog.cpp
2025-06-01 13:00:05 +08:00
Fei Deng
9d1ab72c29 Turn on Elegoo Centauri Carbon aux fan to help cool the build plate when using a cool plate (#9676)
turn on aux fan to help cool the build plate when using a cool plate
2025-06-01 12:58:54 +08:00
Noisyfox
26306d586a Fix H2D AMS humidity display 2025-05-31 18:57:19 +08:00
Noisyfox
49ae4ab8f7 Update OrcaArena vendor name in file names 2025-05-27 10:33:07 +08:00
Noisyfox
2dacde5b3b Rename fdm_process_bbl_ to fdm_process_single_ 2025-05-27 10:32:03 +08:00
Noisyfox
7ecd3e7f0c Reorganize bbl printer profiles 2025-05-27 10:14:34 +08:00
Noisyfox
659a65f27f Force using local camera view for H2D if legacy network plugin is used 2025-05-26 20:02:16 +08:00
Noisyfox
6b9ce834e1 Fix text alignment of storage page error message 2025-05-26 17:54:10 +08:00
Noisyfox
5335357f4c ENH:optimization of select machine page
(cherry picked from commit bambulab/BambuStudio@9afe123026)

---------

Co-authored-by: tao wang <tao.wang@bambulab.com>
2025-05-26 17:41:58 +08:00
chunmao.guo
06cc09b62a FIX: wxMediaCtrl2 on macOS error code
JIRA: STUDIO-8945
Change-Id: I03d6f7bcb7f3032dd269fc60202aca86bedfef18
(cherry picked from commit 0e1b399859a60075b46878bc3560df87c66b2092)
2025-05-26 14:43:32 +08:00
tao wang
54748aee1c ENH:Support more SD card states
jira:[for sdcard]

Change-Id: Ic09198a0ed357f827768ed2f8d8a9ed6266f749f
(cherry picked from commit c877405caba2b75c515c814b7aaa0793200eee04)
2025-05-26 14:41:43 +08:00
xin.zhang
f970bf8160 FIX: add some dark mode images
jira: [STUDIO-9654]
Change-Id: I89c8efcd95e7b326c4e9ecff76a10c1813e018ea
(cherry picked from commit 10ea0696c613340cc54e3245678e7e4605d19f4f)
2025-05-26 10:44:54 +08:00
xin.zhang
add22fb695 FIX: update the images
jira: [STUDIO-9581]
Change-Id: I1cea4547d9b436ca29932d0d5724dedf42eadc8f
(cherry picked from commit 09a6a3695be229f655adbb10b820134d4922479e)
2025-05-26 10:44:37 +08:00
chunmao.guo
062d922beb FIX: liveview_remote protocol missing agora
Change-Id: If3a46c67e139e3abc47dc672e32246eb6b59f9fd
Jira: STUDIO-10041
(cherry picked from commit 71d9d8969e4bf502adaa56f165fc857be7fe6f5a)
2025-05-26 10:16:32 +08:00
tao wang
5246fc4c0c ENH:fet the correct Agora status
jira:[none]

Change-Id: Ic779e41f0b652212aa8e4ce016cfe1ef2aba3608
(cherry picked from commit 1c1b366d0035298b387fbeb3a7ee69ef4afb8e2d)
2025-05-26 10:14:39 +08:00
Noisyfox
057ba55c87 Fix crash when attempt to start remote live view for H2D 2025-05-26 09:55:56 +08:00
zhimin.zeng
aebd2f5305 FIX:k value is set to default value when editing k value on printer
jira: STUDIO-10120
Change-Id: I6c67efb77ca681aab510399031deed7faa473713
(cherry picked from commit 7380ee0a2c488bc5b206f4f6462e81ff744cc8d2)
2025-05-25 20:32:53 +08:00
zhimin.zeng
8579885e8e FIX: FIX cali protocol
add extruder_id for start_cali and add protection for setting_id
jira:none

Change-Id: Idd8eeaa38c618c0ef8db10064d3e4d9793487aa6
(cherry picked from commit 9097efd8699b93d1d8a128eadf55a9252fa728ad)
2025-05-25 20:32:16 +08:00
zhimin.zeng
d613662ef7 FIX: Calibration adaptation encryption
jira: none
Change-Id: Ie42da224ca02261b0c32262be895c215878b7921
(cherry picked from commit 7498d6e5f89751d4f576ba073485238baba53d0f)
2025-05-25 20:29:53 +08:00
liz.li
23c148fb74 ENH: o series don't show ams hub
jira: STUDIO-8568

Change-Id: I298e026f70211595ca58c69c6345961dbc64e350
(cherry picked from commit a6c29c3ad0a3030f3be90af58f1689bb1b28ab37)
(cherry picked from commit 8b6f1612d819b47114449648578e6d07c6699016)
2025-05-25 20:29:53 +08:00
tao wang
6fca6f527c ENH:support new chamber temper protocols
jira:[none]

Change-Id: Id068b7144eacd03da342a15468d998b80f3cb8f2
(cherry picked from commit 17e0490337b61d0c38d8c17a56ac97c3d4a9034e)
2025-05-25 19:13:07 +08:00
Noisyfox
4909c517d1 Merge branch 'main' into dev/bbl-network-upd 2025-05-25 17:01:04 +08:00
Noisyfox
61aa5d2c09 Sync AMS lite render code from BBS 2025-05-25 17:01:13 +08:00
Noisyfox
59c2a453ab Fix H2D AMS render 2025-05-25 16:45:31 +08:00
Noisyfox
67ccaa3f6c Fix crash when H2D is present 2025-05-25 14:38:40 +08:00
lodriguez
4545132a0d Fix deferred URL not cleared properly (#9711)
* Fix deferred URL not cleared properly

ensure the deferred URL is fully cleared after use

* cleared properly in load_url too
2025-05-25 00:45:12 +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
Noisyfox
6e47c0c175 Fix issue that filament is rolled back and forth when click ams slots 2025-05-24 23:23:42 +08:00
Noisyfox
65936b34c1 Fix crash when using old firmware 2025-05-24 18:37:35 +08:00
Noisyfox
0d61ae87ed Fix typo 2025-05-23 15:31:09 +08:00
Noisyfox
e6eb80e003 Use Orca color scheme for machine selection dialog 2025-05-23 15:25:55 +08:00
Noisyfox
56b6e0742e Fix AMS HT filament road rendering
(cherry picked from commit bambulab/BambuStudio@afbf3cf197)

---------

Co-authored-by: tao wang <tao.wang@bambulab.com>
2025-05-23 10:11:26 +08:00
Noisyfox
625a946e25 FIX:update load/unload command for n3s
(cherry picked from commit bambulab/BambuStudio@fc32042639)

---------

Co-authored-by: tao wang <tao.wang@bambulab.com>
2025-05-22 21:54:15 +08:00
Noisyfox
b5c164fae6 Fix crash when switching between printers with different AMS configs 2025-05-22 18:03:20 +08:00
Noisyfox
b88b1e4819 Fix AMS HT display if it's the only AMS
(cherry picked from commit bambulab/BambuStudio@a182fa1aa4)

---------

Co-authored-by: tao wang <tao.wang@bambulab.com>
2025-05-22 17:51:48 +08:00
Noisyfox
4339bd308e Ensure log is flushed so we could know what happened before crash 2025-05-22 17:03:09 +08:00
Noisyfox
8b43ecca30 Fix AMS HT slot render alignment 2025-05-21 23:18:54 +08:00
Noisyfox
4425f91caa Fix AMS update 2025-05-21 21:18:53 +08:00
Noisyfox
cee7041b4d Clean up code 2025-05-21 16:25:48 +08:00
Noisyfox
3b3406a375 Rename AmsCans to AmsItem 2025-05-21 15:56:41 +08:00
Noisyfox
d654408bed Rename AMSItem to AMSPreview 2025-05-21 10:46:28 +08:00
xin.zhang
9c8736f416 FIX: fix the json assert
jira: none
Change-Id: I0d17ef2e8474e84397c92ecd7868c6313bb8c9f7
(cherry picked from commit ec2412ddec0fd9d21a004f231154bec28d3107f8)
2025-05-20 20:32:47 +08:00
xin.zhang
87c0719b32 FIX: update the time shown; keep the val update while popup
jira: [STUDIO-9268]
Change-Id: I0b743ddb0ae479f9baad6239f68861a199681cda
(cherry picked from commit e1bc737d1cbc1dcf79ceecf9ed301a4a02590d5a)
2025-05-20 11:52:06 +08:00
xin.zhang
502cee88ee FIX: fix the bg painting
jira: [none]
Change-Id: Id3183ceb93850992cff9834d0141874e33594d35
(cherry picked from commit 0d480b3f6e4e71baae7787802b30c0d572e1ba9d)
2025-05-20 11:48:47 +08:00
xin.zhang
0b98094dac FIX: The humidity popup with humidity_percent/temperature/dry_time
jira: [STUDIO-9268]
Change-Id: Ic6e923ae7cff56fa3e053d48e5dea6e393cd41eb
(cherry picked from commit 75da1db2f926125a0cb3595a8cae9f4d7588c6a8)
2025-05-20 11:48:15 +08:00
xin.zhang
e924a04fb8 FIX: add translate key
jira: [STUDIO-10586]
Change-Id: Ice409b9459230254bbaaa4f706761d6927d8bdf8
(cherry picked from commit 5509447a6d500142ef3d078773678e37ba2f03e0)
2025-05-20 11:33:17 +08:00
xin.zhang
6c9cbfc848 FIX: the translation problem
jira: [STUDIO-10531]
Change-Id: I59b12a4efe181a98093bbbd5d3c341613609fc8e
(cherry picked from commit 379e6314367a82a4e065f02355b853c4e068e75d)
2025-05-20 11:32:34 +08:00
xin.zhang
b051870245 FIX: support more device components
jira: [STUDIO-9275]
Change-Id: I8105828183d42496eed77793daa1c1a618e252bf
(cherry picked from commit 478fc597c4b0f054c93bef954f3ca1054111b4b3)
2025-05-20 10:55:48 +08:00
Noisyfox
917b638227 Adjust spacing 2025-05-20 10:48:19 +08:00
Noisyfox
575d543299 Fix AMS panel colour 2025-05-19 23:52:33 +08:00
Noisyfox
5f989c81d1 Port BBS AMSHumidity 2025-05-19 23:37:10 +08:00
Noisyfox
e3ffc39316 Display correct AMS type 2025-05-19 23:10:16 +08:00
Myles Berueda
00277ac4b0 fix(coreone): adds printer structure (#9679) 2025-05-19 16:30:20 +08:00
xin.zhang
2a19372ca0 FIX: update the display of AMSHumidity
jira: [STUDIO-10119]
Change-Id: I7a1be57bd0dff13be149d6450b36fb54ffa9521d
(cherry picked from commit c3a8690987005e0f53bbd5f9622a670e76bed93a)
2025-05-19 11:04:15 +08:00
Noisyfox
80b234a369 Preparing for AMS drying support 2025-05-19 11:04:14 +08:00
tao wang
8a7fa6918d FIX:fixed obtaining incorrect bits
jira:[none]

Change-Id: I27a4ae24870276912b69fad1c0285889e749030b
(cherry picked from commit 207d81c76933c5cf2fe2d28ed70ab2d246af2615)
2025-05-19 11:04:14 +08:00
tao wang
1556523ca1 FIX:Fix the display issue of uncalibrated AMS
jira:[for uncalibrated ams]

Change-Id: I02e3f3548750fd0bd61d64e36a535a0f83371e98
(cherry picked from commit f08d40b42a8193123bdba559cb8eade5ff062b4a)
2025-05-19 11:04:13 +08:00
tao wang
60ac0a514e ENH:adjust the parsing of ams info data
jira:[none ]

Change-Id: I8e5125ae313b48b3f64fe59ae45ee7b437a0119f
(cherry picked from commit c38074d3cdc38f8e676a443f23b20d9477facea9)
(cherry picked from commit c8ce030bd2de6b54a79e218d6073164956f6f0b9)
2025-05-19 11:04:12 +08:00
Noisyfox
6c22b0c86f Update plugin version in PresetUpdater 2025-05-19 10:54:38 +08:00
Noisyfox
9711b65736 Only download ARM version when not using legacy plugin 2025-05-19 10:51:55 +08:00
lane.wei
a67436ee7e FIX: app: fix the crash issue on win-7 again
jira: no-jira
Change-Id: I96e713513270270db3abcfdd67792b0a3ac92619
(cherry picked from commit caff5d9f38cdb962ca4069f8b0b5696d140aac6d)
2025-05-19 09:58:52 +08:00
lane.wei
85bce2ac33 FIX: app: fix the issue on win-7
use typedef instead of IsWow64Process2

jira: no-jira

Change-Id: I3d5c4becca1586094b6950431470b12bd71a0056
(cherry picked from commit c34e985f188c206d588ee8da7149ded2516981cf)
2025-05-19 09:58:46 +08:00
lane.wei
2d7259623f FIX: fix studio not launch issue on windows-7
jira: no-jira
Change-Id: I531e009c0547d3a5d86d48e990d930eb8fa6ba00
(cherry picked from commit 3d02f03ef4ba229ebf9e28cd99a5d871916994dd)
2025-05-19 09:58:06 +08:00
lane.wei
285bbeceb7 FIX: GUI: use another api to get process type
jira: no-jira
Change-Id: I43fb1738b9b0173704c17c0d92df06f3c78fcde6
(cherry picked from commit af8926ea396480ea06222d421a2ecb704df04218)
2025-05-19 09:56:56 +08:00
lane.wei
ebc072b141 ENH: init: output the process architecture when init
jira: no-jira
Change-Id: Id5acb828269565945d887c6de4e32d715f83f503
(cherry picked from commit a29cb80bc7f959b5df44238a0a7f0a08948ff2a3)
2025-05-19 09:54:24 +08:00
lane.wei
aec877c7e0 FIX: gui: fix the crash issue on arm64 plateform
jira: no-jira
Change-Id: Ib95ffc3ceb421af345418d73af0261d3c25464a3
(cherry picked from commit 132d87b687f4b3bd016539380d7e9268d817ac40)
2025-05-18 22:47:42 +08:00
lane.wei
c0ba405a64 ENH: GUI: rename win_arm64 to windows_arm
jira: no-jira
Change-Id: I01eeb96efb06ec779f1338d1207f7f6641c2bc58
(cherry picked from commit bbf32fd6f7ffbf543c28882ff3801108942fb399)
2025-05-18 22:47:18 +08:00
lane.wei
320cd87f0b ENH: GUI: add arm64 check logic for windows
jira: no-jira
Change-Id: Ic788d4ae9218b909eae5ce571d4436c39e77230a
(cherry picked from commit 323184e42c5f85c8738b03b890e5aaf3818e8858)
2025-05-18 22:46:50 +08:00
lane.wei
7af9802688 ENH: gui: add win_arm64 support
jira: no-jira
Change-Id: I43f66be1f264434a9bb26a9dd3fff1fb5c36d57c
(cherry picked from commit 659f758e451d20d3a6c5505a2530be578dd584dd)
2025-05-18 22:46:00 +08:00
xin.zhang
1f2b320b94 FIX: display fault in dark mode about AMS
jira: [STUDIO-8964]
Change-Id: If2785b3bf6b8067f87eef610af548abbe841603a
(cherry picked from commit b22618db87c0bfdd4b36f108c258342a9db550d0)
2025-05-18 17:14:59 +08:00
liz.li
58c2ee4f06 FIX: ams_id out of bounds crash
jira: none

Change-Id: Icfc5555e4772cd70a9f018f0c734e2edb8b7d626
(cherry picked from commit aa03f489dcc6bd737d2d12c53adfb90a01270d66)
2025-05-18 16:49:33 +08:00
liz.li
1f41e18d7f ENH: support dynamic size ams panel list in upgrade panel
jira: none

adjust accessories display text

Change-Id: I1de6872325b17bd5cfb11e750608d5f420055ee4
(cherry picked from commit 6ba1518c24b4dcba01eabb6d1d0ce3a0ce69576c)
2025-05-18 16:42:19 +08:00
tao wang
21c69a99e6 ENH:show n3f/n3s version info
jira:[for n3s]

Change-Id: Ia0056dfdf7157036008cc63a37c9fd8076063a6a
(cherry picked from commit a44ff5a95a6774b4eed1238bde12d0a750c24a10)
2025-05-18 16:35:09 +08:00
Noisyfox
eba2e0af78 Update transition_tridid to support newer ams 2025-05-18 16:32:09 +08:00
tao wang
fd5b6f88ab FIX:support show n3f ams in mapping popup
jira:[for n3f ams]

Change-Id: I619010de072df1635e1bb39b694c7a0e0a7c127a
(cherry picked from commit 46efe1542742fbc43e0f60ea385aadad39d08353)
2025-05-18 16:23:58 +08:00
Noisyfox
54d6f9f0de Fix nozzle target temp display 2025-05-18 14:59:08 +08:00
Maciej Lisiewski
c6b8664c8e Fix building with cmake 4.x on Arch (#9644)
* Fix CMAKE version check to only apply to Windows

* Treat arch-based distros as arch when building

* Fix cmake policy version issue on Arch

* Remove duplicate cmake minimum version check

* Move cmake 4.x compatibility fix to BuildLinux.sh
2025-05-17 23:36:39 +08:00
Noisyfox
05a0703120 Merge branch 'main' into dev/bbl-network-upd
# Conflicts:
#	src/slic3r/GUI/SelectMachine.cpp
2025-05-17 00:22:09 +08:00
Vovodroid
778deab033 Correct repair menu message (#9468) 2025-05-16 23:54:10 +08:00
Noisyfox
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
yw4z
b7e0abc5f5 Bed shape dialog improvements (#9569)
* init

* reduce changes

* Update BedShapeDialog.cpp

* update
2025-05-16 23:49:07 +08:00
Maciej Lisiewski
2490564f7f Fix building with GCC 15 (#9643)
* Patch GMP to build on GCC15

* Add cstdint include - GCC15 defaults to C23

* Update GMP PATCH_COMMAND to work without a valid git repo

* Set GMP_DIRECTORY_FLAG
2025-05-16 23:48:59 +08:00
FlashforgeUser
9110dd51dc Add Flashforge printer profile for Adventurer 5X, Guider 4 and Guider 4 Pro. (#9646)
* Add Flashforge printer profile for Guider 4 and Guider 4 Pro.

* Add Flashforge printer profile for Guider 4 and Guider 4 Pro.

* Add Flashforge printer profile for Guider 4 and Guider 4 Pro.

* Add Flashforge printer profile for Adventurer 5X, Guider 4 and Guider 4 Pro.
2025-05-16 20:46:57 +08:00
Alexandre Folle de Menezes
57a6f61349 Fix the spacing on the original english strings (#9596)
* Remove extra spaces between words

* Remove extra spaces after punctuation

* Remove extra spaces before punctuation

* Always needs a space after punctuation

* Always needs a space before parens

* Remove trailing spaces before newline
2025-05-16 16:31:58 +08:00
Vlad
020d31d600 Improved Z-Bolt profiles (#9502)
fix: tree supports, dual wipe, travel speed
2025-05-16 09:42:44 +08:00
Dipl.-Ing. Raoul Rubien, BSc
7c76bb754a adds libspnav-dev dependency to linux.d/debian (#9498)
* linux.d/debian: adds libspnav-dev dependency; enables spacemouse support

* linux.d/arch: adds libspnav dependency; enables spacemouse support

* linux.d/fedora: adds libspnav-devel dependency; enables spacemouse support
2025-05-16 09:37:52 +08:00
AMstuff
95e96712f1 flatpak: update libspnav to version 1.2 (#9511) 2025-05-16 09:36:37 +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
Aerospacesmith
dfdf9a3159 Fix Elegoo Centauri Carbon layercount gcode (Really this time) (#9630)
* Update fdm_machine_ecc_common.json

* Update Elegoo Centauri Carbon 0.4 nozzle.json
2025-05-15 14:30:05 +08:00
xin.zhang
b998ddd1bd FIX: fix the humidity display of N3S_AMS
jira: [STUDIO-10641]
Change-Id: I48ac96443f851262b3ce720d4b4948b7b515a381
(cherry picked from commit 51042edcbdc1d8d24c11fa8a479559d4fd000fc7)
2025-05-15 13:35:07 +08:00
xin.zhang
8f143a1764 FIX: the humidity display
jira: [STUDIO-10481]
Change-Id: Ib4bec6db6afbe40199c401c539b13a0e8459bbad
(cherry picked from commit 658a8ab7ef1d2149fee58b45ea9455bb188f82f0)
2025-05-15 13:35:06 +08:00
Noisyfox
795945376c Fix external spool filament settings 2025-05-14 21:29:12 +08:00
Noisyfox
1c58c933e2 Add missing print params 2025-05-14 20:39:27 +08:00
Noisyfox
7a548ca7fb Merge branch 'main' into dev/bbl-network-upd 2025-05-14 19:46:08 +08:00
Noisyfox
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
Kiss Lorand
24784bae9a Auto orient shortcuts (#9615) 2025-05-14 11:45:08 +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
d4809b58b8 Fix startup crash when network plugin is not enabled 2025-05-14 11:26:24 +08:00
Kiss Lorand
1a5b238ba4 Gizmo shortcuts (#9604)
* Gizmo shortcuts

* Delete invalid comment
2025-05-12 22:11:39 +08:00
Noisyfox
2ce2facb0e Add network debugging 2025-05-12 21:51:34 +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
3f60a23718 Merge branch 'main' into dev/bbl-network-upd
# Conflicts:
#	src/slic3r/GUI/Widgets/AMSControl.cpp
2025-05-11 21:17:43 +08:00
yw4z
a008014ab0 Improvements for Default color button in filament settings (#9581)
* init

* fix colors on theme switch

* update

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-05-11 20:11:09 +08:00
Alexandre Folle de Menezes
43b2acba36 Use "°C" instead of "degree" to avoid ambiguity (#9597) 2025-05-11 15:06:30 +08:00
Alexandre Folle de Menezes
3e48390cee Remove markers from strings that don't need to be translated (#8842)
Remove markers from text that does not need to be translated
2025-05-11 15:04:48 +08:00
yw4z
75dd55fcf6 fixes for dependencies tab (#9594)
* init

* fix indent
2025-05-10 22:13:28 +08:00
yw4z
41ff632d28 Improve UI of profile dependencies tab (#9553)
* init

* Update Tab.cpp

* update labels

* Update Tab.hpp

* Fix checkbox label

* Update Tab.cpp

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-05-10 13:49:52 +08:00
Kiss Lorand
cc525608e9 Organic tree support GUI fix (#9587) 2025-05-10 12:50:12 +08:00
Noisyfox
4d25037614 Merge branch 'main' into dev/bbl-network-upd 2025-05-09 23:03:47 +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
yw4z
2fbfb70994 Fix filament type parameter box uses wrong width (#9582)
* Update Tab.cpp

* Update Tab.cpp
2025-05-09 22:54:35 +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
yw4z
f0384e7bc3 Color & shape improvements for Axes (#9495)
init
2025-05-08 16:00:48 +08:00
yw4z
92b31a6435 Improve quality of bed name / number texture (#9535)
* init

* update

* update

* update

* update

* update

* Update PartPlate.cpp
2025-05-08 12:33:57 +08:00
yw4z
13225c817a Increase size of layer mode button on preview tab (#9554)
* Update IMSlider.cpp

* fix slider positions
2025-05-07 23:33:33 +08:00
Noisyfox
fe0f6497ad Fix external filament calib 2025-05-07 21:31:42 +08:00
Noisyfox
37244cce95 Update to latest BBS code. Fix ams filament preset check 2025-05-07 20:42:23 +08:00
tao wang
406ccadd06 ENH:use the correct trayID
jira[STUDIO-11274]

Change-Id: I0025bb74002b00c448fd4a499e547a5fbd35537f
(cherry picked from commit 937f687169091982bc6f11c5e76fb823b0456590)
2025-05-07 18:45:18 +08:00
tao wang
48ec9edc51 ENH:command ams filament settings is compatible with all AMS
jira:[none]

Change-Id: I622300794d1fa14826847229737b1f6f2ae490db
(cherry picked from commit c2adbe140b134b958f589ba178286e245a09adbf)
2025-05-07 18:13:03 +08:00
Noisyfox
ca68aa6d2b Fix compile error 2025-05-07 16:57:28 +08:00
zhimin.zeng
92972879f5 FIX: modify for get pa cali result
jira: none
Change-Id: I3c57ccaac3b7e73e0b2eb0e26678635478480298
(cherry picked from commit 6bf39690517f9e25de895bf52673d3a4a7b77255)
2025-05-07 16:38:26 +08:00
Noisyfox
b4f1ef06a2 Fix compile error 2025-05-07 16:36:00 +08:00
Noisyfox
108a5b8344 Update naming 2025-05-07 16:35:57 +08:00
zhimin.zeng
2ee934a7ee FIX: cannot cali for single nozzle printer
jira: none
Change-Id: I1cc0e5e4b0f9db2a66694c894f96a14047fde9e5
(cherry picked from commit 7bd3a5218af9f3d172090a80da447c4f2bbfff61)
2025-05-07 16:35:35 +08:00
Noisyfox
f6bfad9de1 Fix wrong slot id 2025-05-07 16:35:34 +08:00
tao wang
b0872aaba9 FIX:Fix the issue of extruder matching errors
jira:[for nozzle match]

Change-Id: I6965500bfb7feef6d18d28bea8a53a3c477f5e36
(cherry picked from commit 7bcf4b6cc5bc38e723bfd8dcd495c60a55134490)
2025-05-07 15:49:21 +08:00
zhimin.zeng
7c5dee1eda ENH: support auto pa cali for multi_extruder printer
jira: none
Change-Id: I835a0e20de81f9af7c40983e00bdb37ea6c95a68
(cherry picked from commit 4e387d4ace4332a7c2b6c0ab695b80a51597d0c7)
2025-05-07 15:46:24 +08:00
zhimin.zeng
2db5cae51f FIX: crash when sending print with empty ams_id
jira: none
Change-Id: I89dc87af28b45c69eac86810444de2519dfccd08
(cherry picked from commit f53e00ec6d9350046df4b9dc70cec75039b6d5d1)
2025-05-07 15:37:22 +08:00
zhimin.zeng
72fa3fbb26 FIX: modify color to empty string when reset filament
jira: none
Change-Id: I3a32dc8307ec5d65c8c5b7b05a5bc1e2d7d2b5b7
(cherry picked from commit a0b563dc8fbddd201198dd073471887d104a58cb)
2025-05-07 15:36:05 +08:00
hang.xu
df3fe1491a FIX: crash when select filament in device
jira: STUDIO-7972

Change-Id: Ice9e7360fbfe0c07bd49bbd696bb3cfb662e94e4
(cherry picked from commit 4c644d47157dd5cc403d6a1640c5874b99b10c4a)
2025-05-07 15:33:36 +08:00
zhimin.zeng
e9e661a9db FIX:when ams cali_idx is unknown, use default item
2. use transparent color when reset filament
jira: 7946

Change-Id: I129dc0e6b7244cad3b5e61e1bc423938f4b92d7e
(cherry picked from commit 7f473c2027e31458664e184645cf46f8e9b5d307)
2025-05-07 15:32:23 +08:00
zhimin.zeng
8a89c159db FIX: modify for virtual slot when multi_extruder
jira: none
Change-Id: Ic7284018ecb44e24536788b05dba572b96460e66
(cherry picked from commit 52e890fba1584bf9687a24ee46890c00f531e383)
2025-05-07 15:30:04 +08:00
zhimin.zeng
11cc964352 FIX: pa default item add filament_id
jira: none
Change-Id: Icfc24390e62cc1eca7e670311dc88502cea16fd7
(cherry picked from commit fb72d19a44d3b916920373acb7dd359282c1b750)
2025-05-07 15:21:07 +08:00
zhimin.zeng
500d1835a8 FIX: add filament_id when reset ams setting
jira: none
Change-Id: Iedd2eec94bd1e41a51cededc06b304a2e29ef808
(cherry picked from commit 4c6316b98137dc230c6a0c2093ffb290c09ccef7)
2025-05-07 15:20:49 +08:00
tao wang
1f08ec6072 FIX:use old tray_id for set ams filament
jira:[ams setting]

Change-Id: I965f532fbd590b501b40c2cc812d6d02054b3628
(cherry picked from commit ee3cb45b4d49d05417a6a4735e2cdd5050bc35c5)
2025-05-07 15:20:36 +08:00
tao wang
d71b1b57e2 FIX:fixed unable to reset ams filament setting
jira:[for reset ams]

Change-Id: I9f2f8be4a6e16b05191e4076db4e3f53d7601db4
(cherry picked from commit 3119a84eb2af58b89113f03c4393d1062423f930)
2025-05-07 15:18:02 +08:00
tao.wang
45dd04c899 ENH:support set ams filament
jira:[for 2nozzle setting]

Change-Id: Ib9e20bcdf6d8ea1bf5dd5e8624a68730e05e69ad
(cherry picked from commit 78c592819473b1291d1bec1126ccbf7d86bb17d5)
2025-05-07 15:13:39 +08:00
tao wang
319827daec ENH:support parse new print data
jira:[for new print data]

Change-Id: Iac6747e9ade690fcdf3b7b11239fe183bc7c3796
(cherry picked from commit 6c02c7bc8c77a481253e6c574f7bc13ff2cfcbdc)
2025-05-07 15:01:17 +08:00
zhimin.zeng
89a225a0e1 ENH: add default item for pa
jira: none
Change-Id: I4ad3bd094325bdbd1e6b013a91766214951dc032
(cherry picked from commit 0c772105f946121c292f92ab3ca1d050b898311b)
2025-05-07 14:33:38 +08:00
zhimin.zeng
693cf5f2f4 FIX: the default value is not correct
and the pa profile not display in AMS setting dialog after switch nozzle diameter
jira: 8620

Change-Id: If40bfe41ae13f5199f09baae3af09757498f1edf
(cherry picked from commit f3064e223df468eb9901e65c8f0abab2dae91f15)
2025-05-07 14:27:03 +08:00
tao.wang
d77ef4c8a3 FIX:fixed some amscontrol issue
jira:[for fix amscontrol issue]

Change-Id: Id62ffd047403bf80f6aba732b8ce31d782bcea57
(cherry picked from commit 55898ab88ee844dd7da17d992ad8f79e439f96a0)
2025-05-07 14:27:02 +08:00
Noisyfox
afb1d3df6f refactoring the modules of amscontrol
adapted from bambulab/BambuStudio@b78fa4c11c

Co-authored-by: tao wang <tao.wang@bambulab.com>
2025-05-07 11:30:29 +08:00
Noisyfox
dad7320f4b Fix setting AMS calib profile
ENH: calib support multi_extruder

1. backend support multi_extrude data structure
2. Compatible with third-party calibration

(cherry picked from commit bambulab/BambuStudio@21e6271e59)

Co-authored-by: zhimin.zeng <zhimin.zeng@bambulab.com>
2025-05-06 23:04:35 +08:00
Noisyfox
9b9c9ba569 Merge remote-tracking branch 'remote/main' into dev/bbl-network-upd 2025-05-05 19:22:34 +08:00
xun.zhang
d40be52f18 FIX: wrong curr bed type in print page
1.Get bed type from project config

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I1f1b9185dd4592b5fd3b03f07e8cde7b7d26510e
(cherry picked from commit 1c90355199384903f166730c5bb43c6a6baaa1cf)
2025-05-05 19:18:39 +08:00
tao wang
c4c670c995 FIX:fix the issue of macOS crashing easily
jira:[udesk 7578206]

Change-Id: If5e0b2d0969ca70815a5d2c9cca71654c9e1817b
(cherry picked from commit 8dfa6839e5e3a9bebb03616ff6d0c0c1699ad22f)
2025-05-05 19:18:13 +08:00
hang.xu
c5c3fdc321 FIX: Bed type display
jira: none

Change-Id: Ibac2a7a80d6841ebea639e0a58547413df6f5c74
(cherry picked from commit 2c3fa062c92da50f839432a43356d491c2e5bbba)
2025-05-05 19:13:50 +08:00
hang.xu
78a09d9be6 FIX: Add bed type in send print page
jira: STUDIO-7824

Change-Id: I64d9ed41b862ed4e3b8c21218c289132d767105e
(cherry picked from commit 7bb5060b739b3a95fe889ae64e8d7289e2c928d9)
2025-05-05 19:10:45 +08:00
yw4z
241d097d2e Match style of checkboxes on Material Settings > Setting Overrides (#9551)
init
2025-05-05 18:53:46 +08:00
yw4z
4925f65fed Fix: 2Dbed step calculation for grid not working (#9550)
init
2025-05-05 17:59:00 +08:00
Dipl.-Ing. Raoul Rubien, BSc
cb7aef10ec Fixes compile error with SLIC3R_PCH=OFF (#9543)
fixes compile error with SLIC3R_PCH=OFF
2025-05-05 17:55:17 +08:00
Noisyfox
b9729f872a Fix crash when start print from sdcard 2025-05-05 17:17:03 +08:00
tao wang
7c60219ab1 FIX:fixed the issue of multiple plates object card not flip pages
jira:[STUDIO-9373]

Change-Id: I520b2626da8dc3acc066b2ea26a5f8d3c27f64fb
(cherry picked from commit aee0cb382ba40607c278dbd68e5134fa26a2027c)
2025-05-05 17:09:18 +08:00
tao wang
569814d77c ENH:Hide multi disk switching
jira:[for demo]

Change-Id: I4cbfde15ec2b6f7e8aa68e8654ebea0e9cb09b9c
(cherry picked from commit 370be63709f1d8f3bdaa923023b71afed0391edb)
2025-05-05 17:03:20 +08:00
tao wang
f5d58bb9f0 ENH:support printing all plate
jira:[none]

Change-Id: I528129705ad2b6e81cb7d0b625d3a9228baf9cf1
(cherry picked from commit 00f4fbb5a6723ba4977cb18802c65bf8dedf6e29)
2025-05-05 16:54:08 +08:00
Noisyfox
9e304d0743 Merge branch 'main' into dev/bbl-network-upd 2025-05-05 15:21:17 +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
yw4z
0dd356a3a7 Fix exclusion area shape and color (#8792)
* Update PartPlate.cpp
2025-05-04 23:12:04 +08:00
Lee Jong Mun
e9eb6f9d95 kor translation update (#9423)
* kor translation update
2025-05-04 18:04:52 +08:00
yw4z
a91ee67ac7 2D Bed (Bed shape dialog) improvements (#9524)
* init

* fix grid & text colors for light theme

* scale axis

* fix custom bed plate not appearing

* merge functions for generating gridlines

* simplify

* Fix flatpak build

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-05-04 16:38:38 +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
yw4z
a37d648370 Match UI style of object list (#9494)
* Update GUI_ObjectList.cpp

* fix scaling issue on arrow

* Update GUI_ObjectList.cpp

* Update name column on Linux as well

* Always use column width from `m_columns_width`

* Always use column width from `m_columns_width`

* Remove object list extra horizontal spacing on macOS

* Remove object list header

* Avoid negative width

* Fix compile error

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-05-03 12:01:09 +08:00
Brandon Wees
2304e6a9cd Prusa CORE One Profiles (#9352)
* update profiles from 3b3aa19543

* capitalize SPEED

* Capitalize SPEED

* sync with cac592a462 (diff-b2ec55404a83d29c6c998171282a456702f47a98bade1a24aa583ea65c4314e0)

* sync with 1d5331b7d9

there was an issue with the filament start gcode conversion that appears to make the gcode invalid

* tweak Prusa CORE One

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-05-03 00:02:37 +08:00
SoftFever
a4f35e0291 Ensure bed shape is in correct orientation (#9350)
Fix #9345

This also fixes deltamaker's plate logo rendering:
![image](https://github.com/user-attachments/assets/517c9b3c-8eee-4081-a2bc-5913fe35328b)

And fix bed rendering issue for custom shaped bed without model:
![image](https://github.com/user-attachments/assets/9643413e-9b1c-4e74-afe8-edf2306e7021)


Also fix rendering of exclusion area that are defined in clockwise:
![image](https://github.com/user-attachments/assets/0949c1c3-6304-4ece-85c7-f3162249bf90)
2025-05-01 17:28:10 +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 930c3acb8e (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
Noisyfox
461d42635f Add option to toggle between legacy and new network plugins 2025-05-01 16:23:56 +08:00
tao wang
e4d8c2e440 NEW:support new mapping type
jira:[support new mapping]

Change-Id: I88e5d3b6966d4ed1e8098d13fe9335fecf6e01c4
(cherry picked from commit c0932e16ff9fcae0e900c6e0cac9a5b496d0cc0e)
2025-05-01 15:54:19 +08:00
tao wang
7fe421b1b3 ENH:support new amsmapping data
jira:[for 2 extruder]

Change-Id: Ie03eae17d600bc68451511a0179f20d1919ff6ea
(cherry picked from commit 0848c26da97c7b74e98645b9a0873fe928fdf631)
2025-05-01 15:54:18 +08:00
Noisyfox
12d5ffb8e5 Store dummy filament map data in bbl 3mf 2025-05-01 15:54:18 +08:00
Noisyfox
aef4dba512 Support both old and new version of BBL network plugin 2025-05-01 15:54:17 +08:00
Noisyfox
440d44340d Remove outdated bbl network agent functions 2025-05-01 15:53:45 +08:00
Noisyfox
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
Alexandre Folle de Menezes
a499695c93 Remove non-translated translations (#8841) 2025-04-29 17:25:15 +08:00
Noisyfox
032e6c8580 Fix non-windows build (#9509) 2025-04-29 13:02:22 +08:00
SoftFever
9913736b41 Fixed a bug that console window was created when --datadir parameter is used (#9506)
* attach console for Windows when command line is used

* fix version check failer in command line mode

* attach console only when we need to print help info
2025-04-28 23:27:20 +08:00
yw4z
84d3bd2b48 Fix: Grid size calculation wrong on large scale (#9500)
* Update PartPlate.cpp

* Update PartPlate.cpp

* add descriptions

* simplify calculations
2025-04-28 15:17:47 +08:00
SoftFever
5bf1596d65 attach console for Windows when command line is used (#9450)
* attach console for Windows when command line is used

* fix version check failer in command line mode
2025-04-27 22:38:40 +08:00
Alexandre Folle de Menezes
7d72db562f Add translation markers on more unstranslated strings (#9134) 2025-04-26 23:11:36 +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
Alexandre Folle de Menezes
e787666605 Remove empty string initializations (#9131)
* Remove empty string initializations
2025-04-26 18:00:09 +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
yw4z
9f4cd93817 Modernize Object Search Box & Improvements for Parameter Search Box (#9434)
* update

* Update Plater.cpp

* Update Plater.cpp

* Update Plater.cpp

* Update Plater.cpp

* Update Plater.cpp

* Update Tab.cpp

* update

* Update Tab.cpp

* Update Plater.cpp

* Update Tab.cpp
2025-04-24 22:33:50 +08:00
yw4z
0d3683c3e1 Add Filament / Printer window & web based windows improvements (#9431)
* update

* update

* Update 23.css

* update

* update

* Update 21.css

* update
2025-04-24 16:23:28 +08:00
yw4z
07634d2ba2 Modernize wxButtons on Parameters & Physical Printer window (#9459)
* update

* Update Tab.hpp
2025-04-24 16:09:39 +08:00
yw4z
2a6c15d15a Fix: Rotation gizmo axis line colors not matches with axis colors (#9427)
Update GLGizmoRotate.cpp
2025-04-24 15:41:36 +08:00
Henk
672c115c61 Fix infill anchor missing for FillPlanePath (#9462)
Fix infill anchor missing for archimedian chords, hilbert curve and octagram spiral infill pattern
2025-04-24 11:03:28 +08:00
Noisyfox
09f2ee467b Enable deploy orca_custom_preset_tests (#9465) 2025-04-24 09:37:05 +08:00
SoftFever
54a5ac9235 reenable appimage build on ubuntu 24.04 (#9458)
* reenable appimage build on ubuntu 24.04

* update TIFF

* fix build error
2025-04-24 08:13:15 +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
Henk
66cab434b8 Fix infill anchor missing (#9407)
* Fix infill anchor missing

* Correctly process cases without fill lines in FillRectilinear::fill_surface_with_multilines()

* Fix infill anchor missing for several other infill patterns

* Fix infill anchor missing for rectilinear and aligned rectilinear infill pattern

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-04-23 21:17:19 +08:00
vampiro2004
d1c2368eee adding overture TPU & ABS profiles (#9453)
Co-authored-by: Vampiro2004 <vampiro2004@users.noreply.github.com>
2025-04-23 19:50:19 +08:00
yw4z
2c12515035 Add icon to Profile dependencies (#9455)
Update Tab.cpp
2025-04-23 19:49:52 +08:00
yw4z
f4ebf9830c Fix alignment of plate name text an its input box on plate settings window (#9456)
Update PlateSettingsDialog.cpp
2025-04-23 19:49:25 +08:00
FusRock
e2f59f02e4 Fix FusRock ABS-GF Parameters in .bbl , Add Global Parameters for FusRock ABS-GF (#9442)
* Fix FusRock ABS-GF Parameters in .bbl , Add Global Parameters for FusRock ABS-GF

* Add Global Parameters for FusRock ABS-GF
2025-04-22 13:54:01 +08:00
yw4z
1f74b6b78a Fix: Prevent move of Advanced toggle when highlighting Global / Objects switch (#9445)
Update ParamsPanel.cpp
2025-04-22 12:47:07 +08:00
Shantanu Nair
ee7ebda584 Fixed an issue where the Max Volumetric Speed doesn't consider the Filament Flow Ratio (#9218)
* Rework extrusion-per-mm and speed-cap logic to enforce max vol speed

* Fix _mm3_per_mm typo
2025-04-21 00:00:10 +08:00
Noisyfox
bfe0778421 Merge branch 'main' into bugfox/bed-shape-orientation 2025-04-20 18:21:31 +08:00
yw4z
2349ea063d Fix: Alignment issues for default shapes / gridlines of bed plates (#9360)
* Update PartPlate.cpp

* Update 3DBed.cpp

* Update 3DBed.cpp

* update

* Update PartPlate.cpp

* Update 3DBed.cpp

* Update PartPlate.cpp

* Update PartPlate.cpp

* Update PartPlate.cpp
2025-04-20 18:20:25 +08:00
lodriguez
c456d38b5c fix case-sensitive mismatches in localization/i18n/list.txt (#9406)
replace AMSMappingPopup.cpp with AmsMappingPopup.cpp (the case-sensitive filename)
2025-04-20 16:16:21 +08:00
Vovodroid
35b4aadfda Search whole option string. (#9391)
Tune fuzzy match coefficients
2025-04-20 16:09:31 +08:00
FusRock
423172484e Add FusRock ABS-GF to BBL (#9412)
* add abs-gf

add abs-gf

* fix fusrock abs-gf

fix fusrock abs-gf

* fix

* Update FusRock ABS-GF @base.json

fix  false

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-04-20 16:06:59 +08:00
Azi
06d36b9718 Fixed some UI glitches about the All checkbox in the dependency tab (#8949)
* bugfix:All button doesnt get checked on tab-reopen when the selection is empty

* bugfix:when dep tab is open, and you check All, hitting reset all doesnt update the All button correctly; also partially fixed the bug that checking All doesnt flag the tab as dirty

* fixed a bug where checking All in dependency tab doesnt flag the field as dirty

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-04-20 14:44:58 +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
Noisyfox
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
HaythamB
d9c27f3dee Fix #6839 with final tool preheating on multitool machines causing in… (#7405)
Fix #6839 with final tool preheating on multitool machines causing in appropriate temp settings

Seems like Orca is trying to preheat the next tool in a multitool print, and ends up calling a heater off command in the last 30 seconds of any print.

This happens because there's no handling to check if the next active tool is an actual valid tool index, or its a T-1 command to end the print  since we're using the last tool.

Simply moved the preheat commands into the conditional IF that automatically fixes this issue since the tool index is now properly evaluated.

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-04-20 13:24:49 +08:00
yw4z
e395ba18ad Icon fixes and improvements (#6204)
* Fix blurry AMS icon on sidebar

* Fix search icon anti aliasing problem

* home page thumbnail / new / open / delete / explore icons

* Homepage > finetune color of thumbnail image

* Custom filaments > Edit button

* Update homepage thumbnail image

* BBL printers > Device / Calibration tab > Printer icon blurry

* Update homepage open project icon

* Homepage > User rectangular Orca logo for UI consistency

* Add new icons for parameters

* Update bed plate Move to Front icon

* Update project page icons

* revert changes on homepage context menu

* Add dependencies icon

* fix document icons on project page

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-04-20 13:20:20 +08:00
Aerospacesmith
0628a9444c Fix elegoo cc layercount gcode (#9308)
* Update fdm_machine_ecc_common.json

* Update Elegoo Centauri Carbon 0.4 nozzle.json
2025-04-20 13:02:52 +08:00
GiacomoGuaresi
7d2a12aa3c Add check to CMakeList for check versions and path order on windows (#9390)
* chore: limit cmake version to 3.31 for win32

* chore: fix check for variable path order

* chore: fix check for pipeline

* chore: remove warn on CI enviroment

* chore: change cmake limit version from 3.32 to 4.0
2025-04-18 19:42:46 +08:00
GiacomoGuaresi
addade1216 Update G1 printer configurations and material (#9365)
* squash all commits

* rename file to lower case

* add tmp file to change name

* add tmp file to change name

* update g1 profile configuration

* chore: add renamed_from attribute

* fix: typo

* fix: typo

* chore: fix printer_model reference
2025-04-18 16:38:36 +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
SoftFever
ee85cda2bb Update README.md with social media links. (#9375)
# Description

Add social media links to the project so people can follow the **real** social media accounts. There's only a Twitter/X account added so far. I'd be happy to add more.

Additional context: There are many fake accounts, and this addition to the `README.md` helps users determine which accounts are real. Adding the links will protect users and the OrcaSlicer project.

# Screenshots/Recordings/Graphs

Screenshot of the `README.md` with a social media link.

<img width="1037" alt="image" src="https://github.com/user-attachments/assets/d019bbc0-4b4d-4abf-916c-d3bc41d7062a" />

## Tests

Made the change and previewed in Github.
2025-04-17 22:06:42 +08:00
Garrick Cheung
2c8c3449c6 Update README.md with social media links.
Add social media links to the project so people can follow the **real** social media accounts.

Additional context: There are many fake accounts, and this addition to the `README.md` helps users determine which accounts are real. Adding the links will protect users and the OrcaSlicer project.
2025-04-16 12:14:58 -07:00
Tido Klaassen
9c5c7c4c92 Add Sovol Zero Profiles (#9233)
Add Profiles from Sovol's repo (https://github.com/Sovol3d/Sovol-OrcaSlicer)
for the Sovol Zero printer.

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-04-16 14:58:49 +08:00
staff1010
2e9cb000f5 Add CoLiDo Series Profiles (#9247)
# Description
This PR adds CoLiDo series 3D printers, processes for them and filaments
to the slicer.

Includes:
Machine, Process, Filament and Model(as available from CoLiDo)

Machine:
CoLiDo DIY 4.0, X16, 160 V2, SR1, DIY 4.0 V2
<!--
> 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

![image](https://github.com/user-attachments/assets/6d38e55e-5499-46be-b948-132294f108de)

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

## Tests
Had no issue Printing with CoLiDo profiles.
<!--
> Please describe the tests that you have conducted to verify the
changes made in this PR.
-->
2025-04-16 13:05:35 +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
Bernhard Koppensteiner
69c2143804 High Flow Profiles for Prusa MK3.5 (#9312)
* bugfix for TPU filament overrides

* higher voluemetric flow

* bugfix for to high speed at internal solid infill

* Update Prusa.json

* updated firmware check and nozzle settings

* bugfix speed and standard for 0,15mm profiles of the 0.4mm nozzle

* variables not defined in orcaslicer

* bug fix volumetric speed, wrong value

* added high flow base process

* added highflow base process

* added first full draft of high flow profiles, further tests are necessary

* changed 0.35mm to 0.32mm for 0.6mm nozzle

* minor changes to initial layer speeds

* changed 0.35mm to 0.32mm for 0.6mm nozzle

* furcer changes on accelartion and speed

* added 0.35mm Standard @MK3.5 again for not breaking anythin for current users

* Update 0.35mm Standard @MK3.5.json

forgot to set the layer_height after creation of the 0.35mm profile
2025-04-16 10:34:27 +08:00
Vovodroid
1bce6a24d2 Small area semicolon description. (#8995) 2025-04-15 23:06:39 +08:00
Rodrigo
8cdc9c02df Junction Deviation Machine Limit (#9234)
* Junction Deviation Machine Limit

jd 3

JD menu 2

JD operativo

limpieza

final

* default JD print menu without warnings

* to fix multiple instances

* Only at first layer

* Calibs upgrade

* Shown on Marlin2

Shown on Marlin2
CodeCleaning

* Update Calibration.md

* set on writer

---------

Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
2025-04-15 21:49:17 +08:00
FusRock
3a3f695967 add filament_vendors:FusRock
Add FusRock and keep the alphabetical order
2025-04-15 16:25:26 +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
cochcoder
b795708852 Fix/improve Prusa XL & XL 5T profiles (#8833)
* First set of fixes

* Add FLEX filament to PrintConfig.cpp

* Add new FLEX filament profiles to main Prusa json

* Comment out M104.1 code

* Revert "Comment out M104.1 code"

This reverts commit 831414adb7.
2025-04-14 15:39:03 +08:00
yw4z
0e2582e0bb Fix: Circular bed shape (without 3D model) not rendering in correct position (#9333)
* Update 3DBed.cpp

* Update 3DBed.cpp

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-04-14 15:25:13 +08:00
Vovodroid
e2e06e5e89 Fix skirt start angle per object (#7374) 2025-04-14 15:24:12 +08:00
Azi
6d467c8f16 fix: no printers show up for custom filament creation (#8959)
* fix: for custom filament creation, if no compatible printers are defined, it should be available for all printers

* same fix idea but for 'Copy Current Filament Preset' option

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-04-14 15:23:22 +08:00
Simon Biewald
205056b572 Remove 'www' subdomain from official link to avoid certificate warnings (#9291)
Remove 'www' subdomain from official link.

With 'www.orcaslicer.com' creates certificate warnings, and ultimately redirects to 'orcaslicer.com' anyway.
2025-04-14 15:07:16 +08:00
Co Print 3D Printing Technologies
4dca5b6a7c Updated Co Print Machine profile file (#8965)
* Add files via upload

* Update Co Print.json

* Update Co Print.json

* Add files via upload

* Update CoPrint Generic ABS.json

* Update CoPrint Generic PETG.json

* Update fdm_machine_common.json
2025-04-14 14:25:05 +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
Noisyfox
8dd9e64af8 Update profile selector loading text color (#9334)
Update loading text color
2025-04-13 23:18:46 +08:00
yw4z
9c10f8cbc5 Fix grid lines not aligned to origin (#8767)
* fix

* Update PartPlate.cpp

* fix typo
2025-04-13 23:02:01 +08:00
Noisyfox
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
b4imetu
23372478a8 Update README.md (#9295) 2025-04-13 15:20:15 +08:00
Ian Bassi
822de5ce29 Input shaping & JunctionDeviatio wiki + improvements (#9256)
* VFA-Calibs Wiki images

* Calib Code Fixes

Improve Settings
JD Set Precision to 3
Change damp default
Recommend 0

Fixes

* IS JD Wiki

* Updated with 9234

* IS Verbose
2025-04-13 15:17:24 +08:00
Vlad
9e53b079c6 Adding Z-Bolt profiles (#9240)
Added profiles for Z-Bolt S300, S300 Dual, S400, S400 Dual, S600, S600 Dual
2025-04-13 15:11:50 +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
yw4z
4b33c31106 Fix: Correct color of bed plates without 3D model (#9320)
fix color
2025-04-13 13:35:23 +08:00
yw4z
5f16371672 Fix: Bed icons not vertically centered on circular shaped plates (#9321)
* Update PartPlate.cpp

* simplify changes
2025-04-13 13:34:17 +08:00
Kiss Lorand
5c0afd5e84 Skirt settings GUI fixes (#9325) 2025-04-13 13:32:18 +08:00
Vovodroid
69df9420c1 Apply single_loop_draft_shield also to skirt (#9298) 2025-04-12 11:06:30 +08:00
Dipl.-Ing. Raoul Rubien, BSc
82bc52cbcc hotfix: avoids legend-viewer horizontal overexpansion on linux (#9171)
hotfix: avoids legend-viewer horizontal overexpansion on linux (enhancement 9fe905c)
2025-04-10 23:50:41 +08:00
Ian Bassi
7cc46619a5 STL Transformation WiKi (#9265)
STL Transformation Wiki

STL Transformation Wiki
Step import & Simplify
Images
2025-04-10 23:19:06 +08:00
Arcodude
a987f03aeb Update Calibration.md (#9277)
New important message due to flow ratio test changes. Afaik wasn't doced somewhere. I made the mistake if thinking the yolo tests followed the same formula as pass 1/2.
2025-04-10 23:17:55 +08:00
sharanchius
3612d8e4eb Finished Lithuanian translation - OrcaSlicer_LT.po (#9000)
# Description

Finished Lithuanian translation
Still some work with *.js (C:\Program
Files\OrcaSlicer\resources\web\***) files:


![image](https://github.com/user-attachments/assets/b6c47fe8-fef0-4249-93e3-bd553678dfa6)
****

Not found where can add Lithuanian language into preferences menu:

![image](https://github.com/user-attachments/assets/ea02a8e5-6464-4c59-b127-caffa9ca7d12)


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


![image](https://github.com/user-attachments/assets/de541508-7abe-40c3-9bfc-e10dd4f725f7)

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

## Tests

Used internal Poedit tests and alredy loaded this language for my
working program interface.
<!--
> Please describe the tests that you have conducted to verify the
changes made in this PR.
-->
2025-04-10 14:02:38 +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
mitt3n
267d81e9cc Set MAX_FLUSH_VALUE to maximum possible value
"Insanely high value that still plays nicely when converting between int and float (because it's internally stored in m_matrix as floats). 2147483520 (which is ~2 cubic meters) is the max value that can be saved properly in this case."
2025-04-09 08:03:40 -05:00
mitt3n
e97d9f5f17 Set MAX_FLUSH_VALUE to maximum possible value
"Insanely high value that still plays nicely when converting between int and float (because it's internally stored in m_matrix as floats). 2147483520 (which is ~2 cubic meters) is the max value that can be saved properly in this case."
2025-04-09 08:01:32 -05:00
mitt3n
7a50acb607 Set MAX_FLUSH_VALUE to maximum possible value
"Insanely high value that still plays nicely when converting between int and float (because it's internally stored in m_matrix as floats). 2147483520 (which is ~2 cubic meters) is the max value that can be saved properly in this case."
2025-04-09 07:52:18 -05:00
mitt3n
dd4a3ec042 Removing MAX_FLUSH_VALUE
Purge all the filament!
2025-04-08 23:03:50 -05:00
mitt3n
5e42120df5 Increase MAX_FLUSH_VALUE from 999 to 9999 2025-04-08 12:03:37 -05: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
SoftFever
85d46d2979 Fix shortcut collision on macOS (#9136)
Fix #8152
2025-04-05 21:44:48 +08:00
SoftFever
c577fdd792 Ensure the flow calib pattern to be printed in desired order (#9145)
Fix issue in https://github.com/SoftFever/OrcaSlicer/pull/8993


![image](https://github.com/user-attachments/assets/60a64088-8af8-45d6-9724-aa225f19a10f)
2025-04-05 21:43:31 +08:00
SoftFever
a519ea34a5 Port STEP import dialog from BambuStudio (#9102)
![image](https://github.com/user-attachments/assets/db27ee5d-c158-4729-a648-a33f1222a479)


Thanks BambuLab!

Fix #8820
2025-04-05 21:20:51 +08:00
Noisyfox
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
Noisyfox
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
SoftFever
b1de545ff9 Merge branch 'main' into dev/step-import-dialog 2025-04-05 17:47:59 +08:00
sharanchius
f20a4d705a Added Lithuanian translation to text.js (#9001)
Update text.js

Added Lithuanian translation
2025-04-05 15:09:43 +08:00
Alexandre Folle de Menezes
503475f063 Fix the translation of "in" (inches) in fr, de (#9020)
Fix the translation of inches in de, fr
2025-04-05 15:08:56 +08:00
Noisyfox
4aafa7a90d Merge branch 'main' into VFA-Calibs 2025-04-05 14:50:12 +08:00
Thomas
831608e6d6 Fix French translations (#9175)
* Several fixes

* Fix translation of "Prime tower"

* Fix Prime Volume translation
2025-04-05 14:47:50 +08:00
Juan Jesús García de Soria
c4d47abc52 Fix -j to export CMAKE_BUILD_PARALLEL_LEVEL. (#9195)
The existing support to use a specified number of cores for compilation was setting the variable
CMAKE_BUILD_PARALLEL_LEVEL but not exporting it, so CMake was not being affected, while the -1
option did work (as it was exporting the value).
2025-04-05 14:46:55 +08:00
Ioannis Giannakas
7f913f1cc2 Fix speed up during overhang slowdown when curled perimeters is enabled. (#9215) 2025-04-05 14:46:02 +08:00
Alexandre Folle de Menezes
66a71d4db0 Fix the temperature unit name to "degree Celsius" (#9224)
The correct temperature unit name is "degree Celsius"
2025-04-05 14:13:33 +08:00
Alexandre Folle de Menezes
14502673da Use the correct Unicode codepoint for ellipsis in pt-BR (#9230) 2025-04-05 14:11:13 +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
Shantanu Nair
4b0977d306 Fix bridge & perimeter paths to use set flow ratios in Volumetric Speed Capping (#9210)
Fix bridge, perimeter speed caps, flows
2025-04-04 15:00:56 +08:00
Ian Bassi
40928a5d22 Switch to improve readability 2025-04-03 15:56:07 -03:00
Ian Bassi
a66bc06b2d Klipper compatible
Klipper freq & damp test

Klipper guide separation from the Marlin guide

Co-Authored-By: Shane Delmore <shane@delmore.io>
2025-04-03 14:40:26 -03:00
Ian Bassi
4376f8ba3c Lowering Jerk 2025-04-03 14:40:26 -03:00
Ian Bassi
69b645d5c8 Jerk Fix + No slow down 2025-04-03 14:40:25 -03:00
Ian Bassi
ac56fffffd Jerk maxed + Documentation 2025-04-03 14:40:25 -03:00
Ian Bassi
9890ab333c Disable PA
PA = 0
To improve the test and Klipper compatibility
Fix
2025-04-03 14:40:25 -03:00
Ian Bassi
428cba9a25 Juntion Deviation + Documentation
Junction Deviation Calibration Test
Base documentation
 - VFA
 - Input Shaping
 - Junction Deviation

Co-Authored-By: Rodrigo <162915171+rf47@users.noreply.github.com>
2025-04-03 14:40:25 -03:00
Ian Bassi
3662b5139c FastTower and Granular Parameters
Co-Authored-By: Rodrigo <162915171+rf47@users.noreply.github.com>
2025-04-03 13:59:07 -03:00
Ian Bassi
1857849cba Input Shaping Damping
Damping
Fix spanish comments
2025-04-03 13:59:07 -03:00
Ian Bassi
19dae83e40 Input Shaping Frequency
Input Shaping calibration based in https://marlinfw.org/docs/gcode/M593.html
2025-04-03 13:59:07 -03:00
5idereal
bf9cce4800 Update zh_TW translation (#9101) 2025-04-03 21:59:55 +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
KrisMorr
8698f75144 update POLISH translations (#9089)
* update POLISH translations

* Update OrcaSlicer_pl.po

* Merge branch 'SoftFever:main' into update_pl

* fix_OrcaSlicer_pl.po
2025-04-03 21:54:51 +08:00
Kappa971
c2bbc5b450 Update Italian translation (#9079)
* Update Italian translation

* Fix Italian translation

* Merge branch 'main' into kappa971/orca-trad-ita

* Merge branch 'main' into kappa971/orca-trad-ita

* Merge branch 'main' into kappa971/orca-trad-ita

* Merge branch 'main' into kappa971/orca-trad-ita

* Fix Italian translation

* Merge branch 'main' into kappa971/orca-trad-ita

* Merge branch 'main' into kappa971/orca-trad-ita

* Merge branch 'main' into kappa971/orca-trad-ita

* Merge branch 'main' into kappa971/orca-trad-ita

* Merge branch 'main' into kappa971/orca-trad-ita

* Fix Italian translation
2025-04-03 21:51:25 +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
Liv Flowers
d91ef31bac Add filament load time for Creality Hi (#9177) 2025-04-02 17:35:05 +08:00
John Oleksowicz
d4e5a61efd Fix PCTG calibration temperatures (#9111)
It looks like start and end values are swapped. Start needs to be greater than end. If you try to hit "Ok" for the default values, it results in this error:

```
Please input valid values:
Start temp: <= 350
End temp: >= 170
Start temp > End temp + 5)
```
2025-04-02 10:11:22 +08:00
Ian Bassi
60dac5f1f4 Disable FirmwareRetraction in RetractionTest (#9113)
Fix issue 8332

Automatically disable firmware retraction when running retraction calibration.
2025-04-02 10:10:09 +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
Jonathan Rascher
b5a7a917bf Mark SV06 ACE PLA compatible with 0.2 nozzle (#9051)
* Mark SV06 ACE PLA compatible with 0.2 nozzle
2025-04-01 22:45:06 +08:00
SoftFever
3a114a5d7f Avoid creating bridges on very tiny surface cracks (#9053)
Fix #8563

Before:
![image](https://github.com/user-attachments/assets/eba13eae-42f1-4249-865f-536a2a2af370)

After:
![image](https://github.com/user-attachments/assets/62f990a5-c6db-4f1e-ad31-93a250956ac1)
2025-04-01 22:44:19 +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
Tobias Rumiz
70aa20b9ee Fix typos and spacing (#9168)
Fixed minor typos and spacing issues in OrcaSlicer_en.po
2025-04-01 09:02:33 +08:00
Noisyfox
d31546b2ae Fix brim ear size preview when dragging the slide 2025-03-31 23:37:49 +08:00
SoftFever
c11b28d910 Fix broken profile OTA (#9166)
Fixed a crash bug of OTA feature
Fixed a bug that OTA update didn't work for OrcaFilamentLibrary
Add a help script to pack OTA package

# 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-03-31 23:31:57 +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
SoftFever
df19e91845 fix a bug for OTA updating feature.
Add a help script to pack OTA package
2025-03-31 23:17:02 +08:00
SoftFever
f6dc9c1ab4 bump bbl.json version 2025-03-31 14:36:37 +08:00
SoftFever
ef978b848c update SBS filament 2025-03-31 14:32:49 +08:00
SoftFever
8c4a65e3e1 update OrcaFilamentLibrary 2025-03-31 13:48:58 +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
yw4z
9fe905c47d gCode Legend & Viewer Improvements (#8198)
* commit

* update buttons and icons

* Update GCodeViewer.cpp

* Update GCodeViewer.cpp

* Update GCodeViewer.cpp

* replace invisible item icon

* reduce code changes & add svg icons for hidden / visible

* update

* Update GCodeViewer.cpp

* Update GCodeViewer.cpp

* Update GCodeViewer.cpp

* fix window width when scrollbar visible

* Update GCodeViewer.cpp

* Update GCodeViewer.cpp

* add corner rounding to all plate stats

* Update GCodeViewer.cpp

* update

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-03-30 20:07:49 +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
Ocraftyone
d869a61ac1 Update devcontainer (#8516)
* Update devcontainer

* Merge branch 'main' into update-devcontainer

* Revert to using Dockerfile

* Merge branch 'main' into update-devcontainer
2025-03-30 15:43:55 +08:00
SoftFever
61efef9e88 Only consider part above plate when checking for object outside (#8456)
Fix #8218

Before:
![image](https://github.com/user-attachments/assets/3fa8bcb0-b0df-4503-b2f7-0ecba99fafab)


After:
![image](https://github.com/user-attachments/assets/f7280b50-42be-4ef1-a53e-12408511a627)
![image](https://github.com/user-attachments/assets/65ffebb7-6d49-4d8a-9dda-4676e4b0953b)


Note: there is still an issue that you still cannot slice if object below plate overlaps exclusion area. It won't be easy to fix and also will be computational costy, so I won't try to solve this in this PR yet.
![image](https://github.com/user-attachments/assets/76cb2f65-6233-47e7-85fe-fd92dd1d2507)
2025-03-30 15:40:44 +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
cochcoder
98be94a729 Fix flatpak not using dark theme (#8964)
* Create set-dark-theme-variant.py

* Update entrypoint

* Update io.github.softfever.OrcaSlicer.yml

* Create uses-dark-theme.py

* Update MPFR to 4.2.2

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-03-30 09:47:18 +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
Alexandre Folle de Menezes
41c14281e5 More pt-BR translation fixes (#9086) 2025-03-29 23:03:44 +08:00
magicmaker3
0001d62dc8 Parameter optimization of Magicmaker series printer (#8956)
* Update MM BoneKing 0.4 nozzle.json

* Update MM hj SK 0.4 nozzle.json

* Update MM hqs SF 0.4 nozzle.json

* Update MM hqs hj 0.4 nozzle.json

* Update MM slb 0.4 nozzle.json

* Update MM slb 0.4 nozzle.json

* Update MM slb 0.4 nozzle.json

* Update MM slb 0.4 nozzle.json

* Update MM slb 0.4 nozzle.json

* Update MM slb 0.4 nozzle.json

* Update MM hqs hj 0.4 nozzle.json

* Update MM hqs SF 0.4 nozzle.json

* Update MM hj SK 0.4 nozzle.json

* Update MM BoneKing 0.4 nozzle.json

* Update MM BoneKing 0.4 nozzle.json

* Update MM slb 0.4 nozzle.json

* Update MM slb 0.4 nozzle.json

* Update MM slb 0.4 nozzle.json

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-03-29 22:35:09 +08:00
SoftFever
5dac629712 Improve flow rate calibration: use ipArchimedeanChords pattern for flow rate calibration (#8993)
* Use ipArchimedeanChords pattern for flow rate calibration

* Merge branch 'main' into feature/different_pattern_flowrate

* improve order

* Merge branch 'main' into feature/different_pattern_flowrate
2025-03-29 20:27:04 +08:00
Seth LaForge
782adafc39 Build script improvements. (#7914)
* Build script improvements.

Add NDEBUG for non-debug MacOS builds. I don't understand why, but on my system Release and RelWithDebugInfo builds were not defining NDEBUG, resulting in failing asserts and other sanity checks.

Add -jN flag to BuildLinux.sh. On my 4-core 8GB RAM system, passing -j4 allows building without a swap storm.

Improve README.md description of building on macOS.

* Merge branch 'main' into bug/macos-ndebug

* Merge branch 'main' into bug/macos-ndebug

* Merge branch 'SoftFever:main' into bug/macos-ndebug

* Improve CMake syntax. Mention Mac path to app.

* Merge branch 'main' into bug/macos-ndebug
2025-03-29 20:21:44 +08:00
Noisyfox
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
cochcoder
45221a2bea Trigger build workflow when flatpak changes are made (#9105)
Trigger build all for changes under the flatpak folder
2025-03-29 16:18:34 +08:00
Noisyfox
41c3a059a7 Use Orca color 2025-03-28 23:21:02 +08:00
lane.wei
cf0c5624a1 FIX: gui: fix the crash issue when close guide frame at the beginning
jira: STUDIO-9941
Change-Id: I47e189e838ae606d294d0c0b4ccffc6f833a27c3
(cherry picked from commit 093a7c25cb7507d0d6af228c2efa3410e1184c27)
2025-03-28 23:05:41 +08:00
zorro.zhang
5e79e9196f ENH: SaveProfileData to AppConfig in MainThread
JIRA: none
Change-Id: I22ae3dac5e2bed42a2edfb848d627cd5092ef171
(cherry picked from commit c2042d7e20ab03001e4b38f366d0f129f2ee0918)
(cherry picked from commit d027e098acf37330076273799d2ff873a07044b5)
2025-03-28 23:02:16 +08:00
zorro.zhang
d753292823 ENH: Update UserGuide Load UI
JIRA: none
Change-Id: Ifc8cdd59a61dfece6c497ed50fcad9663d380be3
(cherry picked from commit 37918c4463fe6bdced742d5d81d756fa811510b7)
(cherry picked from commit cea5bc967c3c2e8ed538903823ffb3cd70d62584)
2025-03-28 22:56:18 +08:00
zorro.zhang
df6516e3e3 NEW: UserGuide Add Loading Tip
JIRA: none
Change-Id: I43d79d740b9180a16d02c54c0c9d6e11c23b1ce7
(cherry picked from commit 03d8d58fad95199236ee7a5f931d3f395ee8dc1d)
2025-03-28 22:48:04 +08:00
zorro.zhang
f1cba23976 ENH: Ignore Not Exist Profile Json
JIRA: none
Change-Id: Ied94cdadf0097b819328284cbc773ffe3c47d32b
(cherry picked from commit a081818b0c03170e749ae1461c57e24dae75bc94)
2025-03-28 22:47:23 +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
Noisyfox
ef8649910f Fix build failure caused by OCCT and boost::regex 2025-03-28 09:13:49 +08:00
SoftFever
17d08aec41 deprecate AppImage 2025-03-27 22:55:16 +08:00
SoftFever
658669d103 Universal mac build (#9074)
build universal Mac app
2025-03-27 22:53:37 +08:00
Mack
b65d6172cc Fix:Step mesh didn't initially count faces
jira: STUDIO-10273
Change-Id: Ic7e672edae03f5ce00e564eaf82dd1c474b84558
(cherry picked from commit 7e4932eec4a12e02f0f40b5e783d38ae1b66a30a)
2025-03-27 22:35:38 +08:00
MackBambu
72d8c82927 Fix:fix step mesh dark mode on linux
jira: STUDIO-10665
Change-Id: I9e9e837441b5627406cdadcbfdaa4c16abc2d762
(cherry picked from commit e02f44d8dde01de0715935e609a5634fc1faee4e)
2025-03-27 22:35:20 +08:00
yongfang.bian
08eeed9c72 Fix:step mesh using boost thread
github: #5304
Change-Id: I4afc5978b00eed20c46a1bf4100c9a0f0328daf8
(cherry picked from commit 151f40ad4dbf871576937f9674ac532c32df27d0)
2025-03-27 22:35:00 +08:00
mack-test
affa9068f0 Fix:on Mac,step mesh shows a count of 0 initially
jira: STUDIO-9595
Change-Id: I9908d3eff394ada12dd9ab0a2c10ca8a78d4f1f6
(cherry picked from commit 8bafed6e0a0ac7237077e7e0a964706e35e5ed12)
2025-03-27 22:34:34 +08:00
Mack
d14571edfe ENH:Optimize the STEP mesh UI
jira: nojira
Change-Id: Ie8d4f1eace04b2c51d4975c67b9a4deb7d88a56f
(cherry picked from commit b9aa0397600ab0f5040ac719277c7b16b1371435)
2025-03-27 22:34:00 +08:00
Mack
588f42e2e2 NEW:step mesh add 'Split compound and compsolid'
Optimize getting STEP node names.
Fix load_same_type_files()

GITHUB: #5214
Change-Id: I7d1035c122f21e3b08305509489bce415634ae80
(cherry picked from commit 76a401bfca1897994795cb37ffa9cbcbdaca8b6c)
(cherry picked from commit a0669137ec7e698320d0bc50ee986cb3f0e85164)
2025-03-27 22:25:29 +08:00
Mack
1e75686221 FIX:If the angle and linear deflections get
incorrect values, reset them to the default values

jira: nojira
Change-Id: Ia2c64a2a0ebe30641192fdb716234f34c356a6c6
(cherry picked from commit f9d9d40c4fd72ddf4c6aaa9b3d45851bf1fe7ffc)
2025-03-27 22:21:27 +08:00
Mack
6590ccf168 ENH:translate step mesh text
jira: nojira
Change-Id: Ic8c9e010551cc9acab9e863e60321a6b64f83778
(cherry picked from commit 228a19e6049bae320560c5eac05580bee354860e)
2025-03-27 22:20:42 +08:00
Mack
d27630cec7 ENH:update step mesh ui
jira: nojira
Change-Id: I4cea486dee7fafa6495d63e8557ff790cc1640dc
(cherry picked from commit b2b157f1a49a53d119a382a686a6e343899e98b9)
2025-03-27 22:20:04 +08:00
Mack
0d9534bcf1 FIX:m_last_linear and m_last_angle add init value
jira: studio-8739
Change-Id: Ib1052856e7f9b4e427a58fb89f828dc0e6593247
(cherry picked from commit 8e2b233730ece85c04149aa4d1328519b3b79100)
2025-03-27 22:19:54 +08:00
Mack
9b439ff5a2 FIX:STEP mesh crashes in specific language
1.fix dark model

2.fix reload file

3.fix macos ui

jira: STUDIO-8722
Change-Id: I17c723cbf88b97b187c72fbc6f65fc2da591465f
(cherry picked from commit 6c48a8e40b3a28859d5883b13106683cbe61c73d)
2025-03-27 22:17:49 +08:00
Mack
0bc2444079 ENH:Add 'Don't show again' to the step mesh
jira: STUDIO-8606
Change-Id: I2382b9052e2c994a458ad36ca61eb94c517927c6
(cherry picked from commit 0cce6619ce12aa8540f6dfca6d9ee79ffba65c19)
2025-03-27 22:17:07 +08:00
Arthur
65e5b193e1 ENH: translation
jira: STUDIO-8530
Change-Id: I43aeda64251165eaa2fc7f26b6dbaf548bc62057
(cherry picked from commit 9c799cc98641e546e736acbf6c944cc3c230ba58)
2025-03-27 22:07:59 +08:00
Mack
207d08476c ENH: update step mesh ui
jira:nojira

Change-Id: I7ba88d1ad80fa1e8152393c523bc301187e543d1
(cherry picked from commit 8dfd3bbb0c2b32ba95d942a662c4223b9001c40a)
2025-03-27 22:05:12 +08:00
Mack
8c4794de38 ENH:step mesh optimize interface
jira: STUDIO-8281
Change-Id: Ic1e3e958816d6a213f68009ecc0b9430ba4b5482
(cherry picked from commit 072ba8339b1acd46c6d1a5a91b671f98f4045b37)
2025-03-27 22:02:42 +08:00
zhou.xu
288a367e4d ENH:translate texts
jira: none
Change-Id: If48a4a25c379f589f80af2715f825c5e1b13dfac
(cherry picked from commit 3bc4bf93bd98372e3bfd932ed096b57cd645b4bd)
2025-03-27 22:01:42 +08:00
Mack
6d7260a6e9 FIX:Parameter value has not changed, no recalculation
jira: STUDIO-8283
Change-Id: I3564ff0993de1c3b8e039fc0115b4ccd81b2a5a2
(cherry picked from commit fecd3c3297c8dc85775622d65e292492523cc150)
2025-03-27 21:58:12 +08:00
Mack
f91b520bb8 ENH: step mesh operation adjustment
1.Put commctrl.h into pch precompilation(OCCT conflicts)

2.Replace input wxWidgets to support loss focus verification(STUDIO-8101)

3.Optimize slider interaction and trigger mesh when push up slider(STUDIO-8099)

4.Optimize step loading method, separate import of step and mesh

5.Fix dialog cancel button logic;

6.mesh tasks into sub-threads to prevent blocking the UI;

JIRA: STUDIO-8101 STUDIO-8099
Change-Id: I50bbb43953a5128f358c6880032d20693531333b
(cherry picked from commit ed7ab6b505a2becf8f38edb3c43b96e51eac3317)
2025-03-27 21:56:09 +08:00
Mack
e1477e642c FIX:Replace non-UTF8 characters in STEP model names with IDs on import
jira: STUDIO-8055
Change-Id: I9255a7a871ebc9920ec683d1a2a80cd53ada0f10
(cherry picked from commit 89be3166e286346254a08c8efc188e0cea83f2a4)
2025-03-27 21:50:32 +08:00
Mack
61ebddf9b8 NEW:add step mesh parameters
jira: STUDIO-7415
Change-Id: I5e09a1eb1ad31063ad56d08d5738907a804dc112
(cherry picked from commit ccbe9630076b754ab440e98977c4164afff96250)
(cherry picked from commit 84e7063c54a99e8a1440e74f831c6d1f6828f3f8)
2025-03-27 21:27:25 +08:00
Vovodroid
00811ee5bb Fix endless loop in ReplaceString (#9077) 2025-03-26 11:33:52 +08:00
Russell Cloran
108eeaed0a Make printer model search more flexible (#9050)
The printer model search can be hard to use, depending on how profiles
are named. This makes it a little easier by matching on both the vendor
and model name, and tokenizing the query and matching all of the tokens,
instead of trying to find the whole query substring in the model name.
2025-03-25 08:59:32 +08:00
SoftFever
41450b3a64 avoid using https://www.mpfr.org/mpfr-current link (#9034)
* avoid using https://www.mpfr.org/mpfr-current link
2025-03-23 13:25:50 +08:00
Asim Siddiqui
2efee60a22 Added TCP Queue Delay + Fixed Flashforge Serial comms (#8905)
* Added TCP Queue Delay + Updated Flashforge Serial comms

- Added TCP Queue Delay parameter to delay TCP messages in queue
- Updated Flashforge Serial comms - Upload/Print to older Flashforge devices (AD3/AD4 etc) now working alongside FF Klipper devices

* Set buffer to 4096 & add 3 sec delay for file save command

* include thread in TCPConsole
2025-03-22 23:38:29 +08:00
Benjamin Stürmer
a16b8e4963 Add PETG-GF filament type (#8960)
* Add PETG-GF filament type
2025-03-22 22:59:47 +08:00
Alexandre Folle de Menezes
37653324fa Finish pt-BR translation (#8962)
* Finish pt-BR translation
2025-03-22 22:58:12 +08:00
Andy
c6f4ad0efa Russian translation update (#8994)
* Russian translation update

Translation update, correction of errors, add missing string.
2025-03-22 22:57:42 +08:00
VOLUMIC
420d0c2f74 Updates VOLUMIC profils 2025-03-22 15:23:27 +01:00
Noisyfox
ce453ccd58 Fix flatpak build (#9017)
follow up of c3542ce014
2025-03-22 22:13:33 +08:00
VOLUMIC
30db093c73 Merge branch 'SoftFever:main' into main 2025-03-22 13:26:19 +01:00
lodriguez
c3542ce014 Update to mpfr-4.2.2.tar.bz2 (#9007)
Needed an update, the old link is 404.
2025-03-22 16:42:34 +08:00
SoftFever
4c56a3b3f5 bump version to 2.3.1-dev 2025-03-22 12:05:10 +08:00
SoftFever
19c4a4dc3f Automatically update nightly-builds tag 2025-03-21 23:19:10 +08:00
SoftFever
671d3d8f70 fix docker build 2025-03-20 23:30:27 +08:00
Noisyfox
70931e5321 Fix crash when support bottom interface layer is set to same as top (#8955)
* Fix crash when support bottom interface layer option is set to `same as top` (SoftFever/OrcaSlicer#8604)
2025-03-18 23:26:46 +08:00
SoftFever
b02e8bb7f3 Backup user folder to folder instead of zip file (#8953) 2025-03-18 19:53:47 +08:00
Thomas
83f8b6b625 Set Crosshatch as default infill pattern instead of grid (#8952) 2025-03-18 19:53:10 +08:00
Noisyfox
6825cf6d52 Output x64 registers to windows crash report too (#8951)
* Output x64 registers to windows crash report too
2025-03-18 19:42:42 +08:00
cochcoder
c432d2c537 Fixes/Improvements for Creality profiles (#8850)
* Update Creality K2 Plus 0.8 nozzle.json

* Update Creality K2 Plus 0.6 nozzle.json

* Update Creality K2 Plus 0.4 nozzle.json

* Update Creality K2 Plus 0.2 nozzle.json

* Increase PEI bed temp to 100C from 60C for ASA

* Merge branch 'main' into creality-patch
2025-03-18 19:41:16 +08:00
Alexandre Folle de Menezes
61b86b976e Adding more pt-BR translations (#8947)
* Adding more pt-BR translations
2025-03-18 19:40:12 +08:00
Alex Griffith
9bf6a44608 Add support for Creality Ender-5 Max (#8870)
* add creality ender-5 max

* add filament profiles for ender-5 max

* update creality manifest

* fix references

* put creality.json at 4 space indent

* remove invalid parameters

* fix thumb format

* Merge branch 'main' into feature/ender-5-max
2025-03-18 19:39:20 +08:00
SoftFever
7c1122d06f backup user folder for each version (#8939)
* backup user folder for each version
2025-03-18 00:37:47 +08:00
wrathernaut
4eaef65a79 Add Lulzbot Taz 4, 5, Pro Dual, Pro S (#8844)
* Update Lulzbot.json to include Taz 4, 5, Pro Dual, and Pro S

* Rename Lulzbot Taz 4, 5_cover.png to Lulzbot Taz 4 or 5_cover.png

* Add build plate model for Taz 4 or Taz 5

* Add compatible printers

* Add compatible printers

* Update Lulzbot 2.85mm PLA.json

* Add Taz 4, 5, Pro Dual, Pro S

* Add files for Taz 4, 5, Pro Dual, Pro S

* simplified build plate model
2025-03-17 08:46:55 +08:00
Bernhard Koppensteiner
44b6a6a6b6 bugfix and updates in profiles for MK3.5 (#8778)
* bugfix for TPU filament overrides

* higher voluemetric flow

* bugfix for to high speed at internal solid infill

* Update Prusa.json

* updated firmware check and nozzle settings

* bugfix speed and standard for 0,15mm profiles of the 0.4mm nozzle

* variables not defined in orcaslicer
2025-03-16 23:42:24 +08:00
SoftFever
d8bb1786e5 bump version to 2.3.0 2025-03-16 23:07:49 +08:00
SoftFever
2e4576b201 update locale and fix some translation caused by string changes 2025-03-16 23:05:15 +08:00
SoftFever
4ebbadb2a6 update profile version 2025-03-16 22:59:07 +08:00
Noisyfox
4dc6530391 Fix wrong first layer temperature when ooze prevention and print-by-obj are enabled (#8927)
* Don't apply idle temperature to current nozzle (SoftFever/OrcaSlicer#8924)

* Merge branch 'main' into bugfox/ooze-prevention-current-nozzle
2025-03-16 22:32:00 +08:00
SoftFever
e6467d4872 Use .gcode.3mf as ext for gcode 3mf files (#8928) 2025-03-16 22:17:38 +08:00
Noisyfox
69154652ba Allow generating brims for objects inside other object's hole (#8914)
* Allow generating brims for objects inside other object's hole

* Make sure inner brim stays inside holes

(cherry picked from commit 4afbc5bf340835727344bae77572595a4aa2c7ba)

* Merge branch 'main' into bugfox/nested-brim
2025-03-16 20:07:41 +08:00
davidjuanesb
9e2054278f Update Catalan language for OrcaSlicer V2.3.0 Release Candidate (#8913)
* Update Catalan language for OrcaSlicer V2.3.0 Release Candidate

Update Catalan language for OrcaSlicer V2.3.0 Release Candidate
2025-03-16 18:22:04 +08:00
Noisyfox
61464de50b Fix crash when resetting filament presets (#8911)
* Fix crash when resetting filament presets (SoftFever/OrcaSlicer#8863)

* Fix crash when resetting filament presets when dependencies are changed (SoftFever/OrcaSlicer#8849)

* Merge branch 'main' into bugfox/mm-preset-reset-crash
2025-03-16 18:21:20 +08:00
Jesse Litton
c73513ee0d Fix query of gcode's slicer version. (#8925)
* Fix query of gcode's slicer version.
2025-03-16 14:24:28 +08:00
Co Print 3D Printing Technologies
818025635a Added TPU, ABS, and PETG Profiles for Co Print ChromaSet-2 (#8888)
* Add files via upload

* Update Co Print.json

* Update Co Print.json

* Add files via upload

* Update CoPrint Generic ABS.json

* Update CoPrint Generic PETG.json
2025-03-16 14:16:18 +08:00
Shuwn Hsu
7a788c29fd Traditional Chinese Localization Update in 2.3.0-rc (#8883)
* update OrcaSlicer_zh_TW.po
2025-03-16 14:07:41 +08:00
TheLegendTubaGuy
8d09a502f0 Change Elegoo Centauri Start GCode to Wait for bed temp (#8882)
* Change Elegoo Centauri Start GCode to Wait for bed temp

This changes the M140 command to M190 so that the machine waits for the bed to get up to temp.
2025-03-16 14:06:19 +08:00
wrathernaut
e36d9f9dbf Fix typo (#8872)
* Fix typo 

Typo in remark.
2025-03-16 13:58:54 +08:00
Alexandre Folle de Menezes
d1fbf8b7bf Adding more pt-BR translations (#8871)
* More pt-BR translations
2025-03-16 13:57:41 +08:00
GlauTech
6a3e56b103 Update TURKISH translations (2.3.0-rc) (#8851)
* Update TURKISH translations (2.3.0-rc)
2025-03-16 13:46:09 +08:00
cochcoder
afdf33e402 Show Creality CR-6 Optimal processes (#8848)
* Change Opitmal to Optimal

* Fix typos in CR-6 0.2 profile

* Include optimal CR-6 profiles

* Remove extra space
2025-03-16 13:45:37 +08:00
cochcoder
558cd53b4a Add pause gcode command to Sovol SV08 & SV07 (#8840)
* Update Sovol SV08 0.8 nozzle.json

* Update Sovol SV08 0.6 nozzle.json

* Update Sovol SV08 0.4 nozzle.json

* Update Sovol SV08 0.2 nozzle.json

* Update Sovol SV07 0.4 nozzle.json

* Fix check error
2025-03-16 13:36:58 +08:00
Alexandre Folle de Menezes
1aff64d28c Improve the pt-BR translation of "plate" (#8828)
* Improve the pt-BR translation of "plate"
2025-03-16 13:16:58 +08:00
Thomas
b8b60a3eb1 Fix Creality Hi extruder_clearance_height_to_lid (#8806)
* Fix extruder_clearance_height_to_lid
2025-03-16 13:15:44 +08:00
Heiko Liebscher
bd9dc7764f fix de after update locale (#8803)
* fix de after update locale
2025-03-16 13:14:53 +08:00
cochcoder
79a5a9b5f8 Flatpak arm64 support (#8033)
* Add qemu for arm builds on flatpak

* Increase timeout-minutes

Mainly meant to retrigger GitHub actions (free GitHub actions runners have a max runtime of 6 hours)

* Change arm64 flatpak to build barebones, rather than through emulation

This new addition is highlighted in GitHub's new blog post: 
https://github.blog/changelog/2025-01-16-linux-arm64-hosted-runners-now-available-for-free-in-public-repositories-public-preview/

* Rename from arm64 to aarch64

* Potental fix for gst-plugins-good compilation

* Initial appimage arm64 builds

* Add inputs.arch variable

* Temporarily completely isolate arm64 and x86 dependencies

* Fix mesa download link and remove temp comments

* Disable libunwind in gst-plugins-good

* Revert changes in build_check_cache.yml

* Disable nls & static options in gst-plugins-good

* Rebase on main

* Re-add flatpak arm build

* Update gst-plugins-good to 1.24.10

This should be the version that received complete arm64 support

* Trying a solution

* Revert "Update gst-plugins-good to 1.24.10"

This reverts commit b416dcd0ae.

* Remove previous build-options

* Try installing the proper arch version of Meson

When building on a local arm64 device it runs properly.

* Remove sudo commands

* Use dnf rather than apt-get

* Try installing meson before the flatpak builder

* Change flatpak runner

This uses a more experimental version of the flatpak runner provided by Flathub

* Temporarily enable artifact upload

* Resolve merge conflicts

* Add arch variable into flatpak name

* Revert to using Gnome 46, rather than Gnome 47

* Add curl dependency

* Revert "Add curl dependency"

This reverts commit 888a0c4a75.

* Clean up

* Define ubuntu version

Seems to be needed due to the arm version still being in public beta
2025-03-10 22:36:50 +08:00
SoftFever
be0effc068 update Sovol, remove generic filaments 2025-03-10 21:50:36 +08:00
Apoorv Parle
9227ebbff8 Add SV06 high-speed settings which were incomplete earlier (#8648)
* Add SV06 high-speed settings which were incomplete earlier

Signed-off-by: Apoorv Parle <19315187+apparle@users.noreply.github.com>

* Remove SV06 PLA filament and use Generic filaments. Also enable other types of filaments.

Signed-off-by: Apoorv Parle <19315187+apparle@users.noreply.github.com>

* Merge branch 'main' into sv06_high_speed
2025-03-10 21:39:05 +08:00
Thomas
07148536db Fix French translation (for RC) and add new ones (#8789)
* Fix French translation and add new ones.

* One more fix
2025-03-10 21:36:16 +08:00
Noisyfox
70d7768868 Fix crash when slicing batch PA pattern test (#8786)
* Fix crash when slicing batch PA pattern test (SoftFever/OrcaSlicer#8777)
2025-03-10 21:35:44 +08:00
Kappa971
ff9178b830 Update Italian translation (#8785)
* Update Italian translation

* Merge branch 'main' into kappa971/orca-ita

* Fix Italian translation
2025-03-10 21:34:35 +08:00
KrisMorr
9ead771405 update POLISH translations ( 2.3.0-rc) (#8783)
* update_PL

* Merge branch 'main' into update_locale_pl
2025-03-10 21:33:38 +08:00
Alexandre Folle de Menezes
144cdcdc6d Restore translations for string with removed space at the end (#8780) 2025-03-10 11:07:30 +08:00
SoftFever
312ddaa8fb Limit visibility of custom filament profiles based on OrcaFilamentLibrary to currently selected printer only (#8779)
Set compatible_printers when creating custom filament profiles so that this custom profile won't be visible automatically for all printers.
2025-03-09 21:51:19 +08:00
SoftFever
c150bbf61c bump version to 2.3.0-rc 2025-03-09 17:33:16 +08:00
bo0tzz
2a0de19e4e stale bot: exempt "enhancement" label (#8416)
* stale bot: exempt "enhancement" label

Feature requests don't go stale
2025-03-09 16:28:51 +08:00
SoftFever
c17b52ad66 bump profile version to "02.03.00.02" 2025-03-09 15:25:44 +08:00
SoftFever
5c29ec73ee update elegoo filament 2025-03-09 15:25:11 +08:00
SoftFever
e4f8489b4a update locale 2025-03-09 14:33:16 +08:00
Alexandre Folle de Menezes
1ba7f18b90 Mark strings missing from translation (#8757) 2025-03-09 14:14:27 +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
yw4z
1558edf827 Profile folder optimizations (BLOCKS, ELEGOO, ERYONE, FLSUN, GEETECH, GINGER ADDITIVE, LULZBOT, SOVOL) (#8764)
* update

* Merge branch 'main' into profiles-optimisation-2

* Fix gridlines not visible on Sovol
2025-03-09 13:29:27 +08:00
Noisyfox
0f3fbd4390 Fix gcode viewer not working properly when opening .gcode files (#8761)
* Fix crash during project openning due to preset sync

* Don't reset gcode preview when open as gcode viewer
2025-03-08 21:26:59 +08:00
Ioannis Giannakas
ec213e98fb Introduce option to control one wall draft shield (#8562)
* Introduce option to control number of skirt walls after first layer

* Merge branch 'main' into Introduce-option-to-control-number-of-walls-on-skirt-after-first-layer

* Merge branch 'main' into Introduce-option-to-control-number-of-walls-on-skirt-after-first-layer

* One wall draft shield options refactor

* Merge remote-tracking branch 'upstream/main' into Introduce-option-to-control-number-of-walls-on-skirt-after-first-layer

* Merge branch 'main' into Introduce-option-to-control-number-of-walls-on-skirt-after-first-layer

* Renamed to single loop draft shield

* Merge branch 'main' into Introduce-option-to-control-number-of-walls-on-skirt-after-first-layer

* Merge branch 'main' into Introduce-option-to-control-number-of-walls-on-skirt-after-first-layer
2025-03-08 16:48:07 +08:00
cochcoder
4900c546f9 Fix Dremel 3D40 (#8751)
* Fix Dremel 3D40 extrusion

* Fix incorrect layer height
2025-03-08 14:03:10 +08:00
anjis
38fb975d2a Launching and directly loading GCode will result in missing information. (#8745)
Fix the issue where launching the software and directly loading a GCode file fails to display inner and outer wall information.
2025-03-08 14:01:16 +08:00
Alexandre Folle de Menezes
74d9a88480 Remove unnecessary trailing spaces (#8752) 2025-03-08 13:41:31 +08:00
Noisyfox
464b89c3a7 Fix issue that sharp tails are supported regardless of support blockers (#8743)
when using normal support (SoftFever/OrcaSlicer#8737)

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-03-08 11:03:40 +08:00
SoftFever
69bab18a8e update OrcaFilamentLibrary (#8753)
* update OrcaFilamentLibrary
disable activate_air_filtration and remove filament_start_gcode

* Revert "update OrcaFilamentLibrary
disable activate_air_filtration and remove filament_start_gcode"

This reverts commit 1b8eebcff3.
2025-03-08 01:56:20 +08:00
Noisyfox
1d71ed5ade Fix preset transfer crash (#8744)
Fix preset transfer crash (SoftFever/OrcaSlicer#7991)
2025-03-08 00:49:25 +08:00
SoftFever
bc698a88df Revert "Bug fix: Check for air filtration support on the printer level before emitting air filtration gcode command" (#8750)
Revert "Bug fix: Check for air filtration support on the printer level before…"

This reverts commit 22e410f82d.
2025-03-08 00:47:45 +08:00
Dima Buzdyk
ecc16bfabf pa calib: batch mode for pa pattern (#7199)
* pa calib: batch mode option
2025-03-07 19:26:54 +08:00
Shuwn Hsu
538db07127 Traditional Chinese Localization Update and Fix for PrintConfig.cpp in 2.3.0-beta2 (#8730)
* add monitor-filee

* Merge branch 'SoftFever:main' into main

* Traditional Chinese localization update for 2.3.0-beta2

* Update translation catalog

* Fix missing characters and repair changes errors.

* Merge branch 'SoftFever:main' into main

* Merge branch 'main' of github.com:shuwn/OrcaSlicer

* Patch translation

* Patch translation

* Patch translation

* Merge branch 'main' of github.com:shuwn/OrcaSlicer

* Merge branch 'SoftFever:main' into PR-Line

* rm monitor-file.yml form PR-Line

* Merge branch 'main' into PR-Line
2025-03-07 19:22:27 +08:00
Ruslan Kyba
2b8cdfe547 Update Ukranian translations (#8727)
* Update OrcaSlicer_uk.po
2025-03-07 19:19:19 +08:00
Vladimir Gamalyan
af2e1e1873 Update Russian translation (#8726)
* Update OrcaSlicer_ru.po

Fix a typo
2025-03-07 19:18:43 +08:00
Christian Muehlhaeuser
7c650c16f8 Update Artillery Genius & Sidewinder profiles (#8673)
* Update Artillery Genius & Sidewinder profiles

- Fixed bed-size of Genius (Pro) profile.
- Fixed default retraction values for the Artillery Genius (Pro) 0.4 profile,
  which were set too high for this direct-drive machine.
- Slightly increased default retraction value for Sidewinder X1 & X2, to match
  the Genius profiles. Tested values on all machines.
- Matching minimum layer height for Genius & Sidewinder profiles.
- Fixed line endings & indentation.
2025-03-07 19:18:00 +08:00
urself25
bc3347a538 Add Flashforge Adventurer 4 Printer Profile (#8662)
* Add Flashforge Adventurer 4 Printer Profile

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-03-07 19:15:14 +08:00
Heiko Liebscher
36a5a14507 update german translation (#8722)
* add new de translations

* Merge remote-tracking branch 'upstream/main' into add_more_de

* fix

* Merge remote-tracking branch 'upstream/main' into add_more_de
2025-03-06 20:39:48 +08:00
Ioannis Giannakas
22e410f82d Bug fix: Check for air filtration support on the printer level before emitting air filtration gcode command (#8681)
* Check for air filtration support on the printer level before emitting air filtration gcode command

* Merge branch 'main' into Check-air-filtration-support-at-the-printer-level-too
2025-03-06 20:32:30 +08:00
Ioannis Giannakas
9a0ce083a4 Bug fix: Removed expand factor from IOI as it was incorrectly causing perimeter failing to observe IOI reordering. (#8682)
* Removed expand factor from IOI as it was incorrectly causing perimeter failing to observe IOI reordering.

* Merge branch 'main' into Bug-Fix-IOI-re-ordering-failing-to-reorder-in-certain-edge-cases
2025-03-06 20:30:57 +08:00
Noisyfox
b5f443c64c Fix issue that painted brim is not generated if brim width is set to 0 (#8700)
* Fix issue that painted brim is not generated if brim width is set to 0 (SoftFever/OrcaSlicer#8687)
2025-03-06 20:28:54 +08:00
Noisyfox
fbfbb0932f Switch to print-by-layer mode automatically for PA pattern test (#8688)
* Switch to print-by-layer mode automatically for PA pattern test (SoftFever/OrcaSlicer#8665)
2025-03-06 20:27:46 +08:00
Kappa971
fc2335e554 Update Italian translation (#8694)
* Update Italian translation

* Fix Italian translation

* Fix Italian translation

* Fix Italian translation

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-03-06 11:18:19 +08:00
Piotr Sokół
398a91d548 Update Polish translation (#8690)
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-03-06 11:16:48 +08:00
GlauTech
e5bd7379a8 Update TURKISH translations (#8671)
* Update TURKISH translations

* Update TURKISH translations

Update TURKISH translations

* Update TURKISH translations

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-03-06 11:15:33 +08:00
Lee Jong Mun
55beb67387 kor translation update (#8676)
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-03-06 11:12:59 +08:00
Alexandre Folle de Menezes
d92dfc097c Add leftover strings from "overwrite dialog" fix (#8712) 2025-03-06 11:11:30 +08:00
davidjuanesb
30cfc13a3d Catalan language updated to OrcaSlicer v2.3.0-beta2 (#8716)
Catalan language updated to OrcaSlicer v2.3.0-beta2
2025-03-06 11:10:54 +08:00
Alexandre Folle de Menezes
bd0859d35d Add markers to allow translation of strings with '%' (#8488) 2025-03-06 11:08:39 +08:00
Alexandre Folle de Menezes
2b109d552c Fix typo on format string (#8470) 2025-03-06 11:07:08 +08:00
Alexandre Folle de Menezes
2a5371ab62 Fix text on file/config overwrite dialog (#8471)
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-03-05 23:22:33 +08:00
Pouria Mousavizadeh Tehrani
a407feed24 fix: typo in CMakeLists.txt (#8707) 2025-03-05 21:29:54 +08:00
Thomas
3bf935e00d Fix typo "timeplapse" (#8652) 2025-03-05 16:32:28 +08:00
Ruslan Kyba
1584c883b0 chore: Improve Ukrianian translation (#8667)
* Update OrcaSlicer_uk.po

* Update OrcaSlicer_uk.po
2025-03-03 20:40:15 +08:00
Noisyfox
d9b4c9d18f Arachne: Make sure wall is generated only if wall number set to > 0 (#8666)
Arachne: Make sure wall is generated only if wall number set to > 0 (SoftFever/OrcaSlicer#8619)
2025-03-03 20:38:05 +08:00
SoftFever
5e5542d02f Update default filaments for printers (#8655)
* update M1

* update Voron

* update Positron

* update Biqu

* update Eryone

* update Folgetech

* update Geeetech

* update Kingroon

* update MagicMaker

* update Raise3D

* update Rolohaun

* update Tronxy

* update Kingroon and Tronxy

* update Voxelab

* update Wanhao

* more fix
2025-03-03 20:32:47 +08:00
Slawomir Ciunczyk
118266f721 Creality K2 Plus fixed build plate model (#8646)
The default build plate model for Creality K2 Plus is heavy (516kB) and has a lot of visible artefacts - like diagonal "stairs". I found this a bit annoying. So I redrew the file - to a simple flat stl - 16kb.
2025-03-03 20:29:51 +08:00
Andy
c81b743d31 Russian translation update (#8645)
The next update:
General improvement of translation, correction of errors.
2025-03-03 20:28:54 +08:00
Thomas
e11a121983 Add missing French translations (#8651)
Added French translations
2025-03-03 20:22:23 +08:00
yw4z
d9f4e6b8ba Sidebar margin & spacing fixes (#6238)
* fix alignments for tab and sidebar icons

* minimize code changes

* minimize code changes

* minimize code changes

* Align config label with group title

* minimize changes

* Update Plater.cpp

* Update spacing after titlebar text and comments

* Update Plater.cpp

* Update OG_CustomCtrl.cpp

* Use class to control values from one place

* fix error

* Update Plater.cpp

* update
2025-03-03 11:13:51 +08:00
Noisyfox
632eff6a3a Fix filament combox disappearing (#8649)
Make sure frozen filament combox is thawed
2025-03-02 23:20:16 +08:00
SoftFever
ddf8eca96e upload Flatpak artifact 2025-03-02 09:17:56 +08:00
SoftFever
93cb0426fd Enhancement "Only one wall on top surfaces": better support for interface_shells (#8627)
one wall on top enhancement: better support for interface_shells
2025-03-01 22:21:59 +08:00
SoftFever
0965b92895 update profile version 2025-03-01 17:49:00 +08:00
SoftFever
00825db508 update locale 2025-03-01 17:39:54 +08:00
yw4z
16cbaf6180 Scale bed icons & text depends on bed size (#8621)
* Update PartPlate.cpp

* Update PartPlate.cpp

* Merge branch 'main' into saclin-build-plate
2025-03-01 13:55:39 +08:00
Noisyfox
d89520c8ae Avoid message box if font load failure during startup (#8610)
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
2025-03-01 13:22:05 +08:00
Stephen Schwetz
00a44ee48c Enable checkbox in printer profiles to permit first layer scanning to be enabled/disabled via the slicer (#8614)
add missing checkbox for scan_first_layer
2025-03-01 13:20:55 +08:00
Alexandre Folle de Menezes
de788a46da More fixes to the pt-BR translation (#8602)
* Fix pt-BR translation of "raft" and "draft"

* Fix the pt-BR translations of "bridge"

* Fix the pt-BR translations of "skirt"

* Fix the pt-BR translations of "fuzzy skin"

* Fix the pt-BR translations of "pellets"

* Fix and uniformize the pt-BR translations of "bed" and "plate"
2025-03-01 13:03:59 +08:00
Ruslan Kyba
0aadfb479a More Ukrainian translations for v2.3.0 (#8600)
* Update OrcaSlicer_uk.po

* Update OrcaSlicer_uk.po

* Update OrcaSlicer_uk.po

* Update OrcaSlicer_uk.po

* Update OrcaSlicer_uk.po
2025-03-01 13:03:38 +08:00
Noisyfox
af61ee38f3 Cut: Fix crash caused by unexpected copy of the cut island (#8598)
Cut: Fix crash caused by unexpected copy of the cut island (#8579)

which frees the OpenGL VBOs and IBOs when loop ends and cause the crash
2025-03-01 13:02:47 +08:00
Aleksander Alekseev
2547a23135 Recommend Z hop type: Spiral for Ender-3 v3 SE (#8585)
* Correct Flying Bear S1 / Ghost 6 extruder clearance radius

* Recommend `Z hop type: Spiral` for Ender-3 v3 SE
2025-03-01 13:01:57 +08:00
Asim Siddiqui
18652068e3 Added AD5X & SUNLU filaments for Flashforge + fixes & updates (#8573)
- Added AD5X
- Added SUNLU filaments for AD5 and AD3 series
- Updated SUNLU filament & setting IDs for BBL
- Updated SUNLU parameters in OrcaLibrary
- Fixes & enhancements for Flashforge profiles

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-03-01 13:00:18 +08:00
cochcoder
268601a3da Allow compilation on distributions based on Ubuntu/Debian (#8625)
* Update BuildLinux.sh

* Update BuildLinux.sh

* Update BuildLinux.sh
2025-03-01 11:28:12 +08:00
SoftFever
ad30af74dc Remove VS Code setting files incorrectly added by one PR 2025-02-28 22:15:06 +08:00
Noisyfox
51916ff058 Avoid using auto as type of Eigen expressions. (#8577)
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.
2025-02-26 23:07:23 +08:00
SoftFever
41584cfae3 WIP: Port latest support code from BBS (#8212)
This includes the latest changes from BBS, including vertical support
painting.

Huge PR, lots of tests are needed.
2025-02-26 20:53:54 +08:00
Aleksander Alekseev
99b6033a1b Correct Flying Bear S1 / Ghost 6 extruder clearance radius (#8560) 2025-02-26 20:16:45 +08:00
VOLUMIC
e6f71774fd EXO/SH profils updates (#8566)
* Add new machines

* profils fixes

* Update VS30ULTRA (0.4 nozzle).json

* accelerations removing

* Fixes

* Acceleration fixes

* Update .gitignore

* EXO/SH profils updates

* Update .gitignore

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-02-26 20:15:40 +08:00
SoftFever
d649472412 Update .gitignore 2025-02-26 20:14:36 +08:00
klylabs
f9e644bb24 Cleanup the logic for Zink Override (#8571)
Simplify logic for AppRun
2025-02-26 20:11:30 +08:00
Alexandre Folle de Menezes
c275e84743 Fixing conflicts in the pt-BR translation (#8553)
* Fix the pt-BR translation of "extruder" e "multi-material",

* Fix pt-BR translation of "prime tower"

* Fix translation of "wall", "perimeter" and "shell"
2025-02-26 20:08:37 +08:00
krmz-krmz
26368f5d6c apply adaptive pa in object mode (#8546) 2025-02-26 20:08:02 +08:00
Ruslan Kyba
171a43bdaa chore: more Ukrainian translations for v2.3.0 (#8543)
* Update OrcaSlicer_uk.po
2025-02-26 20:06:08 +08:00
Schildkroet
b01c1a4553 Improve folder structure for eSUN Filament in BBL. Added LW-PLA. (#8539)
* Moved profiles to subfolder

* Updated PLA-LW profile

* Added PETG

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-02-26 20:00:14 +08:00
kbondar80
afab94f231 Increase upload timeout for Flashforge printers to 10 minutes (#8536)
Co-authored-by: kbondar80 <no@mail.com>
2025-02-26 19:56:38 +08:00
wrathernaut
71b40f9bd5 Add Lulzbot Taz 6 printer profile. (#8513)
* Add files via upload

Added Lulzbot Taz 6 profile, and supporting files images to add other printers in the future.

* Add bed model and image for Taz Pro

* Filament name clarifications and prep for GFL

* Changes to align with GFL

* GFL Integrated

* Update version # to reflect changes to use GFL

* format cleanup

* cleanup format

* cleanup format

* correct discrepancy on max acceleration label/value

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-02-26 19:54:13 +08:00
Vovodroid
f6ac67e601 Fix VS2022 17.13 build failure (#8481) 2025-02-26 18:08:29 +08:00
Noisyfox
6587f27086 Measure: Fix wrong diameter when selecting a circle feature (#8575)
Suppress Eigen lazy evaluation by not using `auto`.
VC++ compiler optimization does funny things with `intersection_pt` that breaks lazy evaluation.
2025-02-26 14:43:41 +08:00
VOLUMIC
74b6371994 EXO/SH profils updates 2025-02-25 18:25:47 +01:00
VOLUMIC
fa206896f4 Merge branch 'main' of https://github.com/VOLUMIC/OrcaSlicer 2025-02-25 18:24:57 +01:00
klylabs
fd8792f342 Add Zink Override (#8373)
* Add Zink Override

Add Zink Override

* Add Zink Override (#1)

Add Zink Override

* Fix escape literals

* Fix Escape Literals (#2)

* Add Zink Override

Add Zink Override

* Fix escape literals

* Add checks for wayland/render gpu and manual user overrides

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-02-25 21:39:53 +08:00
Noisyfox
dc40071045 Revert unnecessary text changes 2025-02-25 21:08:55 +08:00
SoftFever
fdeeb3ad4e Merge branch 'main' into dev/support-paint-vertical 2025-02-25 20:12:34 +08:00
davidjuanesb
906923cd24 Catalan language updated to OrcaSlicer v2.3.0-beta (#8511) 2025-02-23 23:48:18 +08:00
Psych0h3ad
f8b84310d6 Added small Japanese translation (#8527)
Update OrcaSlicer_ja.po

Just added small translation for Japanese
2025-02-23 23:25:05 +08:00
Lee Jong Mun
1d0af13aa3 kor translation update (#8530) 2025-02-23 23:24:47 +08:00
Alexandre Folle de Menezes
160a0e2aea Fix strings missing localization on PrintConfig (#8483)
Fix strings missing the localization marker
2025-02-23 23:24:21 +08:00
Thomas
14f77e41fb Add new K1 SE profiles (fixes #8455 (#8485) 2025-02-23 23:22:41 +08:00
Russell Cloran
f1ef4abca8 Turn on exclude object for Prusa MK4S (#8486) 2025-02-23 23:21:53 +08:00
Alexandre Folle de Menezes
db16cacc38 Adding missing pt-BR translations (#8482) 2025-02-23 23:21:19 +08:00
SoftFever
d022d7ba69 Fix AMS mapping bug 2 2025-02-23 19:34:37 +08:00
SoftFever
7bd6863525 bump nightlybuild version to 2.3.0-beta2 2025-02-23 18:43:36 +08:00
SoftFever
911baa84b2 Fix AMS mapping bug (#8531)
* Fixed an issue that filament ids are conflicted for BBL machines

* bump bbl.json version
2025-02-23 18:43:03 +08:00
Noisyfox
a9a6f45f08 Merge branch 'main' into dev/support-paint-vertical 2025-02-23 15:50:21 +08:00
SoftFever
99e4879f8b Disable silent_mode as we don't support it. Fixes #8507 2025-02-23 15:49:38 +08:00
SoftFever
70dfdb95a9 Fix a crash issue then exporting preset bundle (#8525)
fix crashes when finding base preset
2025-02-23 15:20:27 +08:00
Steve Dougherty
24522fdaf7 Mention orcaslicer.com as an official platform (#8502)
As added in the 2.3.0-beta release:

> Orca Slicer has it's own official website now! https://www.OrcaSlicer.com

https://github.com/SoftFever/OrcaSlicer/releases/tag/v2.3.0-beta
2025-02-23 13:40:19 +08:00
SoftFever
dc491166a8 Feature/revert recent flashforge changes(#8498)
* Revert "fix more Flashforge issues"

This reverts commit 6e473fd5fa.

* Revert "Fixed an issue that some Flashforge filament profiles don't' have compatible_printers defined which cause filament selection dialog didn't filter properly"

This reverts commit f8c0cdfb11.

* Revert "Merged Orca-Flashforge 1.3 branch (Added AD5X & G4P) + fixes & optimizations (#8461)"

This reverts commit b8e4ce75e0, reversing
changes made to be8bf54884.
2025-02-22 17:58:23 +08:00
SoftFever
d839c52114 duplication key error check 2025-02-22 17:39:17 +08:00
SoftFever
e12ca90f62 fix empty compatible_printers issues in vendor profiles 2025-02-22 15:53:58 +08:00
SoftFever
c5ba8be49f add extra profile checks 2025-02-22 15:53:58 +08:00
SoftFever
4c28dd5ba0 Add some AliZ filament profiles as example (#8496) 2025-02-22 15:09:33 +08:00
SoftFever
6e473fd5fa fix more Flashforge issues 2025-02-22 13:27:25 +08:00
SoftFever
f8c0cdfb11 Fixed an issue that some Flashforge filament profiles don't' have compatible_printers defined which cause filament selection dialog didn't filter properly
It also deletes some zombie profiles as they didn't have any custom setting values
2025-02-22 12:31:20 +08:00
SoftFever
2bba98d180 update fuzzy skin default parameters 2025-02-21 22:32:29 +08:00
SoftFever
d41dd784ef update Chinese translation 2025-02-21 22:32:01 +08:00
SoftFever
873a6f5c6e Revert "Avoid collisions when moving Z down" (#8478)
Revert "Avoid collisions when moving Z down (#7208)"

This reverts commit cf6d9c77ff.
2025-02-21 18:01:34 +08:00
Joseph Palazzolo
b82d13a5a9 Fix OCCT and OpenCV patching during build (#8465)
* Fix OCCT and OpenCV patching during build

The inclusion of the `--directory` flag here isn't necessary because of
how `PATCH_COMMAND` applies patches. In fact this causes issues when
trying to build from an archive, `--directory` seems to imply `--index`
and thus this patch only succeeds if you're inside an initialized git
repo. If you simply use the archive without a git repo the build fails
at the patch step.

* Alter patch command based on git repo status

`git apply` has different behavior when inside a git repo vs not. If
we're in a git repo we need to fully quality the path for these patches,
otherwise we can omit the directory flag.

---------

Co-authored-by: Joe Palazzolo <joe@joepalazzolo.net>
2025-02-21 12:50:17 +08:00
SoftFever
a49460d8d8 bump profile versions 2025-02-20 21:44:39 +08:00
SoftFever
bb9a980b4b update locale 2025-02-20 21:44:38 +08:00
Thomas
2e9cad67ed Added missing French translations (#8467)
* Added missing translations

* Removed useless c-boost formats
2025-02-20 20:21:19 +08:00
GlauTech
493431ba55 Update TURKISH translations (#8466)
* Update TURKISH translations

* Update TURKISH translations

Update TURKISH translations
2025-02-20 20:21:03 +08:00
Alexandre Folle de Menezes
b463e0cba9 Lots of fixes for the pt-BR translation (#8464)
* Misc fixes on the pt-BR translation

* Fix the pt-BR translation of "Wipe Tower"

* Fix the pt-br translation of "ooze"

* Fix pt-BR translations of "flip", "roll", "rotate"

* Fix translations of "preset", "profile", "template", "model"

* Fix the pt-br translation of "nozzle"

* Fix the pt-br translation of "overhang"

* Fix the pt-br translation of "threshold"

* Fix the pt-br translation of "scarf joint"
2025-02-20 20:20:46 +08:00
Heiko Liebscher
c83f9c6a87 add some fixes after update locale beta 2.3.0 (#8463)
add some fixes after update locale beta 2.3.0
2025-02-20 20:20:25 +08:00
SoftFever
b8e4ce75e0 Merged Orca-Flashforge 1.3 branch (Added AD5X & G4P) + fixes & optimizations (#8461)
Added AD5X & G4P
Consolidated/Revised AD3, AD5M & G2S profiles
Commenced filament Filament ID & Setting ID corrections
2025-02-20 20:19:19 +08:00
SoftFever
be8bf54884 Fix issues with supertack bed type (#8468)
- Fix crash when selected bed type is not supported by current version.
This could happen if you downgrade Orca to old version that does not
have that bed type.
- For example, if you ever run 2.3.0-beta and having current bed type
set to the last one from the drop down, then if you use 2.2 again the
app will crash during startup.
- This PR fix this by falling back to default bed type if current value
is out of range.
- This PR also fixes issue that current bed type is changed after
upgrading to 2.3 from previous version, due to adding the supertack in
the wrong place in the enum.
2025-02-20 19:59:39 +08:00
Noisyfox
831743997d Fix issue that current bed type is changed after upgrading from 2.2 2025-02-20 17:41:41 +08:00
Noisyfox
088c8f5a8b Fix crash when selected bed type is not supported by current version.
This could happen if you downgrade Orca to old version that does not have that bed type
2025-02-20 17:22:25 +08:00
RikshaDriver
5e7c8678fb Prettified json formatting
prettified/simplified json formatting using jj
2025-02-20 18:35:13 +11:00
RikshaDriver
1fede3fa34 Reorganized Filaments into Vendor specific folders 2025-02-20 12:00:34 +11:00
RikshaDriver
fcc3da5800 Merged Orca-Flashforge 1.3 branch + fixes & optimizations
Added AD5X & G4P
Consolidated/Revised AD3, AD5M & G2S profiles
Commenced filament Filament ID & Setting ID corrections
2025-02-20 11:49:06 +11:00
SoftFever
ae5d7ea996 bump version to 2.3.0-beta 2025-02-19 19:45:33 +08:00
SoftFever
992dbf825d update locale 2025-02-19 19:45:00 +08:00
SoftFever
03d884d91c translate new features to german (#8460)
translate new features to german
2025-02-19 19:40:12 +08:00
SoftFever
5e541f84e4 Don't disable solid infill pattern option unless no infill & top/bottom surfaces (#8375)
Fix #8370
2025-02-19 19:39:36 +08:00
SoftFever
0ec13678e4 Merge branch 'main' into bugfox/infill-pattern-options 2025-02-19 19:39:06 +08:00
SoftFever
7b167bbe7b Allow default acceleration/jerk for all parameters. (#6418)
Though code uses default jerk value if the parameter is set to zero,
some parameters wasn't allow to have zero. This PR allows zero value for
them.


![image](https://github.com/user-attachments/assets/42d3c6b9-68da-4bf3-9bee-47e0a4f942d5)
2025-02-19 19:32:57 +08:00
SoftFever
55a351d5f0 Fix fov so off-plate objects can be rendered properly (#8452)
Adopted from
bambulab/BambuStudio@ba19513380 and
bambulab/BambuStudio@d0e91b5164

Thanks BambuLab!

Old:

![image](https://github.com/user-attachments/assets/7582dbc5-d665-4dff-a988-3032a733f6af)

New:

![image](https://github.com/user-attachments/assets/839fb8d3-5ac0-490a-8499-6b22d07e946a)
2025-02-19 19:27:22 +08:00
SoftFever
a6e53707ef Merge branch 'main' into bugfox/fov 2025-02-19 19:15:41 +08:00
Heiko Liebscher
0ca5e944b7 translate new features to german 2025-02-19 11:58:00 +01:00
SoftFever
41ff66297b ENH: modify the start pos of wall for wipe tower[affects BBL machines only] (#8439)
and modify the overlap of wall and infill for wipe tower jira:none

cherry picked from commit
bambulab/BambuStudio@4db196b11f

Thanks BambuLab!

- Optimize the starting position of the printing wiper tower after
material change, the initial print on the wipe tower sometimes had
under-extrusion issues, and all layers of wipe tower have the same
starting position, increasing the risk of collision. This optimization
distributes the initial extrusion over four corners, reducing the
accumulation of defects.
- Reducing the rivet length between the wipe tower's outer wall and
infill to 0mm minimizes the risk of collision when switching between
printing infill and outer walls.


![image](https://github.com/user-attachments/assets/7cd4daf2-4df4-4bfc-b447-99099e73631b)
2025-02-19 18:09:25 +08:00
Noisyfox
5b1cfa4529 Handle sinking object properly 2025-02-19 18:02:39 +08:00
SoftFever
98b396c9ea Fix a M73 and layer number regression s (#8435)
# Description

Fixed two regressions:
1. Total layer number was missing for BBL printers
2. M73 remaining info was wrong when ARC fitting is enabled.

# 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-02-19 17:52:04 +08:00
Noisyfox
961254b81d Make print_volume_state reusable 2025-02-19 16:17:25 +08:00
Noisyfox
7494825038 Avoid unnecessary call of volume_bbox if bed shape is not rectangle 2025-02-19 15:50:15 +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
SoftFever
5d2e7e4dc4 Add missing pt-BR translations (#8446)
# Description
Adding missing translations.
2025-02-18 23:24:28 +08:00
SoftFever
df902d13f5 Port Paint Brim Gizmo from BBS (#8433)
This PR ported the Brim Ear gizmo from BambuStudio. Thanks BambuLab!

For compatibility reason, the existing auto-detected brim ears is kept.
To use this new brim ear gizmo, you will have to change the brim style
to "Painted".


![image](https://github.com/user-attachments/assets/5ff93f49-3fd2-46d4-9af4-240b7fb45991)


Fix #6774
2025-02-18 23:23:52 +08:00
SoftFever
2bc9c8d239 Merge branch 'main' into dev/brim-ear-gizmo 2025-02-18 23:09:30 +08:00
wujie
00a3e78f8a Add elegoo centauri carbon profile (#8405)
* Added Elegoolink connection

* Set Elegoo CC default bed to btPTE

* Friendly output of some error codes of PrintHost

* feat: Add elegoo centauri carbon profile

* fix: Fix the issue where the bed type in the printer configuration does not match the bed temperature settings when multiple bed types are not supported.

* feat: Modify the elegoo process parameters to disable slowdown_for_curled_perimeters.

* feat: Update comment to clarify plate visibility for multi bed support, BBL printer, and selected bed type.

* fix: Optimize ElegooLink upload; The code is clearer than before.

* feat: Format the ElegooPrintHostSendDialog code.

* fix: Remove the unnecessary instantiation attribute in the Elegoo process.

* fix: Flatpak compilation failed

---------

Co-authored-by: anjis <anjis.zhou@elegoo.com>
2025-02-18 23:08:34 +08:00
SoftFever
ab7ef4f55e Fixed an issue that raimaining time is wrong when arc fitting is enabled. 2025-02-18 20:13:42 +08:00
Shuwn Hsu
dd2f8af68b Update the Traditional Chinese for the new features. (#8434)
* Comprehensive Update in Traditional Chinese

* Update OrcaSlicer.pot & Update Traditional Chinese

* Update OrcaSlicer_zh_TW.po

* Fix Space

* Update the translation for the new features.

* Correction of full width symbols

* Correction of full width symbols
2025-02-17 22:52:51 +08:00
zhimin.zeng
328ea469cb ENH: modify the start pos of wall for wipe tower
and modify the overlap of wall and infill for wipe tower
jira:none

Change-Id: I0d1355c718e2bd1efea6d898f793f5869476ab12
(cherry picked from commit 4db196b11f052d6a7a7c7a8aafe0d2b34a7d2d80)
2025-02-17 21:44:57 +08:00
SoftFever
43353a6036 Fix a regression that total layer number is missign for BBL printers 2025-02-17 19:17:22 +08:00
Noisyfox
43af6d221b Update to Orca style 2025-02-17 17:12:54 +08:00
Mack
80a0489044 FIX:Brim Ears are ignored when cloning objects
the maximum diameter is changed to 20;
the diameter will not be reset;

jira:STUDIO-8497

GITHUB: #5048
Change-Id: I131305671ebc00dcf6b2972994879fe4ea768a36
(cherry picked from commit 3e9006e2d47c87da40e627034d0dc71c563e98ae)
2025-02-17 17:12:53 +08:00
Noisyfox
f9814370bb ENH:brim ears are saved in 3MF
Cherry-picked from bambulab/BambuStudio@a45a2eec54

Co-authored-by: Mack <yongfang.bian@bambulab.com>
2025-02-17 17:12:52 +08:00
Noisyfox
fa57842a0f Add brim ear raycasters 2025-02-17 16:15:50 +08:00
Alexandre Folle de Menezes
189960af17 Add some missing pt-BR translations (#8429)
Add missing pt-BR translations
2025-02-17 13:10:31 +08:00
Thomas
26e3ac68ce Add new translations (French) (#8430)
* Add new translations (French)

* Removed erroneous c-boost line
2025-02-17 13:10:07 +08:00
yw4z
d2c2c2ec9b Fix shaky close button on notification (#8431)
Update NotificationManager.cpp
2025-02-17 13:09:26 +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
Kaarel Pärtel
830c1ac928 Add minimum flow rates for spiral vase transitsions (#8333)
Add minimum flow ratios for spiral vase transitsions

Currently when starting the spiral vase the extrusion rate is ramped
from 0 to 100% on the first layer and from 100% to 0% on the last layer.
In some cases it can lead to underextrusion at the beginning and end of
the spiral.

This change adds minimum flow ratio options for the beginning and the end
of the vase. This means that instead of ramping from 0% to 100% it
instead ramps from for example 20% to 100%.

This issue has been reported in SuperSlicer
https://github.com/supermerill/SuperSlicer/issues/4195
2025-02-17 08:55:23 +08:00
Alexandre
44efbc7bae Add missing pt-BR translations 2025-02-16 14:49:36 -03:00
Heiko Liebscher
a4289139b0 fix some translations (#8364)
* fix some translations

* fix typos

* fix more

* fix after change locale
2025-02-16 22:24:14 +08:00
SoftFever
14d49b738f remove TimeProcessor::post_process 2025-02-16 18:44:54 +08:00
SoftFever
a4e37d428e Hide the dependencies tab for process. The UI is not ready yet. 2025-02-16 18:26:01 +08:00
SoftFever
b80e3636c6 Add icon to 2d lattice 2025-02-16 18:26:01 +08:00
SoftFever
ad5fcb704b Revert "Fix strange M73 behaviour, where M73 is still present, even if disabled" (#8423)
Revert "Fix strange M73 behaviour, where M73 is still present, even if disabl…"

This reverts commit 740f115790.
2025-02-16 16:23:30 +08:00
Schildkroet
740f115790 Fix strange M73 behaviour, where M73 is still present, even if disabled (#8388)
Fix strange M73 behaviour, where M73 is still present, even if disabled or reporting wrong progress
fix #8369
2025-02-16 15:44:37 +08:00
dependabot[bot]
674c8d03f7 Bump ubuntu from 22.04 to 24.04 (#7957)
Bumps ubuntu from 22.04 to 24.04.

---
updated-dependencies:
- dependency-name: ubuntu
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-16 15:19:04 +08:00
Alexandre Folle de Menezes
e607dbb5d2 Improve some pt-BR translations (#8417) 2025-02-16 11:40:45 +08:00
Asim Siddiqui
b2494220f6 Updated/fixed SUNLU filament parameters for BBL (#8395)
Updated/fixed SUNLU filament parameters for BBL & standardized indentation
2025-02-16 00:16:02 +08:00
SoftFever
85bbbee8bc Expose interface_shells option (#8411) 2025-02-15 23:26:52 +08:00
Noisyfox
ccbda78477 Fix Fan mover when absolute E is used (#8359)
Make sure the GCodeReader is initialized properly, so the relative e config is correct (SoftFever/OrcaSlicer#8221)
2025-02-15 13:08:01 +08:00
Noisyfox
a359c05b8d FIX:filter the characters of model names in the model mall (#8407)
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>
2025-02-15 12:31:41 +08:00
SoftFever
2e4a2a26e6 Update locale 2025-02-14 23:42:43 +08:00
SoftFever
12fb6db8ef Fixed a bug that flash matrix affects multi tool's wipe tower (#8408)
disable/ignore purge_in_prime_tower for multi tool machine
2025-02-14 23:38:51 +08:00
SoftFever
fcc5489911 Fixed an bug that filament_minimal_purge_on_wipe_tower option doesn't work for soluable filament (#8397) 2025-02-14 23:38:18 +08:00
Ioannis Giannakas
b4a7721cc0 Enhancement: Additional controls over bridges (#8263)
* Additional control over bridges

* Label updates

* Detect and handle layers over external bridges

* Label updates

* To-Do placeholders

* Filter out small external bridges

* Apply safety offset for internal bridge polygon intersections

* code comments

* Increase bridge offsets to 3 perimeters total (1.5 perimeter in each dimension)

* Filter out bridges based on perimeter counts to focus bridge on areas where bridge infill is actually generated in the end.

* Fixing bugs

* Convert tick boxes to drop down menu

* Additional geometry checks for second internal bridge to ensure no small polygons are left over.

* Minor code refactor for clarity

* Further refinements in polygon logic

* Polygon logic refinements pt3

* Further union operations to ensure clean geometry

* Fix compile error

* Clean up constructors

* Only create bridges on stInternalSolid areas, not sparse infill.

* Refactor internal second bridge logic to stand alone parallel for loop to avoid thread deadlocks

* Revert change to only consider stInternalSolid areas for second internal bridge layer.

This resulted in partly unsupported solid infill areas above as the remainder was too narrow to generate sparse infill

* Updated beta statements and tooltip changes

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-02-12 22:10:57 +08:00
Dimitris Zervas
3bbee6cf5f Add the orcaslicer:// protocol handler (#8304) 2025-02-12 09:58:43 +08:00
Thomas
b6da4727b1 Add Creality Generic PLA Wood for Creality Hi (#8368) 2025-02-12 09:57:25 +08:00
yw4z
b2e142c1bb Optimized images on profile folder (#8374)
update
2025-02-12 09:56:29 +08:00
hadess
589340c8ff unix: Fix "Open in Orca Slicer" button on Thingiverse (#8377)
Make the "Open in Orca Slicer" button on Thingiverse work by informing
the system that Orca Slicer is the application to handle URLs with the
orcaslicer scheme.

This fixes this error message visible in Firefox' console when clicking
the button on the website:
Prevented navigation to “orcaslicer://open?file=https%3A%2F%2Fwww.thingiverse.com%2Fdownload%3A14134689” due to an unknown protocol.

See https://github.com/bambulab/BambuStudio/commit/62006bba30f39
2025-02-12 09:54:37 +08:00
Eric Maglio
5145707801 Add "2D Lattice" fill pattern for lightweight aircraft structures (#8293)
* Add 2D lattice infill pattern

* Add state invalidation behavior for lattice infill angles

* Update SurfaceFillParams methods to account for lattice infill angles

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-02-12 08:39:29 +08:00
Noisyfox
2d92ea6320 Don't disable solid infill pattern option unless no infill & top/bottom surfaces (SoftFever/OrcaSlicer#8370) 2025-02-11 10:56:00 +08:00
Eldenroot
c21b044a9c Fix "Enable AMS" checkbox font inconsistency (#8363)
backported https://github.com/bambulab/BambuStudio/pull/5751
2025-02-10 09:13:58 +08:00
Ioannis Giannakas
229a826aa7 Enhancement: Internal Bridge angle override (#7908)
Internal Bridge angle override
2025-02-09 22:00:16 +08:00
Ioannis Giannakas
4e74aaf144 Enhancement: Enable separate internal bridge fan speed control (#7906)
* Separate internal bridge fan speed control

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

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

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

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

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

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

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

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

* Merge branch 'main' into Allow-separate-internal-bridge-fan-control
2025-02-09 21:53:57 +08:00
Ioannis Giannakas
2eed82ed81 Fix 10-25% overhang slowdown not working as expected (#8080)
* Fix 10-25% overhang slowdown not working as expected

* Merge branch 'main' into Fix-10-25%-overhang-slowdown-not-working-as-expected

* Merge remote-tracking branch 'upstream/main' into Fix-10-25%-overhang-slowdown-not-working-as-expected

* Merge branch 'main' into Fix-10-25%-overhang-slowdown-not-working-as-expected

* Merge branch 'main' into Fix-10-25%-overhang-slowdown-not-working-as-expected

* Merge branch 'main' into Fix-10-25%-overhang-slowdown-not-working-as-expected

* Merge branch 'main' into Fix-10-25%-overhang-slowdown-not-working-as-expected
2025-02-09 21:12:02 +08:00
SoftFever
107cd3edb0 fix a crash bug when generating support (#8357) 2025-02-09 19:59:30 +08:00
Noisyfox
32547c8c3b Update header file to match the impl 2025-02-09 19:01:51 +08:00
Sims
cc92abf8b5 Implement #8106: Add setting to prevent loading printer information/project settings from .3mf (#8268)
* Initial implementation

* Add remember option to open project/load geometry only popup

* PR Feedback
2025-02-09 09:51:36 +08:00
Noisyfox
d1161ea0e7 Update color palette for new filaments (#8178)
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

![Screenshot-20250125041332](https://github.com/user-attachments/assets/68274b67-311d-47dc-a3b2-b4ceccbdcf9b)
after

![Screenshot-20250125042325](https://github.com/user-attachments/assets/fd2e1061-1075-4586-b5c6-d51311312766)

old color set

![Screenshot-20250125044859](https://github.com/user-attachments/assets/4ded5fd0-b514-47de-b09c-9fb24195020f)

new color set

![Screenshot-20250125043210](https://github.com/user-attachments/assets/137fa019-1f81-48bc-a6a2-578d0bed22cb)

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"),
`
2025-02-08 23:15:35 +08:00
Noisyfox
b29edeb282 glcanvas: scale icons using icon size, not scale factor (#8301)
# Description

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.

# Screenshots/Recordings/Graphs

Test samples with different toolbar scaling/app window width (top one is
original, bottom one - updated)

![Screenshot from 2025-02-03
21-12-23](https://github.com/user-attachments/assets/9fdf810e-9479-4932-b6fd-1124f33fa335)

![Screenshot from 2025-02-03
21-12-40](https://github.com/user-attachments/assets/301306f2-eab2-4770-9a75-19131501342c)

![Screenshot from 2025-02-03
21-13-10](https://github.com/user-attachments/assets/6138958d-0aa9-4e35-af10-643668760f6a)

![Screenshot from 2025-02-03
21-13-26](https://github.com/user-attachments/assets/e1988f20-eac4-4696-98b9-8483a16dcdfd)


## Tests

Tested on Linux only.
2025-02-08 23:12:40 +08:00
GlauTech
f88ce30ccd Update TURKISH translations (#8300)
* Update TURKISH translations

* Merge branch 'main' into main

* Merge branch 'main' into main

* Merge branch 'main' into main
2025-02-08 12:55:51 +08:00
Heiko Liebscher
f3dabe0ae5 update de translation (#8314) 2025-02-08 12:55:11 +08:00
p3d-dev
2c2bebdc93 fix profile assignment of Flashforge.json (#8343) 2025-02-08 11:58:46 +08:00
Bastien Nocera
0187e1baf3 libslic3r: Fix missing BOOST_LOG_TRIVIAL declaration
FAILED: src/libslic3r/CMakeFiles/libslic3r.dir/Support/TreeSupport.cpp.o
/usr/bin/c++ -DBOOST_ATOMIC_NO_LIB -DBOOST_CHRONO_NO_LIB -DBOOST_DATE_TIME_NO_LIB -DBOOST_FILESYSTEM_NO_LIB -DBOOST_IOSTREAMS_NO_LIB -DBOOST_LOCALE_NO_LIB -DBOOST_LOG_NO_LIB -DBOOST_REGEX_NO_LIB -DBOOST_SYSTEM_NO_LIB -DBOOST_THREAD_NO_LIB -DHAVE_FREETYPE -DHAVE_OPENGL_EXT -DHAVE_XLIB -DLIBNEST2D_GEOMETRIES_libslic3r -DLIBNEST2D_OPTIMIZER_nlopt -DLIBNEST2D_STATIC -DLIBNEST2D_THREADING_tbb -DOCC_CONVERT_SIGNALS -DOPENVDB_OPENEXR_STATICLIB -DOPENVDB_STATICLIB -DSLIC3R_GUI -DTBB_USE_CAPTURED_EXCEPTION=0 -DUNICODE -DUSE_TBB -DWXINTL_NO_GETTEXT_MACRO -D_UNICODE -DwxNO_UNSAFE_WXSTRING_CONV -DwxUSE_UNICODE -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/run/build/BambuStudio/src -I/run/build/BambuStudio/build/src/platform -I/run/build/BambuStudio/src/libslic3r -I/run/build/BambuStudio/build/src/libslic3r -I/run/build/BambuStudio/deps/build/destdir/usr/local/include/opencascade -I/run/build/BambuStudio/src/libnest2d/include -I/run/build/BambuStudio/src/miniz -I/run/build/BambuStudio/src/glu-libtess/include -I/run/build/BambuStudio/src/clipper2/Clipper2Lib/include -isystem /run/build/BambuStudio/src/eigen -isystem /run/build/BambuStudio/src/libigl -isystem /run/build/BambuStudio/deps/build/destdir/usr/local/include -isystem /run/build/BambuStudio/deps/build/destdir/usr/local/include/OpenEXR -std=gnu++20 -fext-numeric-literals -Wall -Wno-reorder -O3 -DNDEBUG -std=gnu++17 -fPIC -fsigned-char -Werror=return-type -Wno-ignored-attributes -Wno-unknown-pragmas -DOPENVDB_ABI_VERSION_NUMBER=8 -MD -MT src/libslic3r/CMakeFiles/libslic3r.dir/Support/TreeSupport.cpp.o -MF src/libslic3r/CMakeFiles/libslic3r.dir/Support/TreeSupport.cpp.o.d -o src/libslic3r/CMakeFiles/libslic3r.dir/Support/TreeSupport.cpp.o -c /run/build/BambuStudio/src/libslic3r/Support/TreeSupport.cpp
/run/build/BambuStudio/src/libslic3r/Support/TreeSupport.cpp:832:39: error: ‘info’ was not declared in this scope; did you mean ‘tbb::v1::info’?
  832 |                     BOOST_LOG_TRIVIAL(info) << "detect_overhangs takes more than 30 secs, skip cantilever and sharp tails detection: layer_nr=" << layer_nr << " duration=" << duration;
      |                                       ^~~~
      |                                       tbb::v1::info
In file included from /run/build/BambuStudio/deps/build/destdir/usr/local/include/oneapi/tbb/task_arena.h:31,
                 from /run/build/BambuStudio/deps/build/destdir/usr/local/include/oneapi/tbb/partitioner.h:48,
                 from /run/build/BambuStudio/deps/build/destdir/usr/local/include/oneapi/tbb/parallel_for.h:27,
                 from /run/build/BambuStudio/deps/build/destdir/usr/local/include/tbb/parallel_for.h:17,
                 from /run/build/BambuStudio/src/libslic3r/Support/TreeSupport.cpp:25:
/run/build/BambuStudio/deps/build/destdir/usr/local/include/oneapi/tbb/info.h:125:11: note: ‘tbb::v1::info’ declared here
  125 | namespace info {
      |           ^~~~
/run/build/BambuStudio/src/libslic3r/Support/TreeSupport.cpp:832:21: error: ‘BOOST_LOG_TRIVIAL’ was not declared in this scope
  832 |                     BOOST_LOG_TRIVIAL(info) << "detect_overhangs takes more than 30 secs, skip cantilever and sharp tails detection: layer_nr=" << layer_nr << " duration=" << duration;
      |                     ^~~~~~~~~~~~~~~~~
/run/build/BambuStudio/src/libslic3r/Support/TreeSupport.cpp:884:43: error: ‘debug’ was not declared in this scope
  884 |                         BOOST_LOG_TRIVIAL(debug) << "found a cantilever cluster. layer_nr=" << layer_nr << dist_max;
      |                                           ^~~~~

(cherry picked from commit c680128141416f1297a25824deb7443fc441892b)
2025-02-08 11:34:55 +08:00
Bastien Nocera
279b3ded14 libslic3r: Fix BOOST_LOG_TRIVIAL declaration
/run/build/BambuStudio/src/libslic3r/Support/SupportParameters.hpp: In constructor ‘Slic3r::SupportParameters::SupportParameters(const Slic3r::PrintObject&)’:
/run/build/BambuStudio/src/libslic3r/Support/SupportParameters.hpp:172:39: error: ‘warning’ was not declared in this scope
  172 |                     BOOST_LOG_TRIVIAL(warning) << "tree support default to organic support";
      |                                       ^~~~~~~
/run/build/BambuStudio/src/libslic3r/Support/SupportParameters.hpp:172:21: error: ‘BOOST_LOG_TRIVIAL’ was not declared in this scope
  172 |                     BOOST_LOG_TRIVIAL(warning) << "tree support default to organic support";
      |                     ^~~~~~~~~~~~~~~~~
/run/build/BambuStudio/src/libslic3r/Support/SupportParameters.hpp:175:39: error: ‘warning’ was not declared in this scope
  175 |                     BOOST_LOG_TRIVIAL(warning) << "tree support default to hybrid tree due to adaptive layer height";
      |                                       ^~~~~~~
/run/build/BambuStudio/src/libslic3r/Support/SupportParameters.hpp:175:21: error: ‘BOOST_LOG_TRIVIAL’ was not declared in this scope
  175 |                     BOOST_LOG_TRIVIAL(warning) << "tree support default to hybrid tree due to adaptive layer height";
      |                     ^~~~~~~~~~~~~~~~~

(cherry picked from commit a63070bd4cbe012315b9532f5c199f6d2664333a)
2025-02-08 11:34:54 +08:00
Noisyfox
a3ac1fc4f4 Fix error "Coordinate outside allowed range" 2025-02-08 11:34:54 +08:00
Noisyfox
98135299e8 Fix compile error 2025-02-08 11:34:53 +08:00
Arthur
dc3938e0ea ENH: reduce organic tree support log level
jira: none
Change-Id: I17b876d88974e632c592bd36f3fea700a51f86be
(cherry picked from commit 97de4e87cfbff84c04c247bdf525ac83119e177f)
2025-02-08 11:34:53 +08:00
jiaxi.chen
393e2f4027 FIX: fix the bug of missing layers in SlimTree and HybridTree
jira: STUDIO-8756
Change-Id: I12c09ec2e3c1a2ee138472ff7c63675d0ee26ba0
(cherry picked from commit 36d80e7b24a4bdcce2d3957e0fd3ea61c8dc6bdc)
(cherry picked from commit 0d1bdab97d7e400fc4dd91dde0b3e8d00d2ee7f7)
2025-02-08 11:34:52 +08:00
Arthur
d41c0a812b FIX: top z distance disappears in some cases
jira: STUDIO-8883
github: #5334
Change-Id: Ie70f6dada19cc17cd74fa6aa116d1ca4fb4a07d7
(cherry picked from commit 849d41576c64527c2b9c0bfffdec37f29ed9b68b)
2025-02-08 11:34:51 +08:00
Arthur
ed9ba7dcb7 FIX: sharp tail miss detection
jira: STUDIO-7973
Change-Id: I76b0dc56fe6cf44bacad4c35874695efee29c2f9
(cherry picked from commit 3fe1728f40e2a09340b061681895e4691bd1a8f7)
(cherry picked from commit 7665aeb69ce53d7f9e1c50857b49985cd6912534)
2025-02-08 11:34:51 +08:00
Arthur
ee1bd704ef FIX: merge support interfaces into a continuous large one
jira: STUDIO-8611
github: #5132
Change-Id: I12ee4a9f88a78304a98f354bfaa92e2a05f19ec2
(cherry picked from commit b7c8c7e8feb199b01f52e1fbfbba4469657db3b7)
(cherry picked from commit c331b61cabd521cacd42d010c2936f8280a2b9f3)
2025-02-08 11:34:50 +08:00
Arthur
d7cf4b2274 FIX: inconsistent infill in hybrid tree support
jira: STUDIO-9058
Change-Id: I62f6225d33708e8a161600930c6e0dff229f5995
(cherry picked from commit f774fda6e67e25bedc89e8ef8b2dfb77436f95f2)
2025-02-08 11:34:50 +08:00
Arthur
35157c9421 FIX: apply xy_expansion after support blocker
jira: STUDIO-9040
Change-Id: I30e09a67047f651a547082bff737524aba940f19
(cherry picked from commit 5e476a1385286246a312b76bdaa836f18715b523)
2025-02-08 11:34:49 +08:00
jiaxi.chen
9e1b856e99 FIX: protect when support_style doesnt match type
jira: STUDIO-8800
Change-Id: I7d42f95ba43b4b3a47a83ae59afaaf9bc94baa5d
(cherry picked from commit d4bc450af6d2381bd5eb891c1395ebd50ca1c322)
2025-02-08 11:34:48 +08:00
Arthur
9f4d9fb463 FIX: normal support missing base interface layers
jira: STUDIO-8642
Change-Id: Ib104fdb195f8766d452138eb85d8b86cbac96981
(cherry picked from commit 4655ec449b9bc86747d4054bbfb20c60f784c8c9)
2025-02-08 11:34:48 +08:00
Arthur
d54d81e89d FIX: 0 top z distance of hybrid tree support not working
1. fix the issue that setting top z distance=0 not working
2. remove too small extrusions of tree support

jira: STUDIO-8578
Change-Id: I8c3face9d6a756698a6fab876fdb1acc0686647c
(cherry picked from commit 4d219266a1f520445bec6ac5a0274dcfec4050e8)
2025-02-08 11:34:47 +08:00
Arthur
c1df01fd8e FIX: hybrid tree support may crash due to empty extrusion entities
jira: none
Change-Id: I521e27e7a4d12189efc77768d10d264d0d6db111
(cherry picked from commit 64ab78298bc0c9a32ea5bcec5beddfc103074f53)
2025-02-08 11:34:46 +08:00
Arthur
1c686b3c04 ENH: improve tree supports
1. speedup organic tree support by using parallel for intersection of bed area
jira: STUDIO-8451
2. add extra wall for hybrid tree support's tall branches
3. disable circle fitting for tree support. This feature produces inconsistent
   circles for tree supports.
4. expose the option tree_support_branch_diameter_angle. Tree supports'
   strength can be improved by increasing this value.

Change-Id: If3688ca895df98a77f6ca538077daf8fe94e53f1
(cherry picked from commit 7697eb3dc8f87204d28e6be9adaf55dfcdadbc74)
2025-02-08 11:34:46 +08:00
Arthur
07c7e2f910 FIX: solve tree support crash
jira: STUDIO-8509
Change-Id: I8658538d7919136efbbf0d48cbf3d366e0621ded
(cherry picked from commit d5b14e5c094fd68426f1be4d78734f7b86888eb2)
2025-02-08 11:34:45 +08:00
Arthur
7a26dde977 ENH: improve shar tail detection of tree support
The expansion was too large and may miss sharp tails near the object.

jira: STUDIO-8400
Change-Id: Iee5bd15cc7c23f16d30365d5f1c9fbcc0a632c19
(cherry picked from commit 05174d07063d8296241de1d35f5b4196bc33a353)
2025-02-08 11:34:45 +08:00
Arthur
36970dd9a2 FIX: hybrid tree support crash in some case
jira: STUDIO-8313
Change-Id: Ide03d8f666232f457305f3dd298bf8151ba9c57b
(cherry picked from commit 35bf682f7938ea6ddfa9525249c6a4cbb1f16071)
2025-02-08 11:34:44 +08:00
Arthur
e6880a468b FIX: tree support crashes when it's too short
jira: STUDIO-8277
Change-Id: I327d9fb7beb6cc2822131ca4954066217b1a5c9b
(cherry picked from commit 00e5e84bbdfb680da74c4861a56ec8f5a867f58d)
2025-02-08 11:34:43 +08:00
Arthur
724d8a12b6 FIX: fix hybrid tree support may go outside plate
1. fix hybrid tree support may go outside plate
github: #4769
2. fix false alarm of empty layer warning
jira: STUDIO-8178

Change-Id: I7bcc3959b06184901cbec946e8840c7a94bc1cab
(cherry picked from commit 647bd4213c363eff6258992f5f607c1f03cbc482)
2025-02-08 11:34:43 +08:00
Arthur
3e7e4df7ce ENH: precise tree support wall count
Change the behavior of "tree support wall count" option, let it control precisely.
0 means auto.

jira: STUDIO-8068
github: 4780
Change-Id: I6d1a64cff9b121f5c0a3e910c5ddbfe6db198687
(cherry picked from commit a557bbe758cd352fa9bb48323995ed2c90737577)
2025-02-08 11:34:42 +08:00
Arthur
e78d50f733 ENH: improve hybrid tree support
1. keep all polygon nodes in drop_nodes
2. prevent generating too small polygon nodes

jira: STUDIO-8107
Change-Id: I1311158ab15097eb10727a8d6884b0bcd8136ef1
(cherry picked from commit 038b92a536a56568b1c6f385ce19ff36331cd46a)
2025-02-08 11:34:41 +08:00
Arthur
59b756acb8 FIX: chain_and_reorder_extrusion_entities crashes
this function crashes if there are empty elements in entities.

jira: STUDIO-7975
Change-Id: I0dbeb6b1151dd089be7617ebc3271691f64ac61e
(cherry picked from commit df30728617a89891c68e36cce771fb6380355b82)
(cherry picked from commit e42aabebb16253b0172fb80a58f58953aec8dda7)
2025-02-08 11:34:41 +08:00
Arthur
f76683e90e FIX: support wall count doesn't work
jira: STUDIO-7975
Change-Id: Ic580d298568fc6eab8b1a2c017fa182869b432bf
(cherry picked from commit 82bcb099e139065cc00c133f507e955d9955b2f4)
(cherry picked from commit 04756bf447f690a071eace1500b150f0b7b4ce02)
2025-02-08 11:34:40 +08:00
Arthur
ae6fadda4d ENH: add vertical support enforcer
Previously painting support enforces on vertical faces doesn't work, as projecting the facets downwards will give empty polygons.
Now we use a different mechanism to enable vertical paint-on enforces, by directly adding contact nodes.
Note: this feature only works with tree support as only tree support has contact nodes.

jira: none
Change-Id: Id171b1665566d142a6427285baccb40c0aa00949
(cherry picked from commit 9c882f61eb37350a4486df58de48f0ae489f2d15)
(cherry picked from commit 68625a6e601e2feef8e56693da1f58372b27b560)
2025-02-08 11:34:40 +08:00
Arthur
5054ee8508 ENH: improve hybrid tree support
1. do not add interface for small overhangs so supports are easier to
   remove
2. calculate avoidance more accurately using real layer height
  jira: STUDIO-6285
3. hybrid nodes won't collide with lower layers
4. calculate max move more accurately
5. do not increase radius if next layer has collision
  jira: STUDIO-2296, STUDIO-7883
6. rewrite plan_layer_heights to prevent support layers overlap.
  Now the tree support layers are completely independent to object layers.
6. increase collision areas for interface. The top layers may be too
close to interface with adaptive layer heights and very small overhang angle

Change-Id: I052c3f66e68afb7663e2d70c846dd09ed7086071
(cherry picked from commit aca511caebfdeec270d4fc0ec6bbbadde77cddc9)
(cherry picked from commit f2fc996652b3b204b4e554f57afed8519feb0397)
2025-02-08 11:34:39 +08:00
Arthur
532dcae37a ENH: add rectilinear interface pattern for organic support
1. add rectilinear interface pattern for organic support
    jira: STUDIO-7181
2. add tree support optgroup

Change-Id: I94882bc34a61c6adc06b8ecbc9f2323f9b039aac
(cherry picked from commit a8142ab3f37e0bd140a31a7e635b8475f471d7e3)
(cherry picked from commit 69cf816b9431bc21ca0187c7db1148e2d2e898ab)
2025-02-08 11:34:38 +08:00
Arthur
f00bdfeca8 FIX: enforcers may not work with contour expansion
To fix this we have to expand the enforcer areas just like organic support.

jira: STUDIO-7538
Change-Id: I8e4e3fd18b0e77db9beb57347d8da895fc83f4b0
(cherry picked from commit 319b3e2247e01e545bb9e4cebea7950d875cd89a)
2025-02-08 11:34:38 +08:00
Arthur
9ee61bb3dd FIX: top z distance inaccurate if it's too large
The top z gap should be split if it's too large.
Also we use same logic for both synced and independent support layer.

jira: STUDIO-7232
github: #4191
Change-Id: Idca792e8fa51a83c2a09441ecac64d40b91d6390
(cherry picked from commit c262a7ea137db09e453c157115b3d5417a32886d)
2025-02-08 11:34:37 +08:00
Arthur
0cfa5f47fe FIX: missing support layers at raft gap
jira: none
Change-Id: I9a7f34c148ee0e228cf2e8e18c85136253f354ad
(cherry picked from commit 615751538a65cdaeb8e398dcc941971c98ec11b8)
(cherry picked from commit da7f1439ce78d92326726be961528d2755d9a6e2)
2025-02-08 11:34:36 +08:00
Arthur
fa11957c17 FIX: do not break bridges in tree support
jira: STUDIO-7424
github: #4318
Change-Id: Icccf56b129c4910f3b0a49d69871b8df1375a6d9
(cherry picked from commit 99211cde5f2114fd64e2724069540577793f889a)
(cherry picked from commit 6a130a19ef2e881a7853183123163ce67d63bc37)
2025-02-08 11:34:36 +08:00
Arthur
2332caa84c FIX: empty first layer of tree support
The raft gap layer should only exist if there are raft layers.

jira: STUDIO-7184

Change-Id: Ia4d2a5b7ddf873fb4ef16c7087648214e6bde806
(cherry picked from commit f13144d6a9c20cfbad11c6907c30b10447d8f8a3)
2025-02-08 11:34:35 +08:00
Arthur
3d70bdc3e1 FIX: top z distance incorrect with adaptive layer height
This bug causes supports difficult to remove.

Rule to remmeber:
    never decrease the top z distance, you can only increase it SLIGHTLY.

jira: STUDIO-7103, STUDIO-7001
Change-Id: I24f71cd67d182d4e2c0902f244a8ca8f4c3ee982
(cherry picked from commit 461af9e8f6f98a8e0b363436276f225183365998)
2025-02-08 11:34:35 +08:00
Arthur
36f2df3339 FIX: blockers not working for sharp tails of tree support
also change default style to tree organic

jira: STUDIO-6801
Change-Id: Iab1d8c6117139c9a7a4c1fa71de0a13bcb356dd5
(cherry picked from commit d2c4efad58f16b23bef49bd47d3b70bf322d6f55)
(cherry picked from commit cd9305e3e061b67903ed8f5cd05d0136d608ee01)
2025-02-08 11:34:34 +08:00
Arthur
6e05d9ef84 FIX: overhang interface may overlap with object
jira: STUDIO-6710
Change-Id: Ie13ec81e07326a2572d698607c03aeb793f119c8
(cherry picked from commit cc49c82793a877c2c4187e6254e4092de9285010)
(cherry picked from commit 39839e37325bd93e73ba069a2ea18cb326911c42)
2025-02-08 11:34:33 +08:00
Arthur
5a8612eb63 FIX: tree supports may generate flying nodes
Previous parallelization has a bug where two adjacent nodes may be deleted at the same time.

jira: none
Change-Id: I99a29dae9f72aa74ed2721eea4421b15eec10732
(cherry picked from commit 91efe67d723652d3f7e4484dd3cdf31638f769a4)
(cherry picked from commit 734a70b493b0347870dc955021b0f7055c76f84b)
2025-02-08 11:34:33 +08:00
Arthur
2577b9b3a6 ENH: improve supporting sharp tails of tree support
1. sharp tails are supported by a sparse set of contact points which are
easier to remove than previously dense surrounding support.
   Organic tree support also has this feature, including all other smart
overhang detection techniques (small overhang and cantilever detection),
with the cost of slightly longer time to detect overhangs.
2. improve supporting overhang contours by adding contact points along
   contours.
  jira: STUDIO-3876
2. remove some redundant data structure.

Change-Id: If7f595348506a14aba2d0132d23f97d3539c1e1f
(cherry picked from commit e3cce09b9db12ced2841045ffd337b1f35494e6c)
(cherry picked from commit 507345deb193d895d0813fc913f00b0def7e62f9)
2025-02-08 11:34:32 +08:00
Arthur
0b671e8852 ENH: speedup tree support generation
1. speedup detect_overhangs by skipping sharp tail and cantilever detection if there are too many overhangs.
   jira: STUDIO-3584, STUDIO-2592
2. drop_nodes with precalculation of avoidance and tbb parallel_for_each for all nodes in each layer.
   jira: STUDIO-1814, STUDIO-2381, STUDIO-2639, STUDIO-5020,
3. don't show too many progress messages

Change-Id: Ia4897089c69c235fb7cd8e5fdcf4690086048b31
(cherry picked from commit 9c08e28b5b5342dfdde2c939fc953f143a42a59b)
(cherry picked from commit 9de69035a029374be477b74e67c96dd8235daafa)
2025-02-08 11:34:32 +08:00
Arthur
19107b5869 FIX: compiling error due to template function deduction
jira: none
Change-Id: Ib2a3f03468b7992defef3ff2298882b4435cabd1
(cherry picked from commit 9efa2ee2e2dcd4d1322afa03c7b7ce05b1d69872)
(cherry picked from commit 40a468be3df9abc35054185ce780ada20902970b)
2025-02-08 11:34:31 +08:00
Arthur
da7eea49c9 FIX: reduce unnecessary small parts of tree supports
1. reduce unnecessary small parts of tree supports
    jira: STUDIO-6506
2. fix the bug that zero height tree support may be generated with synced support layer height.
3. fix the bug that tree nodes' radii may change abruptly
    jira: STUDIO-6326

Change-Id: I38153d136e46bf9d797881cc6ca8803767f46736
(cherry picked from commit 59af0a6c2643169463cf18010ffd75f3aa19b704)
(cherry picked from commit 47440f040cae70f79e430b02d44f6093208ac066)
2025-02-08 11:34:30 +08:00
Arthur
fd3ed419c2 NEW: add support_object_first_layer_gap option
jira: STUDIO-6202
github: #3521

Change-Id: I6f1ce9f5312e9482c0f5bf6ac3215861c501106c
(cherry picked from commit 83027d923a6e67fa0013e5d9f627283c68e996de)
(cherry picked from commit 29da3bc441a194d5b83ce267fe24ebf3f3811133)
2025-02-08 11:34:30 +08:00
Arthur
4ee6d636c7 FIX: blockers are not working correctly with organic supports.
jira: STUDIO-6278
Change-Id: If74e611821db25241dd67dfc4a3e44fac557a10d
(cherry picked from commit 76b9b2b7e856f648082cd3a09386775695c6accb)
(cherry picked from commit cf35d0268fce05308d56b87bc2c50eb822451c02)
2025-02-08 11:34:29 +08:00
Arthur
242a36a262 FIX: several issue of organic support
1. raft under organic trees are not generated
2. Studio may crash when generating organic supports for some objects.

jira: STUDIO-6407
Change-Id: I6e7ff2423b9fee95e4a4a85ccc2844549142f0c8
(cherry picked from commit 00db6c241270f5524bf1618109a2b45872073fd0)
(cherry picked from commit c7d12b703e23a83840f480e2cbb3a80fb00e059d)
2025-02-08 11:34:28 +08:00
Arthur
107551f7b4 ENH: improve the support of blade-shape overhangs
1. reduce the gap between blade-shape overhang and support
   github: #3667
2. improve sharp tail detection of blade-shape overhangs by introducing
   lslices_extrudable.
   github: #2786, #3367
   jira: STUDIO-5065, STUDIO-6038

Change-Id: I4e899eace1aa28b100a6f4ce2b8d740c317f5530
(cherry picked from commit 08328b848e39c345b6c7b64021d1e0f04df24d08)
(cherry picked from commit 22056d5f7e7bef5574b53fc0453781cd365bf0e1)
2025-02-08 11:34:28 +08:00
Arthur
c199730004 FIX: tree support detect overhang inaccurate
Jira: STUDIO-3657
Change-Id: I1ef4ca3ec299b121eb467afc12acee68e0f12b39
(cherry picked from commit 36f8937ae0d0d79c7558662903fffef20b528cb8)
(cherry picked from commit a631e6cb99)
2025-02-08 11:34:27 +08:00
Arthur
715e8e1c32 FIX: improve cantilever detection of tree support
github: #3667
Change-Id: I5fd6d7d5a6e80aaa563f7d033381e6b8cb9093e0
(cherry picked from commit 3f5fdf82dcaa8636d295794a1113aab78f7327af)
(cherry picked from commit 58bba45bc2294ac80c624c0032bfa284228eaa2f)
2025-02-08 11:34:27 +08:00
Arthur
562dc76ab0 FIX: raft of tree support was incorrect
1. Raft was not generated when tree support is selected but enable_support is false.
2. Raft angle and density of tree support was incorrect

github: #3675
Change-Id: Ifd78bf619a28eb03a908e75ad56af4934b6b08b7
(cherry picked from commit 2a448095a2fb4a2abebb0a5c8082a2ddbb635f16)
(cherry picked from commit e7ffe31cb3c6b526268adb4c2349a2623b181c53)
2025-02-08 11:34:26 +08:00
Arthur
31a5f0d523 FIX: Checking support necessity not working
Only early stop detect_overhangs if support is disabled AND not checking support necessity.

jira: STUDIO-6158
Change-Id: I2d9662231d941827d6392d57344f7d911f641e09
(cherry picked from commit b811a6031d1afe0e7b1cb73050fe6391a65411ef)
(cherry picked from commit fa61ee6abdb4b04a2141b3f8ea9e2e8a789b7881)
2025-02-08 11:34:25 +08:00
Arthur
a2e5332eef FIX: z_distance_top==0 not working
jira: STUDIO-6144

Change-Id: I9ddaa237e2d71c8697a41bbbdb86f70d0b1e1452
(cherry picked from commit 38ba45e9cf7f59d2c1de658a56d8f2b109721bcd)
(cherry picked from commit 9d37a31338cf42a285b39daab84af5504e51d009)
2025-02-08 11:34:25 +08:00
Arthur
c7febad548 FIX: raft_first_layer_expansion not working with tree support
jira: STUDIO-6043
github: #3355
Change-Id: Idf2a0053026a6f232a5239c3f504191321feb6ee
(cherry picked from commit 3eb35f5b1a53990d215ae4d3527917611f5083c6)
(cherry picked from commit 0589348c3264e56b9e3a16afea95a5d44983498b)
2025-02-08 11:34:24 +08:00
Arthur
d0868d6711 ENH: accurate top z distance for tree support
1. accurate top z distance for tree support
 Also fix a bug that bottom z and top z distances are misused.
    jira: STUDIO-3000, STUDIO-5990
    github: #1827
2. Change interface pattern to interlaced rectilinear when using
support material.
2. clean up tree support code

Change-Id: Icc8ce1b6844c841a6fbd1d623df707fdc8ed0f7b
(cherry picked from commit da7412a48dfb5767918ef125b9d0fb9718c03a61)
(cherry picked from commit 39ae64fc53abec794d740e36baaa13fd6fb35849)
2025-02-08 11:34:23 +08:00
Arthur
de24d0ac2f FIX: tree support bottom interface layers were not correct
The bottom interface layers were not right when "independent support layer height" is enabled.
This commit ensures there are always 2 bottom interface layers and the gap
is not less than specified. However, the gap may be slightly larger.

Jira: STUDIO-3842, STUDIO-2138
Github: #2127

Change-Id: Ifd8fbc4c7bc6dd92f2534fdd0179458a9e93c79a
(cherry picked from commit edcdad162e)
2025-02-08 11:34:23 +08:00
Arthur
b3be5bb161 ENH: tree support uses accurate lslices
For tree support, use lslices as tree support island when generating brim,
as this is faster and more accurate.
For normal support, still use "support_fills.polygons_covered_by_spacing()" as support island when generating brim;

Jira: studio 4332

Change-Id: Ibfadd3a166606f824e5780b57112fff221470aaf
(cherry picked from commit 64960b19818c7029eaaaf3d8a89804aeaa26f11d)
(cherry picked from commit 181b05c236)
2025-02-08 11:34:22 +08:00
Noisyfox
cc9f29c463 Rename smsOrganic to smsTreeOrganic 2025-02-08 11:34:22 +08:00
Arthur
1c498664a5 FIX: several support bugs
1. interlaced rectilinear interface pattern not working with tree supports
2. infill overlaps with walls when wall count>1
3. support blockers can't block sharp tail detection in normal support
   jira: STUDIO-5663
4. bottom z distance=0 not working for normal support.
   jira: STUDIO-5676
   github: #3203

Change-Id: I025eff2aaad90ad565661aa656c59c82ff969bbf
(cherry picked from commit 5aaf7ead0fd697043f673161e0ede0145ec49f4d)
(cherry picked from commit f3bd5ff87021b5c26794751a1f1da4349b603102)
2025-02-08 11:34:21 +08:00
Arthur
8c51f3e693 FIX: crash when support type and style are inconsistent
jira: STUDIO-5428
Change-Id: Ib1e79c71736810099e15282c30524e55e8f60f34
(cherry picked from commit aefb7fbaf25146c03bd2eb336f58ed2eb0e83ea6)
(cherry picked from commit 697a7bbee3)
2025-02-08 11:34:20 +08:00
Arthur
c443951f30 FIX: organic support not work with raft only
There is no raft generated when only raft enabled but no support needed.
jira: none

Change-Id: Ic0c9269e2f98038d85c9bc54e4a85f892dc5d764
(cherry picked from commit 1106ff8253)
2025-02-08 11:34:20 +08:00
Arthur
e8d4291e02 FIX: adaptive layer height may mess up support layers
We must ensure when independent support layer height is enabled, the
support layers are strictly synced with object layers. Otherwise, the
wipe tower toolchange may be messed up.

Jira: STUDIO-4097
Change-Id: I6208653f9665b15d028940d5e130c9e895629fc2
(cherry picked from commit 41d35c8af152c91cb356a68d88a879a115b44778)
(cherry picked from commit 2b593ce378)
2025-02-08 11:34:19 +08:00
Arthur
5f450923c9 FIX: compiling error on linux
jira: none
Change-Id: I1a4563503b5ddf74a1979cc0cee7a15b8aced904
(cherry picked from commit de52c6ca62c9f3a6314ddf5a856c1d8534329886)
(cherry picked from commit 4bd2b7f96d)
2025-02-08 11:34:18 +08:00
Arthur
14ecfac592 ENH: open support wall count for normal support
1. open support wall count for normal support
  Enabling this option makes normal support stronger and gives
  better overhang quality, but also more difficult to removal.
  Jira: STUDIO-5192
2. fix a bug where tree support (hybrid style) may get overlapped
  extrusions near the walls.
3. fix a bug where raft layers can't be 1 in tree support
  Jira: STUDIO-5261

Change-Id: Iadc0c67a9b50b5b221c8e83d5aa22ed282018cf8
(cherry picked from commit c0bb0084e386cb70ed6e16edf93190e4b38f5b90)
(cherry picked from commit bf93fd02fb)
2025-02-08 11:34:18 +08:00
Arthur
8a7cc79129 ENH: improve first layer tree support
First layer support can't be top interface, and
min brim width of auto mode should be larger
than 0.

Jira: STUDIO-5010
Change-Id: I02f8b017b535f8a47965387e8679f692b1966e04
(cherry picked from commit 3e7d54abe352e8ab5f9d6492b5a86a96f9067f94)
(cherry picked from commit 7efebe6bc6)
2025-02-08 11:34:17 +08:00
Noisyfox
5fb0e01943 ENH: improve auto-arranging objects with tree support
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>
2025-02-08 11:34:17 +08:00
Noisyfox
70c4961df3 FIX: tree support generates floating hybrid supports
Jira: STUDIO-4763
Github: #2660

Change-Id: I13d5a1443af8bc82f0cadd177e0db3fc3db971f1

(cherry picked from commit bambulab/BambuStudio@0964b5bb0a)

Co-authored-by: Arthur <arthur.tang@bambulab.com>
2025-02-08 11:34:16 +08:00
Noisyfox
2205ad0069 FIX: improve tree support generation speed
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>
2025-02-08 11:34:15 +08:00
Noisyfox
1d1df4b0a5 ENH: improve tree support
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>
2025-02-08 11:34:15 +08:00
Noisyfox
51290a853d Clean up tree support code
(cherry picked from commit bambulab/BambuStudio@39ae64fc53)

Co-authored-by: Arthur <arthur.tang@bambulab.com>
2025-02-08 11:34:14 +08:00
Noisyfox
4034ffea18 Replace TreeSupport::SupportParams with SupportParameters
(cherry picked from commit bambulab/BambuStudio@39ae64fc53)

Co-authored-by: Arthur <arthur.tang@bambulab.com>
2025-02-08 11:34:14 +08:00
Noisyfox
824f9efb69 Remove duplicated support code 2025-02-08 11:34:13 +08:00
Noisyfox
58d524d75f Remove unused Organic tree code 2025-02-08 11:34:12 +08:00
Russell Cloran
06c809c598 Add Prusa MK4S profiles (#8279)
* Whitespace cleanup in Prusa profile

```
$ diff -u Prusa.json <(jq --indent 4 < Prusa.json) | wc -l
       0
```

* Add Prusa MK4S profiles

There were generated from the PrusaSlicer profiles[0] using some scripts
which try to faithfully convert the profiles[1]. The high flow nozzle
settings have been modeled as a separate printer model.

A few things I'm aware of that haven't been converted:

 - Filament multi-material settings (eg loading speeds)
 - High-flow and abrasive nozzle check in gcode, which, as far as I
   know, isn't available in the current firmware anyways

I've also found that disabling z-hop on layer change in OrcaSlicer seems
more similar to the behavior in PrusaSlicer (which allows travel
distance limitations to override that setting), so I've disabled that.

Fixes #7391

[0]: 0bca90da13/resources/profiles/PrusaResearch.ini
[1]: https://github.com/rcloran/SuperSlicer_to_Orca_scripts/tree/20d2881
2025-02-08 00:12:55 +08:00
VOLUMIC
2af5aa56d8 Add new machines (#8274)
* Add new machines

* profils fixes

* Update VS30ULTRA (0.4 nozzle).json

* accelerations removing

* Fixes

* Acceleration fixes

* Update .gitignore

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-02-08 00:10:12 +08:00
SoftFever
f7e9792a5d Update .gitignore 2025-02-08 00:09:05 +08:00
Ioannis Giannakas
03a9d3f5ca Precise wall enabled for all wall ordering types (#8247)
* Allow presice outer wall irrespective of wall ordering

* Fix precise wall IOI ordering spacing

* Enable for classic mode
2025-02-07 23:34:27 +08:00
Noisyfox
42577feeba Clip the organic supports outside bed (#8195)
Clip the organic supports outside bed. (SoftFever/OrcaSlicer#7922)

(cherry picked from commit bambulab/BambuStudio@2c6a6ae5f4)

Co-authored-by: Arthur <arthur.tang@bambulab.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-02-07 23:18:58 +08:00
SoftFever
af893267e6 fix wrong retraction value in some printer profiles 2025-02-07 20:20:30 +08:00
Noisyfox
658c4f096e Proper support of Bambu LAN printers (#8256)
**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


![32217e0ea2ed5434d8916ad5c46e69c4](https://github.com/user-attachments/assets/a9189d74-c9b4-466c-9839-15cb79cf89bc)

![2fc422ddd3a89ae675de426953e44c1b](https://github.com/user-attachments/assets/2768c46c-c992-46a5-bb32-caa3aacfa62b)

![image](https://github.com/user-attachments/assets/0a65fffa-401a-4aa4-ba46-7681b642f1d1)


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 #6169
Fix #8097
2025-02-05 12:42:35 +08:00
yw4z
321c209a74 Match text size of advanced toggle text (#8318)
Update ParamsPanel.cpp
2025-02-05 11:22:56 +08:00
Paul
8337db208a use orca color for "can't find device" link (#8298)
Co-authored-by: Paul Mineev <paul@mineev.me>
2025-02-05 09:00:05 +08:00
Noisyfox
69c3661876 Merge branch 'main' into dbuzz/toolbar-icon-size 2025-02-05 08:57:39 +08:00
VOLUMIC
921e4cef2e Acceleration fixes 2025-02-04 13:49:14 +01:00
VOLUMIC
b5b837cf41 Fixes 2025-02-04 13:05:58 +01:00
VOLUMIC
ed538b0307 Merge branch 'main' of https://github.com/VOLUMIC/OrcaSlicer 2025-02-04 10:09:56 +01:00
VOLUMIC
dd8812cd04 accelerations removing 2025-02-04 10:09:52 +01:00
SoftFever
b18a24920b Merge branch 'main' into dev/save-local-machine 2025-02-04 07:59:30 +08:00
SoftFever
4ca541fbc7 Merge branch 'main' into main 2025-02-04 07:58:42 +08:00
SoftFever
532a2d36b5 disable flatpak upload (#8306) 2025-02-04 06:36:53 +08:00
SoftFever
dc83549aa1 Orca filament profile revamp - done (#8287)
* Update Qidi profiles

* restructure orca filament lib folder

* update profiles

* add more global filaments

* check missing instantiation errors

* fix missing instantiation attribute

* delete voron generic filaments

* remove Mellow filaments

* clean profiles

* QoL: select only visible filament when select all filaments
2025-02-03 21:15:17 +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
Jonathan Rascher
0c190860e2 Configure filament change and pause commands for SV06 (Plus) ACE (#8233)
Configure M600, PAUSE for SV06 (Plus) ACE
2025-02-02 21:00:52 +08:00
yw4z
93477bc2ec Hide delete filament button while only 1 filament exist (#8240)
Update Plater.cpp
2025-02-02 20:59:44 +08:00
Andres Gongora
41236140ca Fix bold text in Calibration.md (#8239)
* Fix bold text in Calibration.md

* Update doc/Calibration.md

Co-authored-by: discip <53649486+discip@users.noreply.github.com>

---------

Co-authored-by: discip <53649486+discip@users.noreply.github.com>
2025-02-02 20:58:12 +08:00
Codey Whitt
2767f180b6 Addresses #8275 by adding time lapse gcode to the profile (#8278)
Addresses #8275 by adding time lapse gcode

The profile was missing the time lapse gcode. I ported the time lapse gcode from Qidi Studio's layer change for this profile.

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-02-02 20:56:57 +08:00
Codey Whitt
dedc3cbae0 Addresses #8093 by using proper placeholder for bed temperature (#8253)
addresses #8093 by using proper placeholder

The original setting was using `hot_plate_temp_initial_layer` which doesn't respect the various build plate temperatures. `bed_temperature_initial_layer_single` does.

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-02-02 20:55:40 +08:00
Noisyfox
991802a3a7 Merge branch 'main' into dev/save-local-machine 2025-02-02 15:00:25 +08:00
Noisyfox
3cd8b82dfb Add basic sanity checks for serial number input, to reduce potential crash caused by wrong SN 2025-02-02 14:59:51 +08:00
VOLUMIC
eb908d0aa7 Update VS30ULTRA (0.4 nozzle).json 2025-02-01 17:17:11 +01:00
VOLUMIC
478e2a68a0 profils fixes 2025-02-01 17:12:58 +01:00
VOLUMIC
1924d9b7ae Add new machines 2025-02-01 17:01:04 +01:00
Thomas
6473a0d2c8 Fix some filaments profiles for Anycubic Kobra S1 (#8262)
* Fix some filaments profiles for Anycubic Kobra S1
2025-02-01 21:24:45 +08: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
yw4z
00418626cb Fix for about page (#8225)
Update AboutDialog.cpp
2025-02-01 17:51:33 +08:00
Ioannis Giannakas
c7a68b0f26 Fix one wall top surface incorrect spacing when precise wall is enabled (#8230) 2025-02-01 17:50:13 +08:00
Noisyfox
f4acdd775e Implement manual printer setup 2025-01-31 19:18:04 +08:00
Noisyfox
cbc97f4ae7 Add manual printer setup 2025-01-31 18:19:42 +08:00
Noisyfox
fbf4281c36 Ip binding dialog add printer name input 2025-01-31 17:37:41 +08:00
MiguelCruz
a29d535bc4 Update RatRig V-Core 4 500 0.4 nozzle.json WRONG print height (#8238)
* Update RatRig V-Core 4 500 0.4 nozzle.json WRONG print height

Hi! The V-Core 4 500 0.4 machine has the wrong print height defined, limiting it to 300mm.
2025-01-31 16:47:20 +08:00
Thomas
700f6e3841 Fix missing "%" on Sovol profiles fixes #8207 (#8223)
* Fixes missing "%", fixes #8207
2025-01-31 16:46:22 +08:00
blackhead1981
ea99eeb51f Update to profile version 01.10.00.33 and add new Bambu filaments (#8091)
The following Bambu filaments have been added:
- Bambu PLA Wood
- Bambu PLA Silk+
- Bambu PC FR
- Bambu PETG Translucent

Additional variants for the above filaments have also been added, including versions for different nozzles and printers.

The filament vendor for Fiberon PA612-CF has been corrected from "Bambu Lab" to "Polymaker."
2025-01-31 16:44:56 +08:00
HYzd766
c217b53285 Qidi profile udpates: new filaments etc... (#8121) 2025-01-31 16:41:33 +08:00
Noisyfox
09ee5fbc2c Automatically connect local machine when switch to device tab 2025-01-31 16:33:59 +08:00
Noisyfox
01bc090914 Don't reset access code unless wrong password 2025-01-31 16:33:58 +08:00
Noisyfox
2e64cc2f7e Save binded local machines 2025-01-31 16:33:57 +08:00
SoftFever
82ce8c94b4 Update BBS network plugin to 1.10.1 (#8148)
This PR ported the following changes based on BBS 1.10.1 codebase:

- The ability of binding printers via IP (Fix #8099)
- The ability of setting AMS filaments during print (Fix #7882)
- Some other related fixes and improvements

Thanks BambuLab for those improvements!

~~Please note: with this update, we will no longer be able to streaming
the live camera through cloud, only through Lan (even if the printer is
not in Lan mode). At least that's what I saw with this PR and also
#8103, more tests & feedbacks on this are needed.~~ Update: nvm, I
missed a commit that fixes the remote live view. It's working now.

Unfortunately even with this update you still cannot bind the printer in
a different subnet, which is an inherent problem from BBS:
https://github.com/bambulab/BambuStudio/issues/4512
https://github.com/bambulab/BambuStudio/issues/5070
https://github.com/bambulab/BambuStudio/issues/5833
and more...
2025-01-31 15:56:47 +08:00
SoftFever
2e86306118 Merge branch 'main' into dev/update-bbs-network 2025-01-28 21:57:04 +08:00
Thomas
4d762c4e91 Added missing filament_start_gcode to Creality Hi (#8203) 2025-01-28 15:39:22 +08:00
Thomas
1fc64c55a8 QOL fix : Removed filament_density: 0 from Kobra 3 profiles (fixes #7367) (#8209)
Removed filament_density: 0 from Kobra 3 profiles (fixes #7367)
2025-01-28 15:38:44 +08:00
Toure Dunnon
f620879eb5 Fix: URL-encode password in Duet::get_connect_url (#8215)
Signed-off-by: Toure Dunnon <tdunnon@gmail.com>
2025-01-28 15:34:29 +08:00
SoftFever
6ed68342e0 fix build errors (#8210)
* fix build errors

* fix windows

* fix flatpak
2025-01-28 01:07:27 +08:00
Nick Johnson
fd0b2547f2 Add support for structured noise (perlin) fuzzy skin (#7678)
* Add support for perlin noise fuzzy skin

* Support multiple types of coherent noise

* Updated tooltips for more clarity.

* Reorder options as suggested by @discip

* Fix accidental removal of &

* Move libnoise to deps

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-01-27 22:45:16 +08:00
andrewleek
118e14d788 Gcode Statistics Panel Fixes (#8172)
* Gcode Statistics Panel - Persist open/close state

Bug: On slicing a model, the Statistics Panel would be reset to being open (regardless of if the user had shut it earlier)

Fix: Now on app open the Statistics Panel will be open, but if the user closes it, its state will persist (regardless of slicing again)

https://github.com/SoftFever/OrcaSlicer/discussions/6021

* Gcode Statistics Panel - fold/unfold button width fix

Issue: The fold/unfold button width is too wide (It seems CalcTextSize is making the button wider than necessary)

Fix: Set the width to a correct fixed value
2025-01-26 08:58:38 +08:00
liberodark
1ebbb3958c Sovol SV06 ACE Reset wall_sequence (#8190) 2025-01-26 08:55:59 +08:00
yw4z
b342cc6e20 Update logo usages on splash screen and about page (#8189)
* Splash Logo

* Update about page

* remove comment
2025-01-26 08:53:28 +08:00
Noisyfox
592402ea46 Fix custom profiles added/removed each other run (#8179)
* Avoid updating same vendor multiple times and unnecessary version checks

* Fix custom profiles added/removed each other run (SoftFever/OrcaSlicer#8094)

Co-authored-by: Dima Buzdyk <46728448+buzzhuzz@users.noreply.github.com>

---------

Co-authored-by: Dima Buzdyk <46728448+buzzhuzz@users.noreply.github.com>
2025-01-25 23:50:16 +08:00
Christian Kunis
23a31bcad9 Update Anycubic Kobra Machine Profile(s) (#8170)
* Update Anycubic Kobra 0.4 nozzle.json

Fix incorrect parameters for M204 in start gcode

* Update Anycubic Kobra end_gcode and travel speeds

* Update Anycubic i3 Mega S start and end gcode
2025-01-25 23:39:12 +08:00
liberodark
3d4ca06423 Sovol SV06 ACE Enable Multi Bed (#8182) 2025-01-25 17:32:30 +08:00
Noisyfox
4a4f27e599 Fix wrong plate y possition after switching profiles with different bed size (#7923)
* FIX:update custom_texture when new_shape=false

Jira: STUDIO-5287
Change-Id: I3add95f9f9345c14a48cc7467513d1b3ce95f4c9
(cherry picked from commit 9ce7de10f4)

* FIX: correct the bed model to the print area origin point

Change-Id: Ieb856dff421d39694966e3c13c519f4ffa3da5c2
(cherry picked from commit 32892514ff)

* Avoid unnecessary copy of `position` parameter

* Merge branch 'main' into bugfox/plater-y
2025-01-25 11:50:30 +08:00
yw4z
fd933a8d8a Update color palette 2025-01-25 04:52:01 +03:00
Vasily Khoruzhick
3c3ac1a1cb flatpak: install translations in flatpak (#8066)
* flatpak: install translations in flatpak

Note: you also need to update flatpak config to add desired locales to
flatpak environment via `flatpak config --set languages='en;ru'; flatpak update`
or `flatpak --user config --set languages='en;ru'; flatpak --user update`

* flatpak: mesa-20.x tarball has been moved, fix the url

It's now under older-versions/20.x directory
2025-01-24 22:32:53 +08:00
Marcin Czekajło
0cf7efc46c Rotate RatRig V-Minion bed model (#8065)
Rotate RatRig V-Minion bed plate model
2025-01-24 22:28:19 +08:00
SoftFever
e0faedc891 Orca filament library and support cross-vendor/machine filament reuse (#8057)
# Description

1. Implement a centralized Orca filament library. Previously, OrcaSlicer
required that filament profiles be contained within a printer vendor's
profiles, making it impractical to add printer-vendor-independent
filament profiles. With this new implementation, Orca now supports a
centralized filament library, accommodating all filament vendors for any
printer, or offering specialized versions for specific printer models.
![Screenshot 2025-01-15 at 11 06
32 PM](https://github.com/user-attachments/assets/341c092d-78c0-4226-828e-860c3b26923a)

2. Support the reuse of filaments across various vendors and machines
Users can now share any personal filament and print configurations
across all printers.


https://github.com/user-attachments/assets/5c324d07-7bbf-4913-8abf-2506a255759f


<!--
> 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-01-24 22:12:51 +08:00
SoftFever
6a4cf24e6b Merge branch 'main' into feature/OrcaFilamentLibrary 2025-01-24 22:12:38 +08:00
discip
da2a1b1ff8 updated fake 'orcaslicer - websites' (#8160)
* updated fake 'orcaslicer - websites'
2025-01-24 22:03:54 +08:00
SoftFever
ecb0e7ea68 Update WIKI 2025-01-24 21:58:52 +08:00
Shuwn Hsu
cac455e696 Update OrcaSlicer.pot & Update Traditional Chinese (#8163)
* Comprehensive Update in Traditional Chinese

* Update OrcaSlicer.pot & Update Traditional Chinese

* Update OrcaSlicer_zh_TW.po

* Fix Space
2025-01-24 14:01:28 +08:00
DeltaMaker
02f5bc0d22 Add profiles for DeltaMaker 3D printers (#7712)
* Initial DM2 Profiles

Add profiles for DeltaMaker 3D printers

* Made changes to machine/fdm_machine_common.json and process/fdm_process_common.json to validate successfully using the Orca profile validator

* Update DeltaMaker 2.json

Corrected the capitalization of the file name.

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
Co-authored-by: Christian Coleman <christianlanecoleman@gmail.com>
2025-01-24 07:11:44 +08:00
Noisyfox
8b58719938 Merge branch 'main' into dev/update-bbs-network 2025-01-23 23:53:21 +08:00
Thomas
ddef92ccd6 Improvements and fixes for Creality K2 Plus (#8154) 2025-01-23 23:51:53 +08:00
Noisyfox
85e9d32660 Fix issue `Preset name "0.20mm Speed @MK3S 0.4" was marked as renamed… (#8156)
Fix issue `Preset name "0.20mm Speed @MK3S 0.4" was marked as renamed from "0.20mm Standard @MK3S", though preset name "0.20mm Detail @MK3S 0.6" was marked as renamed from "0.20mm Standard @MK3S" as well.`
2025-01-23 22:39:11 +08:00
discip
251887004f Preventing nested zipping of the portable Windows build (#7950)
* Update build_orca.yml

Preventing nested zipping of the portable Windows build. 😊

* Update build_orca.yml

* uncommented lines 180-184
2025-01-23 22:10:15 +08:00
Vovodroid
7a5746b1ae Support threshold overlap (#6606)
* Support threshold overlap

* Update tooltip
2025-01-23 18:01:38 +08:00
tao wang
ad76d0a50a NEW:update printer config version
Change-Id: I85432494b2e9a27dc97a1bb464f9f3b04bf5bc2f
(cherry picked from commit 6fd4bda1d62e3e3921945bdcd9db71942b754fed)
2025-01-23 15:14:26 +08:00
Noisyfox
ccee8efe72 Fix stop button 2025-01-23 14:43:24 +08:00
lane.wei
6b30984e1f ENH: version: bumped to 1.10.1
jira: no-jira
Change-Id: Ic2acf61195d4290d5c4742f18a5d769ba3030e63
(cherry picked from commit aed9dd9dff74bb8ed93c34b5fde2cac0b3dfc88c)
2025-01-23 13:45:11 +08:00
Noisyfox
bee7188599 Sync with bbs 2025-01-23 13:29:27 +08:00
tao wang
5f3ff22218 NEW:clear token when account logs out
jira:[for logout]

Change-Id: Iafbdc9244419bb689a9626251064517ec5544c3d
(cherry picked from commit 6472fbdc6a7e7380538b6e2da29f802831a93157)
2025-01-23 13:05:42 +08:00
Noisyfox
a90880193f Fix flatpack build 2025-01-23 12:51:05 +08:00
Noisyfox
4f496dd3b4 Fix build 2025-01-23 11:38:50 +08:00
gerrit
93f4c2bd4d ci: update network module based on commit bf743ea
Change-Id: Ic6104cad06da962e61834d7b072f2155ae729928
(cherry picked from commit 5f8b68601b1766568ec604a5b75d8a68efb24ade)
2025-01-23 11:38:27 +08:00
gerrit
7a3bafc162 ci: update network module based on commit adbaa57
Change-Id: I34d6ae1a192e3eb629a37a175626da0007208746
(cherry picked from commit 4be224611afaa7d3a113d8f6c62c13061c8946e6)
2025-01-23 11:38:26 +08:00
tao wang
818948af53 FIX:Fixed printer name display error
jira:[STUDIO-8619]

Change-Id: Ie9ce0cb39623eefa3973a342b447ab2f2a765d28
(cherry picked from commit c41eb657818bb29abb3a2e7c6df7b7d489c80592)
2025-01-23 11:38:25 +08:00
tao wang
00d274fc29 FIX:fixed that macOS will hang up as direct connected device
jira:[STUDIO-8630]

Change-Id: I96562bd11de807435fc6a2d81501800b0cf110b1
(cherry picked from commit c8a8d9f19758a33d713054eb93cd5084b38ac26a)
2025-01-23 11:38:25 +08:00
tao wang
0b582686d1 FIX:Fixed the use of wxwidget method in other threads
jira:[for thread issue]

Change-Id: I62f5b6913d9bc25ac6c81517ef20f28fa34d0124
(cherry picked from commit b5a6fe52b5fd2f3a07a51c05e21c6315af147f9e)
2025-01-23 11:38:24 +08:00
chunmao.guo
75ed8d69fe FIX: Force load ams list when click sync button
Change-Id: I579adc9586e0bca85c20be2784b7513361b38f7e
Jira: none
(cherry picked from commit 9c1afdc63c3b1f451d0c8e344eb476e490d1988d)
2025-01-23 11:38:23 +08:00
gerrit
0aea1c0b4e ci: update network module based on commit d2e9254
Change-Id: I9d4a7c1036b0dc3ad7fe49cac5d1a225e700ca9e
(cherry picked from commit 81f1ea9b03fd36865f6da4366d89fdee0692d321)
2025-01-23 11:38:23 +08:00
tao wang
43aad9f345 FIX:will not display 500 error dialog when sending print
jira:[for network error]

Change-Id: Id5fbd2182d3c1948f67382d81f8bf558daffa1c6
(cherry picked from commit 5b7cc2495cdfe8889cbddc9390bf096f72e52604)
2025-01-23 11:38:22 +08:00
tao wang
702f121e2c NEW:add options that are dont show again
jira:[dont show again]

Change-Id: I6a025f7eb0902a36088f712e7dd511e4c35411d2
(cherry picked from commit 3be065d5676a7b74611dedfad8c67a8661950860)
2025-01-23 11:38:22 +08:00
tao wang
478fdbc041 ENH:prevent 500 error pop from popping up multiple times
jira:[for 500 err]

Change-Id: I81c74e75ebaeb3fdc18d0fb34a63205e2be06878
(cherry picked from commit 2fcc7f826482644496db25e096f11334b7e539bf)
2025-01-23 11:38:21 +08:00
tao wang
8bb7ea7cfc ENH:optimized the retry of requests
jira:[for network optimized]

Change-Id: Iea43f4a97c7cd568171287278a07689e954d1093
(cherry picked from commit 35d3de8abe63a0cba30948581ed26a8bc7f94162)
(cherry picked from commit 30bad38fb979f5c5a10e4b869ec2e41fa99857f8)
2025-01-23 11:38:20 +08:00
gerrit
569d4e6307 ci: update network module based on commit c4c2707
Change-Id: I7ea8f149fa14d6c3fc2c10ee970b2457f0808c08
(cherry picked from commit a9940b1d5d75d02e6f34159aeeee49b84b7d9b6c)
2025-01-23 11:38:20 +08:00
tao wang
98ba252862 NEW:Support direct connection to X printer
Change-Id: I4ea38d3a69834f607161ae35eda00d042b7c4f47
(cherry picked from commit a0f63b9a3a4efd2fd6d396aa757750cd0ff28178)
2025-01-23 11:38:19 +08:00
gerrit
d57cfa2a99 ci: update network module based on commit 8f93dce
Change-Id: I7fb2f5333b05346e4ba48c11fdf66838c5d67f78
(cherry picked from commit 2e4d33b5e19d6254e8f3d8ca9e5e0fdc038a885b)
2025-01-23 11:38:18 +08:00
gerrit
620e857908 ci: update network module based on commit 76ae6aa
Change-Id: I542fa0291c56755373679ad776766c4c3b29da0c
(cherry picked from commit 6aa12e460b18b722b04370e3a36d670c8ffe299d)
2025-01-23 11:38:18 +08:00
tao wang
46c333a310 FIX:fix the issue of macOS crashing easily
Change-Id: I7378a28734e46c4126ab0216dc93d45a10bcd451
(cherry picked from commit 35b0ef0cd7bbb3a3e06231863cf2d855e74b56cc)
2025-01-23 11:38:17 +08:00
gerrit
723df03d74 ci: update network module based on commit ed13d56
Change-Id: Ibef15b6751b99486b0a60e4fb9652955666c0d3b
(cherry picked from commit ccab7b1ef30f9aa076d9837f7101e2a1b5e997cb)
2025-01-23 11:38:16 +08:00
tao wang
22613f498a FIX:display msg when cannot edit filament
jira:[edit filament]

Change-Id: I7e2b4fabeb3930f34fc252f1334e168e4f623b77
(cherry picked from commit 95655e067a7187afd29e53759aae8e3023a5a7f7)
2025-01-23 11:38:16 +08:00
tao wang
bd754287ac ENH:remove useless prompt information
jira:[STUDIO-7884]

Change-Id: Ia3fa5f8c99859d693544d3cb2be47975c3ed7493
(cherry picked from commit d9a8d68042c49258905071e902ac3963a6b3575e)
2025-01-23 11:38:15 +08:00
tao wang
8a2f5cd773 NEW:update prompt information in the connection
jira:[STUDIO-8292]

Change-Id: I3887bfe0537809a2fab39bbae1f65b7129ee0961
(cherry picked from commit 45f84d5321c4e7747a930636a95d8609d0764d34)
2025-01-23 11:38:14 +08:00
gerrit
4c48b281fd ci: update network module based on commit 89857a1
Change-Id: Id47ec68b439751f6d1459b4325cea56b26ff175b
(cherry picked from commit 2a5c42fdd0d1228f85215ff05e5bca781ea8d663)
2025-01-23 11:38:14 +08:00
zhimin.zeng
fde250fbe3 FIX: add ack info for cali command
jira: none
Change-Id: Iec36ba2fd1248428234d74adb2089d975c54b7f2
(cherry picked from commit 0312db40c8ee5dfe7a912bf9992240f99036f6a8)
(cherry picked from commit 8a279ef30238dc70ef9b4ef473e75b4335059b87)
2025-01-23 11:38:13 +08:00
zhimin.zeng
f16038190d FIX: fix build error
jira: none
Change-Id: I606c7ef67bf3b5f2810561ef2f5689947de4d4a8
(cherry picked from commit 93f95d95e718494a796a9290a1d7a5131485a205)
2025-01-23 11:38:13 +08:00
tao wang
66e5cbd8e8 NEW:Support parsing of bit parameters
Change-Id: I9b474a0e8b1bbfb5b1a4f2748f3f3f1e2afc6239
(cherry picked from commit 73c2ccd83b96490aee58f8cfe912e3ab66982094)
2025-01-23 11:38:12 +08:00
maosheng.wei
8f08b587c6 ENH: Optimize the number of function calls during information parsing
During the printer connection cycle, each Filament and slot is only judged once
When deleting custom filaments or modifying the temperature of custom filaments, re evaluate

Jira: XXXX

Change-Id: If495a343efdb1be6f46d11dd20f6ec7934266e87
(cherry picked from commit e5dab1487188d744c732568232b32666e5f2cc5c)
2025-01-23 11:38:11 +08:00
gerrit
a2eea5fe2b ci: update network module based on commit 0988159
Change-Id: I28069501e6fb9468d92903a82e3e6839f007ef3d
(cherry picked from commit 6aca03d69a6f5e80d9551b8f192ed8199cec1f1c)
2025-01-23 11:38:11 +08:00
chunmao.guo
b0be4bcf61 FIX: take addr of refresh_agora_url
Change-Id: I02e7010634f578d76d3d4ee39edf73117d5684d1
Jira: none
(cherry picked from commit ee290b439d2dd19bc00e7037b38fc48bc741b938)
2025-01-23 11:38:10 +08:00
lane.wei
a0c0964b8c ENH: network: refine current path logic
only use the same path as binary for current path

JIRA: STUDIO-7875

Change-Id: I5523e3b7e20b0f24de50c8d295f54b984693165a
(cherry picked from commit 62b98f783dcee8900da034b384167817155a3e59)
2025-01-23 10:32:38 +08:00
lane.wei
a7f58f39cf ENH: network: load dlls from current directory if failed
JIRA: no-jira
Change-Id: I86efafe3aefac85d56879a68f864a52c0e62fca5
(cherry picked from commit cdf0859e78e8d62c2de13f2f9bf56a216a79a12a)
(cherry picked from commit b4cc20ac14298bac2e928d1d598e9d75ca953ba3)
2025-01-23 10:32:21 +08:00
chunmao.guo
f5270603b2 ENH: refresh_agora_url callback
Change-Id: I0d9a659d8bc9d004798409e1e76003854d4e5af6
(cherry picked from commit 76ef39c588908ad0dddef257812c333704fef84b)
2025-01-23 10:13:37 +08:00
chunmao.guo
6385a4d170 ENH: liveview remote protocols with agora
Change-Id: Id86aa4bfa5f5e09675a6fe627668c63d20c7d1bf
Jira: none
(cherry picked from commit 46eba0048b73f1741b4b7b57f788830c08a8d7f1)
2025-01-23 10:13:24 +08:00
lane.wei
8b33119640 ENH: networking: sync the header files to fix the compile issue
JIRA: no-jira
Change-Id: Ie1d454d4a9256e15a27b294af680a5ed49137f90
(cherry picked from commit 07e4aa213ac4a1b5bda865774a4e3d9e7f866170)
2025-01-23 10:02:30 +08:00
gerrit
fe01886c5c ci: update network module based on commit 4b3f1e5
Change-Id: Ifde48fc6f2d3f4d5bd6e348cc2a09deef83bd090
(cherry picked from commit 620b40c904aca8f7f40cb09f4633bbacfb62a869)
2025-01-23 10:02:18 +08:00
tao wang
d380b59774 ENH:fix directly connected text
jira:[STUDIO-8031]

Change-Id: I0e747e4a279ab97ed7cab2acc6efb14cbafc4685
(cherry picked from commit 00b65490dcf853c864cbce1abe3de22c162ba58d)
2025-01-23 10:01:49 +08:00
tao wang
02abd177b5 FIX:Fixed the issue of disconnection cause no respon
jira:[STUDIO-8062]

Change-Id: Ic369f6f6b293c0f616e6408651c6f40cec0de051
(cherry picked from commit c3bb86f26c399d19b00de321d490e0586a1e10f7)
2025-01-23 10:01:43 +08:00
Kunlong Ma
b75f22bb22 ENH: Optimize the presentation of error code dialog
JIRA: STUDIO-7469 STUDIO-7477 STUDIO-7613

Change-Id: I6689dc375a51a1d690b82f9dbaa79d1555f7816f
(cherry picked from commit 777c16fef0862587f3ec468652aabd70cff88dfe)
2025-01-23 10:00:48 +08:00
tao wang
9ab3107304 NEW:Support direct connection to LAN printers
jira:[connect printer]

Change-Id: Ifdc25651f4effde8e2a2d2a4e690aa20e0ef7022
(cherry picked from commit 0ec49c3588c1f81c159193de352f8a47d39ffe74)
2025-01-23 09:58:59 +08:00
gerrit
5c11aed655 ci: update network module based on commit ba54563
Change-Id: I587d656e20ed2ee8927ca2f5272ad715bed66740
(cherry picked from commit 20a531733ce240817610c9956af8f16dbe49d426)
2025-01-23 09:46:46 +08:00
tao wang
65d4d31bb3 FIX:fixed unable to pick color
jira:[for setting]

Change-Id: I877af3561fcbeb43b46202cb2b27b6522425a83f
(cherry picked from commit 5648ef61afdc1463e7dc80856a6e4a65e6a892c7)
2025-01-23 09:45:13 +08:00
tao wang
688b7697b3 FIX:disable some non existent methods
Change-Id: Ic5af8864bcb709f9f76303eb4a0f13b4789400b4
(cherry picked from commit 1f4dd2b2a89e0e2109b4ba3fa80e48a01a2bebaf)
2025-01-23 09:44:11 +08:00
tao wang
8eece6a66f NEW:Support setting filaments in printing
jira:[set filament]

Change-Id: Ib37896f9101d93ca63c7edb0b1e6328045a5ddb3
(cherry picked from commit fa2dbd7ada18bc806be845673cce9eb4559cda80)
2025-01-23 09:43:32 +08:00
gerrit
e9f9cf5c0a ci: update network module based on commit ce3b330
Change-Id: I5700edccc853075ea82118a3b9eed78e5c5f48e8
(cherry picked from commit 553028775ecb8c8338d5d32bff868ae43ac85852)
2025-01-23 09:43:16 +08:00
tao wang
66af62a194 ENH:Support for binding farm mode printers
jira:[for farm mode]

Change-Id: Icb2eb3f8435bcc1cabcb343ba040ce426eb50581
(cherry picked from commit f6a230869b020bcd149b7e2878cd33a4200c6a06)
2025-01-23 09:40:15 +08:00
chunmao.guo
d802379a9a FIX: liveview local missing ip dialog not show
Change-Id: Ie15bdf0ac20354aecb2e0dffe9471e12e0143aa9
(cherry picked from commit 4d7715cc116b37f0889729d6550c8aa1a5034b73)
2025-01-23 09:39:55 +08:00
gerrit
fcd6f3375c ci: update network module based on commit 053c1c1
Change-Id: I88b9699d48ad1e8da53f26ff549b1700bd60247b
(cherry picked from commit 76b5bc626ec1372e869649f35da84c4bbba0ea12)
2025-01-23 09:37:14 +08:00
maosheng.wei
b6c1adbb5d FIX: [6657] AMS humidity display title change
Jira: 6657

Change-Id: I88ed6f438211f741ec918bc35e6c10c3f2e23975
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>
(cherry picked from commit 60149a7322425d73904cc0713eed147e09f15e78)
2025-01-23 09:37:05 +08:00
chunmao.guo
b9eb1625f9 FIX: sleep before retry on file session lost
Change-Id: I924f0a370a2a8d6a9b5aa082cbe791fc2e1a18c5
Jira: STUDIO-7991
(cherry picked from commit 3b8ef667b106de60cba542ad5ceee5db8714fc3d)
2025-01-23 09:35:56 +08:00
chunmao.guo
f99116d251 FIX: change to 'Video Stopped'
Change-Id: Ie8ed7865719652998577d2801ad71bc7da1f634f
Jira: none
(cherry picked from commit 69ad831570601554589057983ba7c7caa7964cf2)
2025-01-23 09:34:40 +08:00
Stone Li
d9473fd384 FIX: fix network wired issue
JIRA: STUDIO-7534

Change-Id: I0b5d3764ebf61735238207adc2053ad45ce5ec1a
Signed-off-by: Stone Li <stone.li@bambulab.com>
(cherry picked from commit babda59caa2cb83ae993bfe87c865d7f61c6ab4b)
(cherry picked from commit ff22a8651580a637e42a6839ae364552354781e1)
2025-01-23 09:28:41 +08:00
Stone Li
c336ae660b ENH: parse net conf for network wired status
JIRA: STUDIO-5195

Change-Id: Ida3cd5c60b25d1eff4f04e324a74d63394a9ffeb
Signed-off-by: Stone Li <stone.li@bambulab.com>
(cherry picked from commit 6b6787b30736f87491171237a36c6badc8e51878)
(cherry picked from commit acfdcadac09f05f2e008340d485c4781744c95f9)
2025-01-23 09:28:35 +08:00
liberodark
1b1288c435 Sovol SV06 ACE Improvements (#8025)
* Sovol SV06 ACE Improves

* Sovol SV06 ACE Improves 1
2025-01-23 08:44:14 +08:00
SoftFever
0e2b30fddf Fix a typo 2025-01-22 23:59:46 +08:00
Noisyfox
b75473482b Fix issue that gizmo grabbers stop working (#8141)
Fix issue that gizmo grabbers stop working (SoftFever/OrcaSlicer#8139)
Follow up of a66fc86e20
2025-01-22 21:50:19 +08:00
SoftFever
1df52936f2 Merge branch 'main' into feature/OrcaFilamentLibrary 2025-01-22 21:42:13 +08:00
SoftFever
d1bc4e1e9f Allow each vendor's filament profile inherit from OrcaFilamentLibrary and many many fixes... 2025-01-22 21:40:42 +08:00
SoftFever
206c6228a5 Fix renamed_from feature and others 2025-01-22 21:40:42 +08:00
Noisyfox
06ba32e117 Make sure to move to prime tower before moving down (#8140)
Make sure to move to prime tower before moving down (SoftFever/OrcaSlicer#8120)
2025-01-22 20:52:09 +08:00
GlauTech
4f82fee592 Update TURKISH translations (#8117) 2025-01-22 14:45:40 +08:00
Shuwn Hsu
3064973b15 Comprehensive Update in Traditional Chinese (#8034) 2025-01-22 14:43:31 +08:00
Carlos Francisco Caruncho Serrano
f2beb56981 Update Spanish translation (#8024)
* Update OrcaSlicer_es.po

* some changes

* Some fixes

* More fixes

* More fixes and improves

* More fixes

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Traducción español Beta 2.1.0

* Update text.js

* Update OrcaSlicer_es.po

Cambiado punto por coma

* Minor fix PR

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update Spanish Language

* Updated strings

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Fixed Spanish Strings in English

Fixed a lot of string whose are translations were english to english.

* Some spanish strings improved

* Update Spanish Strings in RC

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Some fixes

* More fixes and improves

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

Cambiado punto por coma

* Update Spanish Language

* Some spanish strings improved

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Some fixes to PR

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Traducción español Beta 2.1.0

* Update text.js

* Minor fix PR

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Some fixes to PR

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Some fixes

* More fixes and improves

* Some spanish strings improved

* some changes

* Some fixes

* More fixes

* More fixes and improves

* Update OrcaSlicer_es.po

* Fixed Spanish Strings in English

Fixed a lot of string whose are translations were english to english.

* Some spanish strings improved

* Update Spanish Strings in RC

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Revert "Some Spanish Translation Fixes (#6115)"

This reverts commit c37a871dd2.

* Calibration: retraction test

* Fix a regression: Generic filament profiles conflicts #981

* support full_fan_speed_layer

* Support interface fan speed

* profile cover image reorg

* Traducción español Beta 2.1.0

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Some fixes to PR

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Revert "profile cover image reorg"

This reverts commit 041d41fa9f.

* Revert "Support interface fan speed"

This reverts commit a657d85121.

* Revert "support full_fan_speed_layer"

This reverts commit ac6dcadeb0.

* Revert "Fix a regression: Generic filament profiles conflicts #981"

This reverts commit 97118f8e94.

* Revert "Calibration: retraction test"

This reverts commit b210c29434.

* Update OrcaSlicer_es.po

* More fixes

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Final fixes

* Update OrcaSlicer_es.po

* Update Spanish Strings

* update

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update text.js

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Merge remote-tracking branch 'upstream/main' into spanish_translation

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Small Spanish string fixes

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

---------

Co-authored-by: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
Co-authored-by: SoftFever <103989404+SoftFever@users.noreply.github.com>
2025-01-22 14:42:38 +08:00
Thomas
9718d13c21 Adding Creality Hi printer (#7964)
* Adding Creality Hi files

* Added Creality Hi profiles

* Fixed profile issues

* Fixed profile

* Fixed profile

* Fixed build plate position

* Fixed build plate position

* Various fixes and optimizations.

* Add ASA and PETG -CF filaments.

* Various fixes/improvements

* Changed default flow for PLA HS

* Various fixes and optimisations.

* Disabled filament ramming
2025-01-22 14:37:42 +08:00
dependabot[bot]
f2e65f9d00 Bump WebFreak001/deploy-nightly from 3.1.0 to 3.2.0 (#7958)
Bumps [WebFreak001/deploy-nightly](https://github.com/webfreak001/deploy-nightly) from 3.1.0 to 3.2.0.
- [Release notes](https://github.com/webfreak001/deploy-nightly/releases)
- [Commits](https://github.com/webfreak001/deploy-nightly/compare/v3.1.0...v3.2.0)

---
updated-dependencies:
- dependency-name: WebFreak001/deploy-nightly
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-22 14:36:57 +08:00
Evan McBeth
c51f6edc54 Update README.md (#7806)
A trivial amendment to the initial graphics location to correct it from that of another fork, plus some trivial text edits to smooth reading.

Added a small text to encourage others to report spammy sites to the engines to have them eventually culled.
2025-01-22 14:33:35 +08:00
Tom
893b8cba16 Update build_deps.yml (check for existing directory tree and skips creation if exists) (#7337)
* Update build_deps.yml

Fixes "Build on Windows" so an error isn't thrown if the working directories already exist.

* Update build_deps.yml

* Update build_deps.yml
2025-01-22 14:24:11 +08:00
Patrick Carnahan
302b40af22 Port Quartercubic infill pattern (#7243)
* Ported Quarter Cubic infill pattern from Cura

* Code reformat
2025-01-22 14:22:22 +08:00
Noisyfox
880081226a Fix first layer tool ordering in print-by-object mode (#6664)
Fix first layer tool ordering in print-by-object mode (SoftFever/OrcaSlicer#6615)
2025-01-22 10:05:38 +08:00
Noisyfox
74cf736903 Fix issue that is_infill_first doesn't work correctly on regions (#8126)
Fix issue that `is_infill_first` doesn't work correctly on regions (SoftFever/OrcaSlicer#8111)
2025-01-22 10:04:03 +08:00
Noisyfox
68997f260f Fix auto-hide taskbar overlapping issue when maximized (#8118)
Fix auto-hide taskbar overlapping issue when maximized (SoftFever/OrcaSlicer#8085)
2025-01-22 10:03:53 +08:00
Noisyfox
16340fd6b6 FIX: step model split COMPOUND and COMPOUNSOLID type (#8084)
JIRA:STUDIO-5632

GITHUB: #3153
Change-Id: I1b9b49321cc0da8bdd79e2beb4009283cfada287
(cherry picked from commit 6191a66441549b1cee8be8d7f740c2d466557691)
(cherry picked from commit 90f325792dc4910b80d69c9d6a5677f24b8fa259)

Co-authored-by: Mack <yongfang.bian@bambulab.com>
2025-01-22 10:03:43 +08:00
Noisyfox
6cdede8e10 Fix reload step modifiers/parts (#8083)
* FIX: reload step file not work

JIRA:STUDIO-7282

GITHUB:#4247

fix commit ed34eaa

Change-Id: Ib73654052d8f0b6b917f86a910b4f91a0198f2d4
(cherry picked from commit 387ff008c85588f8ab378ffa283f428b2ff2ec8c)
(cherry picked from commit 539dea08854673045db779332fd1c2a0d994beda)

* FIX:reload stl from disk,transformation is error

jira: STUDIO-8391
Change-Id: Ic006973fe0f2b0c0208c391d064ab373fd15a772
(cherry picked from commit b5d18d4ae7a5b1c40e728ac93a96d36dabe83d42)

---------

Co-authored-by: Mack <yongfang.bian@bambulab.com>
Co-authored-by: zhou.xu <zhou.xu@bambulab.com>
2025-01-22 10:03:32 +08:00
Noisyfox
cef15842bb Fix arrange when print-by-object and have object off-plate (#8038)
* Fix arrange when print-by-object and have object off-plate (SoftFever/OrcaSlicer#7745)
Partly revert 0b6a1d3636

* Fix issue that fill bed with instance ignores print-by-object clearance (SoftFever/OrcaSlicer#5153)
2025-01-22 10:03:21 +08:00
Noisyfox
a66fc86e20 Fix issue that flatten gizmo faces not updated after reload from disk (#8036)
Fix issue that flatten gizmo faces not updated after reload from disk (SoftFever/OrcaSlicer#7791)
2025-01-22 10:03:08 +08:00
Noisyfox
61331ce113 Fix extruder number issue when SEMM is not enabled (#8027)
* Revert ac80575b28

* Fix issue that extruder number is not initialized properly when SEMM is not enabled
2025-01-22 10:02:57 +08:00
Noisyfox
fab7eaab49 Fix wrong custom gcode layer caused by rounding error (#8017)
Compare the custom gcode z to `0.5*(layer_z[n] + layer_z[n+1])` instead of `EPSILON`
to compensate float rounding error during gcode processing (SoftFever/OrcaSlicer#7834)
2025-01-22 10:02:22 +08:00
Noisyfox
64153c7968 Fix flow dynamics calib crash when last bed type is selected (#8014)
Fix flow dynamics calib crash when last bed type is selected (SoftFever/OrcaSlicer#7857)
2025-01-22 10:02:07 +08:00
Noisyfox
22dc0b1212 Update Emboss font preview alignment (#8013)
* Fix style preview size per resolution

(cherry picked from commit b67c4785f0d300b5615126ea1df1d518dd6d00b0)

* Align font preview to left. (closer to font name)

(cherry picked from commit eb9b8c0c2b112f0f7649e58f4f6d7977380b8442)

---------

Co-authored-by: Filip Sykala - NTB T15p <Filip.Sykala@Prusa3D.cz>
2025-01-22 10:01:54 +08:00
Noisyfox
c68e640d03 Fix crash on macOS that you could set extruder number to 0 (#8009)
Field: SpinCtrl: Removed code that was relevant for wxSpinCtrl, but not for the new SpinCtrl.
(fix for SPE-2050)

(cherry picked from commit 555193f6ec477d4107f8998c7a3c441cde72382c)

Co-authored-by: YuSanka <yusanka@gmail.com>
2025-01-22 10:01:30 +08:00
Noisyfox
f3fddcb225 Fix issue that support surfaces get filtered out unexpectly (#7988)
Fix issue that support surfaces get filtered out unexpectly (SoftFever/OrcaSlicer#7935)
2025-01-22 10:01:15 +08:00
Noisyfox
ec591dcef1 Fix per-object overhang slow down (#7976)
* Make sure the `m_extrusion_quality_estimator.set_current_object()` is called after regional config has been applied (SoftFever/OrcaSlicer#7946)

* Init `m_extrusion_quality_estimator` based on region config

* Revert "Make sure the `m_extrusion_quality_estimator.set_current_object()` is called after regional config has been applied (SoftFever/OrcaSlicer#7946)"

This reverts commit d13d4a47b7.

* Call `m_extrusion_quality_estimator.set_current_object` regardless, because that doesn't hurt

* Add a comment
2025-01-22 10:00:27 +08:00
Noisyfox
2253ab304a Fix arachne wall ordering (#7959)
* Revert "SPE-1950: Optimization of computation complexity of perimeter ordering for Arachne generator."

This reverts commit 47ec9b9b06.

* Revert "SPE-1963: Improve ordering of perimeters with Arachne perimeter generator"

This reverts commit babb84c70a.
2025-01-22 09:58:34 +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
Noisyfox
b488fdecec Fix issue that TIMELAPSE_TAKE_FRAME is recognized as tool change command (#7926)
Fix issue that `TIMELAPSE_TAKE_FRAME` is recognized as tool change command and triggers preheat (SoftFever/OrcaSlicer#7842)
2025-01-22 09:57:28 +08:00
Noisyfox
10b9928506 Fix issue that the support contact layer is printed in wrong filament (#7924)
Fix issue that the contact layer is printed in wrong filament when interface layer number is set to 0

Cherry-picked from prusa3d/PrusaSlicer@ca5f6da08d

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>
2025-01-22 09:57:05 +08:00
Shane Delmore
105a8444e9 capitalize support names in the UI for consistency (#8089)
Capitilize support labels for UI consistency
2025-01-21 08:48:39 +08:00
Heiko Liebscher
5ec8f51bd4 fix little typo Customize (#8069)
Customize
2025-01-20 20:44:30 +08:00
liberodark
1bd197df3a Anker Fix Name (#8029) 2025-01-20 20:42:51 +08:00
Dima Buzdyk
330ac879c1 gcode: keep line endins in post processing (#8092)
Some portions of GCode (like BTT_TFT thumbnails)  has to be CRLF in
order to work correctly. However, gcode post processor was ignoring
input line endings style emitting '\n' (LF) into post-processed output.
2025-01-20 10:34:03 +08:00
SoftFever
8188963e20 Merge branch 'main' into feature/OrcaFilamentLibrary 2025-01-19 00:41:34 +08:00
SoftFever
7179797d55 suport renamed_from 2025-01-19 00:39:45 +08:00
SoftFever
26a55a1267 Update profile valdiator 2025-01-16 19:25:43 +08:00
SoftFever
2ea2ab08de Fix flatpak build (#8056) 2025-01-16 00:17:38 +08:00
SoftFever
f8698d89a4 Move compatible_printers from developer mode to Advance mode 2025-01-15 22:54:56 +08:00
SoftFever
727a3887c5 Add Orca Filament Library 2025-01-15 22:40:27 +08:00
SoftFever
70579f9159 Fix "Too small ironing spacing" error in default config (#8053) 2025-01-15 20:06:14 +08:00
Azi
4c955e5cb5 enabled dependency setting for filament and process (#6235)
* enabled dependency setting for filament and process

* Add information about inheritance back to Dependencies tab

* Merge pull request #1 from michmela44/Add_inherits_to_dependencies

Add information about inheritance back to Dependencies tab

* Merge branch 'main' into feature/enable_profile_dependencies
2025-01-13 20:49:46 +08:00
Thomas
cd4a1e01ae Add Anycubic Kobra S1 profile (#7987)
* Prettified generic filament files

* Added Anycubic Kobra S1

* Enabled precise outer walls
2025-01-12 22:33:31 +08:00
SoftFever
bc03b95a78 fix missing "compatible_printers" error in RatRig BigNozzle TPU.json 2025-01-12 22:27:20 +08:00
SoftFever
51b5305ca4 Support Clang 2025-01-12 22:21:00 +08:00
Dima Buzdyk
e315586125 do not set project filename on object import (#7973) 2025-01-08 19:38:25 +08:00
discip
7f391bc1af Update OrcaSlicer.pot (#7949)
* Update OrcaSlicer.pot

Made sentence a bit clearer.

* Update PrintConfig.cpp

Made sentence a bit clearer.

* Update OrcaSlicer.pot

corrected previous expression

* Update PrintConfig.cpp

corrected previous expression
2025-01-08 14:37:13 +08:00
Marius Wachtler
2b95ef4e3b Fix some errors uncovered via compiler warnings (#7954)
* fix: tray_exist_bits != tray_exist_bits comparison

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

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

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

* fix: multi-character character constants need "

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

* fix: missing paranthesis - skips null check

* NFC: Remove this check it can never be false

* NFC: fix warning: statement has no effect
2025-01-08 13:06:39 +08:00
Diogo Santos
7834f78c90 Feature Ironing Inset added (#7969) 2025-01-08 11:35:08 +08:00
xiaoyeliu
ac80575b28 Fix:wrong extruder count by switching printers with tab (#7860)
1.Fix: wrong extruder_counts by Switching between multi-extruder printers using tabs 2. unneccessary unsaved dialog
2025-01-08 11:33:23 +08:00
Azi
599b0e09eb fixed a custom filament creation bug (#7965)
fixed a bug with custom filament creation where orca doesnt recognize capitalized letter in 'Nozzle' in the printer name
2025-01-08 09:09:35 +08:00
Shuwn Hsu
5f8da1086b Traditional Chinese update (#7948)
Correct the incorrect character “)”, and add some traditional Chinese translations.

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-01-07 23:44:18 +08:00
Heiko Liebscher
72f324f147 add new features to lang files (#7918) 2025-01-07 23:38:46 +08:00
Asim Siddiqui
77b8272c6a Added SUNLU filaments for Bambu Lab printers (#7890)
Added SUNLU PLA Matte, PLA+, PLA+ 2.0, Silk PLA+, Wood PLA, Marble PLA and PETG filaments for Bambu Lab printers

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-01-07 23:28:41 +08:00
Co Print 3D Printing Technologies
3e520c713c Add New Machine Profiles and Improve Existing Settings for Co Print ChromaSet 0.4 (#7889)
Add files via upload

Improved the existing 'Co Print ChromaSet 0.4 nozzle' and 'Co Print ChromaSet 0.4 nozzle fast' machine files. Added new machine files: 'Co Print ChromaSet 0.4 nozzle - Ender-3 V3' and 'Co Print ChromaSet 0.4 nozzle - Ender-3 V3 Plus'. Enhanced the '0.2mm Standard @Co Print ChromaSet 0.4' and '0.2mm Fast @Co Print ChromaSet 0.4' process files. Updated the 'CoPrint Generic PLA' file to ensure compatibility with the newly added machine files.

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-01-07 23:26:52 +08:00
Arne Keller
a90cc292e9 Fix compatibility with newer Boost (#7884)
* PrintBase.cpp: fix compatibility with newer Boost

* Plater.cpp: fix compatibility with newer Boost

* RemovableDriveManager.cpp: fix compatibility with newer Boost

* AuxiliaryDataViewModel.cpp: fix compatibility with newer Boost
2025-01-07 23:25:32 +08:00
Thomas
4e19c305ae Added French translations (#7869)
* Added French translations
2025-01-07 23:15:48 +08:00
Thomas
3375b53141 Qidi Plus4 profile improvements (#7868)
* Added new filament (PLA High Speed)

* Changed default infill to crosshatch

* Added precise wall option
2025-01-07 23:15:00 +08:00
kiniad
f7ee8642e9 Complete profile sets for Ratrig V-Core 4 - IDEX (#7855)
* Update 0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.4.json

it's HYBRID not HYBIRD

* Update 0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.5.json

it's HYBRID not HYBIRD

* Update 0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.6.json

it's HYBRID not HYBIRD

* Add files via upload

Adding process files for the 0.8 nozzle

* Add files via upload

machine profiles for 0.8 nozzle

* Update Ratrig.json

Added support for 0.8.nozle

* Add files via upload

Added filament profile for the more and more popular PCTG

* Update Ratrig.json

Add filament PCTG

* Update Ratrig.json

Filament setting for big (>0.4) nozzles

* Add files via upload

Filament setting for big (>0.4) nozzles

* Filament setting for big (>0.4) nozzles

Filament setting for big (>0.4) nozzles

* Optimized layer and extrusion values

Optimized layer and extrusion values

* New set of profiles for RatRig V-Core 4 - 400 IDEX

New developed set of profiles for RatRig V-Core 4 - 400 IDEX with virtual copy and mirror printers (with appropriate smaller build plates and idex commands)

* New set of profiles for RatRig V-Core 4 - 400 IDEX

New developed set of profiles for RatRig V-Core 4 - 400 IDEX with virtual copy and mirror printers (with appropriate smaller build plates and idex commands)

* New set of profiles for RatRig V-Core 4 - 400 IDEX

New developed set of profiles for RatRig V-Core 4 - 400 IDEX with virtual copy and mirror printers (with appropriate smaller build plates and idex commands)

* Profiles V-Core4 IDEX 300 + 500

Added profiles for Ratrig V-Core4 IDEX bedsize 300 and 500

* Profiles V-Core4 IDEX 300 + 500

Added profiles for Ratrig V-Core4 IDEX bedsize 300 and 500

* Complete profile sets for V-Core 4 - IDEX

Now the profile sets for V-Core 4 IDEX - size 300+400+500, all with copy and mirror mode, are completed.
(profiles are tested in real prints for V-Core 4 IDEX 400 including copy and mirror, 300+500 only calculated)

* Complete profile sets for V-Core 4 - IDEX

Now the profile sets for V-Core 4 IDEX - size 300+400+500, all with copy and mirror mode, are completed.
(profiles are tested in real prints for V-Core 4 IDEX 400 including copy and mirror, 300+500 only calculated)

* Updated Filament for large nozzles (>=0.6)

Added missing TPU for big nozzles

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-01-07 23:14:24 +08:00
Carlos Francisco Caruncho Serrano
18547fa6a1 Small Spanish String Fixes (#7845)
* Update OrcaSlicer_es.po

* Merge remote-tracking branch 'upstream/main' into Spanish_Translation

* Merge remote-tracking branch 'upstream/main' into Spanish_Translation

* some changes

* Merge remote-tracking branch 'upstream/main' into Spanish_Translation

* Some fixes

* More fixes

* More fixes and improves

* More fixes

* Merge remote-tracking branch 'upstream/main'

* Merge remote-tracking branch 'upstream/main'

* Update OrcaSlicer_es.po

* Merge branch 'main' of https://github.com/tadeu2/OrcaSlicer

* Merge remote-tracking branch 'upstream/main' into Spanish_Translation

* Merge remote-tracking branch 'upstream/main' into spanish_translation

* Update OrcaSlicer_es.po

* Merge remote-tracking branch 'upstream/main' into spanish_translation

* Merge remote-tracking branch 'upstream/main' into spanish_translation

* Traducción español Beta 2.1.0

* Update text.js

* Update OrcaSlicer_es.po

Cambiado punto por coma

* Merge remote-tracking branch 'upstream/main' into Spanish_Translation

* Merge remote-tracking branch 'upstream/main'

* Minor fix PR

* Update OrcaSlicer_es.po

* Merge remote-tracking branch 'upstream/main' into spanish_translation

* Update OrcaSlicer_es.po

* Merge remote-tracking branch 'upstream/main' into Spanish_Translation

* Update Spanish Language

* Updated strings

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Fixed Spanish Strings in English

Fixed a lot of string whose are translations were english to english.

* Some spanish strings improved

* Merge remote-tracking branch 'upstream/main' into Spanish_Translation

* Update Spanish Strings in RC

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Merge remote-tracking branch 'upstream/main' into spanish_translation

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Merge remote-tracking branch 'upstream/main' into Spanish_Translation

* Update OrcaSlicer_es.po

* Merge branch 'Spanish_Translation'

* Update OrcaSlicer_es.po

* Some fixes

* More fixes and improves

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

Cambiado punto por coma
2025-01-07 23:09:37 +08:00
pwnept
8da0d1bd86 Fix printer gcode setting bed temp to nozzle temp Raise3D Pro3 (#7756)
* Fix start gcode setting bed temp to nozzle temp for Raise3D Pro3 Plus left nozzle

Edited Raise3D Pro3 Plus 0.4 nozzle (Left).json
Replaced S{nozzle_temperature_initial_layer[0]} with S[bed_temperature_initial_layer_single] for M140 and M190

* Fix start gcode setting bed temp to nozzle temp for Raise3D Pro3 left nozzle

Edited Raise3D Pro3 0.4 nozzle (Left).json
Replaced S{nozzle_temperature_initial_layer[0]} with S[bed_temperature_initial_layer_single] for M140 and M190

* Update Raise3D Pro3 Plus 0.4 nozzle (Left).json

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-01-07 23:09:24 +08:00
Trent Bartlem
b73d3866b5 add dependabot (#7752)
* Create dependabot.yml

* Update dependabot.yml
2025-01-07 22:58:29 +08:00
Bhall338
a96aad1fda 7607 k2plus filament change gcode (#7713)
* added change g-code

* adjusted change_filament_gcode for all k2 profiles

* Merge branch 'main' into 7607-k2plus-filament-change-gcode

* Merge branch 'main' into 7607-k2plus-filament-change-gcode

* Merge branch 'main' into 7607-k2plus-filament-change-gcode

* Merge branch 'main' into 7607-k2plus-filament-change-gcode

* Merge branch 'main' into 7607-k2plus-filament-change-gcode

* Merge branch 'main' into 7607-k2plus-filament-change-gcode

* Merge branch 'main' into 7607-k2plus-filament-change-gcode

* removed extra space on new line characters. to exeactly match creality print

* Merge branch 'main' into 7607-k2plus-filament-change-gcode

* Merge branch 'main' into 7607-k2plus-filament-change-gcode

* disabled filamanet ramming and cleared Single Extruder Paramaters

* Merge branch '7607-k2plus-filament-change-gcode' of https://github.com/brandonfhall/OrcaSlicer into 7607-k2plus-filament-change-gcode

* Merge branch 'main' into 7607-k2plus-filament-change-gcode

* Merge branch 'main' into 7607-k2plus-filament-change-gcode
2025-01-07 22:53:14 +08:00
whoseyoung
9b68c695d7 Updated some configurations for the Geeetech M1 machine (#7481)
Updated some configurations for the M1 machine

Fixed an issue where incorrect parameters on the M1 machine caused slicing to fail.
2025-01-07 22:46:02 +08:00
SoftFever
d4580e7a32 free mac space (#7939)
# 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-01-07 07:49:57 +08:00
SoftFever
adba9a0280 Update build_orca.yml 2025-01-07 07:49:43 +08:00
SoftFever
5b1bc5c0ef free mac space 2025-01-06 23:53:33 +08:00
SoftFever
99a0facfb3 Check missing compatible_printers error 2025-01-06 20:56:07 +08:00
SoftFever
ab5aeb49d2 Fix profiles with missing compatible printers (#7938)
# Description
Filaments that don't have compatible printers defined will invalidate
filter in filament selection UI
This PR:
1. Fix profiles with missing compatible printers attributes
2. Change code logic so that we don't show such filaments 

# Screenshots/Recordings/Graphs

![Screenshot 2025-01-01
000512](https://github.com/user-attachments/assets/ccfd99f0-fe7b-4420-a808-d3f8d85e4aca)


## Tests

<!--
> Please describe the tests that you have conducted to verify the
changes made in this PR.
-->
2025-01-06 20:55:19 +08:00
SoftFever
b32f2b2237 Fix profiles with missing compatible printers
Hide filaments with missing compatible printers by default
2025-01-06 20:50:54 +08:00
SoftFever
9a5c43e24f Update Arachne algorithm from PrusaSlicer 2.9 (#7819)
See individual commits for change details
2025-01-06 14:20:43 +08:00
Noisyfox
333ed4c34d Fix flatpack build 2025-01-06 09:07:58 +08:00
SoftFever
4c1a42e2e8 Merge branch 'main' into dev/arachen-sync 2025-01-05 23:47:38 +08:00
Ioannis Giannakas
e62d6a3b68 Enhancement: ERS - segment length - convert to float (#7400)
Enhancement: ERS segment length - convert to float

To allow splitting of line segments down to 0.5mm for improved external surface finish.

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-01-05 23:23:11 +08:00
Ioannis Giannakas
bb009eaa99 Enhancement: ERS - Option to limit ERS to external perimeters and overhangs only (#7399)
* Option to limit ERS to external perimeters and overhangs only

* Label name

* Label update

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

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

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

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

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

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

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

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

* Merge branch 'main' into Limit-ERS-to-external-perimeters-and-overhangs
2025-01-05 23:19:00 +08:00
Ioannis Giannakas
67cc143916 Optimisation: ERS - Reduce redundant gcode commands from extrusion rate smoothing (#7398)
* Optimisation: Reduce volume of output gcode commands for pressure equalizer

* Update thresholds

* Update PrintConfig.cpp

* Merge branch 'main' into Optimisation-Reduce-reduntant-gcode-commands-produced-by-Estrusion-Rate-Smoothing

* Merge branch 'SoftFever:main' into Optimisation-Reduce-reduntant-gcode-commands-produced-by-Estrusion-Rate-Smoothing

* Merge branch 'SoftFever:main' into Optimisation-Reduce-reduntant-gcode-commands-produced-by-Estrusion-Rate-Smoothing

* Merge branch 'SoftFever:main' into Optimisation-Reduce-reduntant-gcode-commands-produced-by-Estrusion-Rate-Smoothing

* Merge branch 'main' into Optimisation-Reduce-reduntant-gcode-commands-produced-by-Estrusion-Rate-Smoothing

* Merge branch 'SoftFever:main' into Optimisation-Reduce-reduntant-gcode-commands-produced-by-Estrusion-Rate-Smoothing

* Merge branch 'main' into Optimisation-Reduce-reduntant-gcode-commands-produced-by-Estrusion-Rate-Smoothing

* Merge branch 'SoftFever:main' into Optimisation-Reduce-reduntant-gcode-commands-produced-by-Estrusion-Rate-Smoothing

* Merge branch 'main' into Optimisation-Reduce-reduntant-gcode-commands-produced-by-Estrusion-Rate-Smoothing
2025-01-05 23:05:04 +08:00
Eryone
604ded5ff0 Add profiles for new printer Eryone Thinker X400 (#7365)
* add printer Eryone Thinker X400

add printer Eryone Thinker X400

* Update fdm_process_common.json

replace zig-zag

* Update Thinker X400_cover.png
2025-01-05 13:36:20 +08:00
Lin Yu-Chieh (Victor)
f0e773f891 Revise OrcaSlicer_zh_TW.po (#6790)
* Update OrcaSlicer_zh_TW.po

* Update OrcaSlicer_zh_TW.po

up to L3875

* Update OrcaSlicer_zh_TW.po

up to L7955

* Merge branch 'main' into main

* Update OrcaSlicer_zh_TW.po

L7817

* Update OrcaSlicer_zh_TW.po

L10000

* Update OrcaSlicer_zh_TW.po

L11567

* Update OrcaSlicer_zh_TW.po

L12684

* Update OrcaSlicer_zh_TW.po

L15950

* Revised fuzzy

L335

* Update OrcaSlicer_zh_TW.po

* Update OrcaSlicer_zh_TW.po

* Update OrcaSlicer_zh_TW.po

* Update OrcaSlicer_zh_TW.po

* Update OrcaSlicer_zh_TW.po

* Update OrcaSlicer_zh_TW.po

* Update OrcaSlicer_zh_TW.po

* Merge branch 'main' into main

* Update OrcaSlicer_zh_TW.po

* Update OrcaSlicer_zh_TW.po

* Update OrcaSlicer_zh_TW.po

* Update OrcaSlicer_zh_TW.po
2025-01-03 23:18:45 +08:00
SoftFever
d1dfcbe168 aesthetic change for build info (#7896)
aesthetic change
2025-01-03 00:54:17 +08:00
ElectricalBoy
091ab68811 Display Commit ID Used for Build in AboutDialog (#6516)
* Display commit ID used for build in AboutDialog

* Dynamically check for snapshots

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-01-03 00:38:25 +08:00
Mike Bignell
02438e25bc Update calib_dlg.cpp (#7867)
Added values for missing PCTG temperature range. Fixes bug #7323 which caused subsiquent values to not be correct.
2025-01-02 17:47:21 +08:00
Ioannis Giannakas
2f55dd7cfe Fix regressions with introduction of supertak plate for non BBL printers. Generalised plate title. (#7883) 2025-01-01 22:34:38 +08:00
SoftFever
83eb1366c7 Feature/flatpak improvement (#7692)
# 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.
-->
2024-12-31 14:44:39 +08:00
SoftFever
3e13ee049d revert version 2024-12-31 14:42:30 +08:00
SoftFever
4d5944090f nightly build 2024-12-31 12:54:16 +08:00
SoftFever
8219b55392 12 2024-12-31 11:28:31 +08:00
SoftFever
efa6fc9b8c 11 2024-12-30 23:35:06 +08:00
SoftFever
00eeab93fb Merge branch 'main' into feature/flatpak_improvement 2024-12-30 23:07:20 +08:00
Noisyfox
cbc04e944c Merge branch 'main' into dev/arachen-sync 2024-12-27 08:54:05 +08:00
SoftFever
42c10fc6d8 Exclude movements before first extrusion from layer time calculation (#7215)
Fixes #7171

If layer starts with a color change, the full layer time will be much longer, which will trick the slicer to think this layer has enough cooling time. However the actual filament extrusion time (the real "printing" part) won't necessarily have enough time to cool down, so if we don't do extra slowing down before starting next layer, the filament could still be soft and lead to worse surface quality.

Please refer to https://github.com/SoftFever/OrcaSlicer/issues/7171 for extra discussions and details.

![image](https://github.com/user-attachments/assets/b31e9e04-12bb-450e-8b9c-a560549ec35d)
Before:
![image](https://github.com/user-attachments/assets/627f767a-6f48-4317-be50-14e78293ef0a)
After:
![image](https://github.com/user-attachments/assets/376c2b92-e417-4e27-9dcd-db7f6300fc56)


The test project is modified from https://github.com/SoftFever/OrcaSlicer/issues/7171
2024-12-25 23:49:11 +08:00
SoftFever
f3b2dc26f5 Merge branch 'main' into bugfox/layer-cooling 2024-12-25 23:43:09 +08:00
Noisyfox
91fbd1a417 Merge branch 'main' into dev/arachen-sync 2024-12-25 08:54:30 +08:00
Filipe Laíns 🇵🇸
aa1f1dfcc0 Fix boost_log_setup link errors on libslic3r_cgal (#6690)
Signed-off-by: Filipe Laíns <lains@riseup.net>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-12-24 22:18:33 +08:00
Ruslan Kyba
cf1039be36 Update Ukrainian Localization (#7829)
* Update OrcaSlicer_uk.po

* chore: update

* Update OrcaSlicer_uk.po
2024-12-24 22:06:31 +08:00
Noisyfox
b9432f4247 Update anti-vibration algorithm from PrusaSlicer (#7818)
* SPE-1950: Reimplement algorithm for filtering vibrating extractions inside the ensuring infill to make it less computation complex.

Cherry-picked from prusa3d/PrusaSlicer@b3510ac808

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

* Remove unused file

---------

Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
2024-12-24 22:05:22 +08:00
Noisyfox
8ff64f3751 Fix rare Arachne crash due to invalid voronoi diagram (#7817)
Revert the changes BBL made for diagram fix, because this happens! (SoftFever/OrcaSlicer#7815)

(cherry picked from commit f2f827c175)
2024-12-24 22:04:30 +08:00
Noisyfox
35ecb8ab4a Fan mover: Ignore non-part cooling fans (SoftFever/OrcaSlicer#7171) (#7193)
* Fan mover: Ignore non-part cooling fans (SoftFever/OrcaSlicer#7171)

* Update comment
2024-12-24 21:35:28 +08:00
Samit Mohnot
1cf90efe03 Many Docker Building Fixes/Improvements (#6552)
* Update DockerBuild.sh

Ensure that the X11 server allows connections from the Docker container.

* Update DockerBuild.sh

Removed fix for X11. Will add to DockerRun.sh

* Update DockerRun.sh

Added help comment to fix and ensure that your X11 server allows connections from the Docker container.

* linxu build with docker in readme

Add build on linux with docker section

* Update README.md

* Update README.md

* Update README.md

remove low ram thing

* Update Dockerfile

---------

Co-authored-by: samthebest699 <106000727+samthebest699@users.noreply.github.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-12-24 21:18:24 +08:00
Filipe Laíns 🇵🇸
5115ceb8f8 Fix dynamic linking Boost on Arch Linux (#6697)
Fix dynamic linking Boost

Signed-off-by: Filipe Laíns <lains@riseup.net>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-12-24 15:40:55 +08:00
Filipe Laíns 🇵🇸
ba1752680c Fix a compilation error in the debug build (#6689)
Fix debug builds

Signed-off-by: Filipe Laíns <lains@riseup.net>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-12-24 10:40:33 +08:00
Noisyfox
1c68e19aca Update to latest code from PS 2024-12-22 20:52:02 +08:00
Noisyfox
6575bd1ead SPE-1837: Fixed issue when perimeters weren't generated with Arachne.
Cherry-picked from prusa3d/PrusaSlicer@6df4891e6c

Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
2024-12-22 20:51:15 +08:00
Noisyfox
f2f827c175 Revert the changes BBL made for diagram fix, because this happens! (SoftFever/OrcaSlicer#7815) 2024-12-22 18:53:36 +08:00
Noisyfox
71304368d0 Update to latest PS code 2024-12-22 18:52:23 +08:00
Noisyfox
5d1583db85 Apply fix includes.
Cherry-picked from prusa3d/PrusaSlicer@919740fb3e

Co-authored-by: Martin Šach <martin.sachin@gmail.com>
2024-12-22 18:50:00 +08:00
Noisyfox
47ec9b9b06 SPE-1950: Optimization of computation complexity of perimeter ordering for Arachne generator.
The previous implementation during the grouping of perimeters using depth-first searches unnecessarily searched nodes that had no impact on grouping, which significantly increased the search space.

Cherry-picked from prusa3d/PrusaSlicer@86309ba939

Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
2024-12-22 18:36:06 +08:00
Noisyfox
babb84c70a SPE-1963: Improve ordering of perimeters with Arachne perimeter generator
Especially in cases when the object is composed only of 2 external perimeters and 1 or 2 internal perimeters, the order of perimeters wasn't optimal and differed from the Classic perimeter generator. That caused unnecessary long travels before the external contour was printed.

The ordering of perimeters is slightly inspired by the latest changes in CuraEngine.

Cherry-picked from prusa3d/PrusaSlicer@10875082de

Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
2024-12-22 18:36:06 +08:00
Noisyfox
4b739539a4 SPE-2298: Add detection of Voronoi diagram with parabolic edge without a focus point.
Cherry-picked from prusa3d/PrusaSlicer@c44ffed475

Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
2024-12-22 17:01:54 +08:00
Noisyfox
44e53c90f0 Add missing header guards to VoronoiVisualUtils.
Cherry-picked from prusa3d/PrusaSlicer@34d9b0678b

Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
2024-12-22 16:45:37 +08:00
Noisyfox
862acea2af SPE-2298: Fix crash caused by a numerical issue during testing if a Voronoi vertex is inside a corner of a polygon.
Cherry-picked from prusa3d/PrusaSlicer@669c931b77

Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
2024-12-22 16:44:36 +08:00
Noisyfox
3a43050ad1 Remove some unused functions from Arachne perimeter generator.
Cherry-picked from prusa3d/PrusaSlicer@e704d8216d

Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
2024-12-22 16:32:24 +08:00
Ioannis Giannakas
d7789282b9 Fixes for Xcode 16.0 debugger crashing (with relwithdebinfo) (#6932)
* Fixes for XCode 16.0

* Merge branch 'main' into Xcode-16-debug-fixes

* Merge branch 'SoftFever:main' into Xcode-16-debug-fixes

* Merge branch 'main' into Xcode-16-debug-fixes

* Merge branch 'SoftFever:main' into Xcode-16-debug-fixes

* Merge branch 'SoftFever:main' into Xcode-16-debug-fixes

* Merge branch 'SoftFever:main' into Xcode-16-debug-fixes

* Merge branch 'main' into Xcode-16-debug-fixes
2024-12-21 22:39:21 +08:00
Noisyfox
fb19c6a904 Fix Prime volume missing on BBL printers (#7808)
* Fix BBL profile issue (SoftFever/OrcaSlicer#7751)

* Revert some unsupported properties from 559d5fe931
2024-12-21 22:31:11 +08:00
InfimechOfficial
54abbe85be Fix processes and filaments some params (#7793)
* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_process_common.json

* Update fdm_process_common_HSN.json

* Update fdm_machine_common.json

* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_klipper_common.json

* Update fdm_process_common.json

* Update fdm_process_common_HSN.json

* Update InfiMech Generic PLA.json

* Update Other PLA.json

* Update fdm_filament_pla.json

* Update fdm_filament_pla_Hyper.json

* Update fdm_filament_pla_Hyper_other.json

* Update fdm_filament_pla_other.json

* Update fdm_process_common.json

* Update fdm_process_common_HSN.json

* Update 0.08mm Extra Fine @InfiMech TX.json

* Update 0.12mm Fine @InfiMech TX.json

* Update 0.16mm Optimal @InfiMech TX.json

* Update 0.16mm Optimal @InfiMech TX HSN.json

* Update 0.12mm Fine @InfiMech TX HSN.json

* Update 0.08mm Extra Fine @InfiMech TX HSN.json

* Update 0.08mm Extra Fine @InfiMech TX HSN.json

* Update 0.08mm Extra Fine @InfiMech TX.json

* Update 0.12mm Fine @InfiMech TX.json

* Update 0.12mm Fine @InfiMech TX HSN.json

* Update 0.16mm Optimal @InfiMech TX HSN.json

* Update 0.16mm Optimal @InfiMech TX.json

* Update fdm_filament_abs.json

* Update fdm_filament_abs_other.json

* Update fdm_filament_pa.json

* Update fdm_filament_pa_other.json

* Update fdm_filament_pc.json

* Update fdm_filament_pc_other.json

* Update fdm_filament_pet.json

* Update fdm_filament_pet_other.json

* Update fdm_filament_pla.json

* Update fdm_filament_pla_Hyper.json

* Update fdm_filament_pla_Hyper_other.json

* Update fdm_filament_pla_other.json

* Update fdm_filament_tpu.json

* Update fdm_filament_tpu_other.json

* Update fdm_filament_pla_other @HSN.json

* Update fdm_filament_pla_Hyper @HSN.json

* Update fdm_filament_pla_Hyper_other @HSN.json

* Update fdm_filament_pla @HSN.json

* Update fdm_filament_tpu @HSN.json

* Update fdm_filament_tpu_other @HSN.json

* Update InfiMech Generic PETG.json

* Update Other PETG.json

* Update InfiMech PETG @HSN.json

* Update Other PETG @HSN.json

* Update fdm_filament_pet @HSN.json

* Update fdm_filament_pet_other @HSN.json

* Update fdm_filament_pet.json

* Update fdm_filament_pet_other.json

* Update InfiMech Generic PLA.json

* Update Other PLA.json

* Update Other PLA @HSN.json

* Update InfiMech PLA @HSN.json
2024-12-20 16:55:32 +08:00
vipulrajan
0a45e3348a added a doc file explaining slicing call hierarchy (#7796) 2024-12-20 16:54:53 +08:00
FlyingbearOfficial
c52b845c36 fix some params from processes and filaments (#7801)
* Update FlyingBear S1 0.4 nozzle.json

* Update 0.16mm Optimal @FlyingBear Reborn3.json

* Update 0.16mm Optimal @FlyingBear S1.json

* Update fdm_process_common.json

* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_process_common.json

* Update fdm_process_common_S1.json

fix some parameters

* Update fdm_process_common.json

* Update FlyingBear S1 0.4 nozzle.json

* Update 0.08mm Extra Fine @FlyingBear S1.json

* Update 0.12mm Fine @FlyingBear S1.json

* Update 0.16mm Optimal @FlyingBear S1.json

* Update 0.20mm Standard @FlyingBear S1.json

* Update 0.24mm Draft @FlyingBear S1.json

* Update 0.08mm Extra Fine @FlyingBear Reborn3.json

* Update 0.12mm Fine @FlyingBear Reborn3.json

* Update 0.16mm Optimal @FlyingBear Reborn3.json

* Update 0.20mm Standard @FlyingBear Reborn3.json

* Update 0.24mm Draft @FlyingBear Reborn3.json

* Update FlyingBear S1 0.4 nozzle.json

* Update fdm_process_common_S1.json

* Update fdm_process_common.json

* Update 0.08mm Extra Fine @FlyingBear S1.json

* Update 0.12mm Fine @FlyingBear S1.json

* Update 0.16mm Optimal @FlyingBear S1.json

* Update 0.08mm Extra Fine @FlyingBear Reborn3.json

* Update 0.12mm Fine @FlyingBear Reborn3.json

* Update 0.16mm Optimal @FlyingBear Reborn3.json

* Update FlyingBear S1 0.4 nozzle.json

fix zhop type

* Update fdm_machine_common.json

fix zhop type

* Update fdm_process_common_S1.json

* Update fdm_process_common.json

* Update FlyingBear Generic PLA.json

* Update FlyingBear PLA @S1.json

* Update Other PLA @S1.json

* Update fdm_filament_pla @S1.json

* Update fdm_filament_pla_Hyper @S1.json

* Update fdm_filament_pla_other @S1.json

* Update fdm_filament_pla_Hyper_other @S1.json

* Update fdm_filament_pla.json

* Update fdm_filament_pla_Hyper.json

* Update fdm_process_common_S1.json

* Update fdm_process_common.json

* Update fdm_machine_common.json

* Update fdm_klipper_common.json

* Update 0.08mm Extra Fine @FlyingBear S1.json

* Update 0.08mm Extra Fine @FlyingBear Reborn3.json

* Update 0.08mm Extra Fine @FlyingBear S1.json

* Update 0.08mm Extra Fine @FlyingBear Reborn3.json

* Update 0.12mm Fine @FlyingBear Reborn3.json

* Update 0.12mm Fine @FlyingBear S1.json

* Update 0.16mm Optimal @FlyingBear S1.json

* Update 0.16mm Optimal @FlyingBear Reborn3.json

* Update fdm_filament_pla.json

* Update fdm_filament_pla_Hyper.json

* Update fdm_filament_abs.json

* Update fdm_filament_pc.json

* Update fdm_filament_pet.json

* Update fdm_filament_pa.json

* Update fdm_filament_tpu.json

* Update fdm_filament_abs @S1.json

* Update fdm_filament_abs_other @S1.json

* Update fdm_filament_pa @S1.json

* Update fdm_filament_pa_other @S1.json

* Update fdm_filament_pc @S1.json

* Update fdm_filament_pc_other @S1.json

* Update fdm_filament_pet @S1.json

* Update fdm_filament_pet_other @S1.json

* Update fdm_filament_pla @S1.json

* Update fdm_filament_pla_other @S1.json

* Update fdm_filament_pla_Hyper @S1.json

* Update fdm_filament_pla_Hyper_other @S1.json

* Update fdm_filament_tpu @S1.json

* Update fdm_filament_tpu_other @S1.json

* Update fdm_filament_tpu.json

* Update FlyingBear PETG @S1.json

* Update Other PETG @S1.json

* Update Other PETG @S1.json

* Update FlyingBear PETG @S1.json

* Update FlyingBear Generic PETG.json

* Update fdm_filament_pet.json

* Update fdm_filament_pet @S1.json

* Update fdm_filament_pet_other @S1.json

* Update FlyingBear Generic PLA.json

* Update FlyingBear PLA @S1.json

* Update Other PLA @S1.json
2024-12-20 16:53:57 +08:00
Noisyfox
27ec1980bc Arachne: Fix an arithmetic overflow that causing extra points outside plate (#7330)
* Arachne: Fix an arithmetic overflow that causing extra points outside the plate (SoftFever/OrcaSlicer#7321)

* Better way of avoiding overflow, works in Release mode as well

* Fix debug build

* Fix build
2024-12-18 21:32:41 +08:00
Tyler Satre
543e85019a Fix Devcontainer for ARM Mac (#7723)
* Update devcontainer.json

* Create Dockerfile
2024-12-17 22:11:48 +08:00
KrisMorr
5635266fbb update Polish translation + fix typo (#7746)
* update Polish translations+typo

* Update OrcaSlicer_pl.po

typo
2024-12-17 22:09:56 +08:00
SoftFever
9d8d156fec Fix errors in Volumic profiles (#7772)
# 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.
-->
2024-12-17 21:51:50 +08:00
SoftFever
add157d104 Fix errors 2024-12-17 21:49:29 +08:00
xiaoyeliu
3b73ad875d fix: create custom filament (#7477) 2024-12-15 00:49:28 +08:00
SoftFever
559d5fe931 update BBL profile to "01.10.01.50" (#7629)
# Description

This PR updates the profiles for BambuLab to the versions shipped in
[01.10.01.50](https://github.com/bambulab/BambuStudio/releases) (which
at time of writing is the latest version).

These includes new profiles for:
 - BambuLab ASA-CF
 - BambuLab TPU for AMS
 - Polymaker Fiberon PA12-CF
 - Polymaker Fiberon PA6-CF
 - Polymaker Fiberon PA6-GF
 - Polymaker Fiberon PA612-CF
 - Polymaker Fiberon PET-CF
 - Polymaker Fiberon PETG-ESD
 - Polymaker Fiberon PETG-rCF
 - multiple new generic filaments

And additionally also changes for there Bambu Cool Plate SuperTack
2024-12-14 20:25:10 +08:00
SoftFever
8bb8b30053 Merge branch 'main' into main 2024-12-14 20:21:34 +08:00
FlyingbearOfficial
c9606a9458 fix some params about temps and processes something (#7459)
* Update FlyingBear S1 0.4 nozzle.json

* Update 0.16mm Optimal @FlyingBear Reborn3.json

* Update 0.16mm Optimal @FlyingBear S1.json

* Update fdm_process_common.json

* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_process_common.json

* Update fdm_process_common_S1.json

fix some parameters

* Update fdm_process_common.json

* Update FlyingBear S1 0.4 nozzle.json

* Update 0.08mm Extra Fine @FlyingBear S1.json

* Update 0.12mm Fine @FlyingBear S1.json

* Update 0.16mm Optimal @FlyingBear S1.json

* Update 0.20mm Standard @FlyingBear S1.json

* Update 0.24mm Draft @FlyingBear S1.json

* Update 0.08mm Extra Fine @FlyingBear Reborn3.json

* Update 0.12mm Fine @FlyingBear Reborn3.json

* Update 0.16mm Optimal @FlyingBear Reborn3.json

* Update 0.20mm Standard @FlyingBear Reborn3.json

* Update 0.24mm Draft @FlyingBear Reborn3.json

* Update FlyingBear S1 0.4 nozzle.json

* Update fdm_process_common_S1.json

* Update fdm_process_common.json

* Update 0.08mm Extra Fine @FlyingBear S1.json

* Update 0.12mm Fine @FlyingBear S1.json

* Update 0.16mm Optimal @FlyingBear S1.json

* Update 0.08mm Extra Fine @FlyingBear Reborn3.json

* Update 0.12mm Fine @FlyingBear Reborn3.json

* Update 0.16mm Optimal @FlyingBear Reborn3.json

* Update FlyingBear S1 0.4 nozzle.json

fix zhop type

* Update fdm_machine_common.json

fix zhop type

* Update fdm_process_common_S1.json

* Update fdm_process_common.json

* Update FlyingBear Generic PLA.json

* Update FlyingBear PLA @S1.json

* Update Other PLA @S1.json

* Update fdm_filament_pla @S1.json

* Update fdm_filament_pla_Hyper @S1.json

* Update fdm_filament_pla_other @S1.json

* Update fdm_filament_pla_Hyper_other @S1.json

* Update fdm_filament_pla.json

* Update fdm_filament_pla_Hyper.json

* Update fdm_process_common_S1.json

* Update fdm_process_common.json

* Update fdm_machine_common.json

* Update fdm_klipper_common.json
2024-12-14 15:27:09 +08:00
InfimechOfficial
2533e95004 fix z_hop type (#7466)
* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_process_common.json

* Update fdm_process_common_HSN.json

* Update fdm_machine_common.json

* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_klipper_common.json

* Update fdm_process_common.json

* Update fdm_process_common_HSN.json

* Update InfiMech Generic PLA.json

* Update Other PLA.json

* Update fdm_filament_pla.json

* Update fdm_filament_pla_Hyper.json

* Update fdm_filament_pla_Hyper_other.json

* Update fdm_filament_pla_other.json

* Update fdm_process_common.json

* Update fdm_process_common_HSN.json
2024-12-14 15:26:36 +08:00
xiaoyeliu
1af51d66c6 Fix: Switching between multi-extruder printers using tabs can cause t… (#7483)
fix: Switching between multi-extruder printers using tabs can cause the filament count to be incorrect.
2024-12-14 14:38:35 +08:00
discip
ef28de69a5 reordering and renaming certain menu items (#7573)
* reordered Z-Hop settings

* Update Tab.cpp

* Update PrintConfig.cpp

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

Jira: none

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

* NEW:add SuperTack svg

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

---------

Co-authored-by: zhou.xu <zhou.xu@bambulab.com>
2024-12-14 14:16:24 +08:00
Franz Schwartau
8cc7a8c8a3 fix: allow build on Fedora >= 40 (#7710) 2024-12-14 11:19:09 +08:00
Franz Schwartau
fac32eca7d fix: Don't exit if libgtk is not found (#7711) 2024-12-14 11:18:13 +08:00
Adam Johnston
97c60be44b Fix some broken assertions (#7716)
Fix broken asserts
2024-12-14 11:17:20 +08:00
Ferdinand Linnenberg
dbea5f8229 Merge branch 'main' into main 2024-12-12 17:43:59 +01:00
Ferdinand Linnenberg
b122c173fe fix: order 2024-12-12 15:55:35 +01:00
Ferdinand Linnenberg
5da8a8f3bc fix: restore Project.xml 2024-12-12 15:54:13 +01:00
Ferdinand Linnenberg
579a79d545 fix: remove cmake-build-debug 2024-12-12 15:53:13 +01:00
Ferdinand Linnenberg
46d93bbace fix: re-add generic 2024-12-12 15:50:47 +01:00
SoftFever
5ec57d694a Update Creality Generic TPU.json (#7655)
Added Ender 3 S1 series to compatible printers

# Description

Ender 3 S1 Series are direct drive printers, they can print TPU without
any issues
2024-12-12 22:49:18 +08:00
SoftFever
b4df3c9093 Merge branch 'main' into patch-1 2024-12-12 22:35:18 +08:00
SoftFever
5b1b2884bf Merge branch 'main' into main 2024-12-12 22:21:46 +08:00
SoftFever
0a19a7cdee Update Qidi logo 2024-12-12 22:21:17 +08:00
SoftFever
3f54fd0a26 Merge branch 'main' into main 2024-12-12 22:17:31 +08:00
SoftFever
d74a2990ec Fix overlapping regions caused by "Make Overhangs printable" (#7630)
Fix #7622

Old:

![image](https://github.com/user-attachments/assets/141476b5-6c1d-4c49-8a64-b02c19a27161)
New:

![image](https://github.com/user-attachments/assets/f58e634b-380c-4b26-9c76-96813e2c55bf)

![image](https://github.com/user-attachments/assets/2633d03a-d66c-4b66-af22-8c03d521cb25)
2024-12-12 22:07:48 +08:00
SoftFever
44d8c51d2e Merge branch 'main' into main 2024-12-12 22:02:35 +08:00
SoftFever
1acb6833b8 new feature translation de and new msgids for all (#7628)
new feature translation de 
add new mgsids
2024-12-12 22:01:54 +08:00
SoftFever
b41eb80216 VOLUMIC 3D printers series profils (#7585)
Print profils for VOLUMIC 3D printers model SC2, MK3, EXO42, EXO65 and
SH65, and VOLUMIC Ultra materials.
2024-12-12 22:01:14 +08:00
SoftFever
ba8270d1c0 Merge branch 'main' into main 2024-12-12 21:59:42 +08:00
SoftFever
0962ce9b8b Update russian localization (#7731)
Fix a typo in russian localization
2024-12-12 21:59:06 +08:00
Vladimir Gamalyan
133c5347f6 Update OrcaSlicer_ru.po
Fix a typo
2024-12-12 15:10:34 +03:00
SoftFever
ca2db3a60f keep docker 2024-12-11 23:30:55 +08:00
SoftFever
d39799c2c3 free space 2024-12-11 23:29:56 +08:00
SoftFever
f361943443 tweak naming 2024-12-11 22:26:41 +08:00
Heiko Liebscher
053d560ccc Merge branch 'main' into new_de_translation 2024-12-11 06:38:49 +01:00
SoftFever
5a9f4f9a89 revert and test 2024-12-08 17:45:52 +08:00
SoftFever
ad4725342a try to fix orca_deps cache miss 2024-12-08 17:40:10 +08:00
SoftFever
50b7c9fca1 test 2024-12-08 17:08:47 +08:00
SoftFever
901734147e Merge branch 'main' into feature/flatpak_improvement 2024-12-08 12:17:16 +08:00
SoftFever
50089ded0a disable other jobs temporarily 2024-12-08 12:16:05 +08:00
SoftFever
95887780b9 enable cache 2024-12-08 12:15:13 +08:00
Ferdinand Linnenberg
a4f990fdd6 fix: reset to upstream 2024-12-07 11:58:29 +01:00
Ferdinand Linnenberg
9cf92aa28f fix: remove cmake-build-debug, idea 2024-12-07 11:56:10 +01:00
Ferdinand Linnenberg
3e26852aec fix: updated BBL.json 2024-12-07 11:55:16 +01:00
Ferdinand Linnenberg
7d8d33a787 Merge branch 'SoftFever:main' into main 2024-12-07 10:57:11 +01:00
Lin Yu-Chieh (Victor)
a6a22b9a95 Merge branch 'main' into patch-1 2024-12-07 12:43:14 +08:00
VOLUMIC
df8f7e82c8 Merge branch 'main' into main 2024-12-05 10:35:05 +01:00
Geoffrey Ward
3caca2215d Jerk limit warning fix (#7660)
* Update fdm_process_common.json to use slower jerk settings to prevent belt tooth skipping

* Update fdm_process_anker_fast_common.json for faster jerk settings

* Update Max Jerk limit to be in line with real world machine limits

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2024-12-05 08:13:47 +08:00
Robert Baker
41d1b0d3c8 Revert "Update AnkerMake Jerk and Extruder settings to match AnkerMak… (#7659)
Revert "Update AnkerMake Jerk and Extruder settings to match AnkerMakeStudio"

This reverts commit fac94a46da.
2024-12-05 08:11:25 +08:00
Robert Baker
8636434c6b remove duplicate key "printer_structure" from Ankermake machine files (#7658) 2024-12-04 23:44:21 +08:00
Lin Yu-Chieh (Victor)
187011d0f7 Update Creality Generic TPU.json
Added Ender 3 S1 series to compatible printers
2024-12-04 15:40:25 +08:00
VOLUMIC
d13709b3dd Merge branch 'main' into main 2024-12-03 16:29:21 +01:00
SoftFever
b331830604 Port BBS' improved Mesaure and Assembly Gizmo (#7396)
This PR replaces the existing Measure gizmo with the improved version from BambuStudio, with the following noticable improvements:
- Can measure between multiple objects
- Can be used in assemly view

Also ported the Assembly Gizmo from BBS, which makes assemble much easier.

Huge thanks to BambuLab!
![image](https://github.com/user-attachments/assets/3d69e51c-029b-4cbe-b573-0f38bb02b6aa)
![image](https://github.com/user-attachments/assets/8353d643-4c29-493b-8384-2747879fa8c8)
2024-12-02 22:04:01 +08:00
SoftFever
2708beb42b Merge branch 'main' into main 2024-12-02 10:40:47 +08:00
Heiko Liebscher
d2bda93852 Merge remote-tracking branch 'Noisyfox/main' into new_de_translation 2024-12-01 17:48:11 +01:00
xiaoyeliu
5178fee0f3 fix: the 'all' and 'clear all' btns do not make sense when choosing printers (#7465)
fix: the 'all' and 'clear all' btns do not make sense when choosing or adding printers

Co-authored-by: meiliang1123 <meiliang1123@126.com>
2024-12-01 21:50:10 +08:00
EnderPy
776901005c Disable priming extruders on Anycubic Kobra 2 / 3 (#7450)
* Disable priming all extruders on start for Anycubic Kobra 3

* Disable prime all extruders for Anycubic Kobra 2 Pro / Plus / Max / Neo
2024-12-01 21:44:30 +08:00
SoftFever
8ce992b640 Merge branch 'main' into dev/bbs-measure 2024-12-01 21:33:20 +08:00
Patrick Uven
719f09e2f2 Provide reasonable default layer heights (#7384)
Using my Ender 3 V3 SE I noticed weird printing behaviour. Searching for
the cause, I found that the default layer height for a 0.2mm nozzle for
the printer was set to 0.08mm min and 0.32mm max, which are the default
20%/80% values for a 0.4mm nozzle. This commit changes the values for
all Creality printer which had not a reasonable default value for 0.2mm,
0.6mm and 0.8mm nozzles to 20% min and 80% max.

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-12-01 21:18:31 +08:00
Andy
30cfa9a931 Russian translation update (#7623)
Russian translation update OrcaSlicer V2.2.0 Official Release.
Translation updates, improved translation, corrected errors.
2024-12-01 21:07:54 +08:00
xiaoyeliu
484c43ca4d Feature: set different colors to tools on devices with multitools (#7125)
For devices with multitools, set the default colors of filaments for each tool to different colors
2024-12-01 20:49:55 +08:00
Victor Usoltsev
ae07f17ca0 Differentiates beta releases. Always shows release notes as text. (#7067) 2024-12-01 20:44:43 +08:00
Frank Tackitt
a602eee441 Add 0.5mm nozzle profiles for Voron printers (#7446)
Co-authored-by: Franklyn Tackitt <git@frank.af>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-12-01 20:14:44 +08:00
Noisyfox
09c115afb3 Fix overlapping regions caused by "Make Overhangs printable" (SoftFever/OrcaSlicer#7622) 2024-12-01 19:53:02 +08:00
Ferdinand Linnenberg
c0ddf68070 feat: updated BBL profiles to 01.10.01.50 2024-12-01 11:03:33 +01:00
Heiko Liebscher
f3fcbe74b8 fix typo 2024-12-01 08:24:18 +01:00
Heiko Liebscher
08caf3862b new feature translation 2024-12-01 08:15:50 +01:00
Psych0h3ad
ebc573d956 Update OrcaSlicer_ja.po (#7463)
Add some translations
2024-11-30 23:16:42 +08:00
xiaoyeliu
2a61ceae5b Fix: The "Unsaved Changes Dialog" pops up, but the content display section is empty. (#7482)
fix:The Unsaved Changes Dialog pops up, but the content display section is empty.
2024-11-30 22:23:07 +08:00
thrgd
449785e138 fix: Bambu P1P 0.4mm profile added missing MC fan gcode (#7490) 2024-11-30 22:12:18 +08:00
discip
c899c3ea6e don't create HEADER_BLOCK_START if using BTT_TFT thumbnails (#7488)
* don't create HEADER_BLOCK_START if using BTT_TFT thumbnails

* Update GCode.cpp
2024-11-30 21:43:02 +08:00
Bernhard Koppensteiner
e6eda3e7d0 Minor tweaks for TPU filament in MK3.5 Profiles (#7487)
* bugfix for TPU filament overrides

* higher voluemetric flow

* bugfix for to high speed at internal solid infill
2024-11-30 21:40:53 +08:00
Noisyfox
4f9e946dfb Fix bug ShortestPath.cpp (#13331) (#7615)
Accessing a moved object.
Also this method create an unused "out" variable by removing from the parameter.
I guess It should update the parameter object?
Anyway, seems very wrong

(cherry picked from commit 534792e249da3efb83a62279f532b6690d028592)

Co-authored-by: Merill <merill@free.fr>
2024-11-30 21:38:59 +08:00
hadess
89cf7f87bf Mouse3DController: Add SpaceMouse Wireless BT support (#7618)
Update the device list to match the upstream spacenavd one.
2024-11-30 21:37:39 +08:00
Noisyfox
3b1c4f9ee4 Do not create raycaster when loading the gcode preview (#7596) 2024-11-30 21:36:22 +08:00
VOLUMIC
bc4682cd52 overhang_fan_threshold removed 2024-11-29 11:24:53 +01:00
VOLUMIC
f30fb2477b Merge branch 'main' into main 2024-11-29 11:04:19 +01:00
moransolutions
3e6835bbc5 Fixes a configuration issue with the Sovol SV06 ACE profile (#7504)
* Update Sovol SV06 ACE 0.4 nozzle.json

fixed name to add  - official

* Update Sovol SV06 Plus ACE 0.4 nozzle.json

fixed config to add  - official
2024-11-28 22:37:41 +08:00
Vasily Khoruzhick
16e532f73e libslic3r: include tbb/spin_mutex to fix compilation error (#7505)
PrintObject.cpp references tbb::spin_mutex, thus it needs to include
tbb/spin_mutex. Otherwise compilation fails with:

error: ‘spin_mutex’ is not a member of ‘tbb’

Supersedes #7057
2024-11-28 22:32:54 +08:00
Ioannis Giannakas
508d0e6334 Integrate external purge estimates (eg Blobifier) to the filament consumption UI (#7508)
Integrate external purge estimates to the filament consumption UI
2024-11-28 22:26:49 +08:00
AMstuff
5e576887c8 Include libspnav in flatpak builds (#7529) 2024-11-28 20:40:51 +08:00
zlbruce
565619a216 fix filename encode issue when download chinese filename (#7542) 2024-11-28 20:39:53 +08:00
kiniad
771373e6aa Extended resources for Ratrig V-Core 4: I.E. profiles for 0.8 nozzle and PCTG filament (#7561)
* Update 0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.4.json

it's HYBRID not HYBIRD

* Update 0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.5.json

it's HYBRID not HYBIRD

* Update 0.25mm Quality Speed @RatRig V-Core 4 HYBRID 0.6.json

it's HYBRID not HYBIRD

* Add files via upload

Adding process files for the 0.8 nozzle

* Add files via upload

machine profiles for 0.8 nozzle

* Update Ratrig.json

Added support for 0.8.nozle

* Add files via upload

Added filament profile for the more and more popular PCTG

* Update Ratrig.json

Add filament PCTG

* Update Ratrig.json

Filament setting for big (>0.4) nozzles

* Add files via upload

Filament setting for big (>0.4) nozzles

* Filament setting for big (>0.4) nozzles

Filament setting for big (>0.4) nozzles

* Optimized layer and extrusion values

Optimized layer and extrusion values

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-11-28 20:35:03 +08:00
VOLUMIC
3e9e6913e3 Merge branch 'main' into main 2024-11-27 16:35:50 +01:00
VOLUMIC
42261eccbe overhang_fan_threshold fixes 2024-11-27 16:34:40 +01:00
LyricWulf
ac5eaa3829 fix: ImageGrid download button would delete instead (#7413) 2024-11-27 22:28:36 +08:00
Noisyfox
b38b9132f4 Fix 3mf object type to conform the 3mf core spec (#7586)
Fix 3mf object type. Always use "model" instead of "other" for modifiers, to conform the 3mf core spec (SoftFever/OrcaSlicer#7574)
2024-11-27 20:39:57 +08:00
camerony
4c78d687a0 Added LDO as a Filament vendor (#7587)
* Added LDO as a Filament vendor
2024-11-27 20:35:27 +08:00
0verflowed-stack
a7b8dfa2df Fix the incorrect translation of 'Bottom' into Ukrainian (#7589) 2024-11-27 20:32:56 +08:00
Noisyfox
3666f84e65 Fix PA pattern crash if default/first layer line width is percentage (#7592)
Fix PA pattern crash if default/first layer line width is percentage (SoftFever/OrcaSlicer#7569)
2024-11-27 20:25:57 +08:00
VOLUMIC
db7f7aa79a VOLUMIC 3D printers series profils 2024-11-26 13:40:04 +01:00
Vovodroid
ca35ba4107 Retract on top layer option. (#6188)
Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-11-23 23:23:04 +08:00
Vovodroid
717fe35ebd Fix no overhang reverse in Arachne (#5964)
* Fix no overhang revert in Arachne

* Merge branch 'main' into fix-no-revert-arachne-pr
2024-11-22 21:44:38 +08:00
SoftFever
f11eb34b59 bump version to 2.3.0-dev 2024-11-21 21:48:39 +08:00
SoftFever
ceab043989 update sponsorlist 2024-11-21 21:48:29 +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
SoftFever
31be67926e Update README.md (#7496) 2024-11-16 16:47:26 +08:00
Thomas
b7bba13789 French translations for v2.2.0 (#7261)
* Added one missing string

* Added missing strings for 2.2.0
2024-11-12 00:27:25 +08:00
KrisMorr
5f576aac6a update Polish translations ( 2.2.0 official ) (#7260)
* update Polish translations ( 2.2.0 official )

* update Polish translations ( 2.2.0 official )

* update Polish translations ( 2.2.0 official )
2024-11-12 00:27:03 +08:00
ZZQiang-An
342d7f3f70 Sovol (#7279)
* Added Comgrow T300 official profile

Added Comgrow T300 official profile

* Added official profiles for Sovol SV06 ACE and Sovol SV06 Plus ACE
2024-11-12 00:25:37 +08:00
Dima Buzdyk
2e017a73cf Fix cmake warning on policy CMP0135 (#7247) 2024-11-12 00:24:54 +08:00
Lee Jong Mun
917a8fe477 kor translation update (#7394) 2024-11-12 00:23:38 +08:00
Noisyfox
cdb38d918b Allow clicking the toolbar icon multiple times without moving the cursor (#7267)
Revert "FIX:fix Gizmo tooltop disply"

This reverts commit a26c573b1b.
2024-11-12 00:09:15 +08:00
Adam Křivánek
c17c5c8205 Update OrcaSlicer_cs.po (#7360) 2024-11-12 00:06:49 +08:00
Vasily Khoruzhick
7ab985e468 Fix flatpak build (#7283)
* Patch wxWidgets to automatically select dark theme variant (taken from
  Bambu slicer flatpak manifest)
* Drop python script that selected dark theme
* Add a patch to fix libslic3r build
2024-11-12 00:06:23 +08:00
Noisyfox
f38825a538 Update button to Orca color scheme. Update a typo. 2024-11-07 09:58:17 +08:00
Noisyfox
ceeebda1dc Fix null pointer issue 2024-11-06 23:38:33 +08:00
Noisyfox
3d45414b71 Assembly: Port BBS' assembly gizmo
Co-authored-by:  zhou.xu <zhou.xu@bambulab.com>
2024-11-06 23:38:17 +08:00
Noisyfox
e3b1e30387 Disable right-click menu display in gizmo 2024-11-06 22:08:46 +08:00
Noisyfox
6e9257c8ac Measure: Port of BBS' improved version of measure gizmo
Co-authored-by:  zhou.xu <zhou.xu@bambulab.com>
2024-11-06 20:19:52 +08:00
SoftFever
1088d0a6c7 bump to 2.2.0 official 2024-10-27 23:12:10 +08:00
SoftFever
4b46bfcbdf update profile version 2024-10-27 23:11:44 +08:00
SoftFever
c14b6e7ccd update locale 2024-10-27 23:09:01 +08:00
HYzd766
c59cb0ed64 Qidi profile updates (#7056)
* Qidi.json

* Qidi.json

* Qidi.json

* new change

new change

* Qidi.json

* Update fdm_filament_pla.json

little change

* Update fdm_filament_pla.json

little change

* Update fdm_machine_common.json

little change

* Update fdm_process_qidi_x3_common.json

little change
2024-10-27 22:54:26 +08:00
Noisyfox
65157da466 Fix crash when extruder 16 is used in color painting (#7200)
Fix crash when extruder 16 is used in color painting (SoftFever/OrcaSlicer#7198)
2024-10-27 22:48:01 +08:00
Fritz Webering
cf6d9c77ff Avoid collisions when moving Z down (#7208)
Avoid collisions with previous extrusions in the same layer when moving Z down in an XYZ move.
This happens for example when starting a scarf joint after another perimeter was already printed.

Fixes SoftFever#7191

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-10-27 22:24:49 +08:00
Noisyfox
661efa733e Fix crash when doing PA calib using pattern method from calib tab (#7248)
* Fix crash when doing PA calib using pattern method from calib tab
2024-10-26 22:13:30 +08:00
Lee Jong Mun
d9dcbc8e44 kor translation update (#7245)
* kor translation update
2024-10-26 21:41:14 +08:00
Noisyfox
2348928b25 Fix crash when loading gcode file twice (#7217)
* Fix ASAN use-after-free error when loading 3mf file with gcode by drag-and-drop

* Fix crash when loading gcode file twice
2024-10-26 21:29:03 +08:00
Hugo Costa
88ca0bc5b9 Add BLOCKS RD50, ProS100 and RF50 printers (#7190)
* Add BLOCKS RD50, ProS100 and RF50 printers

Add printer configurations and profiles for Blockstech printers to OrcaSlicer

* Update RF50 thumbnail

Added the definative thumbnail for the RF50 printer model.
2024-10-26 00:31:11 +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
Dima Buzdyk
983f1a827e pa calib: print flow value and acceleration (#7178)
* pa calib: print flow value and acceleration

Print flow value and acceleration for PA pattern calibration.
This should help keep track during adaptive PA calibration.

* pa pattern: fix legent section too wide in some cases

Rework pa pattern legent generation to correctly estimate
width of the legend section.

Current flow value now has variable length which is a longest of
PA value and the acceleration for a given test.

Few examples:
1. PA value are 4 characters:        0.04
   Acceleratioion 3 chars:           400
   Flow value will be 4 chars long:  7.98, or 11.3

2. PA:      0.018
   Accel:   1000
   Flow:    12.35, or 6.345

3. PA:      0.04
   Accel:   15000
   Flow:    34.34, or 4.567

Rework number-to-string conversion flow to correctly round values at
given precision.
2024-10-24 23:41:51 +08:00
Noisyfox
be5bc632ad Fixed Clipper library (our own fork of it) when working with Z coordinate (#7180)
Fixed Clipper library (our own fork of it) when working with Z coordinate:
The Eigen vector type compares all components, while the ClipperLib
own IntPoint type compared x and y only.
Fixed by overriding the ==/!= operators to compare just x and y components
for Eigen types.

Cherry-picked from prusa3d/PrusaSlicer@0202eec4b7

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>
2024-10-24 22:26:40 +08:00
Noisyfox
6169b4fa2a Fix issue when the extruder do not have any adjustable extrusion 2024-10-24 21:27:46 +08:00
Noisyfox
4bb6525c4f Fix issue that total_time is not updated after slowing down 2024-10-24 21:27:03 +08:00
Noisyfox
dc943eddaf Exclude movements before first extrusion from layer time calculation when dealing with layer cooling (SoftFever/OrcaSlicer#7171)
If layer starts with a color change, the full layer time will be much longer, which will trick the slicer to think this layer has enough cooling time.
However the actual filament extrusion time (the real "printing" part) won't necessarily have enough time to cool down, so if we don't do extra slowing down
before starting next layer, the filament could still be soft and lead to worse surface quality.
2024-10-24 17:24:09 +08:00
Philipp
425d9c97e4 Allow printing prohibited filaments when 'Skip AMS Blacklist Check' is enabled (#7161)
Update DeviceManager.cpp
2024-10-22 23:13:34 +08:00
InfimechOfficial
9731a17f0f Update Infimech profiles: fix arc fitting (#7159)
* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_process_common.json

* Update fdm_process_common_HSN.json
2024-10-22 23:12:40 +08:00
FlyingbearOfficial
bb1f9cf1b4 Update Flyingbear profiles: Fix arc fitting value (#7157)
* Update FlyingBear S1 0.4 nozzle.json

* Update 0.16mm Optimal @FlyingBear Reborn3.json

* Update 0.16mm Optimal @FlyingBear S1.json

* Update fdm_process_common.json

* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_process_common.json

* Update fdm_process_common_S1.json

fix some parameters

* Update fdm_process_common.json

* Update FlyingBear S1 0.4 nozzle.json

* Update 0.08mm Extra Fine @FlyingBear S1.json

* Update 0.12mm Fine @FlyingBear S1.json

* Update 0.16mm Optimal @FlyingBear S1.json

* Update 0.20mm Standard @FlyingBear S1.json

* Update 0.24mm Draft @FlyingBear S1.json

* Update 0.08mm Extra Fine @FlyingBear Reborn3.json

* Update 0.12mm Fine @FlyingBear Reborn3.json

* Update 0.16mm Optimal @FlyingBear Reborn3.json

* Update 0.20mm Standard @FlyingBear Reborn3.json

* Update 0.24mm Draft @FlyingBear Reborn3.json

* Update FlyingBear S1 0.4 nozzle.json

* Update fdm_process_common_S1.json

* Update fdm_process_common.json
2024-10-22 23:12:00 +08:00
PanZhiHao
01fe959283 Fix: kp3s v1 json configuration error (#7148) 2024-10-22 23:10:58 +08:00
Ioannis Giannakas
c0ce64ce55 Bug fix: Inner Outer Inner wall ordering mode failed to reorder in certain edge cases with arachne (#7134)
* Bug fix: Inner Outer Inner failed to reorder in certain edge cases

* Fixing IOI proximity search spacing calculations
2024-10-22 23:02:44 +08:00
xiaoyeliu
59a79040d2 Fix: Decouple the default material selection from the nozzle size on the machine. (#7126)
Fix: the filament's selection varied depending  on the  different nozzles chosen in the Wizard
2024-10-22 23:00:27 +08:00
vgdh
c8eb3bf084 Fix typo in Calibration.md (#7103)
fix https://github.com/SoftFever/OrcaSlicer/issues/7101
2024-10-22 22:49:49 +08:00
cochcoder
5aaea09885 Fix bugs with CR-M4 (#7108) 2024-10-22 22:49:24 +08:00
Robert Baker
763717da2a Update filename_format to AnkerMake Studio's default (#7116)
Update filename_format to Anker's default
Update fdm_process_common.json
2024-10-22 22:48:53 +08:00
SoftFever
296b234fe6 Update AnkerMake Jerk and Extruder settings to match AnkerMakeStudio (#7117)
Using the default 0.4 M5 profile in AnkerMakeStudio to compare, I
updated the values to match

# Description
Updates the jerk limits, max feedrate, max acceleration, retraction
length to match what ankermake studio has.

# Screenshots/Recordings/Graphs

![image](https://github.com/user-attachments/assets/95472ce6-8192-47a5-b300-afbf9a6df20f)

![image](https://github.com/user-attachments/assets/f278c1d3-5143-4fe9-bdf4-9ace6301eeac)

## Tests

NA
2024-10-22 22:48:23 +08:00
SoftFever
588ffa1b32 Add geeetech M1 profile (#7113)
Printing settings for the M1 machine provided by Geeetech officially.
2024-10-22 22:47:32 +08:00
SoftFever
a52ce89925 Enable Air Filtration Support for BBL P1S, X1, X1C (#7087)
# Description
Re-Creation of Pull Request #6964 with X1E changes pulled. 

OrcaSlicer includes exhaust fan settings for each filaments, however
these settings do not take effect on Bambu Labs machines that include
chamber temperature regulation fans.

![image](https://github.com/user-attachments/assets/6bb79d56-9940-46cf-b998-7d29c49bc928)

Further investigation into the g-code files produced reveals that the
filament start g-code is responsible for using the air filtration
setting and sending the appropriate `M106 P3
S{during_print_exhaust_fan_speed_num[current_extruder]}` command to the
printer. However, this command, even with the setting enabled, is never
written to the final g-code file.

By default, Bambu Lab's filament profiles wrap this command up in` {if
activate_air_filtration[current_extruder] && support_air_filtration}`
clause, which always evaluates to false. As it turns out, the printer's
have the `support_air_filtration` flag set to `0` in the
`fdm_machine_common.json` file.

This change updates that value to `1` in the .json files for the X1,
X1C, X1E, and P1S 0.4mm nozzles. This is then inherited to other nozzle
sizes and user generated profiles. This is done by simply adding a line
` "support_air_filtration": "1",` to the .json to override the inherited
setting.
<!--
> 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?
-->

Fixes #6066 
# Screenshots/Recordings/Graphs

N/A 

## Tests

Updated this flag in a custom user config for the printer than tried
generating the code file with Air Filtration enabled and set to 70%

The appropriate `M106 P3 S178 ` appears in the filament start gcode
section of the file.
<!--
> 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

Updated this flag in a custom user config for the printer than tried
generating the code file with Air Filtration enabled and set to 70%

The appropriate `M106 P3 S178 ` appears in the filament start gcode
section of the file.
2024-10-22 22:29:21 +08:00
SoftFever
09afb390dd Add Anycubic Kobra 2 Plus, Kobra 2 Max, Kobra 2 Pro, Kobra 2 Neo, & Kobra 3 (#7082)
Thanks to @soosp for providing me the files from Anycubic's Slicer!

Closes #4210, closes #3332, closes #6200, closes #5048, and closes #6269
2024-10-22 22:24:51 +08:00
SoftFever
cc8d90c224 Add Elegoo OrangeStorm Giga (#6977)
Closes #6256

Thanks to @tlhintoq for providing the profiles in a easily downloadable
manner.
2024-10-21 23:40:33 +08:00
SoftFever
990a1867e3 Merge branch 'main' into Orangestorm-giga 2024-10-21 23:36:42 +08:00
SoftFever
5cf16b9b5d Add Creality Print support (#6928)
# Description

Added support for Creality Print (E.g. Orca can upload and print
directly to Ender 3 V3 KE)

# Screenshots/Recordings/Graphs

Video: https://www.youtube.com/watch?v=ONzaMJhj_Hk

## Tests

Tested in the video above on a Macbook Pro, Ender 3 V3 KE.
It should also be tested on Windows but I don't have a windows computer.
2024-10-21 23:36:09 +08:00
Robert Baker
fac94a46da Update AnkerMake Jerk and Extruder settings to match AnkerMakeStudio
Using the default 0.4 M5 profile in AnkerMakeStudio to compare, I updated the values to match
2024-10-15 03:33:42 -07:00
whoseyoung
ca251c7090 Add geeetech M1 profile
Printing settings for the M1 machine provided by Geeetech officially.
2024-10-15 15:31:54 +08:00
cochcoder
736d50e623 Some cleanup 2024-10-14 15:30:19 -04:00
Yichen
66a7235e25 Enable Air Filtration Support for BBL P1S, X1, X1C 2024-10-12 10:33:18 -07:00
cochcoder
36a380b9c6 Initial add of Anycubic Kobra 2 Plus, Kobra 2 Max, Kobra 2 Pro, Kobra 2 Neo, Kobra 3 2024-10-12 00:13:33 -04:00
cochcoder
84bfed7de6 Final size optimizations 2024-10-11 20:30:47 -04:00
cochcoder
630797ece9 Optimize cover image 2024-10-10 19:34:03 -04:00
cochcoder
68178cacd8 Merge branch 'main' into Orangestorm-giga 2024-10-10 23:25:11 +00:00
cochcoder
ee819bd8dd Apply suggestions from code review
Co-authored-by: Maximilian Pott <maxpott92@gmail.com>
2024-10-10 19:24:55 -04:00
SoftFever
fb032cd85f Fixed an issue that if Orca was invoke by associated files, local data_dir was not used (#7049)
# Description

fixed #6987
# 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.
-->
2024-10-08 20:29:40 +08:00
SoftFever
eb195da546 Better way to find exe path 2024-10-08 18:09:03 +08:00
SoftFever
2cc44feb66 bump version to 2.2.0-rc 2024-10-08 00:03:23 +08:00
SoftFever
8097becedd Shows extruder's values on filament's Setting Overrides tab. (#6370)
# Description
The idea behind this PR is to make it easier for the users to tweak
filament setting overrides i.e. reduce number of times users have to
switch between the printer and filament settings to compare the values.

# Screenshots/Recordings/Graphs

![image](https://github.com/user-attachments/assets/7221883e-74cd-4322-847a-800880e59c4b)

![image](https://github.com/user-attachments/assets/6019a0f4-b824-4a76-82e2-00e54f282c12)


![image](https://github.com/user-attachments/assets/75589d5d-0ba5-4c8c-8cb5-e23e67cd9e52)

![image](https://github.com/user-attachments/assets/b38f5000-20e0-48eb-afef-49787c9fec3b)

## Tests
I've done some manual testing to confirm:
* Override setting with the same value as extruder is still shown as a
change.
* Resetting unsaved override setting back to original value still works
as expected.
* Override settings are shown correctly on the next load after a save.
* Extruder settings changes are reflected on Settings Overrides page.

## Other
I have discovered a strange behaviour between `Filament Settings` and
`Printer Settings` windows. On a fresh load of application opening
`Filament Settings` window, navigating to `Settings Overrides` tab and
then closing the window results in `Filament` tab being opened the next
time `Filament Settings` window is opened. But if you open `Printer
settings` window, navigate to `Extruder` or `Motion ability` tabs then
the application changes the behaviour to open the last visited tab by
the user for both of the windows. I'm mentioning this because when this
happens the flow of events in the application changes and causes my
change to break until the user changes a tab. As far as I can tell for
some reason ConfigOptionsGroup's `reload_config` method is starting to
get called (second time?) after TabFilament's
`update_filament_overrides_page` method which wipes out the values set
by me. I'm not sure which is the correct behaviour, so I left that for a
discussion here. If last visited tab is the correct behaviour, then I
would need help to figure out how to fix this problem.
2024-10-07 21:42:11 +08:00
SoftFever
09672ea90c Merge branch 'main' into feature/show-extruder-values-on-filament-overrides-tab 2024-10-07 19:43:50 +08:00
SoftFever
72a797de08 Update project structure to match BambuStudio's support code (#6967)
This PR moves the code around without any functional changes, so that all code related to supports now placed at the same location & structure as BambuStudio.

This makes merging updates from BambuStudio much easier in the future.
2024-10-07 18:27:47 +08:00
SoftFever
e73593c102 Merge branch 'main' into dev/bbs-support 2024-10-07 18:10:58 +08:00
SoftFever
5b6fa0b770 update snapmaker profiles (#7012)
- add filament Breakaway
- add preheat configs
- fix `prime_volume`
2024-10-07 18:10:49 +08:00
SoftFever
1c43b2902c fix a build error 2024-10-07 18:10:14 +08:00
Dylan
78ea8d84f3 Merge branch 'main' into sm-profiles 2024-10-07 16:45:59 +08:00
SoftFever
338f89a15b Merge branch 'main' into dev/bbs-support 2024-10-07 16:44:01 +08:00
SoftFever
89d04ab9e9 General improvments to RatRig V-Core 4 & V-Core 4 HYBRID (#5966)
Resolves #5932

**The following changes made are made to all V-Core 4 versions** 

- Improved cover's quality 

![after](https://github.com/SoftFever/OrcaSlicer/assets/103969142/ecc22214-4e5e-4286-9baf-ce67e67912c7)
- Added RatRig's PunkFil ABS, PETG, and PETG CF filaments
- Added PETG-CF10 filament type & RatRig to filament vendors
- Increased max z speed to 200 from 50 and max acceleration travel to
10,000 from 9,000
- Enabled wipe and z hop, as well as, increased retract before wipe to
70% from 0%
- Improved layer change G-Code
- Fixed pause G-Code
- Added extruder clearance parameters 

*Almost all of these changes come from @nameisCruzCruz in #5932
2024-10-07 16:43:42 +08:00
SoftFever
17c0abbe32 Export negative parts (#7024)
Porting from Prusa exporting negative parts.

Before:

![image](https://github.com/user-attachments/assets/a5e041ce-7f0f-44e5-95ea-0a8b11252cc4)

After:

![image](https://github.com/user-attachments/assets/f0a6f6bb-13c7-4a6e-afb3-7631e2f4f634)
2024-10-07 16:42:12 +08:00
SoftFever
01ffeb6b86 Add Creality K1 SE, K2 Plus, & CR-M4 (#7002)
Closes #6984, closes #6707, closes #6957
2024-10-07 16:40:56 +08:00
SoftFever
7422c7957f making all four corners of the grid sharp instead of round (#6993)
# Simple visual change 

Currently, the grid has 3 round corners and 1 sharp corner. It seems
like bambu lab hard coded this specifically to fit their bed model. As a
non-bambu user, I dont like how the corners look.
![Screenshot 2024-10-02
152326](https://github.com/user-attachments/assets/ba905ed1-3557-488e-adb2-ea1ea93bb1cc)
![Screenshot 2024-10-02
152435](https://github.com/user-attachments/assets/7a2ec002-87c3-46ab-b5ff-8174c20890e3)

Another point I'd like to bring up is that rounded corners do not match
the boundary detection box.


## Tests
Tested locally on windows and macos.
2024-10-07 16:37:56 +08:00
SoftFever
9fbab1407f FIX: CLI: fix an exception when parsing scale params (#6969)
# Description

This PR aims to solve an exception when using OrcaSlicer in CLI which
caused the --scale option to not work.
All credits to @lanewei120 from BambuStudio for pushing it on BS repo.

Related commit on BS:

2d4655e780 (diff-2fa194122e892282ec589e51d5f7da65da83ec0488ced4b63930345d1273a353R3797)
Related issue on BS:
https://github.com/bambulab/BambuStudio/issues/4628
Related issue on Orca:
https://github.com/SoftFever/OrcaSlicer/issues/6454
fixes #6454
## Tests

```
./orca-slicer.exe --scale 2 --slice 1 --allow-newer-file test_model.stl --debug 5
```
The command above works again and scale the model then slice the scaled
model. Before, the scale would not complete.
2024-10-07 16:34:07 +08:00
SoftFever
4a1d382964 Allow reverse on odd without detect overhang wall (#6922)
Fixes #6920
2024-10-07 15:59:19 +08:00
SoftFever
6ecf6bdbd7 Support multi-line progress information rendering (#6909)
Makes situations like #6098 less confusing.

Old:

![image](https://github.com/user-attachments/assets/9eeabb5a-9f7b-41f7-8123-c001b2f576e8)

New:

![image](https://github.com/user-attachments/assets/215e75a9-87c8-4963-a0b2-aa1f1198af62)
2024-10-07 15:56:16 +08:00
SoftFever
ab55d4eefc Fix an issue that wrong z value was used if a new layer is started with wipe tower extrusions. (#6980)
…

# Description

This update, along with #6934, resolves the remaining issues with the
wipe tower.

The GCode class will no longer maintain its own Z height information
(m_nominal_z). Instead, it will utilize the Z height from GCodeWriter's
m_pos. This approach is less error-prone.

This PR also fixes #6755.
It also enforce "Enable Filament ramming" option


@igiannakas It should fix the wipe tower crashing issue
# 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.
-->
2024-10-07 15:50:48 +08:00
SoftFever
0bf2b9dcff respect "Enable Filament ramming" option 2024-10-07 14:34:08 +08:00
cochcoder
fada134391 Bug fixes 2024-10-06 15:25:24 -04:00
cochcoder
e14428897e Initial add of CR-M4 2024-10-06 15:21:22 -04:00
cochcoder
5b241a3982 Change acceleration & speed values 2024-10-06 12:29:21 -04:00
cochcoder
f2d1429a01 Merge branch 'main' into rat-rig-covers 2024-10-06 12:07:48 -04:00
SoftFever
cc90d79190 Add back m_nominal_z to store main print_z as GcodeWriter::m_pos will be changed after parsing get_last_z_from_gcode 2024-10-06 23:39:22 +08:00
SoftFever
7736cd1b39 fixed #6755 2024-10-06 20:36:00 +08:00
uSyzex
7b38376e4e FIX: CLI: fix an exception when parsing scale params 2024-10-06 13:36:12 +02:00
SoftFever
608e6375e6 Fix wrong z when zhop is diabled. 2024-10-06 19:16:15 +08:00
SoftFever
6f3c701a32 wip 2024-10-06 10:49:58 +08:00
cochcoder
dd3af0cfdd Revert "Remove unused values"
This reverts commit cc1d7cfe04.
2024-10-05 18:31:53 -04:00
cochcoder
cc1d7cfe04 Remove unused values 2024-10-05 18:31:18 -04:00
cochcoder
6ed920f8e2 Some cleanup 2024-10-05 18:30:21 -04:00
cochcoder
9f73262b43 Image optimizations 2024-10-05 18:05:16 -04:00
vovodroid
9d37d1a084 Export negative parts. 2024-10-05 21:53:16 +03:00
cochcoder
407ea045a2 Fix wrong max layer for K2 Plus 0.6 & 0.8 2024-10-04 19:48:26 -04:00
cochcoder
14467c0e8d Fix typo 2024-10-04 16:59:10 -04:00
dylan
29278be729 fix prime_volume 2024-10-05 00:41:53 +08:00
dylan
0e15cccbc5 update version 2024-10-04 18:34:46 +08:00
cochcoder
201d188ef1 Revert "Trying something"
This reverts commit 08800dc9e3.
2024-10-03 23:13:05 -04:00
cochcoder
08800dc9e3 Trying something 2024-10-03 22:20:17 -04:00
cochcoder
77eb02e722 Hopefully this is the last issue 2024-10-03 22:10:27 -04:00
cochcoder
b23223c0de Another bug fix
Seriously, how do I miss these
2024-10-03 22:04:56 -04:00
cochcoder
44bb6cd3fc Some more bug fixes
I have no clue how I missed these
2024-10-03 21:58:58 -04:00
cochcoder
a5f6f1cd82 Some cleanup & bug fixes 2024-10-03 21:51:52 -04:00
cochcoder
483d3f9c56 Fix a few things 2024-10-03 21:25:34 -04:00
cochcoder
9cb183c606 Merge branch 'main' into K1-SE 2024-10-03 23:52:54 +00:00
cochcoder
cac3d396c7 Initial Add of K2 Plus
*Some max speeds/accelerations changes for the 0.4 nozzle was left out as none of the other nozzles had these max speeds/accelerations
2024-10-03 19:51:04 -04:00
cochcoder
769ec051ee Merge branch 'main' into Orangestorm-giga 2024-10-03 18:37:55 +00:00
GlauTech
9245a87293 Update TURKISH translations (#6982) 2024-10-03 23:40:43 +08:00
Andrey Helldar
98c540d3c9 Removed editor's label from Russian translation file (#6962) 2024-10-03 23:40:05 +08:00
HYzd766
1992623a50 Qidi profile updates: latest consumables and machine modifications (#6952)
* Qidi.json

* Qidi.json

* Qidi.json

* new change

new change
2024-10-03 23:38:46 +08:00
SoftFever
2663b60281 Merge branch 'main' into feature/add-creality-print-support 2024-10-03 23:37:38 +08:00
Andy
ec94b9086f Russian translation update (#6939)
* Russian translation update

The next russian translation update OrcaSlicer V2.1.1 Official Release.
The work done to improve translation, corrected errors.
Thx.

* Russian translation update

The next russian translation update OrcaSlicer v2.2.0-beta2.
The work done to improve translation, corrected errors.
Thx.

* Russian translation update

The next russian translation update OrcaSlicer V2.2.0-beta2 + 3 lines in text.js
The work done to improve translation, corrected errors.
Thx.
2024-10-03 23:36:38 +08:00
Carlos Francisco Caruncho Serrano
71aa30f41f Fix Spanish String (#6946)
* Update OrcaSlicer_es.po
2024-10-03 23:36:12 +08:00
Noisyfox
53b08f213b Fix issue that z is not properly set in some cases when clipping polygon (#6955)
Fix issue that `z` is not properly set in some cases when clipping the polygon (SoftFever/OrcaSlicer#6933)

Apply the patch from https://sourceforge.net/p/polyclipping/bugs/160/
2024-10-03 23:35:05 +08:00
cochcoder
cffa0033cb Initial add of K1 SE 2024-10-02 18:57:45 -04:00
azio25134
d52e2cc1b2 making all four corners of the grid sharp instead of round 2024-10-02 15:37:49 -07:00
cochcoder
cfceb873c2 Merge branch 'main' into rat-rig-covers 2024-10-01 21:44:20 +00:00
cochcoder
d13a86bec2 Merge branch 'main' into Orangestorm-giga 2024-10-01 21:28:42 +00:00
cochcoder
bc328b71c7 Try something else 2024-10-01 17:28:24 -04:00
cochcoder
66709ab582 Maybe setting id is the issue 2024-10-01 17:26:09 -04:00
SoftFever
a5d2fa1aed Fix an issue that wrong z value was used if a new layer is started with wipe tower extrusions. 2024-10-01 23:28:24 +08:00
Ioannis Giannakas
5bb42bc0d5 Fix wipe tower issues with SEMM and ramming turned off (#6934)
* Fix wipe tower issues with SEMM and ramming turned off

* Purge tower last layer collision potential fix (for SEMM)

* Revert "Purge tower last layer collision potential fix (for SEMM)"

This reverts commit 9fc465c2d9.
2024-10-01 22:54:14 +08:00
dylan
d6f89393d7 Merge branch 'main' into sm-profiles 2024-10-01 17:17:33 +08:00
cochcoder
393ff7426b Maybe this will do it 2024-09-30 22:20:38 -04:00
cochcoder
fcf4140daa Fix the final build issue
*Hopfully
2024-09-30 22:00:10 -04:00
cochcoder
165f9d3f0c Fix build issue 5 2024-09-30 21:58:38 -04:00
cochcoder
48b8b7d105 Fix build issue 4 2024-09-30 21:57:32 -04:00
cochcoder
8c39fd3d49 Fix build issue 3 2024-09-30 21:56:25 -04:00
cochcoder
60dc43bbf7 Hopefully this will fix all future build issues 2024-09-30 21:55:02 -04:00
cochcoder
09eea5e556 Fix build errors 2024-09-30 21:49:37 -04:00
cochcoder
b9da340fc5 Another attempt at fixing filament issues 2024-09-30 21:42:59 -04:00
cochcoder
b17dae8fb1 Cleanup 2024-09-30 20:30:19 -04:00
cochcoder
9323f6357d Some filament fixes 2024-09-30 18:56:17 -04:00
cochcoder
48e99dab6a Squashing some bugs 2024-09-30 17:26:15 -04:00
cochcoder
78ff7f34b9 Add OrangeStorm Giga 0.1, 0.4, 0.6, & 0.8 2024-09-30 15:59:12 -04:00
Noisyfox
cedb939f4e Fix compile error 2024-09-30 14:31:22 +08:00
Noisyfox
ebed03ea92 Fix compile warning 2024-09-30 14:18:30 +08:00
Noisyfox
ff265745c6 Update PrintObject::_generate_support_material() to match BBS 2024-09-30 14:12:30 +08:00
Noisyfox
97d1745e5a Update files related to support to match BambuStudio's project structure 2024-09-30 14:12:29 +08:00
cochcoder
23d597a302 Add PETG-CF10 filament type & RatRig filament vendor 2024-09-27 12:25:12 -04:00
cochcoder
df2006858d Fix incorrect filament type for RatRig PunkFil PETG CF 2024-09-27 12:01:54 -04:00
cochcoder
0bcd897f75 Merge branch 'main' into rat-rig-covers 2024-09-27 15:33:11 +00:00
cochcoder
5b6232b084 Add filaments and improve machine parameters 2024-09-27 11:33:02 -04:00
KrisMorr
1b367b7df9 update Polish translations ( 2.2.0-beta2 ) (#6904) 2024-09-27 20:47:50 +08:00
Rob Duplock
6dea7b444e Fixed bug with spaces in filename 2024-09-27 22:06:48 +10:00
Rob Duplock
735d179f1a Add support for creality print 2024-09-27 17:11:40 +10:00
Noisyfox
8709f22597 Allow reverse on odd without detect overhang wall (SoftFever/OrcaSlicer#6920) 2024-09-27 09:24:21 +08:00
cochcoder
548a998c2f Merge branch 'main' into rat-rig-covers 2024-09-26 18:41:54 +00:00
cochcoder
e5f34a7f46 Revert "Initial add of V-Core 4 profiles from RatRig"
This reverts commit eeae83f445.
2024-09-26 14:39:59 -04:00
cochcoder
de4af30921 Revert "Fix some bugs"
This reverts commit 2c42465352.
2024-09-26 14:39:54 -04:00
cochcoder
0e3a841f03 Revert "Fix parent errors"
This reverts commit f1b91b706e.
2024-09-26 14:39:48 -04:00
cochcoder
d989da6047 Reapply "Fix parent errors"
This reverts commit dda540fa5d.
2024-09-26 14:39:44 -04:00
Noisyfox
e755d781e1 Support multi-line progress information rendering 2024-09-26 16:22:15 +08:00
SoftFever
17492c1e5b Fix and update locale 2024-09-25 19:58:26 +08:00
GarlicDebug
fff4da56bd Fixed Make Overhangs Printable and Multicolor Printing conflict (#6896)
Co-authored-by: Jasper <idc@gmail.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-09-25 19:52:38 +08:00
SoftFever
65fc14209d Fix a bug that wipe tower has missing extrusions when ramming is disabled (#6894)
* Fix a bug that wipe tower has missing extrusions when ramming is disabled.

* hide "Prime all printing extruders" for SEMM printers
2024-09-25 19:34:18 +08:00
Noisyfox
ed41e3e5ce Disable "cut to parts" when dovetail is selected. (#6891)
* Disable "cut to parts" when dovetail is selected.
Sync with latest PrusaSlicer code.

Co-authored-by: YuSanka <yusanka@gmail.com>
2024-09-25 19:31:17 +08:00
Thomas
c552aae8a7 Added new french strings (#6895)
* Added new french strings
2024-09-25 19:30:51 +08:00
GlauTech
d7bc7fa2b2 Update TURKISH translations (#6882)
* Update TURKISH translations
2024-09-25 19:30:19 +08:00
Vovodroid
23eb055cb5 Followup to clones auto arrange: use current plate (#6373)
* Use current plate for auto arrange clones
2024-09-25 19:29:21 +08:00
Azi
8d9ec11fe9 Feature/move plate to the front (#6262)
* WIP:only works after saving and then reloading

* working version of move plate to the front

* added icons for move to front

* removed a commented line

* fixed the move to front function to behave correctly with undo/redo actions

* Merge branch 'main' into feature/move_plate_to_the_front
2024-09-25 19:27:45 +08:00
SoftFever
473c7fb3ef Fix a bed type regression (#6893) 2024-09-24 19:42:47 +08:00
SoftFever
cc950f2016 bump version to 2.2.0-beta2 2024-09-23 21:29:23 +08:00
SoftFever
04c65b750d bump profile version 2024-09-23 21:29:19 +08:00
Vladimir Vukicevic
746a2bfb2d Fix input box widths in calibration UI (#6587)
* Fix input box widths in calibration panels

* Merge branch 'main' into fix-calibration-ui
2024-09-23 20:48:25 +08:00
Robert Schiele
711ec0506b Fix building errors when precompiled header support is disabled (#6879)
Here are more missing header files recently identified by building
without precompiled header support.
2024-09-23 19:26:18 +08:00
Heiko Liebscher
11146b14cd add new de for new features (#6873) 2024-09-23 19:14:32 +08:00
Vovodroid
69f521fdcf Arachne "one top wall" fix and refactor (#6236)
* One top wall fixes

* Use one wall threshold set in GUI without limiting

* Updates to one wall top perimeter to address splitting top surface against too small segments and lettering overlap.

* Fix precise wall

* Merge branch 'main' into one-top-wall-fix-pr

* Merge branch 'main' into one-top-wall-fix-pr
2024-09-23 19:14:04 +08:00
inkeliz
38cd758e94 Disable Arc Fitting for FlashForge (#6855)
Some printers (FlashForge Adventurer 5M and FlashForge Adventurer 5M Pro) have issues related to Arc Fitting.

Source:
https://www.reddit.com/r/FlashForge/comments/1cu1rnq/psa_disable_arc_fitting_in_orcaslicer_on_ad5m/
https://www.reddit.com/r/FlashForge/comments/1dw99d5/ad5m_pro_move_que_overflow/
https://www.reddit.com/r/FlashForge/comments/1ct0uck/my_a5m_stopped_mid_print/

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-09-23 00:42:32 +08:00
Noisyfox
9d3d242453 Improve fuzzy skin with modifier (#6759)
* Pass all compatible regions to perimeter generator

* Simplify & unify fuzzify detection

* Simplify `to_thick_polyline`

* Group regions by fuzzy skin settings

* Initial code structure of multi-regional fuzzy skin

* Determine fuzzy type by all compatible regions

* Add fuzzy region debug

* Implement the line split algorithm

* Do splitted fuzzy in classic mode

* Disable debug macros

* Fix infinit loop issue when segment points are out of order

* Fix path connection

* Implement splitted fuzzy in Arachne mode
2024-09-23 00:41:17 +08:00
SoftFever
3d3633f110 update locales 2024-09-23 00:37:29 +08:00
Heiko Liebscher
7d679fdc7d add new de translations for 2.2.0 beta (#6861)
add new translations
2024-09-23 00:18:26 +08:00
SoftFever
96effc179b support downloading from makerworld on Mac by default. (#6867)
handle bambustudioopen on Mac by default
2024-09-22 16:49:14 +08:00
SoftFever
99d4d0957a Add support for textured cool plate (#6860)
support textured cool plate
2024-09-22 16:48:49 +08:00
dylan
1d2c28f929 update gcodes
- add if 1==1 to switch the feature of wipe nozzles.
- fix the hold point of the right nozzle in J1 during multi-material printing.
2024-09-22 15:39:32 +08:00
SoftFever
c28fd550f3 Add Mellow M1 printer profiles 2024-09-21 22:59:25 +08:00
Mikkel Schmidt
48c56e12ae Fix invalid START_PRINT in unofficial Rat Rig profiles. (#6838)
* Fix invalid START_PRINT in unofficial Rat Rig profiles.
2024-09-20 22:02:28 +08:00
cochcoder
661183b48f Fix not being able to create new filaments for Dremel 3D45, 3D40, & 3D20 (#6837)
* Allow users to base off the generic filament

* Merge branch 'SoftFever:main' into Dremel-3D45-fix
2024-09-20 21:56:51 +08:00
HYzd766
a7924a662e Qidi.json (#6841)
* Qidi.json

* Merge branch 'main' into p1
2024-09-20 21:55:57 +08:00
Tom
24ae14f1d8 Revert "Tsmith35 per BS PR4631 (#6709)" (#6845)
* Revert "Tsmith35 per BS PR4631 (#6709)"

This reverts commit c8216accfd.
2024-09-20 21:55:20 +08:00
cochcoder
dda540fa5d Revert "Fix parent errors"
This reverts commit f1b91b706e.
2024-09-19 17:25:41 -04:00
cochcoder
f1b91b706e Fix parent errors 2024-09-19 15:05:24 -04:00
cochcoder
a98d3a21c0 Merge branch 'main' into rat-rig-covers 2024-09-19 18:33:57 +00:00
Nobu
d39947d204 Update Ender-3 V2 Neo start G-Code to include mesh leveling (#6832)
* feat: update Ender-3 V2 Neo start G-Code to include mesh leveling

* fix: semicolon format

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-09-20 00:12:36 +08:00
SoftFever
eb8f9bba4f update check profile to use 24.04 2024-09-20 00:10:58 +08:00
SoftFever
ec3c48d95e fix profile error 2024-09-20 00:09:00 +08:00
cochcoder
2c42465352 Fix some bugs 2024-09-18 14:23:49 -04:00
cochcoder
e4d282c6a4 Merge branch 'main' into rat-rig-covers 2024-09-18 18:11:32 +00:00
cochcoder
eeae83f445 Initial add of V-Core 4 profiles from RatRig 2024-09-18 14:11:04 -04:00
Noisyfox
8b8c0cad2a FIX:open or replace 3MF file case insensitive (#6802)
jira: STUDIO-7678
Change-Id: I32b34efa053da25edab80ebff1cfe0a414042dd5
(cherry picked from commit fa07ae4d21d3c4cf5286a38f2cc0a35363a5f53a)

Co-authored-by: zhou.xu <zhou.xu@bambulab.com>
2024-09-19 00:03:57 +08:00
Noisyfox
47965b02d3 Fix small top/bottom solid infill filtering (#6794)
* Fix issue that small sparse gaps are not filtered out correctly

* Fix code order
2024-09-19 00:02:16 +08:00
Thomas
8aac37de6a New French translations and fixed c-boost format in pot/po files (#6803)
New French translations and fixed c-boost format in pot file.
2024-09-19 00:01:13 +08:00
SoftFever
d5d3bab82e Fixed a bug that YOLO flow calibration didn't work for Fr/De languages 2024-09-18 23:59:46 +08:00
SoftFever
74bb4eb284 locale tweak 2024-09-18 23:58:59 +08:00
Andrey Helldar
ad99c30bca Added Russian translation for missing phrases (2.1.1) (#6778)
* Translation of missing phrases into Russian. Part 1

* Translation of missing phrases into Russian. Part 2

* Returned special terms that do not require translation and corrected an error

* Update localization/i18n/ru/OrcaSlicer_ru.po

* Some fixes

* Removed unnecessary format check rules
2024-09-18 22:38:15 +08:00
Noisyfox
ad6ea3fb06 Fix crash when first layer is empty (#6817)
* Fix crash when first layer is empty (SoftFever/OrcaSlicer#6807)
2024-09-18 22:34:36 +08:00
Co Print 3D Printing Technologies
587e839397 Adding Co Print profiles (#6791)
* Adding Co print profiles

* remove filament_z_hop_types

---------

Co-authored-by: Youssef Mohamed / Yusuf Kaya <38719545+yousefabohend@users.noreply.github.com>
2024-09-18 08:40:52 +08:00
artillery3dlab
265bc8453c Artillery Resources Profiles Update (#6754)
* Artillery proflies update

* Artillery Resources Profiles Update

---------

Co-authored-by: chenyipeng <1192633120@qq.com>
2024-09-16 22:13:19 +08:00
Carlos Francisco Caruncho Serrano
4f70057727 Spanish translation update (#6779)
* Update OrcaSlicer_es.po
2024-09-15 23:31:47 +08:00
Noisyfox
375816d331 Fix fuzzy skin randomness for Arachne wall generator (#6770)
* Fix fuzzy skin randomness for Arachne wall generator (SoftFever/OrcaSlicer#6228)
2024-09-15 23:27:54 +08:00
SoftFever
6ca1741e83 Check and use data_dir folder if exists under application path (#6780) 2024-09-15 22:58:41 +08:00
Tom
c8216accfd Tsmith35 per BS PR4631 (#6709)
ENH: support spiral lift with timelapse gcode
The existing implementation did only read the new Z position from the injected timelapse_gcode and flagged the position as unsafe because of this.

This change reads X, Y and Z pos from the timelapgse_gcode and will keep the position state correct to enable safety checks required for using spiral Z hop.

Because of this, spiral Z hop can be used everyhwere now. The same pattern is also applied for layer_change/toolhead gcode injection.

The set_current_position_clear method is unused but will be kept in implementation for future scenarios.

Co-authored-by: Simon ziehmon@users.noreply.github.com
2024-09-14 23:52:04 +08:00
Gabriel Janucik
603e3e76b0 FlashForge Adventurer 3 machine start gcode second fix #6282 (#6744) 2024-09-13 07:21:26 +08:00
Kevin Delgado
833340ebbc Update README.md (#6742)
"SS" -> S  correction
2024-09-13 07:20:56 +08:00
SoftFever
30498ccb7b Fixed a regression bug that spacing was not working anymore when arrange plate objects (#6741)
fix a regression bug in arrange
2024-09-12 23:01:01 +08:00
SoftFever
fe051522d9 update locale 2024-09-11 23:00:01 +08:00
Carlos Francisco Caruncho Serrano
7f9f90c32c Updated Spanish translation (#6721)
* Update OrcaSlicer_es.po

* some changes

* Some fixes

* More fixes

* More fixes and improves

* More fixes

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Traducción español Beta 2.1.0

* Update text.js

* Update OrcaSlicer_es.po

Cambiado punto por coma

* Minor fix PR

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update Spanish Language

* Updated strings

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Fixed Spanish Strings in English

Fixed a lot of string whose are translations were english to english.

* Some spanish strings improved

* Update Spanish Strings in RC

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Some fixes

* More fixes and improves

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

Cambiado punto por coma

* Update Spanish Language

* Some spanish strings improved

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Some fixes to PR

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Traducción español Beta 2.1.0

* Update text.js

* Minor fix PR

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Some fixes to PR

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Some fixes

* More fixes and improves

* Some spanish strings improved

* some changes

* Some fixes

* More fixes

* More fixes and improves

* Update OrcaSlicer_es.po

* Fixed Spanish Strings in English

Fixed a lot of string whose are translations were english to english.

* Some spanish strings improved

* Update Spanish Strings in RC

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Revert "Some Spanish Translation Fixes (#6115)"

This reverts commit c37a871dd2.

* Calibration: retraction test

* Fix a regression: Generic filament profiles conflicts #981

* support full_fan_speed_layer

* Support interface fan speed

* profile cover image reorg

* Traducción español Beta 2.1.0

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Some fixes to PR

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Revert "profile cover image reorg"

This reverts commit 041d41fa9f.

* Revert "Support interface fan speed"

This reverts commit a657d85121.

* Revert "support full_fan_speed_layer"

This reverts commit ac6dcadeb0.

* Revert "Fix a regression: Generic filament profiles conflicts #981"

This reverts commit 97118f8e94.

* Revert "Calibration: retraction test"

This reverts commit b210c29434.

* Update OrcaSlicer_es.po

* More fixes

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Final fixes

* Update OrcaSlicer_es.po

* Update Spanish Strings

* update

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update text.js

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

---------

Co-authored-by: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
Co-authored-by: SoftFever <103989404+SoftFever@users.noreply.github.com>
2024-09-11 22:49:44 +08:00
Noisyfox
97d4ead854 Prevent toolbar clicking when mouse is hovering over layer height editor (#6727)
* Prevent toolbar clicking when mouse is hovering over layer height editor (SoftFever/OrcaSlicer#6713)
2024-09-11 22:28:49 +08:00
Noisyfox
5c3e094450 Fix issue that github action windows build could not find win10sdk (#6726)
* Fix issue that github action windows build could not find win10sdk (SoftFever/OrcaSlicer#6724)

* Another attempt to fix the build issue

* This should work now
2024-09-11 22:24:47 +08:00
Kevin Delgado
a453d153ea Improvementes in readme and security docs (#6730)
* Delete Readme.txt

Not in use

* Update SECURITY.md

Formatted and little changes made

* Update README.md

Improved format and texts, insert image at the top
2024-09-11 22:23:15 +08:00
Noisyfox
92b933f274 Fix issue that "total filament used [g]" is missing from gcode (#6728)
* Fix issue that "total filament used [g]" is missing from gcode
2024-09-11 22:17:32 +08:00
Erkan Ozgur Yilmaz
2b4cd6577b Duplicate Current Plate With Objects (Second PR) (#6710)
* Added `duplicate plate` feature.

This the initial commit and this still needs work.

* [#2025] Fixed the SEGFAULT, apparently an icon id=6 needed to be updated to id=7 as we have one more plate icon.
[#2025] Removed the `printf` statements.

* [#2025] Plate duplication is now fully implemented.

* [#2025] Updated icons for plate duplicate funcctionality.

* [#2025] Added toolbar icon fro "Duplicate Current Plate" action.

* [#2025] Revert changes for `toolbar_add_plate_dark.svg`.

* [#2025] Removed the `BBS` label in the code that is not written by BBS.

* [#2025] Updated `.gitignore` to ignore VSCode workspace file.

* [#2025] Fixed the instances not transforming in global space when the plate is duplicated.

* [#2025] Removed the Duplicate Plate action from the plate actions and the toolbar.

* [#2025] Added the `Duplicate Current Plate` functionality to the `Edit` menu.

* [#2025] Addressed review comments.

* [#2025] Addressed review comments.

* [#2025] Removed unused icons related to the previously introduced "Duplicate Plate" functionality.
2024-09-10 23:43:41 +08:00
Noisyfox
d87734ebfa Fix various issues with fuzzy skin (#6716)
* Fix issue that `fuzzy_skin_first_layer` not respected by classic wall generator

* Fix issue that Contour / Contour and hole mode not working properly (SoftFever/OrcaSlicer#6414)

* We have `is_contour`, so need for complicated hole detection
2024-09-10 23:28:39 +08:00
Ioannis Giannakas
3927f5adf8 Filter out micro segments generated during the overhang slowdown process (#6714) 2024-09-10 22:54:35 +08:00
Vovodroid
09ffca1243 Correct odd layer GUI description (#5793) 2024-09-09 22:45:58 +08:00
bo0tzz
f31a9f802b Fix loading 3d mouse params from config (#6703)
Since this seems a trivial enough change, I haven't done any local building/testing. Let me know if you need anything like that from me anyways.
2024-09-09 22:43:08 +08:00
Heiko Liebscher
adb2d33c92 New de translation and typos for 2.20beta (#6702)
* add new de translation for 2.2 beta

* fix typo info(r)mation

* build new locals
2024-09-09 22:42:27 +08:00
GlauTech
cb8866b478 Update TURKISH translations (#6685)
* Update TURKISH translations
2024-09-09 20:15:02 +08:00
SoftFever
158c71f05e bump version to 2.2.0-beta 2024-09-08 23:20:03 +08:00
SoftFever
a141e4fbf7 bump profile version 2024-09-08 23:12:46 +08:00
Noisyfox
d4c0a8b982 Fix Anycubic Kobra 0.4 nozzle profile (#6678)
* Fix Anycubic Kobra 0.4 nozzle profile
2024-09-08 22:52:54 +08:00
SoftFever
4de618ad1f update locales 2024-09-08 22:46:11 +08:00
SoftFever
7364b38592 updates for PR #6638 - typos and grammar (#6673)
Including a marathon of resolving merge conflicts due to PRs today.
We should abolish multi-line msgids :-)


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

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

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

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

# Screenshots/Recordings/Graphs

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

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

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

<!--
> Please describe the tests that you have conducted to verify the
changes made in this PR.
-->
2024-09-08 22:11:20 +08:00
SoftFever
36550f1fc5 deprecate overhang_speed_classic option and enable slowdown_for_curled_perimeters by default 2024-09-08 22:05:13 +08:00
SoftFever
394cf6c981 update bbl profile 2024-09-08 22:05:08 +08:00
Henri van der Riet
05010b79db merge conflict 2024-09-08 14:26:26 +02:00
SoftFever
11240b4ae5 Bugfix: gapfill was assigned with wrong extruder/filament (#6680)
# Description

Fixed #6620
2024-09-08 19:56:49 +08:00
SoftFever
78d72632f7 fix a bug that gapfill was assigned with wrong extruder/filament 2024-09-08 19:50:32 +08:00
SoftFever
7d4402cea1 Update Qidi profiles, fixes thumbnails for X3 machines (#6023)
change of thumbnails
2024-09-08 10:15:23 +08:00
Henri van der Riet
5d5f6074e0 line wraps 2024-09-08 02:48:53 +02:00
Henri van der Riet
3894f2cd37 Prusa -> Orca 2024-09-08 01:58:56 +02:00
Henri van der Riet
aa6a6876ed fix duplicates 2024-09-08 01:47:58 +02:00
Henri van der Riet
f6d4f5be32 fix duplicates 2024-09-08 01:25:20 +02:00
Henri van der Riet
5b0ddbd5f7 merge conflicts 2024-09-08 01:04:19 +02:00
Henri van der Riet
e750727743 updates for PR #6638 - typos and grammar
Including resolved merge conflicts.
2024-09-08 00:16:33 +02:00
SoftFever
415bedef94 Enabling object skirt. (#6487)
Implements individual object skirts, as requested in  **Individual skirts when printing by object. #3486** and  **Skirt around each object when using "by object" sequence #2652**

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

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

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

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


All four combinations are possible.

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

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

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

Print by object , common skirt (any meaning?):
![image](https://github.com/user-attachments/assets/e7883eb4-b1a3-4158-a7f4-ce0658bc1939)
2024-09-07 23:46:54 +08:00
SoftFever
8d5fdf9122 update locale 2024-09-07 21:01:12 +08:00
SoftFever
220213e846 Revert "Fix typos and grammar (#6638)"
This reverts commit 1afc1372bc.
2024-09-07 20:04:17 +08:00
Vovodroid
07d79376d3 Warnings: remove empty code (#6577)
* Warnings: remove empty code
2024-09-07 18:18:35 +08:00
Vovodroid
82c90666da Warnings: replace wxSOLID with wxPENSTYLE_SOLID (#6579)
* Replace wxSOLID with wxPENSTYLE_SOLID
2024-09-07 18:17:35 +08:00
Vovodroid
044a1c4fc5 Warnings: various fixes (#6582)
* Warnings: various fixes

* Use std::ignore
2024-09-07 18:16:50 +08:00
henrivdr
1afc1372bc Fix typos and grammar (#6638)
* fix lots of typos, grammar etc.

* merge conflict

* merge conflict

* merge conflict

* merge conflict

* revert gettext comments

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-09-07 18:00:01 +08:00
Noisyfox
53a3e86de3 Fix crash when dragging text in WebViews on macOS (#6668)
* Fix crash when dragging text in WebViews on macOS (SoftFever/OrcaSlicer#6608)
2024-09-07 17:39:18 +08:00
Thomas
5e842eb31f Added new French translations (#6667)
* Added new translations

* Removed dupe

* Cursed c-boost

* Removed dupe
2024-09-07 17:38:24 +08:00
Noisyfox
e3c1716d7c Fix calibration tab when switching between BBL&non-BBL printers (#6661)
* Fix calibration tab when switching between BBL&non-BBL printers (SoftFever/OrcaSlicer#6563)

* Merge branch 'main' into bugfox/cali_tab
2024-09-07 17:09:10 +08:00
vovodroid
5165515167 Rename skirt types 2024-09-07 12:02:39 +03:00
PugBuster
fc929ebb17 Added profiles for Anycubic Kobra standard (#6660)
Profile created based on information contained in the printer's firmware and profiles recommended by the manufacturer for Cura. It has been tested on various parts including 3DBenchy with more than satisfactory results.
2024-09-07 16:56:30 +08:00
Definately Anna
09f7412e19 Update Creality Ender-3 V3 KE 0.4 nozzle.json (#6659)
Fixed wrong probe count for default printer settings. Creality ships device with 5x5 mesh, and this setting causes errors "key194: BLtouch failed".
2024-09-07 16:52:37 +08:00
Thomas Schüßler
4ebcc97dc5 Fixed typo (#6650) 2024-09-07 16:33:40 +08:00
Vovodroid
7ccda83200 Clarify support and filter bridge config options (#6643)
* Clarify support and filter bridge config options
2024-09-07 16:31:51 +08:00
SoftFever
40ce542ffa Added profiles for MK3.5 (#6614)
# Description

Added profiles for MK3.5. Copied most of the settings over from MINIIS
and changed the speed and filament pressure advance settings according
to profiles in PrusaSlicer

# Screenshots/Recordings/Graphs
![Screenshot 2024-08-30 at 22 10
58](https://github.com/user-attachments/assets/10090722-c8a7-4773-a6a2-102cf0393057)
![Screenshot 2024-08-30 at 22 11
51](https://github.com/user-attachments/assets/b2dc5dc1-dd03-4648-bd7c-caf535f3d7bd)

## Tests

Tested with some Benchys for the different nozzle sizes. Everything
seems to work as expected.
2024-09-07 16:28:04 +08:00
SoftFever
372a525f2e Fix only one wall on first layer when raft is used (#6656)
Fix #6616
2024-09-07 16:25:01 +08:00
SoftFever
4e25217927 Fix bridge anchor when bridge is also the top surface (#6654)
Fixes #6642

Cherry picked from b133579126
Huge thanks for their excellent work!

![image](https://github.com/user-attachments/assets/8fc054bb-68da-4f8f-82bd-943bcf0b80c0)
2024-09-07 16:23:44 +08:00
Ioannis Giannakas
2c5478ee96 Combined infill max layer height (optional) parameter (#6401)
* Combined infill max layer height parameter

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

* Updated defaults and tooltips

* Update PrintConfig.cpp
2024-09-07 16:20:46 +08:00
SoftFever
5b5cd478c2 Merge branch 'main' into skirt-object-fix-pr 2024-09-07 10:57:59 +08:00
Noisyfox
a219ebe229 Fix only one wall on first layer when raft is used (SoftFever/OrcaSlicer#6616) 2024-09-05 11:34:29 +08:00
Noisyfox
ee17002a50 Fix bridge anchor when the bridge is the top surface (SoftFever/OrcaSlicer#6642)
Cherry-picked from prusa3d/PrusaSlicer@b133579126

Co-authored-by: Martin Šach <martin.sachin@gmail.com>
Co-authored-by: Lukas Matena <lukasmatena@seznam.cz>
2024-09-05 10:23:18 +08:00
Noisyfox
63ebebf4a0 Improve debugging output 2024-09-05 09:45:59 +08:00
Bernhard Koppensteiner
0921b6d99d fixed process naming, checks seem to be case sensitive 2024-09-04 20:51:10 +02:00
Bernhard Koppensteiner
a3d08e010d Merge branch 'SoftFever:main' into main 2024-09-04 20:38:47 +02:00
SoftFever
c179a57725 update sponsor list 2024-09-04 00:12:56 +08:00
gatosardina
9e3969b61c Update OrcaSlicer_es.po (#6381)
* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Upodate OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Add new translations and update existin from merged PR 6543

* Small fix in new msgid in OrcaSlicer_es.po

* Fix string start and termination quotes

* Fix string length?

* Update check_locale.yml

* testing with turkish translation

* test format

* fix format issues
2024-09-03 23:44:27 +08:00
SoftFever
5cc83b9835 Another outline algorithm based on depth buffer (#6492)
![image](https://github.com/user-attachments/assets/b3383f47-b2e0-4a17-8807-c59fc41f4697)

Based on the algorithm by [leoneruggiero](https://www.shadertoy.com/user/leoneruggiero): https://www.shadertoy.com/view/DslXz2

Still not perfect. might combine a normal based edge detection algorithm and try the Sobel kernel too.

~~And I'll add a preference option to disable this too.~~ Now there is an option in the View menu to toggle this on & off. It's off by default for now, as it's still experimental.
2024-09-03 23:39:23 +08:00
SoftFever
60cf1b48cc Merge branch 'main' into dev/outline-2 2024-09-03 23:07:21 +08:00
George Peden
328f74ed81 Treat linuxmint the same as ubuntu. fixes #6591 (#6592)
* Treat linuxmint the same as ubuntu. fixes #6591

* Merge branch 'SoftFever:main' into buildlinuxmint
2024-09-03 22:58:54 +08:00
George Peden
a1e2267fdf case insensitive sort for filament vendor list (#6594)
* case insensitive sort for filament vendor list

* Merge branch 'main' into case-insensitive-filament-vendor-sort
2024-09-03 22:58:11 +08:00
SoftFever
3e6d2d0f45 hide adaptive_bed_mesh and thumbnails parameters for bbl machines 2024-09-03 22:56:24 +08:00
Bernhard Koppensteiner
e55a8e7858 Merge branch 'main' into main 2024-09-02 21:02:28 +02:00
Dylan
3638c05270 update User-Agent in http request header (#6599)
* Update Http.cpp

`SLIC3R_APP_NAME + SoftFever_VERSION` is used in Gcode, but `SLIC3R_VERSION` is used incorrectly here.
2024-09-01 22:31:11 +08:00
GlauTech
5a607ccc5e Update TURKISH translations (#6625)
* Update TURKISH translations
2024-09-01 22:25:11 +08:00
SoftFever
db688e0cf4 Add Rook MK1 profile (#6627) 2024-09-01 21:09:42 +08:00
Noisyfox
b2b63b296d Fix GL_INVALID_OPERATION 2024-09-01 01:00:36 +08:00
Noisyfox
f244aed9c0 Add option to turn outline on & off 2024-08-30 23:25:03 +08:00
Noisyfox
445dc2b0f1 Merge branch 'main' into dev/outline-2 2024-08-30 21:43:26 +08:00
Bernhard Koppensteiner
f4bb5a6c20 changed speed settings 2024-08-29 14:41:26 +02:00
Bernhard Koppensteiner
50039afb66 added MK3.5 2024-08-29 14:41:09 +02:00
Bernhard Koppensteiner
be69554d34 changed thumbnail output 2024-08-29 14:40:27 +02:00
Bernhard Koppensteiner
22444137e8 changed cover 2024-08-28 22:02:57 +02:00
Bernhard Koppensteiner
40ac544dce Merge branch 'main' of https://github.com/koppensb/OrcaSlicer 2024-08-28 21:51:01 +02:00
Bernhard Koppensteiner
65e007cb41 added MK3.5 support 2024-08-28 21:48:15 +02:00
Cyril Guislain
4f9c730705 Fixes for FLSUN S1/T1 (#6574) 2024-08-28 23:17:25 +08:00
Ioannis Giannakas
0ba4181a06 Ported filament shrinkage compensation for XY and independent Z from Prusa Slicer (fixing MMU painting, seam painting, support painting issues) (#6507)
* Ported filament shrinkage compensation from Prusa Slicer. Updated logic to be 100 = no shrinkage to be consistent with orca definitions

* Code comments update

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

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

* Merge branch 'main' into Filament-Shrinkage-compension---port-from-Prusa-slicer
2024-08-28 23:15:39 +08:00
Victor Usoltsev
b34ac2bda3 Merge branch 'main' into feature/show-extruder-values-on-filament-overrides-tab 2024-08-28 20:22:40 +12:00
Thomas
d1e7bb2762 Translated new strings in French (#6578)
* Translated new strings

* Fixes

* c-boost fix
2024-08-27 23:32:52 +08:00
Aleksey Bogomolov
751d51637b UseElegoo Neptune 4 retraction from Np4 Pro profile (#6565)
* Use Elegoo Neptune 4 retraction from Np4 Pro profile
2024-08-27 23:30:58 +08:00
Kenneth Jiang
c30ffb1895 Profiles for Kingroon KLP1 and KP3S V1 (#6554)
* Kingroon KLP1 profiles

* Kingroon KP3S V1 profiles

* Make cover png file size more reasonable

* copy/paste error in the profile name

* Merge branch 'main' into kingroon-klp1-profiles
2024-08-27 23:28:02 +08:00
Ioannis Giannakas
1ff5424819 Bug fix: Avoid crossing walls feature removes some retraction wipes (#6518)
* Bug fix: Avoid crossing walls feature removes some retraction wipes

* Merge remote-tracking branch 'upstream/main' into Bug-Fix-Avoid-crossing-walls-removing-wipe-moves-when-retraction-was-happening

* Merge branch 'main' into Bug-Fix-Avoid-crossing-walls-removing-wipe-moves-when-retraction-was-happening

* Merge branch 'main' into Bug-Fix-Avoid-crossing-walls-removing-wipe-moves-when-retraction-was-happening
2024-08-27 23:26:43 +08:00
dylan
97eec47be6 update Snapmaker profiles
- add Breakaway Support filament
- add preheat params for Snapmaker Dual/IDEX printers
- update the check bounds code in start-gcode, which is now off by default
2024-08-27 01:14:19 +08:00
Heiko Liebscher
7d1fb381e4 add new msgid's fol all languages 2.2.0-Dev (#6543)
* add new msgid's fol all languages

* Merge branch 'main' into new_features_translation

* Merge branch 'main' into new_features_translation
2024-08-26 20:22:56 +08:00
Noisyfox
3757295b95 A bunch of tab fixes (#6551)
* Make sure the speed tab is properly hidden when toggle off advance mode

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

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

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

* Fix issue that the wrong tab item get bold if the number of tabs changed
2024-08-26 20:21:59 +08:00
vovodroid
2a8b39acd4 Object skirt 2024-08-26 13:48:51 +03:00
Noisyfox
2bf54878f7 Make the checkbox on export preset dialog more visible in dark mode (#6539)
* Make the checkbox on export preset dialog more visible in dark mode (SoftFever/OrcaSlicer#6536)

* Merge branch 'main' into bugfox/export-checkbox
2024-08-25 12:42:01 +08:00
Vovodroid
0c63dd4bd0 Remove unused slow down proportionally code (#6405)
* Remove unused slow down proportionally code
2024-08-25 12:40:40 +08:00
Vovodroid
a7d2ae0450 Fix crash when both Flow compensator and Verbose Gcode are enabled. (#6428)
* Fix crash when both Flow compensator and Verbose Gcode are enabled.
2024-08-25 12:39:15 +08:00
Vovodroid
bd8c2ffaeb Refactor stagger concentric seams (#6432) 2024-08-25 12:33:32 +08:00
vovodroid
0b6a1d3636 Refactor all_objects_are_short 2024-08-24 15:37:47 +03:00
vovodroid
83346aaffa Configure skirt start point 2024-08-24 15:37:46 +03:00
Noisyfox
a68fc86c4e Fix crash in printer config when switching tabs (#6537)
* Fix ASAN with MSVC

* Make ASAN happy

* Avoid deleting activated tab button by not calling `DeleteAllItems` (#SoftFever/OrcaSlicer#6486)
2024-08-23 22:55:10 +08:00
SoftFever
d1b9ef427e Add alert 2024-08-23 22:12:36 +08:00
J-D
a2218ac99c Update Dutch language (#6542)
Spelling errors corrected.
Incorrect translations corrected.
Added several untranslated parts.
2024-08-23 19:24:30 +08:00
InfimechOfficial
2012fab758 upgrade start_gcode (#6540)
* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_klipper_common.json

* Update fdm_machine_common.json
2024-08-23 19:23:55 +08:00
FlyingbearOfficial
bf79a93e1b upgrade start_gcode (#6541)
* Update FlyingBear S1 0.4 nozzle.json

* Update 0.16mm Optimal @FlyingBear Reborn3.json

* Update 0.16mm Optimal @FlyingBear S1.json

* Update fdm_process_common.json

* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_process_common.json

* Update fdm_process_common_S1.json

fix some parameters

* Update fdm_process_common.json

* Update FlyingBear S1 0.4 nozzle.json

* Update 0.08mm Extra Fine @FlyingBear S1.json

* Update 0.12mm Fine @FlyingBear S1.json

* Update 0.16mm Optimal @FlyingBear S1.json

* Update 0.20mm Standard @FlyingBear S1.json

* Update 0.24mm Draft @FlyingBear S1.json

* Update 0.08mm Extra Fine @FlyingBear Reborn3.json

* Update 0.12mm Fine @FlyingBear Reborn3.json

* Update 0.16mm Optimal @FlyingBear Reborn3.json

* Update 0.20mm Standard @FlyingBear Reborn3.json

* Update 0.24mm Draft @FlyingBear Reborn3.json

* Update FlyingBear S1 0.4 nozzle.json
2024-08-23 19:23:30 +08:00
Ioannis Giannakas
91e775b1b4 Revert "Take filament flow ratio into account when displaying flow in gcode legend" (#6525)
This reverts commit ff53f401be.
2024-08-23 00:16:38 +08:00
Ioannis Giannakas
bcf45a332e Updated chamber temperature control tooltips (#6517) 2024-08-23 00:05:43 +08:00
Eren
cd4de6be7e Update OrcaSlicer_tr.po (#6511)
Incorrect mmu flush sentences corrected. Still might not be 100% accurate, but better this way
2024-08-23 00:03:36 +08:00
Vovodroid
2eb1adb719 Reduce warnings: remove unused variables (#6499)
Removed unused variables
2024-08-23 00:02:58 +08:00
SoftFever
c6065d54fc New YOLO flow rate calibration (#6479)
* update flow rate calibration tests

* more tweaks

* add YOLO linear flow rate calibration

* update name

* revert line_width changes

* Make it 2mm thick and change some text

* Update YOLO test:
Normal YOLO for 0.01 step
Perfectionist YOLO for 0.005 step

* add space
2024-08-23 00:01:59 +08:00
Ioannis Giannakas
2a5e260b31 Wiki updates v2 & adaptive PA documentation (#6491)
* Wiki home page fix links and readme update to link to wiki

* Update README.md

* Fixed developer reference links

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

* adaptive PA documentation

* Update adaptive-pressure-advance.md

* updated screenshots

* formatting

* Update adaptive-pressure-advance.md

* Update adaptive-pressure-advance.md

* Update adaptive-pressure-advance.md

* Include adaptive PA link
2024-08-23 00:01:30 +08:00
vovodroid
748ae2e7a6 Remove draft shield limited option 2024-08-22 10:49:47 +03:00
vovodroid
302e5b1220 Fix skirt distance calculation 2024-08-22 10:15:23 +03:00
vovodroid
6b50098813 Fix memory leak - clear object skirt on new slicing 2024-08-22 10:15:22 +03:00
vovodroid
59fc8bda31 Remove unreal conditions. 2024-08-22 10:13:56 +03:00
vovodroid
52e9e03a0b Remove unused legacy brim method 2024-08-22 10:13:45 +03:00
vovodroid
83522c67ee Google-translate Chinese comments 2024-08-22 10:13:44 +03:00
vovodroid
e0089dfe9f Fix typo cleareance_radius -> clearance_radius 2024-08-22 09:05:19 +03:00
Noisyfox
70495a3bf9 Use texture instead of texelFetch to make it smoother 2024-08-19 23:11:01 +08:00
Ioannis Giannakas
6dc8b28529 Overhang tooltips updates (#6501)
* Overhang tooltips updates
2024-08-19 22:54:58 +08:00
Noisyfox
13e18d1d65 Use a 2-pass depth based outline algorithm when selected 2024-08-18 19:31:08 +08:00
Vovodroid
2acd858bf3 Remove unused parameter from place_seam method (#6421) 2024-08-18 16:32:56 +08:00
Noisyfox
12c4ff0d93 Fix "Open Containing Folder" on Linux (#6469)
Fix "Open Containing Folder" on Linux (SoftFever/OrcaSlicer#6449)
2024-08-18 16:31:39 +08:00
Noisyfox
4dd7d79d76 Fix crash on Linux when switching between tabs in printer config (#6437)
* Fix crash due to the wrong window get returned in `PointCtrl` (SoftFever/OrcaSlicer#6261).
`getWindow()` must return the control itself, not its child control; otherwise the child control will be destroyed twice when the tab container is destroyed.

* Fix another crash on Linux caused by unused undo button
2024-08-18 16:30:45 +08:00
Ioannis Giannakas
01b16814ad Gap fill tool tip clarification & filter_out_gap_fill setting visibility (#6468)
* Gap fill tool tip clarification

* Gap fill text and parameter visibility update
2024-08-18 11:38:46 +08:00
artillery3dlab
364d91bd56 Artillery proflies update (#6457)
* Artillery proflies update
2024-08-18 11:37:11 +08:00
Andreas Rammhold
bf956dfbe3 Fix build with CGAL 5.6 (again) (#6439)
* Fix build with CGAL 5.6

Surface_mesh iterators no longer return references, so it's necessary to
use const references or copies when iterating.

This was previously merged in #3045 but isn't references in the
current main branch anymore. No idea where why it is gone, but the issue
still persists thus the patch should still be added.
2024-08-18 11:34:15 +08:00
Noisyfox
f136f04cfd Fix Linux build & some warnings (#6438)
* Fix linux deps debug build

* Use the same DL_CACHE for release build when building debug version of deps on Linux.
This prevents downloading the same source packages twice, and avoid downloading again after deleting the build dir.

* Fix debug build

* Fix warnings "loop variable creates a copy from type" and "loop variable binds to a temporary constructed from type"
2024-08-18 11:33:00 +08:00
Ioannis Giannakas
0d886a133f Update Wiki (#6474)
* Update Wiki

* Wiki updates
2024-08-18 11:16:14 +08:00
SoftFever
e73638af59 add prime all used extruder logic in start g-code for tool changer.
The prime logic is mainly bollowed from Prusa XL 5T
2024-08-14 23:03:05 +08:00
Ioannis Giannakas
9a260010fc Improvements in Inner Outer Inner wall ordering logic (#6138)
* Improvements in Inner Outer Inner wall ordering logic

* Updated to BFS algorithm, made ordering more robust and corrected edge cases

* Doc updates

* Refinements in perimeter sorting

* Removal of touch threshold and code debugging to improve sequencing

* Code cleanup

* Code refinements on perimeter distance thresholds

* Extend perimeter re-ordering to more than inset index 2, to reduce travel moves when printing neighbouring features

* Refinements to IOI perimeter re-ordering algorithm to improve travel scenarios where multiple external perimeters are contained in the same island.

* Documentation updates

* Removed unnecessary code

* Removed bespoke to_points function and replaced with ExtrusionLine member already present. Removed squaredDistance and replaced with Eigen library call.

* Refactor code to move distancing functions to the multipoint class. Renamed for more clarity on their purpose.
2024-08-13 23:25:49 +08:00
SoftFever
7082e945b1 Revert "Fix Compile Warnings (#5963)"
This reverts commit b83e16dbdd.

Found regressions like auto orientation didn't work anymore after this change, revert it
2024-08-12 00:00:20 +08:00
Vovodroid
0286c36f42 Stagger concentric infill seams. (#6184) 2024-08-11 23:23:20 +08:00
Duan Gauche
fa7a11fa7f Styrene Butadiene Styrene (SBS) - Template and profiles for Bambu (#6278)
* Added SBS to filament_info.json

* Added SBS to Print.cpp

* added SBS to PrintConfig.cpp

* Added SBS to BBL

* Added SBS Template and also specified SBS as type in fdm_filament_sbs.json

* Updated settings for SBS in filament_sbs_template.json

* Applied SBS settings to  fdm_filament_sbs.json

* added settings to Generic SBS @base.json

---------

Co-authored-by: Duan Gauche <duan.gauche@pdsvision.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-08-11 23:03:02 +08:00
Thomas
6b44a031be French translations (#6403)
* Added missing strings.

* Added missing translations

* Fixed boost format
2024-08-11 23:00:47 +08:00
Heiko Liebscher
fe58a84908 add de translation for new features (#6380)
* translation for new features

* fix typo
2024-08-11 23:00:24 +08:00
Cyril Guislain
bcf4c29028 Improved FLSUN S1 and T1 configurations (#6349) 2024-08-11 22:59:59 +08:00
SoftFever
a16a1e9307 Feature/mmu toolchange time (#6426)
* Revert "Fix #3311: filament Load / Unload time was not used in time estimation (#3706)"

This reverts commit 252788419b.

* revamp tool/filament change time

* tweak message
2024-08-11 22:56:32 +08:00
vovodroid
fd315ee199 Allow default acceleration/jerk for all parameters. 2024-08-10 16:07:58 +03:00
Robert Schiele
7bbffaa996 more missing includes (#6398)
Here are more missing header files recently identified by building
without precompiled header support.
2024-08-09 21:33:09 +08:00
Ioannis Giannakas
ad8cec26af Clarified flow ratio tooltips (#6397)
* Clarified flow ratio tooltips

* Spelling

* Formatting
2024-08-09 21:32:24 +08:00
SoftFever
b8a9c22404 Feature/misc fixes of toolchanger (#6396)
* Use more readable data types for storing triangle splitting information.

* fix build errors

* SPE-2063: Determine correctly which extruders are used when the object is painted by the multi-material painting gizmo.

During the serialization of TriangleSelector and also during reading serialized painting data from 3MF, we cache all used states in the painted triangle mesh.

Based on this information, we can quickly determine which extruders are used and which don't.

* Fixed an bug that filament list was not updated properly

---------

Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
2024-08-09 21:11:17 +08:00
Vovodroid
a4cfc14a7e Jerk - per axis maximum limit (#6252)
* Jerk - per axis maximum limit

* Fixing Klipper and refactoring

* Remove unused variables
2024-08-07 22:41:09 +08:00
Victor Usoltsev
c36ba2b8a1 Shows extruder's values on filament's Setting Overrides tab. 2024-08-07 23:26:00 +12:00
Vovodroid
98a243c302 Drop object on the plate (#6166)
Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-08-06 23:18:28 +08:00
Olcay ÖREN
724762bbc8 Update TURKISH translations (#6337)
* Update OrcaSlicer_tr.po - TURKISH translation update

* Update TURKISH translations

* Update TURKISH translations

* Update TURKISH translations
2024-08-06 22:27:32 +08:00
Ioannis Giannakas
dcabdb8b77 Fix z hop performed after retraction in PA pattern calibration. Fix z hop config value not used (#6245)
* Fix z hop performed after retraction in PA pattern calibration. Fix zhop config value not used

* Updated gathering of z hop value method for consistency
2024-08-06 22:27:08 +08:00
SoftFever
cbda70ae73 workaround fix for flicking top bars 2024-08-04 20:06:02 +08:00
SoftFever
61952610df Revert "fix gizmo bar wobbling (#6230)"
This reverts commit 9ff0e9335f.
2024-08-04 19:25:41 +08:00
SoftFever
8ed2911db8 Properly find used extruders when infill/wall_filament is set (#6335) 2024-08-04 12:37:26 +08:00
SoftFever
ef5bae9910 Bump version to 2.2.0-dev 2024-08-04 10:52:11 +08:00
Dima Buzdyk
e6ed93f0c6 Fix -Wsubobject-linkage warning (#6243)
* Fix -Wsubobject-linkage warning

Having tk::spline header-only implementation included from
SmallAreaInfillFlowCompensator.hpp makes
SmallAreaInfillFlowCompensator::flowModel have separate (albeit the
same) implementation in each translation unit.

In order to fix this issue, SmallAreaInfillFlowCompensator::flowModel
converted to opaque 'pimpl'

* spline: remove anonymous namespace

Remove outer anonymous namespace from splice.h to make
forward declaration for tk::spline possible.
2024-08-04 10:48:24 +08:00
Dima Buzdyk
9ff0e9335f fix gizmo bar wobbling (#6230)
* fix gizmo bar wobbling

Gizmo bar is wobbling at specific application window width range.
This comes from a bar scaling calculations method:
    - new scale calculated for already scaled bar
    - scale stored as application settings loosing precision

Rework gizmo bar resizing code to remove feedback:
    - calculate scale factor based on unscaled bar size

* rework gizmo bar scaling

Unify scaling implementation across platforms (MacOS, Win, Linux).

Now all platform scale bar setting icon size.
Toolbar scale is used for high-DPI displays scaling only.

* Add comments, reorganize changes to minimize diff
2024-08-04 09:05:59 +08:00
KrisMorr
8b8a70fffa update locale and Polish translations (#6330)
* update locale and Polish translations

for PR #6329

* fix

* text.js_update Polish translation

* fix
2024-08-04 08:58:48 +08:00
KrisMorr
fc38c4c8c1 Adding missing string aliases for gettext (#6329) 2024-08-04 08:58:24 +08:00
SoftFever
8eb69b053f Add camera sanity check 2024-08-04 00:54:58 +08:00
SoftFever
83c50b2ad1 Toolchanger: fix an issue that wall_filament/sparse_infill_filament/solid_infill_filament didn't always work 2024-08-04 00:54:03 +08:00
ElectricalBoy
aaaa4f884e Localization: Change Python executable name for Windows (#6302)
Change Python executable name for Windows
2024-08-03 22:02:21 +08:00
Noisyfox
bb5e2af509 Fix/crashing when generating walls (#6325)
* Fix crash when filling very tiny (1-5nm) gaps (#6279)

Cherry-picked from prusa3d/PrusaSlicer@8784ca0ecf

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

* SPE-2256: Fix the issue that we used the old Voronoi graph during the detection of invalid Voronoi diagrams.

This happens because we didn't set a modified flag that is required to be set before we use the new Voronoi graph.
Possibly related to #12385

Cherry-picked from prusa3d/PrusaSlicer@2de1f3aa45

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

---------

Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
2024-08-03 22:01:37 +08:00
SoftFever
b85c146499 Disable flatpak for now.
The current flatpak workflow in Orca is too troublesome to maintain.
2024-08-03 11:37:50 +08:00
Carlos Francisco Caruncho Serrano
d22cd9cb58 Updated and Fixed spanish translation (#6320)
* Update OrcaSlicer_es.po

* Merge remote-tracking branch 'upstream/main' into Spanish_Translation

* Merge remote-tracking branch 'upstream/main' into Spanish_Translation

* some changes

* Merge remote-tracking branch 'upstream/main' into Spanish_Translation

* Some fixes

* More fixes

* More fixes and improves

* More fixes

* Merge remote-tracking branch 'upstream/main'

* Merge remote-tracking branch 'upstream/main'

* Update OrcaSlicer_es.po

* Merge branch 'main' of https://github.com/tadeu2/OrcaSlicer

* Merge remote-tracking branch 'upstream/main' into Spanish_Translation

* Merge remote-tracking branch 'upstream/main' into spanish_translation

* Update OrcaSlicer_es.po

* Merge remote-tracking branch 'upstream/main' into spanish_translation

* Merge remote-tracking branch 'upstream/main' into spanish_translation

* Traducción español Beta 2.1.0

* Update text.js

* Update OrcaSlicer_es.po

Cambiado punto por coma

* Merge remote-tracking branch 'upstream/main' into Spanish_Translation

* Merge remote-tracking branch 'upstream/main'

* Minor fix PR

* Update OrcaSlicer_es.po

* Merge remote-tracking branch 'upstream/main' into spanish_translation

* Update OrcaSlicer_es.po

* Merge remote-tracking branch 'upstream/main' into Spanish_Translation

* Update Spanish Language

* Updated strings

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Fixed Spanish Strings in English

Fixed a lot of string whose are translations were english to english.

* Some spanish strings improved

* Merge remote-tracking branch 'upstream/main' into Spanish_Translation

* Update Spanish Strings in RC

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Merge remote-tracking branch 'upstream/main' into spanish_translation

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Merge remote-tracking branch 'upstream/main' into Spanish_Translation

* Update OrcaSlicer_es.po

* Merge branch 'Spanish_Translation'

* Update OrcaSlicer_es.po

* Some fixes

* More fixes and improves

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

Cambiado punto por coma
2024-08-03 00:23:47 +08:00
Ocraftyone
e96527b2fe Enable WebView devtools if developer mode is enabled (#6298)
* Enable WebView devtools if developer mode is enabled
2024-08-03 00:23:07 +08:00
FlyingbearOfficial
ade20222a5 fix "exclude_object" for FlyingBear profiles (#6294)
* Update FlyingBear S1 0.4 nozzle.json

* Update 0.16mm Optimal @FlyingBear Reborn3.json

* Update 0.16mm Optimal @FlyingBear S1.json

* Update fdm_process_common.json

* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_process_common.json

* Update fdm_process_common_S1.json

fix some parameters

* Update fdm_process_common.json

* Update FlyingBear S1 0.4 nozzle.json

* Update 0.08mm Extra Fine @FlyingBear S1.json

* Update 0.12mm Fine @FlyingBear S1.json

* Update 0.16mm Optimal @FlyingBear S1.json

* Update 0.20mm Standard @FlyingBear S1.json

* Update 0.24mm Draft @FlyingBear S1.json

* Update 0.08mm Extra Fine @FlyingBear Reborn3.json

* Update 0.12mm Fine @FlyingBear Reborn3.json

* Update 0.16mm Optimal @FlyingBear Reborn3.json

* Update 0.20mm Standard @FlyingBear Reborn3.json

* Update 0.24mm Draft @FlyingBear Reborn3.json
2024-08-03 00:11:56 +08:00
Gabriel Janucik
74775c93b1 FlasForge Adventurer 3 machine start gcode fix #6282 (#6312)
Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-08-03 00:02:51 +08:00
Flsun3d
7b6b5a3f81 Improved Flsun S1,T1 configuration parameters (#6244)
* Add files via upload

* Add files via upload

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-08-03 00:01:44 +08:00
yw4z
7d5ab6456f Update plate list > plate number position (#6202)
* Update GLCanvas3D.cpp
2024-08-02 23:15:58 +08:00
Dima Buzdyk
143d8c4a8d Suppress some compiler warnings, fix few possible bugs. (#6224)
* Supress warnings on unused functions an variables

Compilation of OrcaSlicer produces 3056 warnings.
Nearly half of them related to unused functions and variables.

It is unlikely we going to clean them up since we may want to
keep code base as close to the BBS as possible

* initialize class member with correct value

* Fix memset arguments order

* Merge multiple statemensts into single

* fix -Wpessimizing-move
2024-08-02 22:56:23 +08:00
Duan Gauche
b1a06e80b3 added FilX as a Filament vendor (#6216)
* added FilX

* Fixed Typo

* Merge branch 'main' into FilX

* Merge branch 'main' into FilX
2024-08-02 22:48:11 +08:00
SoftFever
68945e07e8 write correct extruder_colour to gcode
fixes #6288
2024-08-02 21:40:03 +08:00
Ioannis Giannakas
c5d417ed89 Improve overhang slowdown granularity & line segmentation handling (#5996)
* Increase granularity of extrusion move splitting for small line segments ending in an overhang

* Parameter tweak

* Increase granularity of estimation for curled perimeters

* Adjust parameters following experimentation with overhang prints

* Updated overhang segmentation logic

* Cleanup code comments
2024-08-01 22:38:08 +08:00
SoftFever
cfe21e5e34 fix flatpak build error 2024-07-31 20:43:13 +08:00
Pim
f0f5c3bbe9 feat: add stealth mode select step to setup wizard (#6104)
feat: add stealth mode select to setup wizard

feat: enable stealth mode until user finishes setup wizard

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-07-31 19:51:07 +08:00
cochcoder
3510158cd8 Fix processes not showing for Flashforge Guider 2s (#5970)
* Fix processes not showing for Guider 2s

* Fix merge conflicts

* Fix process not showing (after updating PR)
2024-07-30 22:34:41 +08:00
Noisyfox
783570ebf6 Fix access violation when slicing project with print-by-object mode (#5984)
Fix issue that models with only one color become multicolor after slicing when print-by-object mode is used.
This applys the same fix as 612204b443
2024-07-30 22:32:15 +08:00
SoftFever
b5bf6aed6f Update Korean Localization (v2.1.1_3) (#6144)
This PR:

- Updates translation template to include new messages from #6009 and
updates <s>existing translation files</s> Korean translation file
accordingly
- Updates Korean translation, including new translations for #6009
2024-07-30 22:29:33 +08:00
SoftFever
abb62ca180 Update bbl profiles to 01.09.00.18 (#6271)
# Description

Copied files from BambuStudio after downloading updated profiles.

Add support for BambuLab PETG-HF  and Support for ABS. Fixes #6182

Also contains some changes to the default infill from crosshatch to
gyroid, and updated start g-code for A1.

# Tests

Copied all files to resources directory on install, and started.
Profiles showed up.
2024-07-30 22:29:00 +08:00
SoftFever
c992c7066e Fixed an issue that skirt may overlap with stable cone of wipe tower 2024-07-30 22:27:56 +08:00
ElectricalBoy
579cc9781d Update Korean translation 2024-07-30 10:22:05 +09:00
ElectricalBoy
5fd819d4e5 Update translation template 2024-07-30 10:21:01 +09:00
cochcoder
55ed305392 Merge branch 'main' into rat-rig-covers 2024-07-29 17:10:56 +00:00
legonigel
e423a78eec Revert "Update bambulab profiles to 01.09.00.18"
This reverts commit a09aa1711a.
2024-07-29 09:22:27 -07:00
SoftFever
1532a74f87 Better support for MMU devices with filament cutter(e.g. ERCF v2 and any MMU with a cutter like Filametrix) (#6241)
flush_length variable is now provide correct value based on the flush
matrix set by the user.

pesudo code in Change filament gcode:
```
...
T1 

; Park head to the purging location
G1 X0 Y-5 F12000

; Purge certain amount of filament into waste bin
G1 E[flush_length] F600

...


```

This PR is based on the WIP tool changer branch #6087

Fixes #4194 #5937 #5912
2024-07-29 23:22:13 +08:00
SoftFever
4b2a09bd07 Merge branch 'main' into feature/support-fliament-cutter-explore-proper-flush-lenght 2024-07-29 23:21:48 +08:00
SoftFever
f24c7229a9 Orca tool changer support (#6087)
# Description

Add support of tool changer printers.
A new printer model has been added: `Generic ToolChanger`

Currently only support tool changer printers like `TapChanger` and
`StealthChanger`.
~Support for Prusa XL is still WIP.~ Prusa XL is supported now

~~⚠️WARNING⚠️ : please proceed with caution. It hasn't been tested on an
real printer yet. Please double check with g-code before printing it.~~

🚀GOOD NEWS🚀: Multiple successful prints have been reported; it should be
safe to try [Discord
Thread](https://discord.com/channels/1137181739773603922/1258993224018821160).
**For bugs, please kindly help by logging issues with details and sample
projects, then label them as ToolChanger. This will help me track
them.**

# Screenshots/Recordings/Graphs


https://github.com/SoftFever/OrcaSlicer/assets/103989404/bd518f77-5cc1-4b3a-ba76-7ead75494365

# Test
Feedback is welcomed!
For Mac users, please ref to this instruction:
https://github.com/SoftFever/OrcaSlicer#how-to-install


- [x] Occasionally crashes when change printer settings
- [x] Prusa XL profiles and custom gcode
- [x] Ooze prevention bug
- [x] Prusa XL z offset issue when prime tower is used
- [x] Preheat nozzle(temporary solution)
- [x] infinite(tall) skirt when both ooze prevention and skirt are
enabled
- [ ] skirt/purge cone overlap
- [ ] Document about custom variables


Implement #5943 #2050 #5079
2024-07-29 23:20:40 +08:00
SoftFever
f83dd4f0a7 fix flatpak 2024-07-29 23:19:28 +08:00
SoftFever
99c7b856fe fix build error 2024-07-29 23:12:47 +08:00
SoftFever
5e2f145c34 Merge branch 'main' into feature/multitool 2024-07-29 22:51:13 +08:00
SoftFever
e83c7653cd fix build error 2024-07-29 21:58:08 +08:00
Handle
1c256247b4 Updated some zh_CN translate. (#6273)
* Translated using Weblate (Chinese (Simplified))

Currently translated at 95.0% (3854 of 4054 strings)

Translation: Orca Slicer/orcaslicer-main
Translate-URL: https://weblate.bysb.net/projects/orca-slicer/orcaslicer-main/zh_Hans/

* Translate (Chinese (Simplified)) updated

Currently translated at 95.7% (3882 of 4054 strings)

Translation: Orca Slicer/orcaslicer-main
Translate-URL: https://weblate.bysb.net/projects/orca-slicer/orcaslicer-main/zh_Hans/

* Update OrcaSlicer_zh_CN.po

Removed sth shouldnt in the file
2024-07-29 21:05:46 +08:00
Ocraftyone
b83e16dbdd Fix Compile Warnings (#5963)
* Fix calls to depreciated wxPen constructor

* Fix use of wxTimerEvent

* Fix unrecognized character escape sequence

* Fix signed/unsigned mismatch

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

* Clean unreferenced variables

* fix mistyped namespace selector

* Update deprecated calls

* Fix preprocessor statement

* Remove empty switch statements

* Change int vector used as bool to bool vector

* Remove empty control statements and related unused code

* Change multi character constant to string constant

* Fix discarded return value

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

* Rename ICON_SIZE def used by MultiMachine

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

* Remove unused includes

* Fix linux/macOS compilation

* Hide unused-function errors on non-Windows systems

* Disable signed/unsigned comparison mismatch error

* Remove/Disable more unused variables

Still TODO: check double for loop in Print.cpp

* Remove unused variable that was missed

* Remove unused variables in libraries in the src folder

* Apply temporary fix for subobject linkage error

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

* remove redundant for loop

* fix misspelled ifdef check

* Update message on dialog

* Fix hard-coded platform specific modifier keys

* Remove duplicate for loop

* Disable -Wmisleading-indentation warning

* disable -Wswitch warning

* Remove unused local typedefs

* Fix -Wunused-value

* Fix pragma error on Windows from subobject linkage fix

* Fix -Waddress

* Fix null conversions (-Wconversion-null)

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-07-29 21:00:26 +08:00
ElectricalBoy
b40853af94 CI: Create Automated Workflow for Translation Catalog Updates (#5959)
* CI: Automate translation catalog update

Signed-off-by: GitHub <noreply@github.com>

* Update triggers for localization workflow

Signed-off-by: GitHub <noreply@github.com>

* Rewrite HintsToPot with Python

* Disable scheduled workflow runs

* Apply formatting to HintsToPot.py

* Add missing exit() call
2024-07-29 20:38:10 +08:00
cochcoder
7236d6cdbf Fix crossing max x axis & rise max print height of Ender-3 V3 KE (#5958)
* Fix crossing max x axis & rise max print height of Ender-3 V3 KE

* Merge branch 'main' into ender-3-V3-KE-4

* Merge branch 'main' into ender-3-V3-KE-4
2024-07-29 20:34:00 +08:00
Vovodroid
4a81fe6134 Suggest firmware retraction time (#5926)
* Suggest  firmware retraction time
2024-07-29 20:32:07 +08:00
Vovodroid
2ee3800a47 Limit variable layer height displaying precision to 3 digits (#5795)
* Limit variable layer height calculation and displaying precision to three digits.

* Remove calculation rounding.
2024-07-29 19:13:50 +08:00
cochcoder
52ea9c2d32 Merge branch 'main' into rat-rig-covers 2024-07-28 21:37:53 +00:00
Ocraftyone
c08126703c Fix Preferences dialog sizing on multi monitor setups (#5820) 2024-07-29 00:15:16 +08:00
Vovodroid
83a9b2513a Reverse draft shield direction on even layers to reduce thermal stress. (#5789)
* Reverse draft shield direction on even layers to reduce thermal stress and warping.

* Use reverse() to make code clear.
2024-07-28 23:26:34 +08:00
Ioannis Giannakas
529c44d8e3 Enhancement: Adaptive Pressure advance (#5609)
* Adaptive Pressure advance options setup

* Dynamic PA - PCHIP interpolator code and tests

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

* Link adaptive PA to role change instead of speed change

* Adaptive PA - Alpha 2

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

* Hide adaptive PA for overhangs

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

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

* Removed adaptive PA for overhangs

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

* Minor code cleanup and updating of tooltips

* Renaming files for better clarity and generate classes documentation

* Update src/libslic3r/PrintConfig.cpp

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

* Update src/libslic3r/PrintConfig.cpp

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

* Update src/libslic3r/PrintConfig.cpp

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

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

* Updates for multipath handling part 2

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

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

* Updates for multipath handling part 2

* Adaptive PA: Implement average flow estimation on loops

* Code formatting

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

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

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

* Code clean up

* Performance tuning

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

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

* Reduce debug information

* Updated debug info

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

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

* Initial commit for adapting PA when extruding fully overhanging perimeters

* Ignore wipe command when identifying current print speed

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

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

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

* Refactored some code

* More refactoring

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

* Introduced dedicated PA option for bridges

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

* Updates to adaptive PA tooltips

* Bridging PA check with Epsilon instead of 0.

* Adaptive PA: addressing comments

---------

Co-authored-by: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com>
2024-07-28 22:52:08 +08:00
legonigel
a09aa1711a Update bambulab profiles to 01.09.00.18
Copied files from BambuStudio after downloading updated profiles.
2024-07-27 14:05:58 -07:00
Vovodroid
543a1e5c37 Use one loop for draft shield (#5786) 2024-07-27 12:27:58 +08:00
HYzd766
3ca9ffe7aa Update fdm_process_qidi_x3_common.json
change of format
2024-07-26 09:12:00 +08:00
Duan Gauche
50d646dd41 Added Styrene Butadiene Styrene (SBS) to filament_types (#6217)
Co-authored-by: Duan Gauche <duan.gauche@pdsvision.com>
2024-07-25 22:40:17 +08:00
Azi
b40e6c0b9a Fixing high GPU usage when color scheme is set to "Filament" or "Speed" (#6223)
removed imgui.set_requires_extra_frame(), this line causes Slic3r::GUI::GLCanvas3D::render() to be called repeatedly when 'Filament' or 'Speed' is selected for preview panel
2024-07-25 22:38:05 +08:00
KrisMorr
58040a6687 Update Polish translation (#6163)
* Update Polish translation

* fix

johnny-bit suggestion
Thx
2024-07-25 22:33:56 +08:00
Handle
897411547f Update zh_CN translaton. (#6222) 2024-07-25 22:28:35 +08:00
Carlos Francisco Caruncho Serrano
2eb2648bc4 Update spanish translation (#6189)
* Update OrcaSlicer_es.po

* some changes

* Some fixes

* More fixes

* More fixes and improves

* More fixes

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Traducción español Beta 2.1.0

* Update text.js

* Update OrcaSlicer_es.po

Cambiado punto por coma

* Minor fix PR

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update Spanish Language

* Updated strings

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Fixed Spanish Strings in English

Fixed a lot of string whose are translations were english to english.

* Some spanish strings improved

* Update Spanish Strings in RC

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Some fixes

* More fixes and improves

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

Cambiado punto por coma

* Update Spanish Language

* Some spanish strings improved

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Some fixes to PR

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Traducción español Beta 2.1.0

* Update text.js

* Minor fix PR

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Some fixes to PR

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Some fixes

* More fixes and improves

* Some spanish strings improved

* some changes

* Some fixes

* More fixes

* More fixes and improves

* Update OrcaSlicer_es.po

* Fixed Spanish Strings in English

Fixed a lot of string whose are translations were english to english.

* Some spanish strings improved

* Update Spanish Strings in RC

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Revert "Some Spanish Translation Fixes (#6115)"

This reverts commit c37a871dd2.

* Calibration: retraction test

* Fix a regression: Generic filament profiles conflicts #981

* support full_fan_speed_layer

* Support interface fan speed

* profile cover image reorg

* Traducción español Beta 2.1.0

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Some fixes to PR

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Revert "profile cover image reorg"

This reverts commit 041d41fa9f.

* Revert "Support interface fan speed"

This reverts commit a657d85121.

* Revert "support full_fan_speed_layer"

This reverts commit ac6dcadeb0.

* Revert "Fix a regression: Generic filament profiles conflicts #981"

This reverts commit 97118f8e94.

* Revert "Calibration: retraction test"

This reverts commit b210c29434.

* Update OrcaSlicer_es.po

* More fixes

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Final fixes

* Update OrcaSlicer_es.po

* Update Spanish Strings

---------

Co-authored-by: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
Co-authored-by: SoftFever <103989404+SoftFever@users.noreply.github.com>
2024-07-25 22:26:25 +08:00
SoftFever
b65967978b Always calculate wipe volume and hence provide correct flush_length to custom change filament g-code, so that MMU devices with cutter and purge bin (e.g. ERCF_v2 with a filament cutter or Filametrix can take advantage of it) 2024-07-24 23:41:08 +08:00
SoftFever
37b955082c update "change_filament_gcode" for Prusa XL, fix extra tool park issue after final purge 2024-07-24 19:59:23 +08:00
SoftFever
6d7071bf2d add "temperature" variable support 2024-07-24 19:58:34 +08:00
SoftFever
ff10d5f661 Merge branch 'main' into feature/multitool 2024-07-23 18:21:19 +08:00
SoftFever
f490d2ca9f fix flatpak build 2024-07-23 18:18:27 +08:00
yw4z
4f6c17f568 Color fixes (#5712)
* Flushing volumes button background color for active state

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

* Remove 3D navigator background

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

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

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

* Homepage fixes

* Fix parameters group title color too bright on dark theme

* Search popup hovered item background color

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

* fix indents

* Add descriptions to statecolors

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

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

* Top bar / Main tab bar button hover background

* Fix broken color change from last merges

* Gizmos selected text background

* Keyboard shortcuts window selected tab bg color

* About page link color

* Project page fixes

* match disabled text color on combo boxes with input boxes

* Use better background color for disabled elements on dark mode

* match all colors for disabled elements

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

* even darker bg color for homepage thumbnails

* Sidebar arrow not visible

* Better bg color for row highlighting

* match style of gizmo combo box

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

* Revert changes for main tab bar background color of button while hover
2024-07-23 18:00:21 +08:00
SoftFever
b0bd16e908 hide/disable options accordingly 2024-07-23 00:43:12 +08:00
SoftFever
c36d4ad7c9 Fix misc bugs 2024-07-23 00:12:54 +08:00
SoftFever
b4cc526ae4 Fixed an issue that tall skirt is generated when ooze prevention and skirt are both enabled. 2024-07-22 08:54:01 +08:00
SoftFever
13ddb38119 force restore Z 2024-07-21 23:29:15 +08:00
SoftFever
447cc01405 preheat work - done 2024-07-21 17:58:37 +08:00
enricoturri1966
7d0fb4f42a preheat work - part 1 2024-07-21 10:29:42 +08:00
HYzd766
ab01e7b5c3 Update QIDI PET-CF @Qidi Q1 Pro 0.8 nozzle.json
little change
2024-07-17 11:27:40 +08:00
HYzd766
6601ab9832 Update QIDI PET-CF @Qidi Q1 Pro 0.4 nozzle.json
little change
2024-07-17 11:27:12 +08:00
HYzd766
ea1951b23c Update QIDI PET-CF.json
little change
2024-07-17 11:26:41 +08:00
HYzd766
932371b184 Update fdm_filament_common.json
little change
2024-07-17 11:24:49 +08:00
HYzd766
ac6b996d13 Update fdm_filament_pla.json
little change
2024-07-17 11:23:34 +08:00
HYzd766
3693f36536 Update fdm_filament_pa.json
little change
2024-07-17 11:21:57 +08:00
HYzd766
00b501e6ab Update QIDI PA12-CF.json
little change
2024-07-17 11:19:42 +08:00
HYzd766
afe0da8b62 Update QIDI PAHT-CF.json
little change
2024-07-17 11:18:52 +08:00
HYzd766
e0711fc41f Update QIDI PA12-CF @Qidi Q1 Pro 0.8 nozzle.json
little change
2024-07-17 11:17:36 +08:00
HYzd766
9d1c4e45fb Update QIDI PA12-CF @Qidi Q1 Pro 0.4 nozzle.json
little change
2024-07-17 11:17:03 +08:00
HYzd766
55ece2eaf0 Update QIDI PA-Ultra.json
little change
2024-07-17 11:13:42 +08:00
HYzd766
bb91c23d30 Update QIDI PLA Rapido Matte @Qidi Q1 Pro 0.8 nozzle.json
little change
2024-07-17 11:12:26 +08:00
HYzd766
e6d74e1754 Update QIDI PLA Rapido Matte @Qidi Q1 Pro 0.6 nozzle.json
little change
2024-07-17 11:12:12 +08:00
HYzd766
0664a9396b Update QIDI PLA Rapido Matte @Qidi Q1 Pro 0.2 nozzle.json
little change
2024-07-17 11:11:43 +08:00
HYzd766
bb26424e6a Update QIDI PLA Rapido Matte @Qidi Q1 Pro 0.4 nozzle.json
little change
2024-07-17 11:10:51 +08:00
HYzd766
2341012914 Update QIDI PLA Rapido @Qidi Q1 Pro 0.4 nozzle.json
little change
2024-07-17 11:09:50 +08:00
HYzd766
41e1dc29b1 Update Qidi Generic PLA @Qidi Q1 Pro 0.4 nozzle.json
little change
2024-07-17 11:08:40 +08:00
SoftFever
a9668728bc Merge branch 'main' into feature/multitool 2024-07-16 23:30:26 +08:00
dewi-ny-je
5e4dd4d847 Correction material settings for Ultimaker 2 (#5988)
* Update UltiMaker Generic ABS.json

* Update UltiMaker Generic PLA.json

* Update fdm_filament_abs.json

* Update UltiMaker Generic ABS.json
2024-07-16 23:22:50 +08:00
SoftFever
002125fbe4 Revert "Revert "Some flatpak fixing (#5510)""
This reverts commit e29cba2eff.
2024-07-16 22:39:43 +08:00
SoftFever
3bf868f99d pin cmake version to 3.28 (#6156)
* pin cmake version to 3.28

* remove brew install cmake
2024-07-16 22:37:28 +08:00
Carlos Francisco Caruncho Serrano
c37a871dd2 Some Spanish Translation Fixes (#6115)
* Update OrcaSlicer_es.po

* Traducción español Beta 2.1.0

* Update text.js

* Minor fix PR

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Some fixes to PR

* Update OrcaSlicer_es.po
2024-07-16 19:51:46 +08:00
serhii-nakon
b4a2abeab8 AppImage: Fix env overrides that cause segfault and EGL initialization error for Mesa from GIT (#6141)
Fix override that cause segfault and EGL initialization error

When user built Mesa from GIT and load it using env variables
LD_LIBRARY_PATH and LIBGL_DRIVERS_PATH
it override LD_LIBRARY_PATH inside AppImage but other variable
LIBGL_DRIVERS_PATH not override and it cause EGL init error.
2024-07-16 19:47:47 +08:00
Bernhard Koppensteiner
65d6b3d393 Updated FW version notifications according to Prusaslicer profiles 2024-07-16 12:58:17 +02:00
Bernhard Koppensteiner
53cb9dc73d Merge branch 'main' of https://github.com/koppensb/OrcaSlicer 2024-07-16 12:57:27 +02:00
Bernhard Koppensteiner
5b0e37ed5e moved M74 code to after_layer_change according to prusa slicer profile 2024-07-16 12:56:29 +02:00
HYzd766
e77edd9816 Update Qidi X-Smart 3 0.4 nozzle.json
thumbnail
2024-07-16 10:54:51 +08:00
HYzd766
3010d699b2 Update fdm_qidi_x3_common.json
thumbnail
2024-07-16 10:52:44 +08:00
SoftFever
4b3f91b2e2 Simple preheat, temperary solution 2024-07-16 00:02:38 +08:00
SoftFever
73e4d79a86 update prusa profiles 2024-07-15 23:07:39 +08:00
Vojtech Bubnik
71be87ecef Fixed crash if toolchange G-code modifies final position,
because the extruder was not set yet.
2024-07-15 21:47:10 +08:00
SoftFever
93d025bfd4 update placeholderparser 2024-07-15 21:46:57 +08:00
SoftFever
f84c3a00e0 Fix a regression for SEMM when ramming and cooling is disabled 2024-07-14 17:35:12 +08:00
Leon Bai
854ce80a34 [07-10 Flashforge]: Add more layer height options for AD5M and more nozzles for G3U etc. (#6085)
* Flashforge-06-12: gcode and filament mapping

* 06-27 Add Chuanying x1 printer profiles

* 20240702-Flashforge Guider 2s process fix

* [07-10 Flashforge]: Add more layer height options for AD5M and more nozzles for G3U etc.
2024-07-14 10:43:23 +08:00
InfimechOfficial
373318aa4b add new nozzle type named Hardened Steel Nozzle(HSN) (#6099)
* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* add new nozzle type

* add new nozzle type with filaments

* add new nozzle type with mechine files

* add new nozzle type with process files

* Update InfiMech.json

add new nozzle type

* Update InfiMech.json

* Update 0.08mm Extra Fine @InfiMech TX.json

* Update 0.12mm Fine @InfiMech TX.json

* Update 0.16mm Optimal @InfiMech TX.json

* Update 0.20mm Standard @InfiMech TX.json

* Update 0.24mm Draft @InfiMech TX.json
2024-07-14 10:31:57 +08:00
Olcay ÖREN
d8cfd523ec Update TURKISH translations (#6094)
* Update OrcaSlicer_tr.po - TURKISH translation update

* Update TURKISH translations

* Update TURKISH translations
2024-07-14 10:26:04 +08:00
Bruno Paré-Simard
ea5e0c7e28 [doc] Warn Marlin user that Linear Advance must be enabled in firmware to do the Pressure Advance/Linear Advance calibration (#6111)
* Uses GitHub Markdown Alerts in Calibration.md

* Add warning about Linear advance not enabled in Marlin firmware
2024-07-14 00:02:14 +08:00
SoftFever
aec1a40795 update/refactor/fix XL profiles 2024-07-13 23:29:17 +08:00
SoftFever
0b8515ed20 support Prusa XL 2024-07-13 23:29:16 +08:00
SoftFever
f59c70a7fc Add Prusa XL 5T 2024-07-13 23:29:16 +08:00
SoftFever
dd8ce17693 optimize UI: hide flushing_volume_btn for multi tool 2024-07-12 23:17:50 +08:00
SoftFever
4bca54873d Fix ooze prevention bug 2024-07-12 23:03:07 +08:00
Vovodroid
45224eee21 Auto arrange plate after cloning (#6009)
* Auto arrange plate after cloning
2024-07-11 23:54:42 +08:00
Dylan
230a4aaad8 Limit the max speed on the wipe tower (#6044)
* limit the max speed on the wipe tower
2024-07-11 23:53:32 +08:00
Heiko Liebscher
bac86f481c add new feature translation for de (#6071)
* add new feature translation for de

* Merge branch 'main' into add_new_de_loc

* fix de
2024-07-11 23:52:09 +08:00
artillery3dlab
03180bbde7 Add Artillery's new machine config (#6068)
* Add Artillery's new machine config

* Merge branch 'main' into master

* Merge branch 'main' into master
2024-07-11 23:51:38 +08:00
Bernhard Koppensteiner
09c0faab2c Prusa MINIIS custom g-code changes (#6067)
* added Prusa Mini with Input Shaper to profiles

* Merge branch 'SoftFever:main' into main

* refactoring to more reusable settings

* Merge branch 'SoftFever:main' into main

* added more processes, changed settings

* Merge branch 'main' of https://github.com/koppensb/OrcaSlicer

* Update 0.15mm Speed @MINIIS.json

* Update 0.10mm Speed @MINIIS.json

* changed to cubic because of speed

* Merge branch 'main' of https://github.com/koppensb/OrcaSlicer

* further changes after reviewing prusa slicer settings

* simplified machine settings

* retraction speeds according to prusa slicer

* Merge branch 'SoftFever:main' into main

* changed max flow according to prusa slicer

* Merge branch 'main' of https://github.com/koppensb/OrcaSlicer

* after clearification at the prusaslicer repository M900 got removed

* Merge branch 'SoftFever:main' into main

* precise wall per default

* Merge branch 'main' of https://github.com/koppensb/OrcaSlicer

* enable reverse overhang on odd by default

* added settings from prusa slicer

* changed cooling setings

* Merge branch 'SoftFever:main' into main

* changed default to inner-outer-inner wall

inner-outer-inner gives pretty good overhangs with better surface

* new profiles for bigger nozzles, changed some cooling settings according to prusaslicer

* profiles for different nozzles sizes, better speed settings

* initial layer height was wrong

* wrong initial layer height

* set the correct accelerations

* Merge branch 'main' of https://github.com/koppensb/OrcaSlicer

* changed firmware version number

* using pressure advance UI setting instead of custom filament g-code

* Merge branch 'SoftFever:main' into main

* Update Prusa Generic PC.json

* Update Prusa Generic PC.json

* changed max flow for PC

* added PVA filament profiles

* bug fix in filament loading

* Merge branch 'SoftFever:main' into main

* Merge branch 'SoftFever:main' into main

* changed line width according to prusa slicer

* Merge branch 'main' of https://github.com/koppensb/OrcaSlicer

* Merge branch 'main' into main

* changed heatbed temperature for Minis capabilities

* Merge branch 'main' of https://github.com/koppensb/OrcaSlicer

* Merge branch 'main' into main

* Merge branch 'SoftFever:main' into main

* set default support to snug

* changed default filament setting to the correct value
2024-07-11 23:50:18 +08:00
davidjuanesb
9cc6460eeb Catalan language updated (#6053)
* Catalan language updated

Catalan language updated
2024-07-11 23:49:10 +08:00
Noisyfox
04eec93d0a Fix some utf-8 related issues in Cut gizmo (#6050)
* Fix some utf-8 related issues in Cut gizmo
2024-07-11 23:48:51 +08:00
SoftFever
2fe68edc85 Fix crash on printer UI 2024-07-11 22:52:58 +08:00
SoftFever
e29cba2eff Revert "Some flatpak fixing (#5510)"
This reverts commit 657954901f.
2024-07-11 20:27:45 +08:00
Aidan
657954901f Some flatpak fixing (#5510)
* Use fixed commit for wxwidgets

* disable cache

* Fix imports

* revert some build stuff

* fix python builds

* Don't build OCCT docs, a constexpr borks flatpak

* fix thread import

* Fix import

* Fix import again

* remove git commit

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-07-11 00:07:55 +08:00
ElectricalBoy
93ec1dd7ee Fix typos (#5998)
* Fix typos

* Update translation files appropriately

* Fix more 'fond's with 'found's

* Fix typos

* Fix duplicate message error
2024-07-11 00:04:47 +08:00
SoftFever
47d154ebdb update cover image bg 2024-07-10 21:51:18 +08:00
SoftFever
c719f5c95c tweak UI 2024-07-10 21:40:11 +08:00
SoftFever
c3f0b5e565 ooze prevention update: sync with PrusaSlicer 2024-07-10 21:40:11 +08:00
SoftFever
d872c62256 Add Generic ToolChanger Printer profile 2024-07-10 21:40:11 +08:00
SoftFever
18e417b34b tidy up some codes 2024-07-10 21:40:10 +08:00
SoftFever
860a41baed update wipe tower according to latest PrusaSlicer 2024-07-10 21:40:10 +08:00
SoftFever
1c68d58343 support has_single_extruder_multi_material_priming 2024-07-10 21:40:10 +08:00
SoftFever
b6a1a06c25 fix crash 2024-07-10 21:40:09 +08:00
SoftFever
8ff7b0fac2 dynamic list 2024-07-10 21:40:09 +08:00
SoftFever
c2320e03a5 tool changer support - init work 2024-07-10 21:40:09 +08:00
SoftFever
2acf60a8b5 Add BigTreeTech as sponsor 2024-07-10 01:30:03 +08:00
SoftFever
c7206dcb8d Update FUNDING.yml 2024-07-09 21:06:06 +08:00
Bernhard Koppensteiner
fc763279d8 Merge branch 'SoftFever:main' into main 2024-07-09 07:45:38 +02:00
Bernhard Koppensteiner
a0a20349d0 changed position of the homeing gcode so the pinda probe gets heated 2024-07-08 08:09:42 +02:00
ElectricalBoy
40aadbc51c Update Korean Translation (v2.1.1_2) (#5977)
* Add missing translations

* Update translation template

* Fix unnatural translation
2024-07-07 11:49:00 +08:00
Noisyfox
adec6b7ebd Try fixing build with gcc 13.3 (SoftFever/OrcaSlicer#5991) (#5992) 2024-07-07 11:48:05 +08:00
HYzd766
f714b849ad Update fdm_process_qidi_common.json
change
2024-07-05 19:09:02 +08:00
HYzd766
6660500b58 Update fdm_process_common.json
change
2024-07-05 19:08:08 +08:00
HYzd766
d747835f56 Update Qidi Q1 Pro.json
change of default materials
2024-07-05 19:02:03 +08:00
HYzd766
5fa116bd14 Update Qidi X-Smart 3.json
change of default materials
2024-07-05 19:00:58 +08:00
HYzd766
aabae67534 Update Qidi X-Plus 3.json
change of default materials
2024-07-05 19:00:21 +08:00
HYzd766
a613280a42 Update Qidi X-Max 3.json
change of default materials
2024-07-05 18:59:36 +08:00
HYzd766
0dab437cf7 Update fdm_process_qidi_x3_common.json
change of sparse_infill_pattern
2024-07-05 17:47:43 +08:00
HYzd766
1fce412fa1 Update Qidi X-Smart 3 0.4 nozzle.json
change of thumbnails
2024-07-05 09:22:46 +08:00
HYzd766
82cb4ee51c Update fdm_qidi_x3_common.json
change of thumbnails
2024-07-05 09:21:25 +08:00
ElectricalBoy
4ca0b24002 CI: Avoid Linux Asset Name Collision (#5976)
CI: Avoid asset name collision
2024-07-03 19:48:04 +08:00
SoftFever
9eaff8ff2f Link WIKI 2024-07-02 21:49:24 +08:00
SoftFever
12b0a9680f add WIKI for precise-z-height 2024-07-02 21:46:12 +08:00
cochcoder
d715441c6c Merge branch 'main' into rat-rig-covers 2024-07-01 16:59:55 +00:00
ElectricalBoy
0b6fc3d389 CI: Build with ubuntu-24.04 (#5919)
* CI: Build with ubuntu-24.04

* Use apt-get in ubuntu-24.04

* Fix step name

* Use alternate approach for detecting libwebkit2gtk version

* CI: Install libfuse2 in ubuntu-24.04

* Reduce repetitive code in workflows

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

* CI: Install libfuse2

Runtime dependency for AppImage

* Fix filenames for nightly deployment

* Properly nest conditional

---------

Co-authored-by: Ocraftyone <Ocraftyone@users.noreply.github.com>
2024-07-01 23:44:49 +08:00
cochcoder
5b549682bd Improve RatRig V-Core 4 covers 2024-07-01 10:48:10 -04:00
SoftFever
a0dae394e7 Fixed an issue that WIKI action didn't work if it's manually triggered. 2024-07-01 22:19:03 +08:00
SoftFever
c6205fa806 Small tweak for GH workflow 2024-07-01 21:56:02 +08:00
SoftFever
c762a45676 try to fix wiki actions 2024-07-01 21:20:46 +08:00
cochcoder
d1c84cebd5 Allow variable temperatures with the Tronxy X5SA 400 (#5752)
* Fix only having one set temperature with the Tronxy X5SA 400

* Add defualt filament & process
2024-07-01 21:00:27 +08:00
Christos Karampeazis-Papadakis
7707685069 Disable small area flow compensation on first layer (Fixes #4617) (#5838)
Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-07-01 18:13:50 +08:00
Ruslan Kyba
1aa5817624 update Ukrianian translations ( 2.1.1 ) (#5956)
* chore: update

* chore: update
2024-07-01 18:07:50 +08:00
Robert Schiele
ee67b8d762 more missing includes (#5930)
Here are more missing header files recently identified by building
without precompiled header support.
2024-07-01 18:07:19 +08:00
KrisMorr
bca67b5baa update Polish translations ( 2.1.1 ) (#5948)
* update Polish translations ( 2.1.1 )

* update OrcaSlicer.pot + PL fix

* typo
2024-06-30 23:40:20 +08:00
Heiko Liebscher
3333a650b7 add new de for v2.1.1 (#5940) 2024-06-30 23:38:30 +08:00
Noisyfox
4145f45e42 Port of Cura's multi-material interlocking (#5775)
* Init port of Cura's MM interlocking

* Refactor a bit

* Fix crash when bottom surface is multi-color

* Fix crash when boundary avoidance is 0

* Add config

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-06-30 23:25:15 +08:00
Bernhard Koppensteiner
1384b04885 Merge branch 'main' of https://github.com/koppensb/OrcaSlicer 2024-06-29 20:41:41 +02:00
Bernhard Koppensteiner
bb7d00094b Merge branch 'SoftFever:main' into main 2024-06-29 20:41:11 +02:00
Bernhard Koppensteiner
9b2a254c5e removed prime tower for color change 2024-06-29 20:39:13 +02:00
analysis230
8ccf0edbc2 Adding pellet printer suppor to OrcaSlicer (#4836)
* creating settings for printer and some UI changes work

* related filament diameter and pellet flow changes to each other

* UI name change to turn Filament to Material

* updated the flow coefficient to filament diameter formula

* updated the preset for the configuration wizard

* configuration changes for the final release

* config changes and preset bundle sync removed

* start gcode change for ginger machines

* added explanation of relationship between pellet_flow_coefficient and filament_diameter

* Added tooltip. Fixed Ginger machine configuration, Added docs
2024-06-29 22:45:06 +08:00
Vovodroid
409004d471 VS2022 Win10 build fix (#5806)
* VS2022 Win10 build:

- use DEPS variable for both deps and slicer build
- use installed WinSDK version
- echo real cmake command line
2024-06-29 22:21:57 +08:00
Vovodroid
5ff93fe103 Mark unsaved project title with * (#5910)
* Mark unsaved project title with *
2024-06-29 22:13:57 +08:00
Ioannis Giannakas
b47810435a Extrusion Rate Smoothing: Round speed values to prevent needless & trivial speed fluctuations (#5911)
* Update pressure equalizer to address rounding

* Merge branch 'SoftFever:main' into Extrusion-Rate-Smoothing-Round-speed-values-to-prevent-unecessary-minor-speed-fluctuations
2024-06-29 22:11:45 +08:00
ElectricalBoy
edb9ec9dd7 Update Korean Translation (v2.1.1) (#5918)
* ko: Fix typo

* Update existing Korean translations
2024-06-29 17:33:59 +08:00
Vovodroid
a13152c61f Add travel_slope option (#5873)
* Add travel_slope option

* Merge branch 'main' into travel-slope-pr
2024-06-29 17:33:22 +08:00
Robert Schiele
f5c5f322d2 add missing includes (#5691)
* add missing includes

Building without precompiled header support revealed some missing
includes that are added with this change for code health purposes.
Those missing includes were hidden by precompiled header support due to
the fact that the precompiled header file provides some definitions
despite not being defined in directly or indirectly included header
files.
2024-06-29 12:21:52 +08:00
Robert Schiele
b18c0c76ae support Clear Linux OS (#5652)
* support Clear Linux OS

Add some initial support for Clear Linux OS
(https://www.clearlinux.org/).
2024-06-29 12:21:29 +08:00
Dima Buzdyk
aa22b7f220 build on systems with libwebkit2gtk-4.1 (#5135)
Linux distros started removing libwebkit2gtk-4.0 libriry from their
repos. Ubuntu Noble (24.04) is one of them.

Modify debian/ubuntu deps to install libwebkit2gtk-4.1 if
no libwebkit2gtk-4.0 available
2024-06-29 12:15:48 +08:00
analysis230
31df3f01ea Documentation updates. Adding some developer centric docs (#4807)
* Renamed How to build file so the Wiki link works

* Some documentation updates.

* added clarifications and updates
2024-06-28 20:52:46 +08:00
HYzd766
edf2aeb751 Qidi profiles tweaks: update pressure_advance for 0.4mm nozzles (#5887)
* Qidi.Json

* Qidi.json

* Qidi.json

* Qidi.json

* Qidi.json

* Qidi.json

* Merge branch 'main' into HY3

* Update Qidi Generic PLA @Qidi Q1 Pro 0.4 nozzle.json

We want to change prssure_advance

* Update Qidi Generic PLA @Qidi Q1 Pro 0.4 nozzle.json

PA Change
2024-06-28 18:39:16 +08:00
Leon Bai
299e4161ec 06-27 Add Chuanying x1 printer profiles (#5888)
* Flashforge-06-12: gcode and filament mapping

* Merge branch 'SoftFever:main' into main

* Merge branch 'SoftFever:main' into main

* 06-27 Add Chuanying x1 printer profiles
2024-06-28 18:37:26 +08:00
Ferbez
b56bbbff4e Make document icons comply with macOS design guidelines (#5897)
* Document icons now fit macOS design guidelines
2024-06-28 18:36:43 +08:00
anselor
238bf49f47 Restore nozzle override fix (#5900)
* Restore nozzle override fix
2024-06-28 18:31:47 +08:00
HYzd766
1a48c0f4b0 Update Qidi Generic PLA @Qidi Q1 Pro 0.4 nozzle.json
PA Change
2024-06-28 14:06:43 +08:00
HYzd766
8070e78c14 Update Qidi Generic PLA @Qidi Q1 Pro 0.4 nozzle.json
We want to change prssure_advance
2024-06-27 11:04:28 +08:00
SoftFever
a4357d1e95 bump version to 2.1.1 2024-06-26 22:05:17 +08:00
SoftFever
e0daca73ab upgrade profiles version to 02.01.01.00 2024-06-26 21:32:45 +08:00
SoftFever
2a8cf0ec86 reduce size of printer models and cover images 2024-06-26 21:30:56 +08:00
Thomas
c7f0fc86a7 Typo fix (#5871)
* Fixed typo "Internel error"

* Revert french translation
2024-06-26 20:37:08 +08:00
Thomas
1376556b0a Added new strings for French (#5870)
Added new strings
2024-06-26 20:36:24 +08:00
Ruslan Kyba
2431429c49 Update Ender-3 V3 printer profiles (#5771)
* Update printer profiles

* Fix accelerations

* Fix z hop

* Small fixes

* Update layer height according to printer data sheet

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-06-26 20:33:53 +08:00
Ruslan Kyba
63768cb87f Add Flyingbear Ghost 6 profile (#5826)
* chore: init

* chore: update

* chore: update

* chore: update

* chore: udpate

* chore: update

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-06-26 20:28:35 +08:00
Tom
aeac07b9c9 Resolves #5808: Fix missing K1C processes (#5815)
* refactored printer name to resolve #5808

* updarted name of profile to match all other K1C profiles

---------

Co-authored-by: Thomas Brough <tbrough@Thomass-MacBook-Pro.local>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-06-26 20:28:11 +08:00
whoseyoung
52cfa48168 official profiles for Geeetech printers (#5790)
add some series of printer parameter configurations. 15 Geeetech printers, including 3 series models.
Thunder series. A high-speed printer and the maximum printing speed can reach 300 mm/s. Mizar series. A machine that has very exquisite print quality and ultra quiet printing. Other Geeetech printers.
---Request from Geeetech offical .

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-06-26 20:24:03 +08:00
SoftFever
8c00db6ace Tweak profile loading rules 2024-06-26 20:23:34 +08:00
SoftFever
c72ef08275 Fix some profile errors 2024-06-26 18:16:33 +08:00
Noisyfox
eeae1b2c7e Fix few mirror related issues (#5827)
* Do not use get_scaling_factor then construct the matrix again, because it cannot properly handle situations that contains negative scale (mirror) / shear (SoftFever/OrcaSlicer#5578)

* Do not use get_scaling_factor then construct the matrix again, because it cannot properly handle situations that contains negative scale (mirror) / shear (SoftFever/OrcaSlicer#5578, SoftFever/OrcaSlicer#4719)
2024-06-26 18:08:15 +08:00
SoftFever
7e85eb0d7d Upgrade Mac CI/CD to macos-14 (#5856) 2024-06-25 23:24:39 +08:00
HYzd766
63dcf82f15 Bug Repaired (#5801)
* Qidi.Json

* Qidi.json

* Qidi.json

* Qidi.json

* Qidi.json

* Qidi.json
2024-06-25 00:58:46 +08:00
Olcay ÖREN
091ec23795 Update TURKISH translations (#5831)
* Update OrcaSlicer_tr.po - TURKISH translation update

* Update TURKISH translations
2024-06-25 00:52:29 +08:00
ElectricalBoy
a788b6360b Update Korean Translation (v2.1.0) (#5804)
* ko: Add missing translations

* ko: Make existing translations more natural
2024-06-25 00:52:04 +08:00
Andy
89d627693f Update russian translations (2.1.0 Release) (#5800)
* Update russian translations (2.1.0 Release)

Russian Translation Update for OrcaSlicer V2.1.0 Official Release.

* Update russian translations (2.1.0 Release)

Russian Translation Update for OrcaSlicer V2.1.0 Official Release.

* Update russian translations (2.1.0 Release)

Russian Translation Update for OrcaSlicer V2.1.0 Official Release.
2024-06-25 00:51:42 +08:00
Carlos Francisco Caruncho Serrano
9a3671a87f Translate and fix spanish (#5833)
* Update OrcaSlicer_es.po

* Traducción español Beta 2.1.0

* Update text.js

* Minor fix PR

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po
2024-06-25 00:50:47 +08:00
Noisyfox
76fc7e6d21 Fix PrusaLink upload when PUT is used (#5843)
(SoftFever/OrcaSlicer#5840) Fix PrusaLink upload when PUT is used
2024-06-25 00:48:38 +08:00
SoftFever
34ad17bcd2 Fix small area flow comp regression and some other small tweaks (#5844)
* Fix regression, always create SmallAreaInfillFlowCompensator model
small_area_infill_flow_compensation is per-region parameter, it's not necessary to iterate though all regions to check whether to create a model.

* Make SmallAreaInfillFlowCompensator robus.
1. handle spaces/tabs/new lines etc
2. don't throw expection, fall back to no-op instead if parsing failed

* Fixing an issue that changing small_area_infill_flow_compensation per modifier didn't take effect
2024-06-25 00:20:20 +08:00
HYzd766
5feefb5efd Merge branch 'main' into HY3 2024-06-22 14:17:20 +08:00
HYzd766
cfba60810f Qidi.json 2024-06-22 14:05:19 +08:00
Ocraftyone
5c9b82d6ec Update Web Link Association in Preferences (#5791)
* Fix check_url_association return value

* Update Web Link Association Preferences

Uses a checkbox in place of button to show if the current instance is registered at a quick look
New function is added to build the link association item
Current association line shows "None" for no app associated, "Current Instance" if the current instance is associated, and the formatted path to the registered app (Removes quotes and other extra chars)

* Update to use localization

* Fix Linux Build

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-06-21 21:06:12 +08:00
SoftFever
6c5cd0a31f bump version to 2.1.0 official 2024-06-21 20:07:37 +08:00
SoftFever
bf646c3f29 update locales 2024-06-21 20:07:07 +08:00
Carlos Francisco Caruncho Serrano
c1a901e46c Fix Spanish translation strings (#5792)
* Update OrcaSlicer_es.po

* Traducción español Beta 2.1.0

* Update text.js

* Minor fix PR

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po
2024-06-21 19:49:57 +08:00
Noisyfox
cd6cd0786f Various improvements to SimplyPrint integration (#4831)
* Allow using BBL's device tab when 3rd party print host is used

* Add option to open SimplyPrint panel in device tab after uploading

* Fix default print host for prusa connect

* Do not set api key in device view when SimplyPrint is used

* Sending 3mf file to SimplyPrint when using BBL printers

* Fix file extension when uploading 3mf

* Prepare for large file uploading

* Implement chunk upload

* Fix file uploading exceeding content size

* Fix wrong field type

* Add `temp=true` to all chunk upload calls

* Add macro to enable test api

* Merge branch 'main' into dev/simplyprint-improve

* Fix another missing `temp=true`

* Add delete token

* Try fixing build error on *nix systems

* Merge branch 'main' into dev/simplyprint-improve

* Merge branch 'main' into dev/simplyprint-improve

* Merge remote-tracking branch 'remote/main' into dev/simplyprint-improve

# Conflicts:
#	src/slic3r/GUI/BackgroundSlicingProcess.cpp

* Move the `bbl_use_print_host_webui` option to print host dialog. Also make it a derived option of `print_host_webui` instead.

* Merge branch 'main' into dev/simplyprint-improve

# Conflicts:
#	src/slic3r/GUI/MainFrame.cpp
#	src/slic3r/GUI/Plater.cpp

* Merge branch 'main' into dev/simplyprint-improve

# Conflicts:
#	src/slic3r/GUI/Plater.cpp

* Use a more generic option instead of SimplyPrint specific

* Merge branch 'main' into dev/simplyprint-improve

* Merge branch 'main' into dev/simplyprint-improve
2024-06-21 19:48:00 +08:00
SoftFever
b7a0b30578 Pick updates from BS 1.9.3
sync bbl profiles
FIX: [#4320] crash when edit project preset

github: #4320

Change-Id: I81eb5f0d461565d63a32100a5bebb4569cfb0b1b
ENH: add pctg type

Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ie01fcd4bef0d3ebec5bbd7185a87a1740068bdba
(cherry picked from commit c6276932dd92bc4283600954415eedeac6d351ce)
ENH: CLI: add logic to save metadata into 3mf from CLI

JIRA: no jira
Change-Id: I7f96c2ab9671ec1c0115e90f6d64230b8170eb38
(cherry picked from commit 3d2d6e23ba318a2b331a62e320f8ca199168f1f5)
2024-06-21 18:21:21 +08:00
InfimechOfficial
6a28bae6fd Update Infimech profiles: fix printstart gcode (#5787)
* Update fdm_klipper_common.json

* Update fdm_machine_common.json
2024-06-21 17:55:37 +08:00
FlyingbearOfficial
0af5b47028 Update Flyingbear profiles: fix startcode (#5784)
* Update FlyingBear S1 0.4 nozzle.json

* Update 0.16mm Optimal @FlyingBear Reborn3.json

* Update 0.16mm Optimal @FlyingBear S1.json

* Update fdm_process_common.json

* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Update fdm_process_common.json

* Update fdm_process_common_S1.json

fix some parameters

* Update fdm_process_common.json

* Update FlyingBear S1 0.4 nozzle.json
2024-06-21 17:54:51 +08:00
Carlos Francisco Caruncho Serrano
87e77133ca Spanish translation RC 2.1.0 (#5779)
* Update OrcaSlicer_es.po

* some changes

* Some fixes

* More fixes

* More fixes and improves

* More fixes

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

Cambiado punto por coma

* Update Spanish Language

* Updated strings

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Fixed Spanish Strings in English

Fixed a lot of string whose are translations were english to english.

* Some spanish strings improved

* Update Spanish Strings in RC
2024-06-21 17:54:00 +08:00
ElectricalBoy
a1d7c8baf8 Update Korean (ko) Translation (#5764)
* Add translation for "Don't slow down outer walls" in Korean

* Update existing/missing translations in Korean

* Make "Don't slow down outer walls" translation more natural
2024-06-21 17:51:13 +08:00
Dylan
02a4c9069c Fix Snapmaker profiles (#5763)
* update snapmaker profiles

- add BracingKit for Snapmaker 2
- add Artisan profiles

* remove key

* fix compatible_printers

* remove pva for single extruder

* fix ci

* Fix compatible_printers

* Revert specific parameters
2024-06-21 17:46:47 +08:00
KrisMorr
7788c5de22 update Polish translations ( 2.1.0-rc ) (#5753)
* update Polish translations ( 2.1.0-rc )

* update Polish translations ( 2.1.0-rc )
2024-06-21 17:45:34 +08:00
dylan
7fdb1a5862 Revert specific parameters 2024-06-19 12:08:41 +08:00
dylan
ce4a648578 Fix compatible_printers 2024-06-19 12:06:56 +08:00
dylan
5170c0a057 Merge branch 'main' into sm-profiles 2024-06-19 10:46:17 +08:00
dylan
9efcacebaa Merge branch 'main' into sm-profiles 2024-06-19 10:43:59 +08:00
cochcoder
1678127e2b Minor improvements & fixes for Ender-3 V3 KE (#5743)
* Minor improvements & fixes for Ender-3 V3 KE

* revert machine_pause_gcode
2024-06-18 21:20:16 +08:00
Olcay ÖREN
7ed663135d Update TURKISH translations (#5735)
Update OrcaSlicer_tr.po - TURKISH translation update
2024-06-18 21:18:54 +08:00
Thomas
c9c7ae62d6 New French translations for 2.1.0-rc (#5734)
Added new translations
2024-06-18 21:18:25 +08:00
Heiko Liebscher
9df712fd9e add new german translations (#5729) 2024-06-18 21:18:01 +08:00
davidjuanesb
1445d0c501 Added catalan language to resources\web\data\text.js (#5727)
* Catalan language updated to 2.1.0 beta

Catalan language updated to 2.1.0 beta

* added catalan translation at text.js file

Added new language "ca_ES" but loading "en" by default. Catalan language should be shown at preferences as "Català" instead of "Catalan". Please, solve these issues

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-06-18 21:17:36 +08:00
Bernhard Koppensteiner
796d445855 Merge branch 'SoftFever:main' into main 2024-06-14 08:08:32 +02:00
Bernhard Koppensteiner
41504ff0dc changed wall loops to 2 for bigger nozzles 2024-06-13 14:40:10 +02:00
HYzd766
f94cfe0eb1 Qidi.json 2024-06-12 16:22:50 +08:00
HYzd766
8060010276 Qidi.json 2024-06-11 10:09:33 +08:00
Bernhard Koppensteiner
f86b45e4fa changed first layer height according to optimal value of the respective nozzle size 2024-06-10 07:53:35 +02:00
Bernhard Koppensteiner
b1c0b40fea updated firmware version 2024-06-10 07:52:55 +02:00
Bernhard Koppensteiner
d3d9065ea3 Merge branch 'main' of https://github.com/koppensb/OrcaSlicer 2024-06-06 13:48:25 +02:00
Bernhard Koppensteiner
b1163084f6 Merge branch 'main' of https://github.com/koppensb/OrcaSlicer 2024-05-31 20:01:34 +02:00
Bernhard Koppensteiner
b0bfa9165a Update Prusa MINIIS 0.4 nozzle.json
updated firmware version
2024-05-31 19:56:58 +02:00
Bernhard Koppensteiner
2bbbb7232c Merge branch 'SoftFever:main' into main 2024-05-31 19:56:41 +02:00
Bernhard Koppensteiner
d9dfdbe557 changed line with to the correct values according to prusaslicer profiles 2024-05-24 11:52:58 +02:00
Bernhard Koppensteiner
d59187d756 changed default filament setting to the correct value 2024-05-24 11:52:35 +02:00
Bernhard Koppensteiner
b63c62911a set default support to snug 2024-05-19 13:38:38 +02:00
Bernhard Koppensteiner
f1a667e3e8 Merge branch 'SoftFever:main' into main 2024-05-19 11:23:14 +02:00
dylan
00d5b8900d fix ci 2024-05-15 17:59:23 +08:00
Bernhard Koppensteiner
04b8ab09a3 Merge branch 'main' into main 2024-05-12 20:45:12 +02:00
Bernhard Koppensteiner
6fa5b5aa26 Merge branch 'main' of https://github.com/koppensb/OrcaSlicer 2024-05-08 20:49:35 +02:00
dylan
97ebb35bc9 remove pva for single extruder 2024-05-08 13:43:45 +08:00
dylan
9715ea9b3c fix compatible_printers 2024-05-08 13:36:28 +08:00
dylan
6e3e733dfb remove key 2024-05-08 13:21:40 +08:00
dylan
058dde29bc update snapmaker profiles
- add BracingKit for Snapmaker 2
- add Artisan profiles
2024-05-08 13:02:24 +08:00
Bernhard Koppensteiner
7207731a85 changed heatbed temperature for Minis capabilities 2024-05-07 11:20:32 +02:00
Bernhard Koppensteiner
b651ff6651 Merge branch 'main' into main 2024-05-05 21:50:01 +02:00
Bernhard Koppensteiner
af36455579 Merge branch 'main' of https://github.com/koppensb/OrcaSlicer 2024-05-05 20:09:31 +02:00
Bernhard Koppensteiner
c7683ae614 changed line width according to prusa slicer 2024-05-05 20:09:00 +02:00
Bernhard Koppensteiner
5ab7de1de6 Merge branch 'SoftFever:main' into main 2024-05-05 13:12:44 +02:00
Bernhard Koppensteiner
bf15e81bd5 Merge branch 'SoftFever:main' into main 2024-05-04 10:54:56 +02:00
Bernhard Koppensteiner
12eeb85feb bug fix in filament loading 2024-05-04 00:00:57 +02:00
Bernhard Koppensteiner
85a1ed676e added PVA filament profiles 2024-05-03 23:57:31 +02:00
Bernhard Koppensteiner
335c1713b3 changed max flow for PC 2024-05-03 23:53:27 +02:00
Bernhard Koppensteiner
61d680e2a6 Update Prusa Generic PC.json 2024-05-03 20:33:50 +02:00
Bernhard Koppensteiner
5a56215b54 Update Prusa Generic PC.json 2024-05-03 20:32:17 +02:00
Bernhard Koppensteiner
4b7a698ee8 Merge branch 'SoftFever:main' into main 2024-05-02 20:25:10 +02:00
Bernhard Koppensteiner
2c50705e33 using pressure advance UI setting instead of custom filament g-code 2024-05-02 20:23:23 +02:00
Bernhard Koppensteiner
3619c1efed changed firmware version number 2024-05-02 15:04:30 +02:00
Bernhard Koppensteiner
6d1042a587 Merge branch 'main' of https://github.com/koppensb/OrcaSlicer 2024-04-29 22:35:13 +02:00
Bernhard Koppensteiner
026ba7330e set the correct accelerations 2024-04-29 22:27:22 +02:00
Bernhard Koppensteiner
f74ae0ed56 wrong initial layer height 2024-04-29 22:23:43 +02:00
Bernhard Koppensteiner
5c2d3c9112 initial layer height was wrong 2024-04-29 22:20:51 +02:00
Bernhard Koppensteiner
f96696596a profiles for different nozzles sizes, better speed settings 2024-04-29 22:16:47 +02:00
Bernhard Koppensteiner
3591e94a80 new profiles for bigger nozzles, changed some cooling settings according to prusaslicer 2024-04-29 20:26:18 +02:00
Bernhard Koppensteiner
aec20c8364 changed default to inner-outer-inner wall
inner-outer-inner gives pretty good overhangs with better surface
2024-04-27 09:08:38 +02:00
Bernhard Koppensteiner
3b9e1f8eae Merge branch 'SoftFever:main' into main 2024-04-22 20:59:21 +02:00
Bernhard Koppensteiner
edb57990ef changed cooling setings 2024-04-22 20:58:46 +02:00
Bernhard Koppensteiner
3d5fe64fe1 added settings from prusa slicer 2024-04-22 08:21:29 +02:00
Bernhard Koppensteiner
88a9ddadb0 enable reverse overhang on odd by default 2024-04-20 21:30:54 +02:00
Bernhard Koppensteiner
f3e7ccb159 Merge branch 'main' of https://github.com/koppensb/OrcaSlicer 2024-04-20 20:37:02 +02:00
Bernhard Koppensteiner
5e56735e79 precise wall per default 2024-04-20 20:36:32 +02:00
Bernhard Koppensteiner
00648b7e18 Merge branch 'SoftFever:main' into main 2024-04-20 16:37:22 +02:00
Bernhard Koppensteiner
d4d3256ef8 after clearification at the prusaslicer repository M900 got removed 2024-04-20 16:32:50 +02:00
Bernhard Koppensteiner
c93e1f317f Merge branch 'main' of https://github.com/koppensb/OrcaSlicer 2024-04-19 18:54:35 +02:00
Bernhard Koppensteiner
d9944b90be changed max flow according to prusa slicer 2024-04-19 18:51:32 +02:00
Bernhard Koppensteiner
a93727e1b6 Merge branch 'SoftFever:main' into main 2024-04-19 18:51:00 +02:00
Bernhard Koppensteiner
7bb437eb0f retraction speeds according to prusa slicer 2024-04-18 13:17:19 +02:00
Bernhard Koppensteiner
532b952b99 simplified machine settings 2024-04-18 12:47:50 +02:00
Bernhard Koppensteiner
5b8a3b47c7 further changes after reviewing prusa slicer settings 2024-04-18 11:57:52 +02:00
Bernhard Koppensteiner
2085af9b02 Merge branch 'main' of https://github.com/koppensb/OrcaSlicer 2024-04-17 18:02:46 +02:00
Bernhard Koppensteiner
dbfc8351b4 changed to cubic because of speed 2024-04-17 18:02:43 +02:00
Bernhard Koppensteiner
99b14e050e Update 0.10mm Speed @MINIIS.json 2024-04-17 11:01:46 +02:00
Bernhard Koppensteiner
c3277e1b72 Update 0.15mm Speed @MINIIS.json 2024-04-17 10:58:19 +02:00
Bernhard Koppensteiner
fd53f45257 Merge branch 'main' of https://github.com/koppensb/OrcaSlicer 2024-04-15 21:31:00 +02:00
Bernhard Koppensteiner
425be2652c added more processes, changed settings 2024-04-15 21:30:48 +02:00
Bernhard Koppensteiner
56e98046cc Merge branch 'SoftFever:main' into main 2024-04-15 21:27:58 +02:00
HYzd766
36de749176 Qidi.json 2024-04-15 16:42:07 +08:00
HYzd766
ea2f4437ce Qidi.json 2024-04-12 09:57:01 +08:00
HY
1ef1c34328 Qidi.Json 2024-04-09 16:20:43 +08:00
Bernhard Koppensteiner
5c5dd35ea1 refactoring to more reusable settings 2024-04-06 13:24:44 +02:00
Bernhard Koppensteiner
23eaf8b8ce Merge branch 'SoftFever:main' into main 2024-04-03 21:24:52 +02:00
Bernhard Koppensteiner
5bbe09a75c added Prusa Mini with Input Shaper to profiles 2024-04-03 21:22:09 +02:00
11380 changed files with 572611 additions and 250726 deletions

10
.cursorignore Normal file
View File

@@ -0,0 +1,10 @@
# Add directories or file patterns to ignore during indexing (e.g. foo/ or *.csv)
deps/
build_*/
build/
localization/
sandboxes/
resources/*
!resources/web/
!resources/dailytip
!resources/shaders

2
.devcontainer/Dockerfile Normal file
View File

@@ -0,0 +1,2 @@
ARG BASE_IMAGE
FROM ${BASE_IMAGE}

View File

@@ -1,7 +1,14 @@
{
"name": "OrcaSlicer",
"image": "mcr.microsoft.com/devcontainers/cpp:ubuntu-20.04",
"runArgs": ["--env-file", "/tmp/devcontainer.env"],
"build": {
"dockerfile": "Dockerfile",
"args": {
"PLATFORM": "linux/amd64",
"BASE_IMAGE": "mcr.microsoft.com/devcontainers/cpp:ubuntu-22.04"
},
"options": ["--platform=linux/amd64"]
},
"runArgs": ["--platform=linux/amd64"],
"features": {
"ghcr.io/devcontainers/features/desktop-lite:1": {
"password": "orca"
@@ -9,16 +16,13 @@
},
"customizations": {
"vscode": {
"settings": {
"settings": {
"cmake.configureArgs": [
"-DSLIC3R_GTK=3",
"-DBBL_RELEASE_TO_PUBLIC=1",
"-DBBL_INTERNAL_TESTING=0",
"-DSLIC3R_STATIC=1",
"-DCMAKE_PREFIX_PATH=${workspaceFolder}/deps/build/destdir/usr/local"
],
"cmake.buildToolArgs": [
"-l${containerEnv:CORES}"
]
},
@@ -40,12 +44,8 @@
"otherPortsAttributes": {
"onAutoForward": "ignore"
},
"initializeCommand": {
"Setup Temporary Env File": "echo \"CORES=`nproc --all`\" > /tmp/devcontainer.env"
},
"onCreateCommand": {
"Set postCreate executable flag": "chmod +x .devcontainer/postCreate.sh"
},
"postCreateCommand": "sudo .devcontainer/postCreate.sh"
}
}

View File

@@ -3,12 +3,13 @@
apt update
apt upgrade -y
build_linux="./build_linux.sh -u"
echo "-----------------------------------------"
echo "Running BuildLinux.sh with update flag..."
echo "Running ${build_linux}..."
echo "-----------------------------------------"
./BuildLinux.sh -u
${build_linux}
echo "------------------------------"
echo "Installing missing packages..."
echo "------------------------------"
apt install -y libgl1-mesa-dev m4 autoconf libtool
apt install -y libgl1-mesa-dev m4 autoconf libtool

View File

@@ -22,7 +22,9 @@ deps/build-linux/*
**/.DS_Store
install_*
build_*/
!build_linux.sh
SVG
Dockerfile
DockerBuild.sh
DockerRun.sh
scripts/Dockerfile
scripts/DockerBuild.sh
scripts/DockerRun.sh
scripts/.dockerignore

2
.gitattributes vendored
View File

@@ -0,0 +1,2 @@
# Set the default behavior, in case people don't have core.autocrlf set.
* text=auto

1
.github/FUNDING.yml vendored
View File

@@ -1,2 +1,3 @@
github: SoftFever
ko_fi: SoftFever
custom: https://paypal.me/softfever3d

18
.github/dependabot.yml vendored Normal file
View File

@@ -0,0 +1,18 @@
version: 2
updates:
# Only care about major updates to github actions
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "monthly"
ignore: # Only suggest major updates for built-in actions
- dependency-name: "github/*"
update-types: ["version-update:semver-patch", "version-update:semver-minor"]
- dependency-name: "actions/*"
update-types: ["version-update:semver-patch", "version-update:semver-minor"]
# Docker dependencies
- package-ecosystem: "docker"
directory: "/"
schedule:
interval: "monthly"
# no support for c/cpp

24
.github/workflows/assign.yml vendored Normal file
View File

@@ -0,0 +1,24 @@
name: Assign Issue
on:
schedule:
- cron: 0 0 * * *
issue_comment:
types: [created]
workflow_dispatch:
jobs:
assign:
permissions:
issues: write
runs-on: ubuntu-latest
steps:
- name: Assign the user or unassign stale assignments
uses: takanome-dev/assign-issue-action@v2.3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
maintainers: 'noisyfox,softfever'
days_until_unassign: 30
block_assignment: false
reminder_days: 7
max_assignments: 12

View File

@@ -13,6 +13,7 @@ on:
- 'localization/**'
- 'resources/**'
- ".github/workflows/build_*.yml"
- 'scripts/flatpak/**'
pull_request:
branches:
@@ -24,9 +25,10 @@ on:
- '**/CMakeLists.txt'
- 'version.inc'
- ".github/workflows/build_*.yml"
- 'BuildLinux.sh'
- 'build_linux.sh'
- 'build_release_vs2022.bat'
- 'build_release_macos.sh'
- 'scripts/flatpak/**'
workflow_dispatch: # allows for manual dispatch
inputs:
@@ -47,11 +49,11 @@ jobs:
fail-fast: false
matrix:
include:
- os: ubuntu-20.04
# Deprecate 20.04appimage
# - os: ubuntu-20.04
- os: ubuntu-24.04
- os: windows-latest
- os: macos-12
arch: x86_64
- os: macos-12
- os: macos-14
arch: arm64
uses: ./.github/workflows/build_check_cache.yml
with:
@@ -59,20 +61,64 @@ jobs:
arch: ${{ matrix.arch }}
build-deps-only: ${{ inputs.build-deps-only || false }}
secrets: inherit
# flatpak:
# name: "Flatpak"
# runs-on: ubuntu-latest
# container:
# image: bilelmoussaoui/flatpak-github-actions:gnome-45
# options: --privileged
# steps:
# # maybe i'm too dumb and fucked up to do CI. OH WELL :D -ppd
# - name: "Remove unneeded stuff to free disk space"
# run:
# sudo rm -rf /usr/share/dotnet /opt/ghc "/usr/local/share/boost" "$AGENT_TOOLSDIRECTORY"
# - uses: actions/checkout@v4
# - uses: flatpak/flatpak-github-actions/flatpak-builder@v6
# with:
# bundle: orcaslicer.flatpak
# manifest-path: flatpak/io.github.softfever.OrcaSlicer.yml
# cache-key: flatpak-builder-${{ github.sha }}
flatpak:
name: "Flatpak"
container:
image: ghcr.io/flathub-infra/flatpak-github-actions:gnome-47
options: --privileged
volumes:
- /usr/local/lib/android:/usr/local/lib/android
- /usr/share/dotnet:/usr/share/dotnet
- /opt/ghc:/opt/ghc1
- /usr/local/share/boost:/usr/local/share/boost1
strategy:
matrix:
variant:
- arch: x86_64
runner: ubuntu-24.04
- arch: aarch64
runner: ubuntu-24.04-arm
runs-on: ${{ matrix.variant.runner }}
env:
date:
ver:
ver_pure:
steps:
- name: "Remove unneeded stuff to free disk space"
run:
rm -rf /usr/local/lib/android/* /usr/share/dotnet/* /opt/ghc1/* "/usr/local/share/boost1/*"
- uses: actions/checkout@v5
- name: Get the version and date
run: |
ver_pure=$(grep 'set(SoftFever_VERSION' version.inc | cut -d '"' -f2)
if [[ "${{ github.event_name }}" == "pull_request" ]]; then
ver="PR-${{ github.event.number }}"
else
ver=V$ver_pure
fi
echo "ver=$ver" >> $GITHUB_ENV
echo "ver_pure=$ver_pure" >> $GITHUB_ENV
echo "date=$(date +'%Y%m%d')" >> $GITHUB_ENV
shell: bash
- uses: flathub-infra/flatpak-github-actions/flatpak-builder@master
with:
bundle: OrcaSlicer-Linux-flatpak_${{ env.ver }}_${{ matrix.variant.arch }}.flatpak
manifest-path: scripts/flatpak/io.github.softfever.OrcaSlicer.yml
cache: true
arch: ${{ matrix.variant.arch }}
upload-artifact: false
- name: Upload artifacts Flatpak
uses: actions/upload-artifact@v4
with:
name: OrcaSlicer-Linux-flatpak_${{ env.ver }}_${{ matrix.variant.arch }}.flatpak
path: '/__w/OrcaSlicer/OrcaSlicer/OrcaSlicer-Linux-flatpak_${{ env.ver }}_${{ matrix.variant.arch }}.flatpak'
- name: Deploy Flatpak to nightly release
if: ${{github.ref == 'refs/heads/main'}}
uses: WebFreak001/deploy-nightly@v3.2.0
with:
upload_url: https://uploads.github.com/repos/SoftFever/OrcaSlicer/releases/137995723/assets{?name,label}
release_id: 137995723
asset_path: /__w/OrcaSlicer/OrcaSlicer/OrcaSlicer-Linux-flatpak_${{ env.ver }}_${{ matrix.variant.arch }}.flatpak
asset_name: OrcaSlicer-Linux-flatpak_nightly_${{ matrix.variant.arch }}.flatpak
asset_content_type: application/octet-stream
max_releases: 1 # optional, if there are more releases than this matching the asset_name, the oldest ones are going to be deleted

View File

@@ -23,20 +23,19 @@ jobs:
valid-cache: ${{ steps.cache_deps.outputs.cache-hit }}
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
with:
lfs: 'true'
- name: set outputs
id: set_outputs
env:
underscore-arch: ${{ inputs.os == 'macos-12' && '_' || ''}}${{ inputs.os == 'macos-12' && inputs.arch || '' }} # if is macos, make a string that does "_{arch}", else output nothing
dash-arch: ${{ inputs.os == 'macos-12' && '-' || ''}}${{ inputs.os == 'macos-12' && inputs.arch || '' }} # if is macos, make a string that does "-{arch}", else output nothing
dep-folder-name: ${{ (inputs.os == 'windows-latest' || inputs.os == 'macos-12') && 'OrcaSlicer_dep' || 'destdir' }}
# todo: this is mad! refactor other build scripts to use same name
dep-folder-name: ${{ inputs.os == 'windows-latest' && '/OrcaSlicer_dep' || inputs.os == 'macos-14' && '' || inputs.os != 'macos-14' && '/destdir' || '' }}
output-cmd: ${{ inputs.os == 'windows-latest' && '$env:GITHUB_OUTPUT' || '"$GITHUB_OUTPUT"'}}
run: |
echo cache-key=${{ runner.os }}${{ env.dash-arch }}-cache-orcaslicer_deps-build-${{ hashFiles('deps/**') }} >> ${{ env.output-cmd }}
echo cache-path=${{ github.workspace }}/deps/build${{ env.underscore-arch }}/${{ env.dep-folder-name }}${{ env.underscore-arch }} >> ${{ env.output-cmd }}
echo cache-key=${{ inputs.os }}-cache-orcaslicer_deps-build-${{ hashFiles('deps/**') }} >> ${{ env.output-cmd }}
echo cache-path=${{ github.workspace }}/deps/build${{ env.dep-folder-name }} >> ${{ env.output-cmd }}
- name: load cache
id: cache_deps

View File

@@ -31,7 +31,7 @@ jobs:
# Setup the environment
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
with:
lfs: 'true'
@@ -41,6 +41,10 @@ jobs:
path: ${{ inputs.cache-path }}
key: ${{ inputs.cache-key }}
- uses: lukka/get-cmake@latest
with:
cmakeVersion: "~3.28.0" # use most recent 3.28.x version
- name: setup dev on Windows
if: inputs.os == 'windows-latest'
uses: microsoft/setup-msbuild@v2
@@ -62,51 +66,59 @@ jobs:
working-directory: ${{ github.workspace }}
run: |
choco install strawberryperl
mkdir ${{ github.workspace }}/deps/build
mkdir ${{ github.workspace }}/deps/build/OrcaSlicer_dep
.\build_release_vs2022.bat deps
.\build_release_vs2022.bat pack
cd ${{ github.workspace }}/deps/build
- name: Build on Mac ${{ inputs.arch }}
if: inputs.os == 'macos-12'
if: inputs.os == 'macos-14'
working-directory: ${{ github.workspace }}
run: |
brew install cmake git gettext automake texinfo ninja
brew install automake texinfo libtool
brew list
mkdir -p ${{ github.workspace }}/deps/build_${{ inputs.arch }}
mkdir -p ${{ github.workspace }}/deps/build_${{ inputs.arch }}/OrcaSlicer_dep_${{ inputs.arch }}
brew uninstall --ignore-dependencies zstd
./build_release_macos.sh -dpx -a ${{ inputs.arch }} -t 10.15
./build_release_macos.sh -dx -a universal -t 10.15 -1
for arch in arm64 x86_64; do
(cd "${{ github.workspace }}/deps/build/${arch}" && \
find . -mindepth 1 -maxdepth 1 ! -name 'OrcaSlicer_dep' -exec rm -rf {} +)
done
brew install zstd
- name: Install Ubuntu Build Dependencies
if: inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04'
working-directory: ${{ github.workspace }}
env:
apt-cmd: ${{ (inputs.os == 'ubuntu-20.04' && 'apt-fast') || (inputs.os == 'ubuntu-24.04' && 'sudo apt-get') || '' }}
webkit-ver: ${{ (inputs.os == 'ubuntu-20.04' && '4.0') || (inputs.os == 'ubuntu-24.04' && '4.1') || '' }}
run: |
${{ env.apt-cmd }} update
${{ env.apt-cmd }} install -y cmake git g++ build-essential libgl1-mesa-dev m4 \
libwayland-dev libxkbcommon-dev wayland-protocols extra-cmake-modules pkgconf \
libglu1-mesa-dev libcairo2-dev libgtk-3-dev libsoup2.4-dev libwebkit2gtk-${{ env.webkit-ver }}-dev \
libgstreamer1.0-dev libgstreamer-plugins-good1.0-dev libgstreamer-plugins-base1.0-dev \
gstreamer1.0-plugins-bad wget sudo autoconf curl libunwind-dev texinfo
- name: Build on Ubuntu
if: inputs.os == 'ubuntu-20.04'
if: inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04'
working-directory: ${{ github.workspace }}
run: |
sudo apt-get update
sudo apt-get install -y cmake git g++ build-essential libgl1-mesa-dev m4 \
libwayland-dev libxkbcommon-dev wayland-protocols extra-cmake-modules pkgconf \
libglu1-mesa-dev libcairo2-dev libgtk-3-dev libsoup2.4-dev libwebkit2gtk-4.0-dev \
libgstreamer1.0-dev libgstreamer-plugins-good1.0-dev libgstreamer-plugins-base1.0-dev \
gstreamer1.0-plugins-bad libosmesa6-dev wget sudo autoconf curl libunwind-dev texinfo
mkdir -p ${{ github.workspace }}/deps/build
mkdir -p ${{ github.workspace }}/deps/build/destdir
sudo ./BuildLinux.sh -ur
sudo ./build_linux.sh -ur
sudo chown $USER -R ./
./BuildLinux.sh -dr
./build_linux.sh -dr
cd deps/build
tar -czvf OrcaSlicer_dep_ubuntu_$(date +"%Y%m%d").tar.gz destdir
# Upload Artifacts
- name: Upload Mac ${{ inputs.arch }} artifacts
if: inputs.os == 'macos-12'
uses: actions/upload-artifact@v4
with:
name: OrcaSlicer_dep_mac_${{ inputs.arch }}_${{ env.date }}
path: ${{ github.workspace }}/deps/build_${{ inputs.arch }}/OrcaSlicer_dep*.tar.gz
# - name: Upload Mac ${{ inputs.arch }} artifacts
# if: inputs.os == 'macos-14'
# uses: actions/upload-artifact@v4
# with:
# name: OrcaSlicer_dep_mac_${{ env.date }}
# path: ${{ github.workspace }}/deps/build/OrcaSlicer_dep*.tar.gz
- name: Upload Windows artifacts
if: inputs.os == 'windows-latest'
@@ -116,10 +128,12 @@ jobs:
path: ${{ github.workspace }}/deps/build/OrcaSlicer_dep*.zip
- name: Upload Ubuntu artifacts
if: ${{ ! env.ACT && inputs.os == 'ubuntu-20.04' }}
if: ${{ ! env.ACT && inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04' }}
env:
ubuntu-ver: ${{ (inputs.os == 'ubuntu-20.04' && '2004') || (inputs.os == 'ubuntu-24.04' && '2404') || '' }}
uses: actions/upload-artifact@v4
with:
name: OrcaSlicer_dep_ubuntu_${{ env.date }}
name: OrcaSlicer_dep_ubuntu_${{ env.ubuntu-ver }}_${{ env.date }}
path: ${{ github.workspace }}/deps/build/OrcaSlicer_dep_ubuntu_*.tar.gz
build_orca:

View File

@@ -25,7 +25,7 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v5
with:
lfs: 'true'
@@ -36,6 +36,10 @@ jobs:
key: ${{ inputs.cache-key }}
fail-on-cache-miss: true
- uses: lukka/get-cmake@latest
with:
cmakeVersion: "~3.28.0" # use most recent 3.28.x version
- name: Get the version and date on Ubuntu and macOS
if: inputs.os != 'windows-latest'
run: |
@@ -75,23 +79,29 @@ jobs:
# Mac
- name: Install tools mac
if: inputs.os == 'macos-12'
if: inputs.os == 'macos-14'
run: |
brew install cmake git gettext tree ninja
brew install libtool
brew list
mkdir -p ${{ github.workspace }}/deps/build_${{inputs.arch}}
mkdir -p ${{ github.workspace }}/deps/build_${{inputs.arch}}/OrcaSlicer_dep_${{inputs.arch}}
tree ${{ github.workspace }}/deps/build_${{inputs.arch}}/OrcaSlicer_dep_${{inputs.arch}}
mkdir -p ${{ github.workspace }}/deps/build
- name: Free disk space
if: inputs.os == 'macos-14'
run: |
df -hI /dev/disk3s1s1
sudo find /Applications -maxdepth 1 -type d -name "Xcode_*.app" ! -name "Xcode_15.4.app" -exec rm -rf {} +
sudo rm -rf ~/Library/Developer/CoreSimulator/Caches/*
df -hI /dev/disk3s1s1
- name: Build slicer mac
if: inputs.os == 'macos-12'
if: inputs.os == 'macos-14'
working-directory: ${{ github.workspace }}
run: |
./build_release_macos.sh -s -n -x -a ${{inputs.arch}} -t 10.15
./build_release_macos.sh -s -n -x -a universal -t 10.15 -1
# Thanks to RaySajuuk, it's working now
- name: Sign app and notary
if: (github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/heads/release/')) && inputs.os == 'macos-12'
if: (github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/heads/release/')) && inputs.os == 'macos-14'
working-directory: ${{ github.workspace }}
env:
BUILD_CERTIFICATE_BASE64: ${{ secrets.BUILD_CERTIFICATE_BASE64 }}
@@ -108,39 +118,89 @@ jobs:
security import $CERTIFICATE_PATH -P $P12_PASSWORD -A -t cert -f pkcs12 -k $KEYCHAIN_PATH
security list-keychain -d user -s $KEYCHAIN_PATH
security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k $P12_PASSWORD $KEYCHAIN_PATH
codesign --deep --force --verbose --options runtime --timestamp --entitlements ${{ github.workspace }}/scripts/disable_validation.entitlements --sign "$CERTIFICATE_ID" ${{ github.workspace }}/build_${{inputs.arch}}/OrcaSlicer/OrcaSlicer.app
ln -s /Applications ${{ github.workspace }}/build_${{inputs.arch}}/OrcaSlicer/Applications
hdiutil create -volname "OrcaSlicer" -srcfolder ${{ github.workspace }}/build_${{inputs.arch}}/OrcaSlicer -ov -format UDZO OrcaSlicer_Mac_${{inputs.arch}}_${{ env.ver }}.dmg
codesign --deep --force --verbose --options runtime --timestamp --entitlements ${{ github.workspace }}/scripts/disable_validation.entitlements --sign "$CERTIFICATE_ID" OrcaSlicer_Mac_${{inputs.arch}}_${{ env.ver }}.dmg
codesign --deep --force --verbose --options runtime --timestamp --entitlements ${{ github.workspace }}/scripts/disable_validation.entitlements --sign "$CERTIFICATE_ID" ${{ github.workspace }}/build/universal/OrcaSlicer/OrcaSlicer.app
# Sign OrcaSlicer_profile_validator.app if it exists
if [ -f "${{ github.workspace }}/build/universal/OrcaSlicer/OrcaSlicer_profile_validator.app/Contents/MacOS/OrcaSlicer_profile_validator" ]; then
codesign --deep --force --verbose --options runtime --timestamp --entitlements ${{ github.workspace }}/scripts/disable_validation.entitlements --sign "$CERTIFICATE_ID" ${{ github.workspace }}/build/universal/OrcaSlicer/OrcaSlicer_profile_validator.app
fi
# Create main OrcaSlicer DMG
ln -s /Applications ${{ github.workspace }}/build/universal/OrcaSlicer/Applications
hdiutil create -volname "OrcaSlicer" -srcfolder ${{ github.workspace }}/build/universal/OrcaSlicer -ov -format UDZO OrcaSlicer_Mac_universal_${{ env.ver }}.dmg
codesign --deep --force --verbose --options runtime --timestamp --entitlements ${{ github.workspace }}/scripts/disable_validation.entitlements --sign "$CERTIFICATE_ID" OrcaSlicer_Mac_universal_${{ env.ver }}.dmg
# Create separate OrcaSlicer_profile_validator DMG if the app exists
if [ -f "${{ github.workspace }}/build/universal/OrcaSlicer/OrcaSlicer_profile_validator.app/Contents/MacOS/OrcaSlicer_profile_validator" ]; then
mkdir -p ${{ github.workspace }}/build/universal/OrcaSlicer_profile_validator_dmg
cp -R ${{ github.workspace }}/build/universal/OrcaSlicer/OrcaSlicer_profile_validator.app ${{ github.workspace }}/build/universal/OrcaSlicer_profile_validator_dmg/
ln -s /Applications ${{ github.workspace }}/build/universal/OrcaSlicer_profile_validator_dmg/Applications
hdiutil create -volname "OrcaSlicer Profile Validator" -srcfolder ${{ github.workspace }}/build/universal/OrcaSlicer_profile_validator_dmg -ov -format UDZO OrcaSlicer_profile_validator_Mac_universal_${{ env.ver }}.dmg
codesign --deep --force --verbose --options runtime --timestamp --entitlements ${{ github.workspace }}/scripts/disable_validation.entitlements --sign "$CERTIFICATE_ID" OrcaSlicer_profile_validator_Mac_universal_${{ env.ver }}.dmg
fi
# Notarize main DMG
xcrun notarytool store-credentials "notarytool-profile" --apple-id "${{ secrets.APPLE_DEV_ACCOUNT }}" --team-id "${{ secrets.TEAM_ID }}" --password "${{ secrets.APP_PWD }}"
xcrun notarytool submit "OrcaSlicer_Mac_${{inputs.arch}}_${{ env.ver }}.dmg" --keychain-profile "notarytool-profile" --wait
xcrun stapler staple OrcaSlicer_Mac_${{inputs.arch}}_${{ env.ver }}.dmg
xcrun notarytool submit "OrcaSlicer_Mac_universal_${{ env.ver }}.dmg" --keychain-profile "notarytool-profile" --wait
xcrun stapler staple OrcaSlicer_Mac_universal_${{ env.ver }}.dmg
# Notarize profile validator DMG if it exists
if [ -f "OrcaSlicer_profile_validator_Mac_universal_${{ env.ver }}.dmg" ]; then
xcrun notarytool submit "OrcaSlicer_profile_validator_Mac_universal_${{ env.ver }}.dmg" --keychain-profile "notarytool-profile" --wait
xcrun stapler staple OrcaSlicer_profile_validator_Mac_universal_${{ env.ver }}.dmg
fi
- name: Create DMG without notary
if: github.ref != 'refs/heads/main' && inputs.os == 'macos-12'
if: github.ref != 'refs/heads/main' && inputs.os == 'macos-14'
working-directory: ${{ github.workspace }}
run: |
ln -s /Applications ${{ github.workspace }}/build_${{inputs.arch}}/OrcaSlicer/Applications
hdiutil create -volname "OrcaSlicer" -srcfolder ${{ github.workspace }}/build_${{inputs.arch}}/OrcaSlicer -ov -format UDZO OrcaSlicer_Mac_${{inputs.arch}}_${{ env.ver }}.dmg
ln -s /Applications ${{ github.workspace }}/build/universal/OrcaSlicer/Applications
hdiutil create -volname "OrcaSlicer" -srcfolder ${{ github.workspace }}/build/universal/OrcaSlicer -ov -format UDZO OrcaSlicer_Mac_universal_${{ env.ver }}.dmg
# Create separate OrcaSlicer_profile_validator DMG if the app exists
if [ -f "${{ github.workspace }}/build/universal/OrcaSlicer/OrcaSlicer_profile_validator.app/Contents/MacOS/OrcaSlicer_profile_validator" ]; then
mkdir -p ${{ github.workspace }}/build/universal/OrcaSlicer_profile_validator_dmg
cp -R ${{ github.workspace }}/build/universal/OrcaSlicer/OrcaSlicer_profile_validator.app ${{ github.workspace }}/build/universal/OrcaSlicer_profile_validator_dmg/
ln -s /Applications ${{ github.workspace }}/build/universal/OrcaSlicer_profile_validator_dmg/Applications
hdiutil create -volname "OrcaSlicer Profile Validator" -srcfolder ${{ github.workspace }}/build/universal/OrcaSlicer_profile_validator_dmg -ov -format UDZO OrcaSlicer_profile_validator_Mac_universal_${{ env.ver }}.dmg
fi
- name: Upload artifacts mac
if: inputs.os == 'macos-12'
if: inputs.os == 'macos-14'
uses: actions/upload-artifact@v4
with:
name: OrcaSlicer_Mac_${{inputs.arch}}_${{ env.ver }}
path: ${{ github.workspace }}/OrcaSlicer_Mac_${{inputs.arch}}_${{ env.ver }}.dmg
name: OrcaSlicer_Mac_universal_${{ env.ver }}
path: ${{ github.workspace }}/OrcaSlicer_Mac_universal_${{ env.ver }}.dmg
- name: Upload OrcaSlicer_profile_validator DMG mac
if: inputs.os == 'macos-14'
uses: actions/upload-artifact@v4
with:
name: OrcaSlicer_profile_validator_Mac_universal_DMG_${{ env.ver }}
path: ${{ github.workspace }}/OrcaSlicer_profile_validator_Mac_universal_${{ env.ver }}.dmg
if-no-files-found: ignore
- name: Deploy Mac release
if: github.ref == 'refs/heads/main' && inputs.os == 'macos-12'
uses: WebFreak001/deploy-nightly@v3.1.0
if: github.ref == 'refs/heads/main' && inputs.os == 'macos-14'
uses: WebFreak001/deploy-nightly@v3.2.0
with:
upload_url: https://uploads.github.com/repos/SoftFever/OrcaSlicer/releases/137995723/assets{?name,label}
release_id: 137995723
asset_path: ${{ github.workspace }}/OrcaSlicer_Mac_${{inputs.arch}}_${{ env.ver }}.dmg
asset_name: OrcaSlicer_Mac_${{inputs.arch}}_${{ env.ver }}.dmg
asset_path: ${{ github.workspace }}/OrcaSlicer_Mac_universal_${{ env.ver }}.dmg
asset_name: OrcaSlicer_Mac_universal_nightly.dmg
asset_content_type: application/octet-stream
max_releases: 1 # optional, if there are more releases than this matching the asset_name, the oldest ones are going to be deleted
- name: Deploy Mac OrcaSlicer_profile_validator DMG release
if: github.ref == 'refs/heads/main' && inputs.os == 'macos-14'
uses: WebFreak001/deploy-nightly@v3.2.0
with:
upload_url: https://uploads.github.com/repos/SoftFever/OrcaSlicer/releases/137995723/assets{?name,label}
release_id: 137995723
asset_path: ${{ github.workspace }}/OrcaSlicer_profile_validator_Mac_universal_${{ env.ver }}.dmg
asset_name: OrcaSlicer_profile_validator_Mac_universal_nightly.dmg
asset_content_type: application/octet-stream
max_releases: 1
# Windows
- name: setup MSVC
if: inputs.os == 'windows-latest'
@@ -155,6 +215,9 @@ jobs:
- name: Build slicer Win
if: inputs.os == 'windows-latest'
working-directory: ${{ github.workspace }}
env:
WindowsSdkDir: 'C:\Program Files (x86)\Windows Kits\10\'
WindowsSDKVersion: '10.0.26100.0\'
run: .\build_release_vs2022.bat slicer
- name: Create installer Win
@@ -180,7 +243,7 @@ jobs:
uses: actions/upload-artifact@v4
with:
name: OrcaSlicer_Windows_${{ env.ver }}_portable
path: ${{ github.workspace }}/build/OrcaSlicer_Windows_${{ env.ver }}_portable.zip
path: ${{ github.workspace }}/build/OrcaSlicer
- name: Upload artifacts Win installer
if: inputs.os == 'windows-latest'
@@ -196,60 +259,84 @@ jobs:
name: PDB
path: ${{ github.workspace }}/build/src/Release/Debug_PDB_${{ env.ver }}_for_developers_only.7z
- name: Upload OrcaSlicer_profile_validator Win
if: inputs.os == 'windows-latest'
uses: actions/upload-artifact@v4
with:
name: OrcaSlicer_profile_validator_Windows_${{ env.ver }}
path: ${{ github.workspace }}/build/src/Release/OrcaSlicer_profile_validator.exe
- name: Deploy Windows release portable
if: github.ref == 'refs/heads/main' && inputs.os == 'windows-latest'
uses: WebFreak001/deploy-nightly@v3.1.0
uses: WebFreak001/deploy-nightly@v3.2.0
with:
upload_url: https://uploads.github.com/repos/SoftFever/OrcaSlicer/releases/137995723/assets{?name,label}
release_id: 137995723
asset_path: ${{ github.workspace }}/build/OrcaSlicer_Windows_${{ env.ver }}_portable.zip
asset_name: OrcaSlicer_Windows_${{ env.ver }}_portable.zip
asset_name: OrcaSlicer_Windows_nightly_portable.zip
asset_content_type: application/x-zip-compressed
max_releases: 1
- name: Deploy Windows release installer
if: github.ref == 'refs/heads/main' && inputs.os == 'windows-latest'
uses: WebFreak001/deploy-nightly@v3.1.0
uses: WebFreak001/deploy-nightly@v3.2.0
with:
upload_url: https://uploads.github.com/repos/SoftFever/OrcaSlicer/releases/137995723/assets{?name,label}
release_id: 137995723
asset_path: ${{ github.workspace }}/build/OrcaSlicer_Windows_Installer_${{ env.ver }}.exe
asset_name: OrcaSlicer_Windows_Installer_${{ env.ver }}.exe
asset_name: OrcaSlicer_Windows_Installer_nightly.exe
asset_content_type: application/x-msdownload
max_releases: 1
- name: Deploy Windows OrcaSlicer_profile_validator release
if: github.ref == 'refs/heads/main' && inputs.os == 'windows-latest'
uses: WebFreak001/deploy-nightly@v3.2.0
with:
upload_url: https://uploads.github.com/repos/SoftFever/OrcaSlicer/releases/137995723/assets{?name,label}
release_id: 137995723
asset_path: ${{ github.workspace }}/build/src/Release/OrcaSlicer_profile_validator.exe
asset_name: OrcaSlicer_profile_validator_Windows_nightly.exe
asset_content_type: application/x-msdownload
max_releases: 1
# Ubuntu
- name: Install dependencies
if: inputs.os == 'ubuntu-20.04'
if: inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04'
env:
apt-cmd: ${{ (inputs.os == 'ubuntu-20.04' && 'apt-fast') || (inputs.os == 'ubuntu-24.04' && 'sudo apt-get') || '' }}
webkit-ver: ${{ (inputs.os == 'ubuntu-20.04' && '4.0') || (inputs.os == 'ubuntu-24.04' && '4.1') || '' }}
libfuse2-pkg: ${{ (inputs.os == 'ubuntu-20.04' && 'libfuse2') || (inputs.os == 'ubuntu-24.04' && 'libfuse2t64') || '' }}
run: |
sudo apt-get update
sudo apt-get install -y autoconf build-essential cmake curl eglexternalplatform-dev \
${{ env.apt-cmd }} update
${{ env.apt-cmd }} install -y autoconf build-essential cmake curl eglexternalplatform-dev \
extra-cmake-modules file git libcairo2-dev libcurl4-openssl-dev libdbus-1-dev libglew-dev libglu1-mesa-dev \
libglu1-mesa-dev libgstreamer1.0-dev libgstreamerd-3-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-good1.0-dev \
libgtk-3-dev libgtk-3-dev libmspack-dev libosmesa6-dev libsecret-1-dev libsoup2.4-dev libssl-dev libudev-dev libwayland-dev \
libwebkit2gtk-4.0-dev libxkbcommon-dev locales locales-all m4 pkgconf sudo wayland-protocols wget
libgtk-3-dev libgtk-3-dev libmspack-dev libsecret-1-dev libsoup2.4-dev libssl-dev libudev-dev libwayland-dev \
libwebkit2gtk-${{ env.webkit-ver }}-dev libxkbcommon-dev locales locales-all m4 pkgconf sudo wayland-protocols wget ${{ env.libfuse2-pkg }}
- name: Install dependencies from BuildLinux.sh
if: inputs.os == 'ubuntu-20.04'
- name: Install dependencies from build_linux.sh
if: inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04'
shell: bash
run: sudo ./BuildLinux.sh -ur
run: sudo ./build_linux.sh -ur
- name: Fix permissions
if: inputs.os == 'ubuntu-20.04'
if: inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04'
shell: bash
run: sudo chown $USER -R ./
- name: Build slicer
if: inputs.os == 'ubuntu-20.04'
if: inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04'
shell: bash
env:
ubuntu-ver-str: ${{ (inputs.os == 'ubuntu-24.04' && '_Ubuntu2404') || '' }}
run: |
./BuildLinux.sh -isr
mv -n ./build/OrcaSlicer_Linux_V${{ env.ver_pure }}.AppImage ./build/OrcaSlicer_Linux_${{ env.ver }}.AppImage
chmod +x ./build/OrcaSlicer_Linux_${{ env.ver }}.AppImage
./build_linux.sh -isr
mv -n ./build/OrcaSlicer_Linux_V${{ env.ver_pure }}.AppImage ./build/OrcaSlicer_Linux_AppImage${{ env.ubuntu-ver-str }}_${{ env.ver }}.AppImage
chmod +x ./build/OrcaSlicer_Linux_AppImage${{ env.ubuntu-ver-str }}_${{ env.ver }}.AppImage
- name: Build orca_custom_preset_tests
if: github.ref == 'refs/heads/main' && inputs.os == 'ubuntu-20.04'
working-directory: ${{ github.workspace }}/build/src
if: github.ref == 'refs/heads/main' && inputs.os == 'ubuntu-24.04'
working-directory: ${{ github.workspace }}/build/src/Release
shell: bash
run: |
./OrcaSlicer_profile_validator -p ${{ github.workspace }}/resources/profiles -g 1
@@ -257,26 +344,61 @@ jobs:
zip -r orca_custom_preset_tests.zip user/
- name: Upload artifacts Ubuntu
if: ${{ ! env.ACT && inputs.os == 'ubuntu-20.04' }}
if: ${{ ! env.ACT && inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04' }}
env:
ubuntu-ver: ${{ (inputs.os == 'ubuntu-20.04' && '2004') || (inputs.os == 'ubuntu-24.04' && '2404') || '' }}
ubuntu-ver-str: ${{ (inputs.os == 'ubuntu-24.04' && '_Ubuntu2404') || '' }}
uses: actions/upload-artifact@v4
with:
name: OrcaSlicer_Linux_${{ env.ver }}
path: './build/OrcaSlicer_Linux_${{ env.ver }}.AppImage'
name: OrcaSlicer_Linux_ubuntu_${{ env.ubuntu-ver }}_${{ env.ver }}
path: './build/OrcaSlicer_Linux_AppImage${{ env.ubuntu-ver-str }}_${{ env.ver }}.AppImage'
- name: Upload OrcaSlicer_profile_validator Ubuntu
if: ${{ ! env.ACT && inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04' }}
env:
ubuntu-ver: ${{ (inputs.os == 'ubuntu-20.04' && '2004') || (inputs.os == 'ubuntu-24.04' && '2404') || '' }}
uses: actions/upload-artifact@v4
with:
name: OrcaSlicer_profile_validator_Linux_ubuntu_${{ env.ubuntu-ver }}_${{ env.ver }}
path: './build/src/Release/OrcaSlicer_profile_validator'
- name: Deploy Ubuntu release
if: ${{ ! env.ACT && github.ref == 'refs/heads/main' && inputs.os == 'ubuntu-20.04' }}
uses: WebFreak001/deploy-nightly@v3.1.0
if: ${{ ! env.ACT && github.ref == 'refs/heads/main' && (inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04') }}
env:
ubuntu-ver-str: ${{ (inputs.os == 'ubuntu-24.04' && '_Ubuntu2404') || '' }}
uses: WebFreak001/deploy-nightly@v3.2.0
with:
upload_url: https://uploads.github.com/repos/SoftFever/OrcaSlicer/releases/137995723/assets{?name,label}
release_id: 137995723
asset_path: ./build/OrcaSlicer_Linux_${{ env.ver }}.AppImage
asset_name: OrcaSlicer_Linux_${{ env.ver }}.AppImage
asset_path: ./build/OrcaSlicer_Linux_AppImage${{ env.ubuntu-ver-str }}_${{ env.ver }}.AppImage
asset_name: OrcaSlicer_Linux_AppImage${{ env.ubuntu-ver-str }}_nightly.AppImage
asset_content_type: application/octet-stream
max_releases: 1 # optional, if there are more releases than this matching the asset_name, the oldest ones are going to be deleted
- name: Deploy Ubuntu release
if: ${{ ! env.ACT && github.ref == 'refs/heads/main' && inputs.os == 'ubuntu-24.04' }}
uses: rickstaa/action-create-tag@v1
with:
tag: "nightly-builds"
tag_exists_error: false
force_push_tag: true
message: "nightly-builds"
- name: Deploy Ubuntu OrcaSlicer_profile_validator release
if: ${{ ! env.ACT && github.ref == 'refs/heads/main' && (inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04') }}
env:
ubuntu-ver-str: ${{ (inputs.os == 'ubuntu-24.04' && '_Ubuntu2404') || '' }}
uses: WebFreak001/deploy-nightly@v3.2.0
with:
upload_url: https://uploads.github.com/repos/SoftFever/OrcaSlicer/releases/137995723/assets{?name,label}
release_id: 137995723
asset_path: ./build/src/Release/OrcaSlicer_profile_validator
asset_name: OrcaSlicer_profile_validator_Linux${{ env.ubuntu-ver-str }}_nightly
asset_content_type: application/octet-stream
max_releases: 1
- name: Deploy orca_custom_preset_tests
if: ${{ ! env.ACT && github.ref == 'refs/heads/main' && inputs.os == 'ubuntu-20.04' }}
uses: WebFreak001/deploy-nightly@v3.1.0
if: ${{ ! env.ACT && github.ref == 'refs/heads/main' && inputs.os == 'ubuntu-24.04' }}
uses: WebFreak001/deploy-nightly@v3.2.0
with:
upload_url: https://uploads.github.com/repos/SoftFever/OrcaSlicer/releases/137995723/assets{?name,label}
release_id: 137995723

View File

@@ -14,7 +14,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v5
- name: Install gettext
run: |

View File

@@ -1,19 +1,31 @@
name: Check profiles
on:
pull_request:
branches:
- main
paths:
- 'resources/profiles/**'
- ".github/workflows/check_profiles.yml"
pull_request:
branches:
- main
paths:
- 'resources/profiles/**'
- ".github/workflows/check_profiles.yml"
workflow_dispatch:
inputs:
logLevel:
description: 'Log level'
required: true
default: 'warning'
jobs:
check_translation:
name: Check profiles
runs-on: ubuntu-22.04
runs-on: ubuntu-24.04
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v5
- name: Run extra JSON check
run: |
python3 ./scripts/orca_extra_profile_check.py
# download
- name: Download
@@ -36,4 +48,4 @@ jobs:

View File

@@ -0,0 +1,71 @@
name: Claude Code Review
on:
workflow_dispatch:
jobs:
claude-review:
# Optional: Filter by PR author
# if: |
# github.event.pull_request.user.login == 'external-contributor' ||
# github.event.pull_request.user.login == 'new-developer' ||
# github.event.pull_request.author_association == 'FIRST_TIME_CONTRIBUTOR'
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: read
issues: read
id-token: write
steps:
- name: Checkout repository
uses: actions/checkout@v5
with:
fetch-depth: 1
- name: Run Claude Code Review
id: claude-review
uses: anthropics/claude-code-action@beta
with:
claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
# Optional: Specify model (defaults to Claude Sonnet 4, uncomment for Claude Opus 4.1)
# model: "claude-opus-4-1-20250805"
# Direct prompt for automated review (no @claude mention needed)
direct_prompt: |
Please review this pull request and provide feedback on:
- Code quality and best practices
- Potential bugs or issues
- Performance considerations
- Security concerns
- Test coverage
Be constructive and helpful in your feedback.
# Optional: Use sticky comments to make Claude reuse the same comment on subsequent pushes to the same PR
# use_sticky_comment: true
# Optional: Customize review based on file types
# direct_prompt: |
# Review this PR focusing on:
# - For TypeScript files: Type safety and proper interface usage
# - For API endpoints: Security, input validation, and error handling
# - For React components: Performance, accessibility, and best practices
# - For tests: Coverage, edge cases, and test quality
# Optional: Different prompts for different authors
# direct_prompt: |
# ${{ github.event.pull_request.author_association == 'FIRST_TIME_CONTRIBUTOR' &&
# 'Welcome! Please review this PR from a first-time contributor. Be encouraging and provide detailed explanations for any suggestions.' ||
# 'Please provide a thorough code review focusing on our coding standards and best practices.' }}
# Optional: Add specific tools for running tests or linting
# allowed_tools: "Bash(npm run test),Bash(npm run lint),Bash(npm run typecheck)"
# Optional: Skip review for certain conditions
# if: |
# !contains(github.event.pull_request.title, '[skip-review]') &&
# !contains(github.event.pull_request.title, '[WIP]')

64
.github/workflows/claude.yml vendored Normal file
View File

@@ -0,0 +1,64 @@
name: Claude Code
on:
issue_comment:
types: [created]
pull_request_review_comment:
types: [created]
issues:
types: [opened, assigned]
pull_request_review:
types: [submitted]
jobs:
claude:
if: |
(github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||
(github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||
(github.event_name == 'pull_request_review' && contains(github.event.review.body, '@claude')) ||
(github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude')))
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: read
issues: read
id-token: write
actions: read # Required for Claude to read CI results on PRs
steps:
- name: Checkout repository
uses: actions/checkout@v5
with:
fetch-depth: 1
- name: Run Claude Code
id: claude
uses: anthropics/claude-code-action@beta
with:
claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
# This is an optional setting that allows Claude to read CI results on PRs
additional_permissions: |
actions: read
# Optional: Specify model (defaults to Claude Sonnet 4, uncomment for Claude Opus 4.1)
# model: "claude-opus-4-1-20250805"
# Optional: Customize the trigger phrase (default: @claude)
# trigger_phrase: "/claude"
# Optional: Trigger when specific user is assigned to an issue
# assignee_trigger: "claude-bot"
# Optional: Allow Claude to run specific commands
# allowed_tools: "Bash(npm install),Bash(npm run build),Bash(npm run test:*),Bash(npm run lint:*)"
# Optional: Add custom instructions for Claude to customize its behavior for your project
# custom_instructions: |
# Follow our coding standards
# Ensure all new code has tests
# Use TypeScript for new files
# Optional: Custom environment variables for Claude
# claude_env: |
# NODE_ENV: test

View File

@@ -2,7 +2,13 @@ name: Orca bot
on:
schedule:
- cron: "0 0 * * *"
workflow_dispatch:
inputs:
logLevel:
description: 'Log level'
required: true
default: 'warning'
jobs:
stale:
runs-on: ubuntu-latest
@@ -25,6 +31,8 @@ jobs:
exempt-all-issue-milestones: true
# Exempt all issues with assignees from stale
exempt-all-issue-assignees: true
# Exempt feature requests
exempt-issue-labels: "enhancement"
# Idle number of days before marking issues stale
days-before-issue-stale: 90
# Idle number of days before marking issues close

View File

@@ -8,6 +8,13 @@ on:
branches:
- main # This can be changed to any branch of your preference
workflow_dispatch:
inputs:
logLevel:
description: 'Log level'
required: true
default: 'warning'
env:
USER_TOKEN: ${{ secrets.GH_WIKI_PAT }} # This is the repository secret personal access token
USER_NAME: ${{ vars.BOT_USER_NAME }} # Enter the username of your (bot) account
@@ -16,19 +23,18 @@ env:
jobs:
publish_docs_to_wiki:
if: ${{ !env.ACT }} # Skip if using `act`
name: Publish docs to Wiki
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v5
# 1. Clone the current wiki master branch to a folder named `tmp_wiki`
- name: Pull content from wiki
run: |
git config --global user.name "$USER_NAME"
git config --global user.email "$USER_NAME"@users.noreply.github.com
git clone https://"$USER_TOKEN"@github.com/"$OWNER"/"$REPOSITORY_NAME".wiki.git tmp_wiki
git clone https://"$USER_TOKEN"@github.com/SoftFever/"$REPOSITORY_NAME".wiki.git tmp_wiki
# 4. Synchronize differences between `doc` & `tmp_wiki`
# 5. Push new Wiki content
- name: Push main repo content to wiki

38
.github/workflows/shellcheck.yml vendored Normal file
View File

@@ -0,0 +1,38 @@
on:
push:
paths:
- build_linux.sh
pull_request:
paths:
- build_linux.sh
workflow_dispatch: # allows for manual dispatch
name: "Shellcheck"
permissions: {}
jobs:
shellcheck:
name: Shellcheck
runs-on: ubuntu-latest
steps:
- name: Cache shellcheck download
id: cache-shellcheck-v0_11
uses: actions/cache@v4
with:
path: ~/shellcheck
key: ${{ runner.os }}-shellcheck-v0_11
- name: Download shellcheck
if: steps.cache-shellcheck-v0_11.outputs.cache-hit != 'true'
shell: bash
env:
INPUT_VERSION: "v0.11.0"
run: |
curl -L#o ~/sc.tar.xz "https://github.com/koalaman/shellcheck/releases/download/${INPUT_VERSION}/shellcheck-${INPUT_VERSION}.linux.x86_64.tar.xz"
tar -xvf ~/sc.tar.xz -C ~
mv ~/shellcheck-"${INPUT_VERSION}"/shellcheck ~/shellcheck
- uses: actions/checkout@v5
- name: Shellcheck build_linux.sh
run: ~/shellcheck -e SC1090 build_linux.sh

View File

@@ -0,0 +1,38 @@
name: Update Translation Catalog
on:
# schedule:
# - cron: 0 0 * * 1
workflow_dispatch:
jobs:
update_translation:
name: Update translation
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v5
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: Install gettext
run: |
sudo apt-get update
sudo apt-get install -y gettext
- name: Update translation catalog
run: |
./scripts/run_gettext.sh --full
git add localization/i18n/*
- name: Commit translation catalog updates
uses: qoomon/actions--create-commit@v1
id: commit
with:
message: Update translation catalog
skip-empty: true
- name: Push changes
run: git push

View File

@@ -0,0 +1,335 @@
name: Validate Documentation
on:
pull_request:
paths:
- 'src/slic3r/GUI/Tab.cpp'
- 'doc/**/*.md'
workflow_dispatch:
permissions:
contents: read
pull-requests: write
issues: write
jobs:
validate:
runs-on: windows-latest
name: Check Documentation
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Get changed files
id: changed-files
uses: tj-actions/changed-files@v46
with:
files: |
src/slic3r/GUI/Tab.cpp
doc/**/*.md
- name: Run validation
if: steps.changed-files.outputs.any_changed == 'true'
shell: pwsh
run: |
# Helper Functions
function Normalize-Fragment($fragment) {
return $fragment.ToLower().Trim() -replace '[^a-z0-9\s-]', '' -replace ' ', '-' -replace '^-+|-+$', ''
}
function Add-BrokenReference($sourceFile, $line, $target, $issue, $type) {
return @{
SourceFile = $sourceFile
Line = $line
Target = $target
Issue = $issue
Type = $type
}
}
function Validate-Fragment($fragment, $availableAnchors, $sourceFile, $line, $target, $type) {
$cleanFragment = $fragment.StartsWith('#') ? $fragment.Substring(1) : $fragment
$normalizedFragment = Normalize-Fragment $cleanFragment
if ($availableAnchors -notcontains $normalizedFragment) {
return Add-BrokenReference $sourceFile $line $target "Fragment does not exist" $type
}
return $null
}
# Initialize
$tabFile = Join-Path $PWD "src/slic3r/GUI/Tab.cpp"
$docDir = Join-Path $PWD 'doc'
$brokenReferences = @()
$docIndex = @{}
Write-Host "Validating documentation..." -ForegroundColor Blue
# Validate paths
$hasTabFile = Test-Path $tabFile
if (-not $hasTabFile) { Write-Host "::warning::Tab.cpp file not found at: $tabFile" }
if (-not (Test-Path $docDir)) { Write-Host "::error::doc folder does not exist"; exit 1 }
# Build documentation index
$mdFiles = Get-ChildItem -Path $docDir -Filter *.md -Recurse -File -ErrorAction SilentlyContinue
foreach ($mdFile in $mdFiles) {
$baseName = [System.IO.Path]::GetFileNameWithoutExtension($mdFile.Name)
$relPath = (Resolve-Path $mdFile.FullName).Path.Substring($docDir.Length).TrimStart('\', '/')
$content = Get-Content -Path $mdFile.FullName -Encoding UTF8 -Raw
$lines = Get-Content -Path $mdFile.FullName -Encoding UTF8
# Extract anchors
$anchors = @()
$anchors += [regex]::Matches($content, '(?i)<a\s+[^>]*(?:name|id)\s*=\s*[`"'']([^`"'']+)[`"'']') |
ForEach-Object { $_.Groups[1].Value.ToLower() }
$anchors += [regex]::Matches($content, '(?m)^#+\s+(.+)$') |
ForEach-Object { Normalize-Fragment $_.Groups[1].Value.Trim() }
# Parse links
$links = @()
$inCodeFence = $false
for ($i = 0; $i -lt $lines.Count; $i++) {
$line = $lines[$i]
if ($line.TrimStart() -match '^(```|~~~)') {
$inCodeFence = -not $inCodeFence
continue
}
if ($inCodeFence) { continue }
$lineForParsing = [regex]::Replace($line, '`[^`]*`', '')
foreach ($linkMatch in [regex]::Matches($lineForParsing, '(?<!!)[^\]]*\]\(([^)]+)\)')) {
$destRaw = $linkMatch.Groups[1].Value.Trim()
# Handle internal fragments
if ($destRaw.StartsWith('#')) {
$fragment = $destRaw.Substring(1)
if ($fragment.Contains('#')) {
$brokenReferences += Add-BrokenReference $relPath ($i + 1) $destRaw "Internal link must use only one #." "Link"
} else {
$validationResult = Validate-Fragment $fragment $anchors $relPath ($i + 1) $destRaw "Link"
if ($validationResult) { $brokenReferences += $validationResult }
}
continue
}
# Skip external URLs
if ($destRaw -match '^(?:https?:|mailto:|data:|#|\\)') { continue }
# Check for double ##
if ($destRaw.Contains('##')) {
$brokenReferences += Add-BrokenReference $relPath ($i + 1) $destRaw "Use single # for fragments." "Link"
continue
}
# Parse file and fragment
$destParts = $destRaw -split '#', 2
$destNoFragment = $destParts[0]
$fragment = ($destParts.Length -gt 1) ? $destParts[1] : $null
if ($destNoFragment) {
$leaf = ($destNoFragment -split '[\\/]')[-1]
if ($leaf) {
$targetBase = $leaf.ToLower().EndsWith('.md') ? $leaf.Substring(0, $leaf.Length - 3) : $leaf
$targetBase = $targetBase.Trim()
if ($targetBase) {
$linkInfo = @{
TargetBase = $targetBase
Fragment = $fragment
Line = $i + 1
SourceFile = $relPath
}
$links += $linkInfo
}
}
}
}
}
$docIndex[$baseName] = @{ Anchors = $anchors; Links = $links }
}
# Parse Tab.cpp references
if ($hasTabFile) {
$regex = 'optgroup->append_single_option_line\s*\(\s*(?:"([^"]+)"|([^,]+?))\s*,\s*"([^"]+)"\s*\)'
$lines = Get-Content -Path $tabFile -Encoding UTF8
for ($i = 0; $i -lt $lines.Count; $i++) {
foreach ($match in [regex]::Matches($lines[$i], $regex)) {
$arg2Full = $match.Groups[3].Value.Trim()
if ($arg2Full.Contains('##')) {
$brokenReferences += Add-BrokenReference "Tab.cpp" ($i + 1) $arg2Full "Use single # for fragments." "Link"
continue
}
$arg2Parts = $arg2Full -split '#', 2
$docBase = $arg2Parts[0].Trim()
$fragment = ($arg2Parts.Length -gt 1) ? $arg2Parts[1].Trim() : $null
if (-not $docIndex.ContainsKey($docBase)) {
$brokenReferences += Add-BrokenReference "Tab.cpp" ($i + 1) $docBase "File does not exist" "Link"
} elseif ($fragment) {
$validationResult = Validate-Fragment $fragment $docIndex[$docBase].Anchors "Tab.cpp" ($i + 1) "$docBase#$fragment" "Link"
if ($validationResult) { $brokenReferences += $validationResult }
}
}
}
}
# Validate markdown links
foreach ($baseName in $docIndex.Keys) {
foreach ($link in $docIndex[$baseName].Links) {
if (-not $docIndex.ContainsKey($link.TargetBase)) {
$brokenReferences += Add-BrokenReference $link.SourceFile $link.Line "$($link.TargetBase).md" "File does not exist" "Link"
} elseif ($link.Fragment) {
$validationResult = Validate-Fragment $link.Fragment $docIndex[$link.TargetBase].Anchors $link.SourceFile $link.Line "$($link.TargetBase)#$($link.Fragment)" "Link"
if ($validationResult) { $brokenReferences += $validationResult }
}
}
}
# Validate images
Write-Host "Validating images..." -ForegroundColor Blue
$expectedUrlPattern = '^https://github\.com/SoftFever/OrcaSlicer/blob/main/([^?]+)\?raw=true$'
foreach ($file in $mdFiles) {
$lines = Get-Content $file.FullName -Encoding UTF8
$relPath = (Resolve-Path $file.FullName).Path.Substring($docDir.Length).TrimStart('\', '/')
$inCodeFence = $false
for ($lineNumber = 0; $lineNumber -lt $lines.Count; $lineNumber++) {
$line = $lines[$lineNumber]
if ($line.TrimStart() -match '^(```|~~~)') {
$inCodeFence = -not $inCodeFence
continue
}
if ($inCodeFence) { continue }
$lineForParsing = [regex]::Replace($line, '`[^`]*`', '')
# Process markdown and HTML images
$imagePatterns = @(
@{ Pattern = "!\[([^\]]*)\]\(([^)]+)\)"; Type = "Markdown"; AltGroup = 1; UrlGroup = 2 }
@{ Pattern = '<img\s+[^>]*>'; Type = "HTML"; AltGroup = -1; UrlGroup = -1 }
)
foreach ($pattern in $imagePatterns) {
foreach ($match in [regex]::Matches($lineForParsing, $pattern.Pattern)) {
$altText = ""
$url = ""
if ($pattern.Type -eq "Markdown") {
$altText = $match.Groups[$pattern.AltGroup].Value
$url = $match.Groups[$pattern.UrlGroup].Value
} else {
# Extract from HTML
$imgTag = $match.Value
if ($imgTag -match 'alt\s*=\s*[`"'']([^`"'']*)[`"'']') { $altText = $matches[1] }
if ($imgTag -match 'src\s*=\s*[`"'']([^`"'']*)[`"'']') { $url = $matches[1] }
}
if (-not $altText.Trim() -and $url) {
$brokenReferences += Add-BrokenReference $relPath ($lineNumber + 1) $match.Value "[$($pattern.Type)] Missing alt text for image" "Image"
} elseif ($url -and $altText) {
# Validate URL format and file existence
if ($url -match $expectedUrlPattern) {
$relativePathInUrl = $matches[1]
$fileNameFromUrl = [System.IO.Path]::GetFileNameWithoutExtension($relativePathInUrl)
if ($altText -ne $fileNameFromUrl) {
$brokenReferences += Add-BrokenReference $relPath ($lineNumber + 1) $match.Value "[$($pattern.Type)] Alt text `"$altText`" ≠ filename `"$fileNameFromUrl`"" "Image"
}
$expectedImagePath = Join-Path $PWD ($relativePathInUrl -replace "/", "\")
if (-not (Test-Path $expectedImagePath)) {
$brokenReferences += Add-BrokenReference $relPath ($lineNumber + 1) $match.Value "[$($pattern.Type)] Image not found at path: $relativePathInUrl" "Image"
}
} else {
$urlIssues = @()
if (-not $url.StartsWith('https://github.com/SoftFever/OrcaSlicer/blob/main/')) { $urlIssues += "URL must start with expected prefix" }
if (-not $url.EndsWith('?raw=true')) { $urlIssues += "URL must end with '?raw=true'" }
if ($url -match '^https?://(?!github\.com/SoftFever/OrcaSlicer)') { $urlIssues += "External URLs not allowed" }
$issueText = "[$($pattern.Type)] URL format issues: " + ($urlIssues -join '; ')
$brokenReferences += Add-BrokenReference $relPath ($lineNumber + 1) $match.Value $issueText "Image"
}
}
}
}
}
}
# Report results
$linkErrors = $brokenReferences | Where-Object { $_.Type -eq "Link" }
$imageErrors = $brokenReferences | Where-Object { $_.Type -eq "Image" }
if ($brokenReferences.Count -gt 0) {
Write-Host "::error::Documentation validation failed"
# Build error summary for PR comment
$errorSummary = ""
# Report link errors
if ($linkErrors) {
Write-Host "::group::🔗 Link Validation Errors"
$errorSummary += "## 🔗 Link Validation Errors`n`n"
$linkErrors | Group-Object SourceFile | ForEach-Object {
Write-Host "📄 $($_.Name):" -ForegroundColor Yellow
$errorSummary += "**📄 doc/$($_.Name):**`n"
$_.Group | Sort-Object Line | ForEach-Object {
Write-Host " Line $($_.Line): $($_.Target) - $($_.Issue)" -ForegroundColor Red
Write-Host "::error file=doc/$($_.SourceFile),line=$($_.Line)::$($_.Target) - $($_.Issue)"
$errorSummary += "- Line $($_.Line): ``$($_.Target)`` - $($_.Issue)`n"
}
$errorSummary += "`n"
}
Write-Host "::endgroup::"
}
# Report image errors
if ($imageErrors) {
Write-Host "::group::🖼️ Image Validation Errors"
$errorSummary += "## 🖼️ Image Validation Errors`n`n"
$imageErrors | Group-Object SourceFile | ForEach-Object {
Write-Host "📄 $($_.Name):" -ForegroundColor Yellow
$errorSummary += "**📄 doc/$($_.Name):**`n"
$_.Group | Sort-Object Line | ForEach-Object {
Write-Host " Line $($_.Line): $($_.Issue)" -ForegroundColor Red
Write-Host "::error file=doc/$($_.SourceFile),line=$($_.Line)::$($_.Issue)"
$errorSummary += "- Line $($_.Line): $($_.Issue)`n"
}
$errorSummary += "`n"
}
Write-Host "::endgroup::"
}
# Export error summary for PR comment
Add-Content -Path $env:GITHUB_ENV -Value "VALIDATION_ERRORS<<EOF"
Add-Content -Path $env:GITHUB_ENV -Value $errorSummary
Add-Content -Path $env:GITHUB_ENV -Value "EOF"
exit 1
} else {
Write-Host "::notice::All documentation is valid!"
exit 0
}
- name: Comment on PR
if: failure() && github.event_name == 'pull_request'
uses: actions/github-script@v7
with:
script: |
const validationErrors = process.env.VALIDATION_ERRORS || '';
const body = `❌ **Documentation validation failed**
${validationErrors || 'Please check the workflow logs for details about the validation errors.'}`;
github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: body
})

3
.gitignore vendored
View File

@@ -17,6 +17,7 @@ xs/assertlib*
local-lib
/src/TAGS
/.vscode/
/.vscode
build-linux/*
deps/build*/*
**/.DS_Store
@@ -34,3 +35,5 @@ src/OrcaSlicer-doc/
/deps/DL_CACHE
**/.flatpak-builder/
resources/profiles/user/default
*.code-workspace
deps_src/build/

132
Build.PL
View File

@@ -1,132 +0,0 @@
#!/usr/bin/perl
print "This script is currently used for installing Perl dependenices for running\n";
print "the libslic3r unit / integration tests through Perl prove.\n";
print "If you don't plan to run the unit / integration tests, you don't need to\n";
print "install these dependencies to build and run OrcaSlicer.\n";
use strict;
use warnings;
use Config;
use File::Spec;
my %prereqs = qw(
Devel::CheckLib 0
ExtUtils::MakeMaker 6.80
ExtUtils::ParseXS 3.22
ExtUtils::XSpp 0
ExtUtils::XSpp::Cmd 0
ExtUtils::CppGuess 0
ExtUtils::Typemaps 0
ExtUtils::Typemaps::Basic 0
File::Basename 0
File::Spec 0
Getopt::Long 0
Module::Build::WithXSpp 0.14
Moo 1.003001
POSIX 0
Scalar::Util 0
Test::More 0
IO::Scalar 0
Time::HiRes 0
);
my %recommends = qw(
Class::XSAccessor 0
Test::Harness 0
);
my $sudo = grep { $_ eq '--sudo' } @ARGV;
my $nolocal = grep { $_ eq '--nolocal' } @ARGV;
my @missing_prereqs = ();
if ($ENV{SLIC3R_NO_AUTO}) {
foreach my $module (sort keys %prereqs) {
my $version = $prereqs{$module};
next if eval "use $module $version; 1";
push @missing_prereqs, $module if exists $prereqs{$module};
print "Missing prerequisite $module $version\n";
}
foreach my $module (sort keys %recommends) {
my $version = $recommends{$module};
next if eval "use $module $version; 1";
print "Missing optional $module $version\n";
}
} else {
my @try = (
$ENV{CPANM} // (),
File::Spec->catfile($Config{sitebin}, 'cpanm'),
File::Spec->catfile($Config{installscript}, 'cpanm'),
);
my $cpanm;
foreach my $path (@try) {
if (-e $path) { # don't use -x because it fails on Windows
$cpanm = $path;
last;
}
}
if (!$cpanm) {
if ($^O =~ /^(?:darwin|linux)$/ && system(qw(which cpanm)) == 0) {
$cpanm = 'cpanm';
}
}
die <<'EOF'
cpanm was not found. Please install it before running this script.
There are several ways to install cpanm, try one of these:
apt-get install cpanminus
curl -L http://cpanmin.us | perl - --sudo App::cpanminus
cpan App::cpanminus
If it is installed in a non-standard location you can do:
CPANM=/path/to/cpanm perl Build.PL
EOF
if !$cpanm;
my @cpanm_args = ();
push @cpanm_args, "--sudo" if $sudo;
# install local::lib without --local-lib otherwise it's not usable afterwards
if (!eval "use local::lib qw(local-lib); 1") {
my $res = system $cpanm, @cpanm_args, 'local::lib';
warn "Warning: local::lib is required. You might need to run the `cpanm --sudo local::lib` command in order to install it.\n"
if $res != 0;
}
push @cpanm_args, ('--local-lib', 'local-lib') if ! $nolocal;
# make sure our cpanm is updated (old ones don't support the ~ syntax)
system $cpanm, @cpanm_args, 'App::cpanminus';
my %modules = (%prereqs, %recommends);
foreach my $module (sort keys %modules) {
my $version = $modules{$module};
my @cmd = ($cpanm, @cpanm_args);
# temporary workaround for upstream bug in test
push @cmd, '--notest'
if $module =~ /^(?:OpenGL|Test::Harness)$/;
push @cmd, "$module~$version";
my $res = system @cmd;
if ($res != 0) {
if (exists $prereqs{$module}) {
push @missing_prereqs, $module;
} else {
printf "Don't worry, this module is optional.\n";
}
}
}
}
print "\n";
print "In the next step, you need to build the OrcaSlicer C++ library.\n";
print "1) Create a build directory and change to it\n";
print "2) run cmake .. -DCMAKE_BUILD_TYPE=Release\n";
print "3) run make\n";
print "4) to execute the automatic tests, run ctest --verbose\n";
__END__

View File

@@ -1,189 +0,0 @@
#!/bin/bash
export ROOT=$(dirname $(readlink -f ${0}))
set -e # exit on first error
function check_available_memory_and_disk() {
FREE_MEM_GB=$(free -g -t | grep 'Mem' | rev | cut -d" " -f1 | rev)
MIN_MEM_GB=10
FREE_DISK_KB=$(df -k . | tail -1 | awk '{print $4}')
MIN_DISK_KB=$((10 * 1024 * 1024))
if [ ${FREE_MEM_GB} -le ${MIN_MEM_GB} ]; then
echo -e "\nERROR: Orca Slicer Builder requires at least ${MIN_MEM_GB}G of 'available' mem (systen has only ${FREE_MEM_GB}G available)"
echo && free -h && echo
exit 2
fi
if [[ ${FREE_DISK_KB} -le ${MIN_DISK_KB} ]]; then
echo -e "\nERROR: Orca Slicer Builder requires at least $(echo ${MIN_DISK_KB} |awk '{ printf "%.1fG\n", $1/1024/1024; }') (systen has only $(echo ${FREE_DISK_KB} | awk '{ printf "%.1fG\n", $1/1024/1024; }') disk free)"
echo && df -h . && echo
exit 1
fi
}
function usage() {
echo "Usage: ./BuildLinux.sh [-1][-b][-c][-d][-i][-r][-s][-u]"
echo " -1: limit builds to 1 core (where possible)"
echo " -b: build in debug mode"
echo " -c: force a clean build"
echo " -d: build deps (optional)"
echo " -h: this help output"
echo " -i: Generate appimage (optional)"
echo " -r: skip ram and disk checks (low ram compiling)"
echo " -s: build orca-slicer (optional)"
echo " -u: update and build dependencies (optional and need sudo)"
echo "For a first use, you want to 'sudo ./BuildLinux.sh -u'"
echo " and then './BuildLinux.sh -dsi'"
}
unset name
while getopts ":1bcdghirsu" opt; do
case ${opt} in
1 )
export CMAKE_BUILD_PARALLEL_LEVEL=1
;;
b )
BUILD_DEBUG="1"
;;
c )
CLEAN_BUILD=1
;;
d )
BUILD_DEPS="1"
;;
h ) usage
exit 0
;;
i )
BUILD_IMAGE="1"
;;
r )
SKIP_RAM_CHECK="1"
;;
s )
BUILD_ORCA="1"
;;
u )
UPDATE_LIB="1"
;;
esac
done
if [ ${OPTIND} -eq 1 ]
then
usage
exit 0
fi
DISTRIBUTION=$(awk -F= '/^ID=/ {print $2}' /etc/os-release)
# treat ubuntu as debian
if [ "${DISTRIBUTION}" == "ubuntu" ]
then
DISTRIBUTION="debian"
fi
if [ ! -f ./linux.d/${DISTRIBUTION} ]
then
echo "Your distribution does not appear to be currently supported by these build scripts"
exit 1
fi
source ./linux.d/${DISTRIBUTION}
echo "FOUND_GTK3=${FOUND_GTK3}"
if [[ -z "${FOUND_GTK3_DEV}" ]]
then
echo "Error, you must install the dependencies before."
echo "Use option -u with sudo"
exit 1
fi
echo "Changing date in version..."
{
# change date in version
sed -i "s/+UNKNOWN/_$(date '+%F')/" version.inc
}
echo "done"
if ! [[ -n "${SKIP_RAM_CHECK}" ]]
then
check_available_memory_and_disk
fi
if [[ -n "${BUILD_DEPS}" ]]
then
echo "Configuring dependencies..."
BUILD_ARGS="-DDEP_WX_GTK3=ON"
if [[ -n "${CLEAN_BUILD}" ]]
then
rm -fr deps/build
fi
if [ ! -d "deps/build" ]
then
mkdir deps/build
fi
if [[ -n "${BUILD_DEBUG}" ]]
then
# have to build deps with debug & release or the cmake won't find everything it needs
mkdir deps/build/release
cmake -S deps -B deps/build/release -G Ninja -DDESTDIR="../destdir" ${BUILD_ARGS}
cmake --build deps/build/release
BUILD_ARGS="${BUILD_ARGS} -DCMAKE_BUILD_TYPE=Debug"
fi
echo "cmake -S deps -B deps/build -G Ninja ${BUILD_ARGS}"
cmake -S deps -B deps/build -G Ninja ${BUILD_ARGS}
cmake --build deps/build
fi
if [[ -n "${BUILD_ORCA}" ]]
then
echo "Configuring OrcaSlicer..."
if [[ -n "${CLEAN_BUILD}" ]]
then
rm -fr build
fi
BUILD_ARGS=""
if [[ -n "${FOUND_GTK3_DEV}" ]]
then
BUILD_ARGS="-DSLIC3R_GTK=3"
fi
if [[ -n "${BUILD_DEBUG}" ]]
then
BUILD_ARGS="${BUILD_ARGS} -DCMAKE_BUILD_TYPE=Debug -DBBL_INTERNAL_TESTING=1"
else
BUILD_ARGS="${BUILD_ARGS} -DBBL_RELEASE_TO_PUBLIC=1 -DBBL_INTERNAL_TESTING=0"
fi
echo -e "cmake -S . -B build -G Ninja -DCMAKE_PREFIX_PATH="${PWD}/deps/build/destdir/usr/local" -DSLIC3R_STATIC=1 ${BUILD_ARGS}"
cmake -S . -B build -G Ninja \
-DCMAKE_PREFIX_PATH="${PWD}/deps/build/destdir/usr/local" \
-DSLIC3R_STATIC=1 \
-DORCA_TOOLS=ON \
${BUILD_ARGS}
echo "done"
echo "Building OrcaSlicer ..."
cmake --build build --target OrcaSlicer
echo "Building OrcaSlicer_profile_validator .."
cmake --build build --target OrcaSlicer_profile_validator
./run_gettext.sh
echo "done"
fi
if [[ -e ${ROOT}/build/src/BuildLinuxImage.sh ]]; then
# Give proper permissions to script
chmod 755 ${ROOT}/build/src/BuildLinuxImage.sh
echo "[9/9] Generating Linux app..."
pushd build
if [[ -n "${BUILD_IMAGE}" ]]
then
${ROOT}/build/src/BuildLinuxImage.sh -i
else
${ROOT}/build/src/BuildLinuxImage.sh
fi
popd
echo "done"
fi

257
CLAUDE.md Normal file
View File

@@ -0,0 +1,257 @@
# CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
## Overview
OrcaSlicer is an open-source 3D slicer application forked from Bambu Studio, built using C++ with wxWidgets for the GUI and CMake as the build system. The project uses a modular architecture with separate libraries for core slicing functionality, GUI components, and platform-specific code.
## Build Commands
### Building on Windows
```bash
# Build everything
build_release_vs2022.bat
# Build with debug symbols
build_release_vs2022.bat debug
# Build only dependencies
build_release_vs2022.bat deps
# Build only slicer (after deps are built)
build_release_vs2022.bat slicer
```
### Building on macOS
```bash
# Build everything (dependencies and slicer)
./build_release_macos.sh
# Build only dependencies
./build_release_macos.sh -d
# Build only slicer (after deps are built)
./build_release_macos.sh -s
# Use Ninja generator for faster builds
./build_release_macos.sh -x
# Build for specific architecture
./build_release_macos.sh -a arm64 # or x86_64 or universal
# Build for specific macOS version target
./build_release_macos.sh -t 11.3
```
### Building on Linux
```bash
# First time setup - install system dependencies
./build_linux.sh -u
# Build dependencies and slicer
./build_linux.sh -dsi
# Build everything (alternative)
./build_linux.sh -dsi
# Individual options:
./build_linux.sh -d # dependencies only
./build_linux.sh -s # slicer only
./build_linux.sh -i # build AppImage
# Performance and debug options:
./build_linux.sh -j N # limit to N cores
./build_linux.sh -1 # single core build
./build_linux.sh -b # debug build
./build_linux.sh -c # clean build
./build_linux.sh -r # skip RAM/disk checks
./build_linux.sh -l # use Clang instead of GCC
```
### Build System
- Uses CMake with minimum version 3.13 (maximum 3.31.x on Windows)
- Primary build directory: `build/`
- Dependencies are built in `deps/build/`
- The build process is split into dependency building and main application building
- Windows builds use Visual Studio generators
- macOS builds use Xcode by default, Ninja with -x flag
- Linux builds use Ninja generator
### Testing
Tests are located in the `tests/` directory and use the Catch2 testing framework. Test structure:
- `tests/libslic3r/` - Core library tests (21 test files)
- Geometry processing, algorithms, file formats (STL, 3MF, AMF)
- Polygon operations, clipper utilities, Voronoi diagrams
- `tests/fff_print/` - Fused Filament Fabrication tests (12 test files)
- Slicing algorithms, G-code generation, print mechanics
- Fill patterns, extrusion, support material
- `tests/sla_print/` - Stereolithography tests (4 test files)
- SLA-specific printing algorithms, support generation
- `tests/libnest2d/` - 2D nesting algorithm tests
- `tests/slic3rutils/` - Utility function tests
- `tests/sandboxes/` - Experimental/sandbox test code
Run all tests after building:
```bash
cd build && ctest
```
Run tests with verbose output:
```bash
cd build && ctest --output-on-failure
```
Run individual test suites:
```bash
# From build directory
./tests/libslic3r/libslic3r_tests
./tests/fff_print/fff_print_tests
./tests/sla_print/sla_print_tests
```
## Architecture
### Core Libraries
- **libslic3r/**: Core slicing engine and algorithms (platform-independent)
- Main slicing logic, geometry processing, G-code generation
- Key classes: Print, PrintObject, Layer, GCode, Config
- Modular design with specialized subdirectories:
- `GCode/` - G-code generation, cooling, pressure equalization, thumbnails
- `Fill/` - Infill pattern implementations (gyroid, honeycomb, lightning, etc.)
- `Support/` - Tree supports and traditional support generation
- `Geometry/` - Advanced geometry operations, Voronoi diagrams, medial axis
- `Format/` - File I/O for 3MF, AMF, STL, OBJ, STEP formats
- `SLA/` - SLA-specific print processing and support generation
- `Arachne/` - Advanced wall generation using skeletal trapezoidation
- **src/slic3r/**: Main application framework and GUI
- GUI application built with wxWidgets
- Integration between libslic3r core and user interface
- Located in `src/slic3r/GUI/` (not shown in this directory but exists)
### Key Algorithmic Components
- **Arachne Wall Generation**: Variable-width perimeter generation using skeletal trapezoidation
- **Tree Supports**: Organic support generation algorithm
- **Lightning Infill**: Sparse infill optimization for internal structures
- **Adaptive Slicing**: Variable layer height based on geometry
- **Multi-material**: Multi-extruder and soluble support processing
- **G-code Post-processing**: Cooling, fan control, pressure advance, conflict checking
### File Format Support
- **3MF/BBS_3MF**: Native format with extensions for multi-material and metadata
- **STL**: Standard tessellation language for 3D models
- **AMF**: Additive Manufacturing Format with color/material support
- **OBJ**: Wavefront OBJ with material definitions
- **STEP**: CAD format support for precise geometry
- **G-code**: Output format with extensive post-processing capabilities
### External Dependencies
- **Clipper2**: Advanced 2D polygon clipping and offsetting
- **libigl**: Computational geometry library for mesh operations
- **TBB**: Intel Threading Building Blocks for parallelization
- **wxWidgets**: Cross-platform GUI framework
- **OpenGL**: 3D graphics rendering and visualization
- **CGAL**: Computational Geometry Algorithms Library (selective use)
- **OpenVDB**: Volumetric data structures for advanced operations
- **Eigen**: Linear algebra library for mathematical operations
## File Organization
### Resources and Configuration
- `resources/profiles/` - Printer and material profiles organized by manufacturer
- `resources/printers/` - Printer-specific configurations and G-code templates
- `resources/images/` - UI icons, logos, calibration images
- `resources/calib/` - Calibration test patterns and data
- `resources/handy_models/` - Built-in test models (benchy, calibration cubes)
### Internationalization and Localization
- `localization/i18n/` - Source translation files (.pot, .po)
- `resources/i18n/` - Runtime language resources
- Translation managed via `scripts/run_gettext.sh` / `scripts/run_gettext.bat`
### Platform-Specific Code
- `src/libslic3r/Platform.cpp` - Platform abstractions and utilities
- `src/libslic3r/MacUtils.mm` - macOS-specific utilities (Objective-C++)
- Windows-specific build scripts and configurations
- Linux distribution support scripts in `scripts/linux.d/`
### Build and Development Tools
- `cmake/modules/` - Custom CMake find modules and utilities
- `scripts/` - Python utilities for profile generation and validation
- `tools/` - Windows build tools (gettext utilities)
- `deps/` - External dependency build configurations
## Development Workflow
### Code Style and Standards
- **C++17 standard** with selective C++20 features
- **Naming conventions**: PascalCase for classes, snake_case for functions/variables
- **Header guards**: Use `#pragma once`
- **Memory management**: Prefer smart pointers, RAII patterns
- **Thread safety**: Use TBB for parallelization, be mindful of shared state
### Common Development Tasks
#### Adding New Print Settings
1. Define setting in `PrintConfig.cpp` with proper bounds and defaults
2. Add UI controls in appropriate GUI components
3. Update serialization in config save/load
4. Add tooltips and help text for user guidance
5. Test with different printer profiles
#### Modifying Slicing Algorithms
1. Core algorithms live in `libslic3r/` subdirectories
2. Performance-critical code should be profiled and optimized
3. Consider multi-threading implications (TBB integration)
4. Validate changes don't break existing profiles
5. Add regression tests where appropriate
#### GUI Development
1. GUI code resides in `src/slic3r/GUI/` (not visible in current tree)
2. Use existing wxWidgets patterns and custom controls
3. Support both light and dark themes
4. Consider DPI scaling on high-resolution displays
5. Maintain cross-platform compatibility
#### Adding Printer Support
1. Create JSON profile in `resources/profiles/[manufacturer].json`
2. Add printer-specific start/end G-code templates
3. Configure build volume, capabilities, and material compatibility
4. Test thoroughly with actual hardware when possible
5. Follow existing profile structure and naming conventions
### Dependencies and Build System
- **CMake-based** with separate dependency building phase
- **Dependencies** built once in `deps/build/`, then linked to main application
- **Cross-platform** considerations important for all changes
- **Resource files** embedded at build time, platform-specific handling
### Performance Considerations
- **Slicing algorithms** are CPU-intensive, profile before optimizing
- **Memory usage** can be substantial with complex models
- **Multi-threading** extensively used via TBB
- **File I/O** optimized for large 3MF files with embedded textures
- **Real-time preview** requires efficient mesh processing
## Important Development Notes
### Codebase Navigation
- Use search tools extensively - codebase has 500k+ lines
- Key entry points: `src/OrcaSlicer.cpp` for application startup
- Core slicing: `libslic3r/Print.cpp` orchestrates the slicing pipeline
- Configuration: `PrintConfig.cpp` defines all print/printer/material settings
### Compatibility and Stability
- **Backward compatibility** maintained for project files and profiles
- **Cross-platform** support essential (Windows/macOS/Linux)
- **File format** changes require careful version handling
- **Profile migrations** needed when settings change significantly
### Quality and Testing
- **Regression testing** important due to algorithm complexity
- **Performance benchmarks** help catch performance regressions
- **Memory leak** detection important for long-running GUI application
- **Cross-platform** testing required before releases

View File

@@ -1,5 +1,50 @@
cmake_minimum_required(VERSION 3.13)
# Verify that your CMake version is exactly 3.31.x series or lower on windows
if ( ((MSVC) OR (WIN32)) AND (${CMAKE_VERSION} VERSION_GREATER_EQUAL "4.0") )
message(FATAL_ERROR "Only cmake versions between 3.13.x and 3.31.x is supported on windows. Detected version: ${CMAKE_VERSION}")
endif()
if (WIN32)
# Detect known CI environments
set(IS_CI FALSE)
if(DEFINED ENV{CI})
set(IS_CI TRUE)
elseif(DEFINED ENV{GITHUB_ACTIONS})
set(IS_CI TRUE)
elseif(DEFINED ENV{GITLAB_CI})
set(IS_CI TRUE)
elseif(DEFINED ENV{TF_BUILD})
set(IS_CI TRUE)
elseif(DEFINED ENV{BUILD_NUMBER}) # Jenkins
set(IS_CI TRUE)
endif()
# Detect common misconfiguration (Strawberry Perl in PATH before CMake)
# We use ENV to check the PATH order
string(REPLACE "\\" "/" ENV_PATH "$ENV{PATH}")
string(FIND "${ENV_PATH}" "Strawberry/c/bin" STRAWBERRY_POS)
string(FIND "${ENV_PATH}" "Program Files/CMake/bin" CMAKE_POS)
if (STRAWBERRY_POS GREATER -1 AND CMAKE_POS GREATER -1 AND STRAWBERRY_POS LESS CMAKE_POS)
set(_warning_text "
#############################################################
Detected Strawberry Perl's 'c/bin' appearing before CMake in PATH.
This is known to cause CMake to misbehave (e.g., missing modules).
Please adjust your PATH so that:
C:\\Program Files\\CMake\\bin
appears before:
C:\\Strawberry\\c\\bin
You can do this in Environment Variables settings.
#############################################################
")
if(NOT IS_CI)
message(FATAL_ERROR "${_warning_text}")
endif()
endif()
endif ()
if (APPLE)
# if CMAKE_OSX_DEPLOYMENT_TARGET is not set, set it to 11.3
if (NOT CMAKE_OSX_DEPLOYMENT_TARGET)
@@ -22,6 +67,18 @@ if (NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
set(CMAKE_BUILD_TYPE "Release" CACHE STRING "Build type (default Release)" FORCE)
endif()
find_package(Git)
if(GIT_FOUND AND EXISTS "${CMAKE_SOURCE_DIR}/.git")
# Check current Git commit hash
execute_process(
COMMAND ${GIT_EXECUTABLE} log -1 --format=%h
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE GIT_COMMIT_HASH
OUTPUT_STRIP_TRAILING_WHITESPACE
)
add_definitions("-DGIT_COMMIT_HASH=\"${GIT_COMMIT_HASH}\"")
endif()
if(DEFINED ENV{SLIC3R_STATIC})
set(SLIC3R_STATIC_INITIAL $ENV{SLIC3R_STATIC})
else()
@@ -51,6 +108,15 @@ set(SLIC3R_GTK "2" CACHE STRING "GTK version to use with wxWidgets on Linux")
set(IS_CROSS_COMPILE FALSE)
option (COLORED_OUTPUT "Always produce ANSI-colored output (GNU/Clang only)." OFF)
if (${COLORED_OUTPUT})
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
add_compile_options (-fdiagnostics-color=always)
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
add_compile_options (-fcolor-diagnostics)
endif ()
endif ()
if (APPLE)
set(CMAKE_FIND_FRAMEWORK LAST)
set(CMAKE_FIND_APPBUNDLE LAST)
@@ -68,13 +134,13 @@ endif ()
# Proposal for C++ unit tests and sandboxes
option(SLIC3R_BUILD_SANDBOXES "Build development sandboxes" OFF)
option(SLIC3R_BUILD_TESTS "Build unit tests" OFF)
option(BUILD_TESTS "Build unit tests" OFF)
option(ORCA_TOOLS "Build Orca tools" OFF)
if (IS_CROSS_COMPILE)
message("Detected cross compilation setup. Tests and encoding checks will be forcedly disabled!")
set(SLIC3R_PERL_XS OFF CACHE BOOL "" FORCE)
set(SLIC3R_BUILD_TESTS OFF CACHE BOOL "" FORCE)
set(BUILD_TESTS OFF CACHE BOOL "" FORCE)
endif ()
# Print out the SLIC3R_* cache options
@@ -121,6 +187,9 @@ if (MSVC)
# C4244: 'conversion' conversion from 'type1' to 'type2', possible loss of data. An integer type is converted to a smaller integer type.
# C4267: The compiler detected a conversion from size_t to a smaller type.
add_compile_options(/wd4244 /wd4267)
# Disable warnings on comparison of unsigned and signed
# C4018: signed/unsigned mismatch
add_compile_options(/wd4018)
endif ()
if (${CMAKE_CXX_COMPILER_ID} STREQUAL "AppleClang" AND ${CMAKE_CXX_COMPILER_VERSION} VERSION_GREATER 15)
@@ -167,7 +236,7 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON)
if(NOT WIN32)
# Add DEBUG flags to debug builds.
add_compile_options("$<$<CONFIG:DEBUG>:-DDEBUG>")
add_compile_definitions("$<IF:$<CONFIG:Debug>,DEBUG,NDEBUG>")
endif()
# To be able to link libslic3r with the Perl XS module.
@@ -204,7 +273,7 @@ if(WIN32)
if(WIN10SDK_INCLUDE_PATH)
message("Building with Win10 Netfabb STL fixing service support")
add_definitions(-DHAS_WIN10SDK)
include_directories("${WIN10SDK_INCLUDE_PATH}")
include_directories(SYSTEM "${WIN10SDK_INCLUDE_PATH}")
else()
message("Building without Win10 Netfabb STL fixing service support")
endif()
@@ -232,7 +301,7 @@ if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
find_package(Threads REQUIRED)
find_package(DBus REQUIRED)
include_directories(${DBUS_INCLUDE_DIRS})
include_directories(SYSTEM ${DBUS_INCLUDE_DIRS})
endif()
if (CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUXX)
@@ -249,6 +318,22 @@ if (NOT MSVC AND ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMP
# On GCC and Clang, no return from a non-void function is a warning only. Here, we make it an error.
add_compile_options(-Werror=return-type)
# Since some portions of code are just commented out or put under conditional compilation, there are
# a bunch of warning related to unused functions and variables. Suppress those warnings to not pollute
# compilers diagnostics output with warnings we not going to look at
add_compile_options(-Wno-unused-function -Wno-unused-variable -Wno-unused-but-set-variable -Wno-unused-label -Wno-unused-local-typedefs)
# Ignore signed/unsigned comparison warnings
add_compile_options(-Wno-sign-compare)
# The mismatch of tabs and spaces throughout the project can sometimes
# cause this warning to appear even though the indentation is fine.
# Some includes also cause the warning
add_compile_options(-Wno-misleading-indentation)
# Disable warning if enum value does not have a corresponding case in switch statement
add_compile_options(-Wno-switch)
# removes LOTS of extraneous Eigen warnings (GCC only supports it since 6.1)
# https://eigen.tuxfamily.org/bz/show_bug.cgi?id=1221
if("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" OR CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 6.0)
@@ -262,7 +347,7 @@ if (NOT MSVC AND ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMP
add_compile_options(-Wno-deprecated-declarations)
endif()
if (${CMAKE_CXX_COMPILER_ID} STREQUAL "AppleClang" AND ${CMAKE_CXX_COMPILER_VERSION} VERSION_GREATER 15)
if((${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang" OR ${CMAKE_CXX_COMPILER_ID} STREQUAL "AppleClang") AND ${CMAKE_CXX_COMPILER_VERSION} VERSION_GREATER 15)
add_compile_options(-Wno-error=enum-constexpr-conversion)
endif()
@@ -278,11 +363,15 @@ if (NOT MSVC AND ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" OR "${CMAKE_CXX_COMP
add_compile_options(-Wno-unknown-pragmas)
endif()
# Bit of a hack for flatpak building: compress the debug info with zstd to save space in CI
# Bit of a hack for flatpak building: compress the debug info with zstd to save space in CI
if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 13.0)
add_compile_options(-gz=zstd)
endif()
if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 14)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-error=template-id-cdtor" )
endif()
endif()
if (SLIC3R_ASAN)
@@ -295,6 +384,8 @@ if (SLIC3R_ASAN)
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fsanitize=address")
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fsanitize=address")
set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -fsanitize=address")
else()
add_compile_definitions(_DISABLE_STRING_ANNOTATION=1 _DISABLE_VECTOR_ANNOTATION=1)
endif ()
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
@@ -319,11 +410,11 @@ message(STATUS "LIBDIR: ${LIBDIR}")
message(STATUS "LIBDIR_BIN: ${LIBDIR_BIN}")
# For the bundled boost libraries (boost::nowide)
include_directories(${LIBDIR})
include_directories(SYSTEM ${LIBDIR})
# For generated header files
include_directories(${LIBDIR_BIN}/platform)
include_directories(SYSTEM ${LIBDIR_BIN}/dev-utils/platform)
# For ligigl
include_directories(${LIBDIR}/libigl)
include_directories(SYSTEM ${LIBDIR}/libigl)
if(WIN32)
add_definitions(-D_USE_MATH_DEFINES -D_WIN32 -D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_WARNINGS)
@@ -386,12 +477,17 @@ if(SLIC3R_STATIC)
set(Boost_USE_STATIC_LIBS ON)
# Use boost libraries linked statically to the C++ runtime.
# set(Boost_USE_STATIC_RUNTIME ON)
else()
add_definitions(-DBOOST_LOG_DYN_LINK)
endif()
#set(Boost_DEBUG ON)
# set(Boost_COMPILER "-mgw81")
# boost::process was introduced first in version 1.64.0,
# boost::beast::detail::base64 was introduced first in version 1.66.0
find_package(Boost 1.66 REQUIRED COMPONENTS system filesystem thread log locale regex chrono atomic date_time iostreams program_options)
if(POLICY CMP0167)
cmake_policy(SET CMP0167 NEW)
endif()
find_package(Boost 1.83.0 REQUIRED COMPONENTS system filesystem thread log log_setup locale regex chrono atomic date_time iostreams program_options nowide)
add_library(boost_libs INTERFACE)
add_library(boost_headeronly INTERFACE)
@@ -408,7 +504,7 @@ endif()
function(slic3r_remap_configs targets from_Cfg to_Cfg)
if(MSVC)
string(TOUPPER ${from_Cfg} from_CFG)
foreach(tgt ${targets})
if(TARGET ${tgt})
set_target_properties(${tgt} PROPERTIES MAP_IMPORTED_CONFIG_${from_CFG} ${to_Cfg})
@@ -417,7 +513,7 @@ function(slic3r_remap_configs targets from_Cfg to_Cfg)
endif()
endfunction()
target_include_directories(boost_headeronly INTERFACE ${Boost_INCLUDE_DIRS})
target_include_directories(boost_headeronly SYSTEM INTERFACE ${Boost_INCLUDE_DIRS})
target_link_libraries(boost_libs INTERFACE boost_headeronly ${Boost_LIBRARIES})
# Find and configure intel-tbb
@@ -427,7 +523,7 @@ endif()
set(TBB_DEBUG 1)
set(CMAKE_MAP_IMPORTED_CONFIG_RELWITHDEBINFO RelWithDebInfo Release "")
find_package(TBB REQUIRED)
# include_directories(${TBB_INCLUDE_DIRS})
# include_directories(SYSTEM ${TBB_INCLUDE_DIRS})
# add_definitions(${TBB_DEFINITIONS})
# if(MSVC)
# # Suppress implicit linking of the TBB libraries by the Visual Studio compiler.
@@ -438,6 +534,7 @@ find_package(TBB REQUIRED)
find_package(OpenSSL REQUIRED)
find_package(CURL REQUIRED)
find_package(Freetype REQUIRED)
add_library(libcurl INTERFACE)
@@ -469,7 +566,7 @@ if (SLIC3R_STATIC AND NOT SLIC3R_STATIC_EXCLUDE_CURL)
find_package(OpenSSL REQUIRED)
message("OpenSSL include dir: ${OPENSSL_INCLUDE_DIR}")
message("OpenSSL libraries: ${OPENSSL_LIBRARIES}")
target_include_directories(libcurl INTERFACE ${OPENSSL_INCLUDE_DIR})
target_include_directories(libcurl SYSTEM INTERFACE ${OPENSSL_INCLUDE_DIR})
target_link_libraries(libcurl INTERFACE ${OPENSSL_LIBRARIES})
endif()
endif()
@@ -535,7 +632,7 @@ add_custom_target(gettext_make_pot
COMMAND xgettext --keyword=L --keyword=_L --keyword=_u8L --keyword=L_CONTEXT:1,2c --keyword=_L_PLURAL:1,2 --add-comments=TRN --from-code=UTF-8 --no-location --debug --boost
-f "${BBL_L18N_DIR}/list.txt"
-o "${BBL_L18N_DIR}/OrcaSlicer.pot"
COMMAND hintsToPot ${SLIC3R_RESOURCES_DIR} ${BBL_L18N_DIR}
COMMAND hintsToPot ${SLIC3R_RESOURCES_DIR} ${BBL_L18N_DIR}
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
COMMENT "Generate pot file from strings in the source tree"
)
@@ -590,11 +687,9 @@ endif ()
find_path(SPNAV_INCLUDE_DIR spnav.h)
if (SPNAV_INCLUDE_DIR)
find_library(HAVE_SPNAV spnav)
if (HAVE_SPNAV)
find_library(SPNAV_LIB NAMES libspnav.a) # Force linking libspnav statically
if (SPNAV_LIB)
add_definitions(-DHAVE_SPNAV)
add_library(libspnav SHARED IMPORTED)
target_link_libraries(libspnav INTERFACE spnav)
message(STATUS "SPNAV library found")
else()
message(STATUS "SPNAV library NOT found, Spacenavd not supported")
@@ -605,10 +700,12 @@ endif()
set(TOP_LEVEL_PROJECT_DIR ${PROJECT_SOURCE_DIR})
function(orcaslicer_copy_dlls target config postfix output_dlls)
if ("${CMAKE_SIZEOF_VOID_P}" STREQUAL "8")
set(_bits 64)
elseif ("${CMAKE_SIZEOF_VOID_P}" STREQUAL "4")
set(_bits 32)
if ("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "AMD64")
set(_arch "x64")
elseif ("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "X86")
set(_arch "x86")
else ()
message(FATAL_ERROR "Unable to detect architecture")
endif ()
get_property(_is_multi GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
@@ -625,9 +722,9 @@ function(orcaslicer_copy_dlls target config postfix output_dlls)
message ("set out_dir to CMAKE_CURRENT_BINARY_DIR: ${_out_dir}")
endif ()
file(COPY ${TOP_LEVEL_PROJECT_DIR}/deps/GMP/gmp/lib/win${_bits}/libgmp-10.dll
${TOP_LEVEL_PROJECT_DIR}/deps/MPFR/mpfr/lib/win${_bits}/libmpfr-4.dll
${TOP_LEVEL_PROJECT_DIR}/deps/WebView2/lib/win${_bits}/WebView2Loader.dll
file(COPY ${TOP_LEVEL_PROJECT_DIR}/deps/GMP/gmp/lib/win-${_arch}/libgmp-10.dll
${TOP_LEVEL_PROJECT_DIR}/deps/MPFR/mpfr/lib/win-${_arch}/libmpfr-4.dll
${TOP_LEVEL_PROJECT_DIR}/deps/WebView2/lib/win-${_arch}/WebView2Loader.dll
DESTINATION ${_out_dir})
file(COPY ${CMAKE_PREFIX_PATH}/bin/occt/TKBO.dll
@@ -695,11 +792,12 @@ function(orcaslicer_copy_dlls target config postfix output_dlls)
PARENT_SCOPE
)
endfunction()
# libslic3r, OrcaSlicer GUI and the OrcaSlicer executable.
add_subdirectory(deps_src)
add_subdirectory(src)
set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT OrcaSlicer_app_gui)
@@ -716,18 +814,13 @@ if(SLIC3R_BUILD_SANDBOXES)
add_subdirectory(sandboxes)
endif()
if(SLIC3R_BUILD_TESTS)
if(BUILD_TESTS)
add_subdirectory(tests)
endif()
if (NOT WIN32 AND NOT APPLE)
set(SLIC3R_APP_CMD "orca-slicer")
configure_file(${LIBDIR}/platform/unix/build_appimage.sh.in ${CMAKE_CURRENT_BINARY_DIR}/build_appimage.sh @ONLY)
endif()
option(BUILD_BBS_TEST_TOOLS "Build bbs test tools" OFF)
if(BUILD_BBS_TEST_TOOLS)
add_subdirectory(bbs_test_tools)
configure_file(${LIBDIR}/dev-utils/platform/unix/build_appimage.sh.in ${CMAKE_CURRENT_BINARY_DIR}/build_appimage.sh USE_SOURCE_PERMISSIONS @ONLY)
endif()
@@ -735,7 +828,7 @@ endif()
if (WIN32)
install(DIRECTORY "${SLIC3R_RESOURCES_DIR}/" DESTINATION "./resources")
set(CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP TRUE)
include(InstallRequiredSystemLibraries)
include(InstallRequiredSystemLibraries)
install (PROGRAMS ${CMAKE_INSTALL_SYSTEM_RUNTIME_LIBS} DESTINATION ".")
elseif (SLIC3R_FHS)
# CMAKE_INSTALL_FULL_DATAROOTDIR: read-only architecture-independent data root (share)
@@ -743,7 +836,7 @@ elseif (SLIC3R_FHS)
install(DIRECTORY ${SLIC3R_RESOURCES_DIR}/ DESTINATION ${SLIC3R_FHS_RESOURCES}
PATTERN "*/udev" EXCLUDE
)
install(FILES src/platform/unix/OrcaSlicer.desktop DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/applications)
install(FILES src/dev-utils/platform/unix/OrcaSlicer.desktop DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/applications)
foreach(SIZE 32 128 192)
install(FILES ${SLIC3R_RESOURCES_DIR}/images/OrcaSlicer_${SIZE}px.png
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/${SIZE}x${SIZE}/apps RENAME OrcaSlicer.png
@@ -752,12 +845,12 @@ elseif (SLIC3R_FHS)
elseif (CMAKE_MACOSX_BUNDLE)
# install(DIRECTORY "${SLIC3R_RESOURCES_DIR}/" DESTINATION "${CMAKE_INSTALL_PREFIX}/OrcaSlicer.app/Contents/resources")
else ()
install(FILES src/platform/unix/OrcaSlicer.desktop DESTINATION ${CMAKE_INSTALL_PREFIX}/resources/applications)
install(FILES src/dev-utils/platform/unix/OrcaSlicer.desktop DESTINATION ${CMAKE_INSTALL_PREFIX}/resources/applications)
install(DIRECTORY "${SLIC3R_RESOURCES_DIR}/" DESTINATION "${CMAKE_INSTALL_PREFIX}/resources")
endif ()
install(FILES ${CMAKE_SOURCE_DIR}/LICENSE.txt DESTINATION ".")
configure_file(${LIBDIR}/platform/unix/fhs.hpp.in ${LIBDIR_BIN}/platform/unix/fhs.hpp)
configure_file(${LIBDIR}/dev-utils/platform/unix/fhs.hpp.in ${LIBDIR_BIN}/dev-utils/platform/unix/fhs.hpp)
set (CPACK_PACKAGE_NAME "OrcaSlicer")
set (CPACK_PACKAGE_VENDOR "SoftFever")

View File

@@ -1,95 +0,0 @@
FROM docker.io/ubuntu:22.04
LABEL maintainer "DeftDawg <DeftDawg@gmail.com>"
# Disable interactive package configuration
RUN apt-get update && \
echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections
# Add a deb-src
RUN echo deb-src http://archive.ubuntu.com/ubuntu \
$(cat /etc/*release | grep VERSION_CODENAME | cut -d= -f2) main universe>> /etc/apt/sources.list
RUN apt-get update && apt-get install -y \
autoconf \
build-essential \
cmake \
curl \
eglexternalplatform-dev \
extra-cmake-modules \
file \
git \
gstreamer1.0-plugins-bad \
gstreamer1.0-libav \
libcairo2-dev \
libcurl4-openssl-dev \
libdbus-1-dev \
libglew-dev \
libglu1-mesa-dev \
libglu1-mesa-dev \
libgstreamer1.0-dev \
libgstreamerd-3-dev \
libgstreamer-plugins-base1.0-dev \
libgstreamer-plugins-good1.0-dev \
libgtk-3-dev \
libgtk-3-dev \
libosmesa6-dev \
libsecret-1-dev \
libsoup2.4-dev \
libssl3 \
libssl-dev \
libtool \
libudev-dev \
libwayland-dev \
libwebkit2gtk-4.0-dev \
libxkbcommon-dev \
locales \
locales-all \
m4 \
pkgconf \
sudo \
wayland-protocols \
wget
# Change your locale here if you want. See the output
# of `locale -a` to pick the correct string formatting.
ENV LC_ALL=en_US.utf8
RUN locale-gen $LC_ALL
# Set this so that Orca Slicer doesn't complain about
# the CA cert path on every startup
ENV SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt
COPY ./ OrcaSlicer
WORKDIR OrcaSlicer
# These can run together, but we run them seperate for podman caching
# Update System dependencies
RUN ./BuildLinux.sh -u
# Build dependencies in ./deps
RUN ./BuildLinux.sh -d
# Build slic3r
RUN ./BuildLinux.sh -s
# Build AppImage
ENV container podman
RUN ./BuildLinux.sh -i
# It's easier to run Orca Slicer as the same username,
# UID and GID as your workstation. Since we bind mount
# your home directory into the container, it's handy
# to keep permissions the same. Just in case, defaults
# are root.
SHELL ["/bin/bash", "-l", "-c"]
ARG USER=root
ARG UID=0
ARG GID=0
RUN [[ "$UID" != "0" ]] \
&& groupadd -f -g $GID $USER \
&& useradd -u $UID -g $GID $USER
# Using an entrypoint instead of CMD because the binary
# accepts several command line arguments.
ENTRYPOINT ["/OrcaSlicer/build/package/bin/orca-slicer"]

Binary file not shown.

259
README.md
View File

@@ -1,97 +1,157 @@
[![Build all](https://github.com/SoftFever/OrcaSlicer/actions/workflows/build_all.yml/badge.svg?branch=main)](https://github.com/SoftFever/OrcaSlicer/actions/workflows/build_all.yml)
# Orca Slicer
Orca Slicer is an open source slicer for FDM printers.
<div align="center">
![discord-mark-blue](https://github.com/SoftFever/OrcaSlicer/assets/103989404/b97d5ffc-072d-4d0a-bbda-e67ef373876f) Join community: [OrcaSlicer Official Discord Server](https://discord.gg/P4VE9UY9gJ)
<picture>
<img alt="OrcaSlicer logo" src="resources/images/OrcaSlicer.png" width="15%" height="15%">
</picture>
<a href="https://trendshift.io/repositories/952" target="_blank"><img src="https://trendshift.io/api/badge/repositories/952" alt="SoftFever%2FOrcaSlicer | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/></a>
[![GitHub Repo stars](https://img.shields.io/github/stars/SoftFever/OrcaSlicer)](https://github.com/SoftFever/OrcaSlicer/stargazers) [![Build all](https://github.com/SoftFever/OrcaSlicer/actions/workflows/build_all.yml/badge.svg?branch=main)](https://github.com/SoftFever/OrcaSlicer/actions/workflows/build_all.yml)
OrcaSlicer: an open source Next-Gen Slicing Software for Precision 3D Prints.
Optimize your prints with ultra-fast slicing, intelligent support generation, and seamless printer compatibility—engineered for perfection.
<h3>
# Official links and community
#### Official Website:
<a href="https://www.orcaslicer.com/" style="font-size:2em;">OrcaSlicer.com</a>
#### Github Repository:
<a href="https://github.com/SoftFever/OrcaSlicer"><img src="https://img.shields.io/badge/OrcaSlicer-181717?style=flat&logo=github&logoColor=white" width="200" alt="GitHub Logo"/> </a>
#### Follow us:
<a href="https://twitter.com/real_OrcaSlicer"><img src="https://img.shields.io/badge/real__OrcaSlicer-000000?style=flat&logo=x&logoColor=white" width="200" alt="X Logo"/> </a>
#### Join our Discord community:
<a href="https://discord.gg/P4VE9UY9gJ"><img src="https://img.shields.io/badge/-Discord-5865F2?style=flat&logo=discord&logoColor=fff" width="200" alt="discord logo"/> </a>
<table border="2" style="border-color: #ffa500; background-color:rgb(232, 220, 180); color: #856404;">
<tr>
<td>
<strong>⚠️ CAUTION:</strong><br><br>
There are several clickbait and malicious websites pretending to be Official OrcaSlicer. These sites may redirect you to dangerous downloads or contain misleading information.
<br><br>
If you come across any of these in search results, please <a href="https://safebrowsing.google.com/safebrowsing/report_phish/?">report them as unsafe or phishing</a> to help keep the community secure.
</td>
</tr>
</table>
</div>
# Main features
- Auto calibrations for all printers
- Sandwich(inner-outer-inner) mode - an improved version of the `External perimeters first` mode
- [Precise wall](https://github.com/SoftFever/OrcaSlicer/wiki/Precise-wall)
- Polyholes conversion support [SuperSlicer Wiki: Polyholes](https://github.com/supermerill/SuperSlicer/wiki/Polyholes)
- Klipper support
- More granular controls
- More features can be found in [change notes](https://github.com/SoftFever/OrcaSlicer/releases/)
- **[Advanced Calibration Tools](https://github.com/SoftFever/OrcaSlicer/wiki/Calibration)**
Comprehensive suite: temperature towers, flow rate, retraction & more for optimal performance.
- **[Precise Wall](https://github.com/SoftFever/OrcaSlicer/wiki/quality_settings_precision#precise-wall) and [Seam Control](https://github.com/SoftFever/OrcaSlicer/wiki/quality_settings_seam)**
Adjust outer wall spacing and apply scarf seams to enhance print accuracy.
- **[Sandwich Mode](https://github.com/SoftFever/OrcaSlicer/wiki/quality_settings_wall_and_surfaces#innerouterinner) and [Polyholes](https://github.com/SoftFever/OrcaSlicer/wiki/quality_settings_precision#polyholes) Support**
Use varied infill [patterns](https://github.com/SoftFever/OrcaSlicer/wiki/strength_settings_patterns) and accurate hole shapes for improved clarity.
- **[Overhang](https://github.com/SoftFever/OrcaSlicer/wiki/quality_settings_overhangs) and [Support Optimization](https://github.com/SoftFever/OrcaSlicer/wiki#support-settings)**
Modify geometry for printable overhangs with precise support placement.
- **[Granular Controls](https://github.com/SoftFever/OrcaSlicer/wiki#process-settings) and Customization**
Fine-tune print speed, layer height, pressure, and temperature with precision.
- **Network Printer Support**
Seamless integration with Klipper, PrusaLink, and OctoPrint for remote control.
- **[Mouse Ear Brims](https://github.com/SoftFever/OrcaSlicer/wiki/others_settings_brim) & Adaptive Bed Mesh**
Automatic brims and adaptive mesh calibration ensure consistent adhesion.
- **User-Friendly Interface**
Intuitive drag-and-drop design with pre-made profiles for popular printers.
- **[Open-Source](https://github.com/SoftFever/OrcaSlicer) & [Community Driven](https://discord.gg/P4VE9UY9gJ)**
Regular updates fueled by continuous community contributions.
- **Wide Printer Compatibility**
Supports a broad range of printers: Bambu Lab, Prusa, Creality, Voron, and more.
- Additional features can be found in the [change notes](https://github.com/SoftFever/OrcaSlicer/releases/).
# Wiki
The wiki below aims to provide a detailed explanation of the slicer settings, including how to maximize their use and how to calibrate and set up your printer.
Please note that the wiki is a work in progress. We appreciate your patience as we continue to develop and improve it!
- **[Access the wiki here](https://github.com/SoftFever/OrcaSlicer/wiki)**
- **[Contribute to the wiki](https://github.com/SoftFever/OrcaSlicer/wiki/How-to-wiki)**
# Download
### Stable Release
## Stable Release
📥 **[Download the Latest Stable Release](https://github.com/SoftFever/OrcaSlicer/releases/latest)**
Visit our GitHub Releases page for the latest stable version of Orca Slicer, recommended for most users.
Visit our GitHub Releases page for the latest stable version of OrcaSlicer, recommended for most users.
## Nightly Builds
### Nightly Builds
🌙 **[Download the Latest Nightly Build](https://github.com/SoftFever/OrcaSlicer/releases/tag/nightly-builds)**
Explore the latest developments in Orca Slicer with our nightly builds. Feedback on these versions is highly appreciated.
Explore the latest developments in OrcaSlicer with our nightly builds. Feedback on these versions is highly appreciated.
# How to install
**Windows**:
1. Download the installer for your preferred version from the [releases page](https://github.com/SoftFever/OrcaSlicer/releases).
- *For convenience there is also a portable build available.*
- *If you have troubles to run the build, you might need to install following runtimes:*
- [MicrosoftEdgeWebView2RuntimeInstallerX64](https://github.com/SoftFever/OrcaSlicer/releases/download/v1.0.10-sf2/MicrosoftEdgeWebView2RuntimeInstallerX64.exe)
- [Details of this runtime](https://aka.ms/webview2)
- [Alternative Download Link Hosted by Microsoft](https://go.microsoft.com/fwlink/p/?LinkId=2124703)
- [vcredist2019_x64](https://github.com/SoftFever/OrcaSlicer/releases/download/v1.0.10-sf2/vcredist2019_x64.exe)
- [Alternative Download Link Hosted by Microsoft](https://aka.ms/vs/17/release/vc_redist.x64.exe)
- This file may already be available on your computer if you've installed visual studio. Check the following location: `%VCINSTALLDIR%Redist\MSVC\v142`
**Mac**:
1. Download the DMG for your computer: `arm64` version for Apple Silicon and `x86_64` for Intel CPU.
2. Drag OrcaSlicer.app to Application folder.
3. *If you want to run a build from a PR, you also need following instructions below*
<details quarantine>
## Windows
Download the **Windows Installer exe** for your preferred version from the [releases page](https://github.com/SoftFever/OrcaSlicer/releases).
- *For convenience there is also a portable build available.*
<details>
<summary>Troubleshooting</summary>
- *If you have troubles to run the build, you might need to install following runtimes:*
- [MicrosoftEdgeWebView2RuntimeInstallerX64](https://github.com/SoftFever/OrcaSlicer/releases/download/v1.0.10-sf2/MicrosoftEdgeWebView2RuntimeInstallerX64.exe)
- [Details of this runtime](https://aka.ms/webview2)
- [Alternative Download Link Hosted by Microsoft](https://go.microsoft.com/fwlink/p/?LinkId=2124703)
- [vcredist2019_x64](https://github.com/SoftFever/OrcaSlicer/releases/download/v1.0.10-sf2/vcredist2019_x64.exe)
- [Alternative Download Link Hosted by Microsoft](https://aka.ms/vs/17/release/vc_redist.x64.exe)
- This file may already be available on your computer if you've installed visual studio. Check the following location: `%VCINSTALLDIR%Redist\MSVC\v142`
</details>
Windows Package Manager
```shell
winget install --id=SoftFever.OrcaSlicer -e
```
## Mac
1. Download the DMG for your computer: `arm64` version for Apple Silicon and `x86_64` for Intel CPU.
2. Drag OrcaSlicer.app to Application folder.
3. *If you want to run a build from a PR, you also need to follow the instructions below:*
<details>
<summary>Quarantine</summary>
- Option 1 (You only need to do this once. After that the app can be opened normally.):
- Step 1: Hold _cmd_ and right click the app, from the context menu choose **Open**.
- Step 2: A warning window will pop up, click _Open_
- Option 2:
Execute this command in terminal: `xattr -dr com.apple.quarantine /Applications/OrcaSlicer.app`
```console
softfever@mac:~$ xattr -dr com.apple.quarantine /Applications/OrcaSlicer.app
- Step 2: A warning window will pop up, click _Open_
- Option 2:
Execute this command in terminal:
```shell
xattr -dr com.apple.quarantine /Applications/OrcaSlicer.app
```
- Option 3:
- Option 3:
- Step 1: open the app, a warning window will pop up
![image](./SoftFever_doc/mac_cant_open.png)
![mac_cant_open](./SoftFever_doc/mac_cant_open.png)
- Step 2: in `System Settings` -> `Privacy & Security`, click `Open Anyway`:
![image](./SoftFever_doc/mac_security_setting.png)
![mac_security_setting](./SoftFever_doc/mac_security_setting.png)
</details>
**Linux(Ubuntu)**:
1. If you run into trouble to execute it, try this command in terminal:
## Linux (Ubuntu)
1. If you run into trouble executing it, try this command in the terminal:
`chmod +x /path_to_appimage/OrcaSlicer_Linux.AppImage`
# How to compile
- Windows 64-bit
- Tools needed: Visual Studio 2019, Cmake, git, git-lfs, Strawberry Perl.
- You will require cmake version 3.14 or later, which is available [on their website](https://cmake.org/download/).
- Strawberry Perl is [available on their github repository](https://github.com/StrawberryPerl/Perl-Dist-Strawberry/releases/).
- Run `build_release.bat` in `x64 Native Tools Command Prompt for VS 2019`
- Note: Don't forget to run `git lfs pull` after cloning the repository to download tools on Windows
- Mac 64-bit
- Tools needed: Xcode, Cmake, git, gettext, libtool, automake, autoconf, texinfo
- You can install most of them by running `brew install cmake gettext libtool automake autoconf texinfo`
- run `build_release_macos.sh`
- To build and debug in XCode:
- run `XCode.app`
- open ``build_`arch`/OrcaSlicer.xcodeproj``
- menu bar: Product => Scheme => OrcaSlicer
- menu bar: Product => Scheme => Edit Scheme...
- Run => Info tab => Build Configuration: `RelWithDebInfo`
- Run => Options tab => Document Versions: uncheck `Allow debugging when browsing versions`
- menu bar: Product => Run
# How to Compile
- Ubuntu
- Dependencies **Will be auto installed with the shell script**: `libmspack-dev libgstreamerd-3-dev libsecret-1-dev libwebkit2gtk-4.0-dev libosmesa6-dev libssl-dev libcurl4-openssl-dev eglexternalplatform-dev libudev-dev libdbus-1-dev extra-cmake-modules libgtk2.0-dev libglew-dev libudev-dev libdbus-1-dev cmake git texinfo`
- run 'sudo ./BuildLinux.sh -u'
- run './BuildLinux.sh -dsir'
All updated build instructions for Windows, macOS, and Linux are now available on the official [OrcaSlicer Wiki - How to build](https://github.com/SoftFever/OrcaSlicer/wiki/How-to-build) page.
Please refer to the wiki to ensure you're following the latest and most accurate steps for your platform.
# Klipper Note
# Note:
If you're running Klipper, it's recommended to add the following configuration to your `printer.cfg` file.
```
```gcode
# Enable object exclusion
[exclude_object]
@@ -101,57 +161,52 @@ resolution: 0.1
```
# Supports
**Orca Slicer** is an open-source project, and I'm deeply grateful to all my sponsors and backers.
Their generous support enables me to purchase filaments and other essential 3D printing materials for the project.
**OrcaSlicer** is an open-source project and I'm deeply grateful to all my sponsors and backers.
Their generous support enables me to purchase filaments and other essential 3D printing materials for the project.
Thank you! :)
### Sponsors:
## Sponsors:
<table>
<tr>
<td>
<a href="https://peopoly.net/">
<img src="SoftFever_doc\sponsor_logos\peopoly-standard-logo.png" alt="Peopoly" width="64" height="">
</a>
</td>
<td>
<a href="https://qidi3d.com/">
<img src="SoftFever_doc\sponsor_logos\QIDI.png" alt="QIDI" width="64" height="">
<a href="https://qidi3d.com/" style="display:inline-block; border-radius:8px; background:#fff;">
<img src="SoftFever_doc\sponsor_logos\QIDI.png" alt="QIDI" width="100" height="100">
</a>
</td>
<td>
<a href="https://phrozen3d.com/">
<img src="SoftFever_doc\sponsor_logos\Phrozen_Logo圓_.png" alt="Phrozen Technology" width="64" height="">
<a href="https://bigtree-tech.com/" style="display:inline-block; border-radius:8px; background:#222;">
<img src="SoftFever_doc\sponsor_logos\BigTreeTech.png" alt="BIGTREE TECH" width="100" height="100">
</a>
</td>
</tr>
</table>
### Backers:
Ko-fi supporters: [Backers list](https://github.com/SoftFever/OrcaSlicer/files/14855600/sponsors.csv)
## Backers:
Support me
[![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/G2G5IP3CP)
**Ko-fi supporters** ☕: [Backers list](https://github.com/user-attachments/files/16147016/Supporters_638561417699952499.csv)
## Support me
<a href="https://github.com/sponsors/SoftFever"><img src="https://img.shields.io/badge/GitHub%20Sponsors-30363D?style=flat&logo=GitHub-Sponsors&logoColor=EA4AAA" height="50"></a>
<a href="https://ko-fi.com/G2G5IP3CP"><img src="https://img.shields.io/badge/Support_me_on_Ko--fi-FF5E5B?style=flat&logo=ko-fi&logoColor=white" height="50"></a>
<a href="https://paypal.me/softfever3d"><img src="https://img.shields.io/badge/PayPal-003087?style=flat&logo=paypal&logoColor=fff" height="50"></a>
## Some background
OrcaSlicer is originally forked from Bambu Studio, it was previously known as BambuStudio-SoftFever.
Bambu Studio is forked from [PrusaSlicer](https://github.com/prusa3d/PrusaSlicer) by Prusa Research, which is from [Slic3r](https://github.com/Slic3r/Slic3r) by Alessandro Ranellucci and the RepRap community.
Orca Slicer incorporates a lot of features from SuperSlicer by @supermerill
Orca Slicer's logo is designed by community member Justin Levine(@freejstnalxndr)
OrcaSlicer was originally forked from Bambu Studio, it was previously known as BambuStudio-SoftFever.
[Bambu Studio](https://github.com/bambulab/BambuStudio) is forked from [PrusaSlicer](https://github.com/prusa3d/PrusaSlicer) by Prusa Research, which is from [Slic3r](https://github.com/Slic3r/Slic3r) by Alessandro Ranellucci and the RepRap community.
OrcaSlicer incorporates a lot of features from [SuperSlicer](https://github.com/supermerill/SuperSlicer) by @supermerill
OrcaSlicer's logo is designed by community member Justin Levine (@freejstnalxndr).
# License
Orca Slicer is licensed under the GNU Affero General Public License, version 3. Orca Slicer is based on Bambu Studio by BambuLab.
Bambu Studio is licensed under the GNU Affero General Public License, version 3. Bambu Studio is based on PrusaSlicer by PrusaResearch.
PrusaSlicer is licensed under the GNU Affero General Public License, version 3. PrusaSlicer is owned by Prusa Research. PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci.
Slic3r is licensed under the GNU Affero General Public License, version 3. Slic3r was created by Alessandro Ranellucci with the help of many other contributors.
The GNU Affero General Public License, version 3 ensures that if you use any part of this software in any way (even behind a web server), your software must be released under the same license.
Orca Slicer includes a pressure advance calibration pattern test adapted from Andrew Ellis' generator, which is licensed under GNU General Public License, version 3. Ellis' generator is itself adapted from a generator developed by Sineos for Marlin, which is licensed under GNU General Public License, version 3.
The bambu networking plugin is based on non-free libraries from Bambulab. It is optional to the Orca Slicer and provides extended functionalities for Bambulab printer users.
- **OrcaSlicer** is licensed under the GNU Affero General Public License, version 3. OrcaSlicer is based on Bambu Studio by BambuLab.
- **Bambu Studio** is licensed under the GNU Affero General Public License, version 3. Bambu Studio is based on PrusaSlicer by PrusaResearch.
- **PrusaSlicer** is licensed under the GNU Affero General Public License, version 3. PrusaSlicer is owned by Prusa Research. PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci.
- **Slic3r** is licensed under the GNU Affero General Public License, version 3. Slic3r was created by Alessandro Ranellucci with the help of many other contributors.
- The **GNU Affero General Public License**, version 3 ensures that if you use any part of this software in any way (even behind a web server), your software must be released under the same license.
- OrcaSlicer includes a **pressure advance calibration pattern test** adapted from Andrew Ellis' generator, which is licensed under GNU General Public License, version 3. Ellis' generator is itself adapted from a generator developed by Sineos for Marlin, which is licensed under GNU General Public License, version 3.
- The **Bambu networking plugin** is based on non-free libraries from BambuLab. It is optional to the OrcaSlicer and provides extended functionalities for Bambulab printer users.

View File

@@ -1 +0,0 @@
Init Version

View File

@@ -1,32 +1,47 @@
POLICY: Our security policy is to avoid leaving the ecosystem worse than we found it. Meaning we are not planning to introduce vulnerabilities into the ecosystem.
The OrcaSlicer team and community take all security bugs in OrcaSlicer seriously. Thank you for improving the security of OrcaSlicer. We appreciate your efforts to disclose the issue responsibly, and will make every effort to acknowledge your contributions.
# Security Policy
Report security bugs by emailing the lead maintainer at softfeverever@gmail.com and include the word "SECURITY" in the subject line.
At OrcaSlicer, we are committed to maintaining the security of our ecosystem. Our policy is to ensure that we do not introduce vulnerabilities and that any security issues are addressed promptly and responsibly. We appreciate your help in improving the security of OrcaSlicer and thank you for your responsible disclosure.
Reporting Security Bugs
The lead maintainer will acknowledge your email within a week (7 days), and will send a more detailed response up to 48 hours after that indicating the next steps in handling your report. After the initial reply to your report, the security team will endeavor to keep you informed of the progress towards a fix and an announcement. We may ask for additional information or guidance.
## To report a security bug, please follow these guidelines:
OrcaSlicer will confirm the problem and determine the affected versions.
OrcaSlicer will audit code to find any similar problems.
OrcaSlicer will prepare fixes for all releases still under maintenance. These fixes will be released as fast as possible.
Report security bugs in third-party modules to the person or team maintaining the module.
* Email Security Bugs:
Send an email to the lead maintainer at softfeverever@gmail.com.
Include the word "SECURITY" in the subject line of your email.
SECURITY DISCLOSURE: Your responsibility is to report vulnerabilities to us using the guidelines outlined below.
Please give detailed steps on how to disclose the vulnerability. Keep these OWASP guidelines in mind ( https://www.owasp.org/index.php/Vulnerability_Disclosure_Cheat_Sheet ) when creating your disclosure policy.
* Response Times:
The lead maintainer will acknowledge receipt of your email within one week (7 days).
A detailed response will follow within 48 hours, outlining the next steps for handling your report.
After the initial reply, the security team will keep you informed about the progress toward a fix and any announcements.
Below are some recommendations for security disclosures:
* Information and Collaboration:
We may request additional information or guidance as we work on addressing the issue.
OrcaSlicer security contact { contact: mailto:softfeverever@gmail.com] }
When disclosing vulnerabilities please do the following:
Your name and affiliation (if any).
Include scope of vulnerability. Let us know who could use this exploit.
Document steps to identify the vulnerability. It is important that we can reproduce your findings.
Show how to exploit vulnerability, give us an attack scenario.
OrcaSlicer Checklist: Security Recommendations
Follow these steps to improve security when using OrcaSlicer.
* Handling the Report:
OrcaSlicer will confirm the problem and determine the affected versions.
We will audit the code to find any similar issues and prepare fixes for all releases still under maintenance.
Fixes will be released as quickly as possible.
...SEE SOMETHING
...SAY SOMETHING
1)...SEE SOMETHING
We suggest you goto #2 if this happens.
* Third-Party Modules:
Report security issues in third-party modules to the respective maintainer of those modules.
Why? Through experience we have found it is best to goto #2 in this situation.
## Security Disclosure Guidelines
When disclosing a vulnerability, please follow these steps to ensure your report is clear and actionable:
* Provide Detailed Information:
Scope: Clearly define the scope of the vulnerability.
Potential Impact: Let us know who could be affected by this exploit.
Reproduction Steps: Document detailed steps to reproduce the vulnerability.
Reference OWASP Guidelines:
Follow the <a href="https://cheatsheetseries.owasp.org/cheatsheets/Vulnerability_Disclosure_Cheat_Sheet.html">OWASP Vulnerability Disclosure Cheat Sheet</a> for best practices in vulnerability disclosure.
## Security Recommendations
To enhance security when using OrcaSlicer, we recommend following these steps:
* SEE SOMETHING: If you notice anything suspicious or have concerns, please report it.
* SAY SOMETHING: If you have any doubts or need assistance, do not hesitate to contact us.
### Thank you for your commitment to the security of OrcaSlicer. Your efforts help us maintain a safe and reliable ecosystem.

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.9 KiB

341
build_flatpak.sh Executable file
View File

@@ -0,0 +1,341 @@
#!/bin/bash
# OrcaSlicer Flatpak Build Script
# This script builds and packages OrcaSlicer as a Flatpak package locally
# Based on the GitHub Actions workflow in .github/workflows/build_all.yml
set -e
# Colors for output
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m' # No Color
# Default values
ARCH=$(uname -m)
BUILD_DIR="build_flatpak"
CLEANUP=false
INSTALL_RUNTIME=false
JOBS=$(nproc)
FORCE_CLEAN=false
ENABLE_CCACHE=false
CACHE_DIR=".flatpak-builder"
# Help function
show_help() {
echo "Usage: $0 [OPTIONS]"
echo ""
echo "Build OrcaSlicer as a Flatpak package"
echo ""
echo "Options:"
echo " -a, --arch ARCH Target architecture (x86_64, aarch64) [default: $ARCH]"
echo " -d, --build-dir DIR Build directory [default: $BUILD_DIR]"
echo " -j, --jobs JOBS Number of parallel build jobs for flatpak-builder and modules [default: $JOBS]"
echo " -c, --cleanup Clean build directory before building"
echo " -f, --force-clean Force clean build (disables caching)"
echo " --ccache Enable ccache for faster rebuilds (requires ccache in SDK)"
echo " --cache-dir DIR Flatpak builder cache directory [default: $CACHE_DIR]"
echo " -i, --install-runtime Install required Flatpak runtime and SDK"
echo " -h, --help Show this help message"
echo ""
echo "Examples:"
echo " $0 # Build for current architecture with caching enabled"
echo " $0 -f # Force clean build (no caching)"
echo " $0 --ccache -j 8 # Use ccache and 8 parallel jobs for faster builds"
echo " $0 -a x86_64 -c # Build for x86_64 and cleanup first"
echo " $0 -i -j 16 --ccache # Install runtime, build with 16 jobs and ccache"
}
# Parse command line arguments
while [[ $# -gt 0 ]]; do
case $1 in
-a|--arch)
ARCH="$2"
shift 2
;;
-d|--build-dir)
BUILD_DIR="$2"
shift 2
;;
-j|--jobs)
JOBS="$2"
shift 2
;;
-c|--cleanup)
CLEANUP=true
shift
;;
-f|--force-clean)
FORCE_CLEAN=true
shift
;;
--ccache)
ENABLE_CCACHE=true
shift
;;
--cache-dir)
CACHE_DIR="$2"
shift 2
;;
-i|--install-runtime)
INSTALL_RUNTIME=true
shift
;;
-h|--help)
show_help
exit 0
;;
*)
echo -e "${RED}Error: Unknown option $1${NC}"
show_help
exit 1
;;
esac
done
# Validate architecture
if [[ "$ARCH" != "x86_64" && "$ARCH" != "aarch64" ]]; then
echo -e "${RED}Error: Unsupported architecture '$ARCH'. Supported: x86_64, aarch64${NC}"
exit 1
fi
# Validate jobs parameter
if ! [[ "$JOBS" =~ ^[1-9][0-9]*$ ]]; then
echo -e "${RED}Error: Jobs must be a positive integer, got '$JOBS'${NC}"
exit 1
fi
echo -e "${BLUE}OrcaSlicer Flatpak Build Script${NC}"
echo -e "${BLUE}================================${NC}"
echo -e "Architecture: ${GREEN}$ARCH${NC}"
echo -e "Build directory: ${GREEN}$BUILD_DIR${NC}"
echo -e "Cache directory: ${GREEN}$CACHE_DIR${NC}"
echo -e "Parallel jobs: ${GREEN}$JOBS${NC}"
if [[ "$FORCE_CLEAN" == true ]]; then
echo -e "Cache mode: ${RED}DISABLED (force clean)${NC}"
else
echo -e "Cache mode: ${GREEN}ENABLED${NC}"
fi
if [[ "$ENABLE_CCACHE" == true ]]; then
echo -e "Ccache: ${GREEN}ENABLED${NC}"
else
echo -e "Ccache: ${YELLOW}DISABLED${NC}"
fi
echo ""
# Check available disk space (flatpak builds need several GB)
AVAILABLE_SPACE=$(df . | awk 'NR==2 {print $4}')
REQUIRED_SPACE=$((5 * 1024 * 1024)) # 5GB in KB
if [[ $AVAILABLE_SPACE -lt $REQUIRED_SPACE ]]; then
echo -e "${YELLOW}Warning: Low disk space detected.${NC}"
echo -e "Available: $(( AVAILABLE_SPACE / 1024 / 1024 ))GB, Recommended: 5GB+"
echo -e "Continue anyway? (y/N)"
read -r response
if [[ ! "$response" =~ ^[Yy]$ ]]; then
echo "Build cancelled by user"
exit 1
fi
fi
# Check if flatpak is installed
if ! command -v flatpak &> /dev/null; then
echo -e "${RED}Error: Flatpak is not installed. Please install it first.${NC}"
echo "On Ubuntu/Debian: sudo apt install flatpak"
echo "On Fedora: sudo dnf install flatpak"
echo "On Arch: sudo pacman -S flatpak"
exit 1
fi
# Check if flatpak-builder is installed
if ! command -v flatpak-builder &> /dev/null; then
echo -e "${RED}Error: flatpak-builder is not installed. Please install it first.${NC}"
echo "On Ubuntu/Debian: sudo apt install flatpak-builder"
echo "On Fedora: sudo dnf install flatpak-builder"
echo "On Arch: sudo pacman -S flatpak-builder"
exit 1
fi
# Check additional build dependencies
echo -e "${YELLOW}Checking build dependencies...${NC}"
MISSING_DEPS=()
if ! command -v cmake &> /dev/null; then
MISSING_DEPS+=("cmake")
fi
if ! command -v ninja &> /dev/null && ! command -v make &> /dev/null; then
MISSING_DEPS+=("ninja or make")
fi
if ! command -v pkg-config &> /dev/null; then
MISSING_DEPS+=("pkg-config")
fi
if [ ${#MISSING_DEPS[@]} -ne 0 ]; then
echo -e "${RED}Error: Missing required build dependencies: ${MISSING_DEPS[*]}${NC}"
echo "On Ubuntu/Debian: sudo apt install cmake ninja-build pkg-config"
echo "On Fedora: sudo dnf install cmake ninja-build pkgconfig"
exit 1
fi
echo -e "${GREEN}All required dependencies found${NC}"
# Install runtime and SDK if requested
if [[ "$INSTALL_RUNTIME" == true ]]; then
echo -e "${YELLOW}Installing GNOME runtime and SDK...${NC}"
flatpak install --user -y flathub org.gnome.Platform//47
flatpak install --user -y flathub org.gnome.Sdk//47
fi
# Check if required runtime is available
if ! flatpak info --user org.gnome.Platform//47 &> /dev/null; then
echo -e "${RED}Error: GNOME Platform 47 runtime is not installed.${NC}"
echo "Run with -i flag to install it automatically, or install manually:"
echo "flatpak install --user flathub org.gnome.Platform//47"
exit 1
fi
if ! flatpak info --user org.gnome.Sdk//47 &> /dev/null; then
echo -e "${RED}Error: GNOME SDK 47 is not installed.${NC}"
echo "Run with -i flag to install it automatically, or install manually:"
echo "flatpak install --user flathub org.gnome.Sdk//47"
exit 1
fi
# Get version information
echo -e "${YELLOW}Getting version information...${NC}"
if [[ -f "version.inc" ]]; then
VER_PURE=$(grep 'set(SoftFever_VERSION' version.inc | cut -d '"' -f2)
VER="V$VER_PURE"
DATE=$(date +'%Y%m%d')
echo -e "Version: ${GREEN}$VER${NC}"
echo -e "Date: ${GREEN}$DATE${NC}"
else
echo -e "${RED}Error: version.inc not found${NC}"
exit 1
fi
# Cleanup build directory if requested
if [[ "$CLEANUP" == true ]]; then
echo -e "${YELLOW}Cleaning up flatpak-specific build directories...${NC}"
rm -rf deps/build_flatpak build_flatpak
echo -e "${YELLOW}Cleaning up flatpak build directories...${NC}"
rm -rf "$BUILD_DIR"
# Only clean cache if force-clean is enabled
if [[ "$FORCE_CLEAN" == true ]]; then
echo -e "${YELLOW}Cleaning up flatpak build cache...${NC}"
rm -rf "$CACHE_DIR"
else
echo -e "${BLUE}Preserving build cache at: $CACHE_DIR${NC}"
fi
echo -e "${BLUE}Note: Host build directories (deps/build, build) are preserved${NC}"
fi
# Create build directory
mkdir -p "$BUILD_DIR"
rm -rf "$BUILD_DIR/build-dir"
# Check if flatpak manifest exists
if [[ ! -f "./scripts/flatpak/io.github.softfever.OrcaSlicer.yml" ]]; then
echo -e "${RED}Error: Flatpak manifest not found at scripts/flatpak/io.github.softfever.OrcaSlicer.yml${NC}"
exit 1
fi
# Build the Flatpak
echo -e "${YELLOW}Building Flatpak package...${NC}"
echo -e "This may take a while (30+ minutes depending on your system)..."
echo ""
BUNDLE_NAME="OrcaSlicer-Linux-flatpak_${VER}_${ARCH}.flatpak"
# Remove any existing bundle
rm -f "$BUNDLE_NAME"
# Create necessary directories inside repo
mkdir -p "$BUILD_DIR/cache" "$BUILD_DIR/flatpak-builder"
# Set environment variables to match GitHub Actions
export FLATPAK_BUILDER_N_JOBS=$JOBS
echo -e "${BLUE}Running flatpak-builder...${NC}"
echo -e "Using $JOBS parallel jobs for flatpak-builder and $FLATPAK_BUILDER_N_JOBS for module builds"
# Check flatpak-builder version to determine available options
FLATPAK_BUILDER_VERSION=$(flatpak-builder --version 2>/dev/null | head -1 | awk '{print $2}' || echo "unknown")
echo -e "flatpak-builder version: $FLATPAK_BUILDER_VERSION"
# Build command with caching support
BUILDER_ARGS=(
--arch="$ARCH"
--user
--install-deps-from=flathub
--repo="$BUILD_DIR/repo"
--verbose
--state-dir="$CACHE_DIR"
--jobs="$JOBS"
)
# Add force-clean only if explicitly requested (disables caching)
if [[ "$FORCE_CLEAN" == true ]]; then
BUILDER_ARGS+=(--force-clean)
echo -e "${YELLOW}Using --force-clean (caching disabled)${NC}"
else
echo -e "${GREEN}Using build cache for faster rebuilds${NC}"
fi
# Add ccache if enabled
if [[ "$ENABLE_CCACHE" == true ]]; then
BUILDER_ARGS+=(--ccache)
echo -e "${GREEN}Using ccache for compiler caching${NC}"
fi
if ! flatpak-builder \
"${BUILDER_ARGS[@]}" \
"$BUILD_DIR/build-dir" \
scripts/flatpak/io.github.softfever.OrcaSlicer.yml; then
echo -e "${RED}Error: flatpak-builder failed${NC}"
echo -e "${YELLOW}Check the build log above for details${NC}"
exit 1
fi
# Create bundle
echo -e "${YELLOW}Creating Flatpak bundle...${NC}"
if ! flatpak build-bundle \
"$BUILD_DIR/repo" \
"$BUNDLE_NAME" \
io.github.softfever.OrcaSlicer \
--arch="$ARCH"; then
echo -e "${RED}Error: Failed to create Flatpak bundle${NC}"
exit 1
fi
# Success message
echo ""
echo -e "${GREEN}✓ Flatpak build completed successfully!${NC}"
echo -e "Bundle created: ${GREEN}$BUNDLE_NAME${NC}"
echo -e "Size: ${GREEN}$(du -h "$BUNDLE_NAME" | cut -f1)${NC}"
if [[ "$FORCE_CLEAN" != true ]]; then
echo -e "Build cache: ${GREEN}$CACHE_DIR${NC} (preserved for faster future builds)"
fi
echo ""
echo -e "${BLUE}To install the Flatpak:${NC}"
echo -e "flatpak install --user $BUNDLE_NAME"
echo ""
echo -e "${BLUE}To run OrcaSlicer:${NC}"
echo -e "flatpak run io.github.softfever.OrcaSlicer"
echo ""
echo -e "${BLUE}To uninstall:${NC}"
echo -e "flatpak uninstall --user io.github.softfever.OrcaSlicer"
echo ""
if [[ "$FORCE_CLEAN" != true ]]; then
echo -e "${BLUE}Cache Management:${NC}"
echo -e "• Subsequent builds will be faster thanks to caching"
echo -e "• To force a clean build: $0 -f"
echo -e "• To clean cache manually: rm -rf $CACHE_DIR"
fi

261
build_linux.sh Executable file
View File

@@ -0,0 +1,261 @@
#!/usr/bin/env bash
set -e # Exit immediately if a command exits with a non-zero status.
SCRIPT_NAME=$(basename "$0")
SCRIPT_PATH=$(dirname "$(readlink -f "${0}")")
pushd "${SCRIPT_PATH}" > /dev/null
function usage() {
echo "Usage: ./${SCRIPT_NAME} [-1][-b][-c][-d][-h][-i][-j N][-p][-r][-s][-t][-u][-l][-L]"
echo " -1: limit builds to one core (where possible)"
echo " -j N: limit builds to N cores (where possible)"
echo " -b: build in debug mode"
echo " -c: force a clean build"
echo " -C: enable ANSI-colored compile output (GNU/Clang only)"
echo " -d: download and build dependencies in ./deps/ (build prerequisite)"
echo " -h: prints this help text"
echo " -i: build the Orca Slicer AppImage (optional)"
echo " -p: boost ccache hit rate by disabling precompiled headers (default: ON)"
echo " -r: skip RAM and disk checks (low RAM compiling)"
echo " -s: build the Orca Slicer (optional)"
echo " -t: build tests (optional)"
echo " -u: install system dependencies (asks for sudo password; build prerequisite)"
echo " -l: use Clang instead of GCC (default: GCC)"
echo " -L: use ld.lld as linker (if available)"
echo "For a first use, you want to './${SCRIPT_NAME} -u'"
echo " and then './${SCRIPT_NAME} -dsi'"
echo "To build with tests: './${SCRIPT_NAME} -st' or './${SCRIPT_NAME} -dst'"
}
SLIC3R_PRECOMPILED_HEADERS="ON"
unset name
while getopts ":1j:bcCdhiprstulL" opt ; do
case ${opt} in
1 )
export CMAKE_BUILD_PARALLEL_LEVEL=1
;;
j )
export CMAKE_BUILD_PARALLEL_LEVEL=$OPTARG
;;
b )
BUILD_DEBUG="1"
;;
c )
CLEAN_BUILD=1
;;
C )
COLORED_OUTPUT="-DCOLORED_OUTPUT=ON"
;;
d )
BUILD_DEPS="1"
;;
h ) usage
exit 1
;;
i )
BUILD_IMAGE="1"
;;
p )
SLIC3R_PRECOMPILED_HEADERS="OFF"
;;
r )
SKIP_RAM_CHECK="1"
;;
s )
BUILD_ORCA="1"
;;
t )
BUILD_TESTS="1"
;;
u )
export UPDATE_LIB="1"
;;
l )
USE_CLANG="1"
;;
L )
USE_LLD="1"
;;
* )
echo "Unknown argument '${opt}', aborting."
exit 1
;;
esac
done
if [ ${OPTIND} -eq 1 ] ; then
usage
exit 1
fi
function check_available_memory_and_disk() {
FREE_MEM_GB=$(free --gibi --total | grep 'Mem' | rev | cut --delimiter=" " --fields=1 | rev)
MIN_MEM_GB=10
FREE_DISK_KB=$(df --block-size=1K . | tail -1 | awk '{print $4}')
MIN_DISK_KB=$((10 * 1024 * 1024))
if [[ ${FREE_MEM_GB} -le ${MIN_MEM_GB} ]] ; then
echo -e "\nERROR: Orca Slicer Builder requires at least ${MIN_MEM_GB}G of 'available' mem (system has only ${FREE_MEM_GB}G available)"
echo && free --human && echo
echo "Invoke with -r to skip RAM and disk checks."
exit 2
fi
if [[ ${FREE_DISK_KB} -le ${MIN_DISK_KB} ]] ; then
echo -e "\nERROR: Orca Slicer Builder requires at least $(echo "${MIN_DISK_KB}" |awk '{ printf "%.1fG\n", $1/1024/1024; }') (system has only $(echo "${FREE_DISK_KB}" | awk '{ printf "%.1fG\n", $1/1024/1024; }') disk free)"
echo && df --human-readable . && echo
echo "Invoke with -r to skip ram and disk checks."
exit 1
fi
}
# cmake 4.x compatibility workaround
export CMAKE_POLICY_VERSION_MINIMUM=3.5
DISTRIBUTION=$(awk -F= '/^ID=/ {print $2}' /etc/os-release | tr -d '"')
DISTRIBUTION_LIKE=$(awk -F= '/^ID_LIKE=/ {print $2}' /etc/os-release | tr -d '"')
# Check for direct distribution match to Ubuntu/Debian
if [ "${DISTRIBUTION}" == "ubuntu" ] || [ "${DISTRIBUTION}" == "linuxmint" ] ; then
DISTRIBUTION="debian"
# Check if distribution is Debian/Ubuntu-like based on ID_LIKE
elif [[ "${DISTRIBUTION_LIKE}" == *"debian"* ]] || [[ "${DISTRIBUTION_LIKE}" == *"ubuntu"* ]] ; then
DISTRIBUTION="debian"
elif [[ "${DISTRIBUTION_LIKE}" == *"arch"* ]] ; then
DISTRIBUTION="arch"
fi
if [ ! -f "./scripts/linux.d/${DISTRIBUTION}" ] ; then
echo "Your distribution \"${DISTRIBUTION}\" is not supported by system-dependency scripts in ./scripts/linux.d/"
echo "Please resolve dependencies manually and contribute a script for your distribution to upstream."
exit 1
else
echo "resolving system dependencies for distribution \"${DISTRIBUTION}\" ..."
source "./scripts/linux.d/${DISTRIBUTION}"
fi
echo "FOUND_GTK3=${FOUND_GTK3}"
if [[ -z "${FOUND_GTK3_DEV}" ]] ; then
echo "Error, you must install the dependencies before."
echo "Use option -u with sudo"
exit 1
fi
echo "Changing date in version..."
{
# change date in version
sed --in-place "s/+UNKNOWN/_$(date '+%F')/" version.inc
}
echo "done"
if [[ -z "${SKIP_RAM_CHECK}" ]] ; then
check_available_memory_and_disk
fi
export CMAKE_C_CXX_COMPILER_CLANG=""
if [[ -n "${USE_CLANG}" ]] ; then
export CMAKE_C_CXX_COMPILER_CLANG="-DCMAKE_C_COMPILER=/usr/bin/clang -DCMAKE_CXX_COMPILER=/usr/bin/clang++"
fi
# Configure use of ld.lld as the linker when requested
export CMAKE_LLD_LINKER_ARGS=""
if [[ -n "${USE_LLD}" ]] ; then
if command -v ld.lld >/dev/null 2>&1 ; then
LLD_BIN=$(command -v ld.lld)
export CMAKE_LLD_LINKER_ARGS="-DCMAKE_LINKER=${LLD_BIN} -DCMAKE_EXE_LINKER_FLAGS=-fuse-ld=lld -DCMAKE_SHARED_LINKER_FLAGS=-fuse-ld=lld -DCMAKE_MODULE_LINKER_FLAGS=-fuse-ld=lld"
else
echo "Error: ld.lld not found. Please install the 'lld' package (e.g., sudo apt install lld) or omit -L."
exit 1
fi
fi
if [[ -n "${BUILD_DEPS}" ]] ; then
echo "Configuring dependencies..."
BUILD_ARGS="${DEPS_EXTRA_BUILD_ARGS} -DDEP_WX_GTK3=ON"
if [[ -n "${CLEAN_BUILD}" ]]
then
rm -fr deps/build
fi
mkdir -p deps/build
if [[ -n "${BUILD_DEBUG}" ]] ; then
# build deps with debug and release else cmake will not find required sources
mkdir -p deps/build/release
CMAKE_CMD="cmake ${CMAKE_C_CXX_COMPILER_CLANG} ${CMAKE_LLD_LINKER_ARGS} -S deps -B deps/build/release -DSLIC3R_PCH=${SLIC3R_PRECOMPILED_HEADERS} -G Ninja -DDESTDIR=${SCRIPT_PATH}/deps/build/destdir -DDEP_DOWNLOAD_DIR=${SCRIPT_PATH}/deps/DL_CACHE ${COLORED_OUTPUT} ${BUILD_ARGS}"
echo "${CMAKE_CMD}"
${CMAKE_CMD}
cmake --build deps/build/release
BUILD_ARGS="${BUILD_ARGS} -DCMAKE_BUILD_TYPE=Debug"
fi
# If this isn't in one quote, then empty variables can add two single quotes and mess up argument parsing for cmake.
CMAKE_CMD="cmake -S deps -B deps/build ${CMAKE_C_CXX_COMPILER_CLANG} ${CMAKE_LLD_LINKER_ARGS} -G Ninja ${COLORED_OUTPUT} ${BUILD_ARGS}"
echo "${CMAKE_CMD}"
${CMAKE_CMD}
cmake --build deps/build
fi
if [[ -n "${BUILD_ORCA}" ]] ; then
echo "Configuring OrcaSlicer..."
if [[ -n "${CLEAN_BUILD}" ]] ; then
rm -fr build
fi
BUILD_ARGS="${ORCA_EXTRA_BUILD_ARGS}"
if [[ -n "${FOUND_GTK3_DEV}" ]] ; then
BUILD_ARGS="${BUILD_ARGS} -DSLIC3R_GTK=3"
fi
if [[ -n "${BUILD_DEBUG}" ]] ; then
BUILD_ARGS="${BUILD_ARGS} -DCMAKE_BUILD_TYPE=Debug -DBBL_INTERNAL_TESTING=1"
else
BUILD_ARGS="${BUILD_ARGS} -DBBL_RELEASE_TO_PUBLIC=1 -DBBL_INTERNAL_TESTING=0"
fi
if [[ -n "${BUILD_TESTS}" ]] ; then
BUILD_ARGS="${BUILD_ARGS} -DBUILD_TESTS=ON"
fi
echo "Configuring OrcaSlicer..."
cmake -S . -B build ${CMAKE_C_CXX_COMPILER_CLANG} ${CMAKE_LLD_LINKER_ARGS} -G "Ninja Multi-Config" \
-DSLIC3R_PCH=${SLIC3R_PRECOMPILED_HEADERS} \
-DCMAKE_PREFIX_PATH=${SCRIPT_PATH}/deps/build/destdir/usr/local \
-DSLIC3R_STATIC=1 \
-DORCA_TOOLS=ON \
${COLORED_OUTPUT} \
${BUILD_ARGS}
echo "${CMAKE_CMD}"
${CMAKE_CMD}
echo "done"
echo "Building OrcaSlicer ..."
if [[ -n "${BUILD_DEBUG}" ]] ; then
cmake --build build --config Debug --target OrcaSlicer
else
cmake --build build --config Release --target OrcaSlicer
fi
echo "Building OrcaSlicer_profile_validator .."
if [[ -n "${BUILD_DEBUG}" ]] ; then
cmake --build build --config Debug --target OrcaSlicer_profile_validator
else
cmake --build build --config Release --target OrcaSlicer_profile_validator
fi
./scripts/run_gettext.sh
echo "done"
fi
if [[ -n "${BUILD_IMAGE}" || -n "${BUILD_ORCA}" ]] ; then
pushd build > /dev/null
echo "[9/9] Generating Linux app..."
build_linux_image="./src/build_linux_image.sh"
if [[ -e ${build_linux_image} ]] ; then
extra_script_args=""
if [[ -n "${BUILD_IMAGE}" ]] ; then
extra_script_args="-i"
fi
${build_linux_image} ${extra_script_args}
echo "done"
fi
popd > /dev/null # build
fi
popd > /dev/null # ${SCRIPT_PATH}

View File

@@ -45,6 +45,6 @@ echo cmake .. -G "Visual Studio 16 2019" -A x64 -DBBL_RELEASE_TO_PUBLIC=1 -DCMAK
cmake .. -G "Visual Studio 16 2019" -A x64 -DBBL_RELEASE_TO_PUBLIC=1 -DCMAKE_PREFIX_PATH="%DEPS%/usr/local" -DCMAKE_INSTALL_PREFIX="./OrcaSlicer" -DCMAKE_BUILD_TYPE=%build_type% -DWIN10SDK_PATH="C:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0"
cmake --build . --config %build_type% --target ALL_BUILD -- -m
cd ..
call run_gettext.bat
call scripts/run_gettext.bat
cd %build_dir%
cmake --build . --target install --config %build_type%

View File

@@ -24,7 +24,7 @@ while getopts ":dpa:snt:xbc:h" opt; do
export OSX_DEPLOYMENT_TARGET="$OPTARG"
;;
x )
export SLICER_CMAKE_GENERATOR="Ninja"
export SLICER_CMAKE_GENERATOR="Ninja Multi-Config"
export SLICER_BUILD_TARGET="all"
export DEPS_CMAKE_GENERATOR="Ninja"
;;
@@ -34,15 +34,19 @@ while getopts ":dpa:snt:xbc:h" opt; do
c )
export BUILD_CONFIG="$OPTARG"
;;
1 )
export CMAKE_BUILD_PARALLEL_LEVEL=1
;;
h ) echo "Usage: ./build_release_macos.sh [-d]"
echo " -d: Build deps only"
echo " -a: Set ARCHITECTURE (arm64 or x86_64)"
echo " -a: Set ARCHITECTURE (arm64 or x86_64 or universal)"
echo " -s: Build slicer only"
echo " -n: Nightly build"
echo " -t: Specify minimum version of the target platform, default is 11.3"
echo " -x: Use Ninja CMake generator, default is Xcode"
echo " -x: Use Ninja Multi-Config CMake generator, default is Xcode"
echo " -b: Build without reconfiguring CMake"
echo " -c: Set CMake build configuration, default is Release"
echo " -1: Use single job for building"
exit 0
;;
* )
@@ -53,8 +57,8 @@ done
# Set defaults
if [ -z "$ARCH" ]; then
ARCH="$(uname -m)"
export ARCH
ARCH="$(uname -m)"
export ARCH
fi
if [ -z "$BUILD_CONFIG" ]; then
@@ -103,102 +107,175 @@ echo
# fi
PROJECT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_BUILD_DIR="$PROJECT_DIR/build_$ARCH"
PROJECT_BUILD_DIR="$PROJECT_DIR/build/$ARCH"
DEPS_DIR="$PROJECT_DIR/deps"
DEPS_BUILD_DIR="$DEPS_DIR/build_$ARCH"
DEPS="$DEPS_BUILD_DIR/OrcaSlicer_dep_$ARCH"
DEPS_BUILD_DIR="$DEPS_DIR/build/$ARCH"
DEPS="$DEPS_BUILD_DIR/OrcaSlicer_deps"
# Fix for Multi-config generators
if [ "$SLICER_CMAKE_GENERATOR" == "Xcode" ]; then
export BUILD_DIR_CONFIG_SUBDIR="/$BUILD_CONFIG"
else
export BUILD_DIR_CONFIG_SUBDIR=""
fi
# For Multi-config generators like Ninja and Xcode
export BUILD_DIR_CONFIG_SUBDIR="/$BUILD_CONFIG"
function build_deps() {
echo "Building deps..."
(
set -x
mkdir -p "$DEPS"
cd "$DEPS_BUILD_DIR"
if [ "1." != "$BUILD_ONLY". ]; then
cmake .. \
-G "${DEPS_CMAKE_GENERATOR}" \
-DDESTDIR="$DEPS" \
-DOPENSSL_ARCH="darwin64-${ARCH}-cc" \
-DCMAKE_BUILD_TYPE="$BUILD_CONFIG" \
-DCMAKE_OSX_ARCHITECTURES:STRING="${ARCH}" \
-DCMAKE_OSX_DEPLOYMENT_TARGET="${OSX_DEPLOYMENT_TARGET}"
# iterate over two architectures: x86_64 and arm64
for _ARCH in x86_64 arm64; do
# if ARCH is universal or equal to _ARCH
if [ "$ARCH" == "universal" ] || [ "$ARCH" == "$_ARCH" ]; then
PROJECT_BUILD_DIR="$PROJECT_DIR/build/$_ARCH"
DEPS_BUILD_DIR="$DEPS_DIR/build/$_ARCH"
DEPS="$DEPS_BUILD_DIR/OrcaSlicer_dep"
echo "Building deps..."
(
set -x
mkdir -p "$DEPS"
cd "$DEPS_BUILD_DIR"
if [ "1." != "$BUILD_ONLY". ]; then
cmake "${DEPS_DIR}" \
-G "${DEPS_CMAKE_GENERATOR}" \
-DDESTDIR="$DEPS" \
-DOPENSSL_ARCH="darwin64-${_ARCH}-cc" \
-DCMAKE_BUILD_TYPE="$BUILD_CONFIG" \
-DCMAKE_OSX_ARCHITECTURES:STRING="${_ARCH}" \
-DCMAKE_OSX_DEPLOYMENT_TARGET="${OSX_DEPLOYMENT_TARGET}"
fi
cmake --build . --config "$BUILD_CONFIG" --target deps
)
fi
cmake --build . --config "$BUILD_CONFIG" --target deps
)
done
}
function pack_deps() {
echo "Packing deps..."
(
set -x
mkdir -p "$DEPS"
cd "$DEPS_BUILD_DIR"
tar -zcvf "OrcaSlicer_dep_mac_${ARCH}_$(date +"%Y%m%d").tar.gz" "OrcaSlicer_dep_$ARCH"
cd "$DEPS_DIR"
tar -zcvf "OrcaSlicer_dep_mac_${ARCH}_$(date +"%Y%m%d").tar.gz" "build"
)
}
function build_slicer() {
echo "Building slicer..."
(
set -x
mkdir -p "$PROJECT_BUILD_DIR"
cd "$PROJECT_BUILD_DIR"
if [ "1." != "$BUILD_ONLY". ]; then
cmake .. \
-G "${SLICER_CMAKE_GENERATOR}" \
-DBBL_RELEASE_TO_PUBLIC=1 \
-DCMAKE_PREFIX_PATH="$DEPS/usr/local" \
-DCMAKE_INSTALL_PREFIX="$PWD/OrcaSlicer" \
-DCMAKE_BUILD_TYPE="$BUILD_CONFIG" \
-DCMAKE_MACOSX_RPATH=ON \
-DCMAKE_INSTALL_RPATH="${DEPS}/usr/local" \
-DCMAKE_MACOSX_BUNDLE=ON \
-DCMAKE_OSX_ARCHITECTURES="${ARCH}" \
-DCMAKE_OSX_DEPLOYMENT_TARGET="${OSX_DEPLOYMENT_TARGET}"
fi
cmake --build . --config "$BUILD_CONFIG" --target "$SLICER_BUILD_TARGET"
)
# iterate over two architectures: x86_64 and arm64
for _ARCH in x86_64 arm64; do
# if ARCH is universal or equal to _ARCH
if [ "$ARCH" == "universal" ] || [ "$ARCH" == "$_ARCH" ]; then
echo "Verify localization with gettext..."
(
cd "$PROJECT_DIR"
./run_gettext.sh
)
PROJECT_BUILD_DIR="$PROJECT_DIR/build/$_ARCH"
DEPS_BUILD_DIR="$DEPS_DIR/build/$_ARCH"
DEPS="$DEPS_BUILD_DIR/OrcaSlicer_dep"
echo "Fix macOS app package..."
(
cd "$PROJECT_BUILD_DIR"
mkdir -p OrcaSlicer
cd OrcaSlicer
# remove previously built app
rm -rf ./OrcaSlicer.app
# fully copy newly built app
cp -pR "../src$BUILD_DIR_CONFIG_SUBDIR/OrcaSlicer.app" ./OrcaSlicer.app
# fix resources
resources_path=$(readlink ./OrcaSlicer.app/Contents/Resources)
rm ./OrcaSlicer.app/Contents/Resources
cp -R "$resources_path" ./OrcaSlicer.app/Contents/Resources
# delete .DS_Store file
find ./OrcaSlicer.app/ -name '.DS_Store' -delete
)
echo "Building slicer for $_ARCH..."
(
set -x
mkdir -p "$PROJECT_BUILD_DIR"
cd "$PROJECT_BUILD_DIR"
if [ "1." != "$BUILD_ONLY". ]; then
cmake "${PROJECT_DIR}" \
-G "${SLICER_CMAKE_GENERATOR}" \
-DBBL_RELEASE_TO_PUBLIC=1 \
-DORCA_TOOLS=ON \
-DCMAKE_PREFIX_PATH="$DEPS/usr/local" \
-DCMAKE_INSTALL_PREFIX="$PWD/OrcaSlicer" \
-DCMAKE_BUILD_TYPE="$BUILD_CONFIG" \
-DCMAKE_MACOSX_RPATH=ON \
-DCMAKE_INSTALL_RPATH="${DEPS}/usr/local" \
-DCMAKE_MACOSX_BUNDLE=ON \
-DCMAKE_OSX_ARCHITECTURES="${_ARCH}" \
-DCMAKE_OSX_DEPLOYMENT_TARGET="${OSX_DEPLOYMENT_TARGET}"
fi
cmake --build . --config "$BUILD_CONFIG" --target "$SLICER_BUILD_TARGET"
)
# extract version
# export ver=$(grep '^#define SoftFever_VERSION' ../src/libslic3r/libslic3r_version.h | cut -d ' ' -f3)
# ver="_V${ver//\"}"
# echo $PWD
# if [ "1." != "$NIGHTLY_BUILD". ];
# then
# ver=${ver}_dev
# fi
echo "Verify localization with gettext..."
(
cd "$PROJECT_DIR"
./scripts/run_gettext.sh
)
# zip -FSr OrcaSlicer${ver}_Mac_${ARCH}.zip OrcaSlicer.app
echo "Fix macOS app package..."
(
cd "$PROJECT_BUILD_DIR"
mkdir -p OrcaSlicer
cd OrcaSlicer
# remove previously built app
rm -rf ./OrcaSlicer.app
# fully copy newly built app
cp -pR "../src$BUILD_DIR_CONFIG_SUBDIR/OrcaSlicer.app" ./OrcaSlicer.app
# fix resources
resources_path=$(readlink ./OrcaSlicer.app/Contents/Resources)
rm ./OrcaSlicer.app/Contents/Resources
cp -R "$resources_path" ./OrcaSlicer.app/Contents/Resources
# delete .DS_Store file
find ./OrcaSlicer.app/ -name '.DS_Store' -delete
# Copy OrcaSlicer_profile_validator.app if it exists
if [ -f "../src$BUILD_DIR_CONFIG_SUBDIR/OrcaSlicer_profile_validator.app/Contents/MacOS/OrcaSlicer_profile_validator" ]; then
echo "Copying OrcaSlicer_profile_validator.app..."
rm -rf ./OrcaSlicer_profile_validator.app
cp -pR "../src$BUILD_DIR_CONFIG_SUBDIR/OrcaSlicer_profile_validator.app" ./OrcaSlicer_profile_validator.app
# delete .DS_Store file
find ./OrcaSlicer_profile_validator.app/ -name '.DS_Store' -delete
fi
)
# extract version
# export ver=$(grep '^#define SoftFever_VERSION' ../src/libslic3r/libslic3r_version.h | cut -d ' ' -f3)
# ver="_V${ver//\"}"
# echo $PWD
# if [ "1." != "$NIGHTLY_BUILD". ];
# then
# ver=${ver}_dev
# fi
# zip -FSr OrcaSlicer${ver}_Mac_${_ARCH}.zip OrcaSlicer.app
fi
done
}
function build_universal() {
echo "Building universal binary..."
PROJECT_BUILD_DIR="$PROJECT_DIR/build/$ARCH"
# Create universal binary
echo "Creating universal binary..."
# PROJECT_BUILD_DIR="$PROJECT_DIR/build_Universal"
mkdir -p "$PROJECT_BUILD_DIR/OrcaSlicer"
UNIVERSAL_APP="$PROJECT_BUILD_DIR/OrcaSlicer/OrcaSlicer.app"
rm -rf "$UNIVERSAL_APP"
cp -R "$PROJECT_DIR/build/arm64/OrcaSlicer/OrcaSlicer.app" "$UNIVERSAL_APP"
# Get the binary path inside the .app bundle
BINARY_PATH="Contents/MacOS/OrcaSlicer"
# Create universal binary using lipo
lipo -create \
"$PROJECT_DIR/build/x86_64/OrcaSlicer/OrcaSlicer.app/$BINARY_PATH" \
"$PROJECT_DIR/build/arm64/OrcaSlicer/OrcaSlicer.app/$BINARY_PATH" \
-output "$UNIVERSAL_APP/$BINARY_PATH"
echo "Universal binary created at $UNIVERSAL_APP"
# Create universal binary for profile validator if it exists
if [ -f "$PROJECT_DIR/build/arm64/OrcaSlicer/OrcaSlicer_profile_validator.app/Contents/MacOS/OrcaSlicer_profile_validator" ] && \
[ -f "$PROJECT_DIR/build/x86_64/OrcaSlicer/OrcaSlicer_profile_validator.app/Contents/MacOS/OrcaSlicer_profile_validator" ]; then
echo "Creating universal binary for OrcaSlicer_profile_validator..."
UNIVERSAL_VALIDATOR_APP="$PROJECT_BUILD_DIR/OrcaSlicer/OrcaSlicer_profile_validator.app"
rm -rf "$UNIVERSAL_VALIDATOR_APP"
cp -R "$PROJECT_DIR/build/arm64/OrcaSlicer/OrcaSlicer_profile_validator.app" "$UNIVERSAL_VALIDATOR_APP"
# Get the binary path inside the profile validator .app bundle
VALIDATOR_BINARY_PATH="Contents/MacOS/OrcaSlicer_profile_validator"
# Create universal binary using lipo
lipo -create \
"$PROJECT_DIR/build/x86_64/OrcaSlicer/OrcaSlicer_profile_validator.app/$VALIDATOR_BINARY_PATH" \
"$PROJECT_DIR/build/arm64/OrcaSlicer/OrcaSlicer_profile_validator.app/$VALIDATOR_BINARY_PATH" \
-output "$UNIVERSAL_VALIDATOR_APP/$VALIDATOR_BINARY_PATH"
echo "Universal binary for OrcaSlicer_profile_validator created at $UNIVERSAL_VALIDATOR_APP"
fi
}
case "${BUILD_TARGET}" in
@@ -218,6 +295,10 @@ case "${BUILD_TARGET}" in
;;
esac
if [ "$ARCH" = "universal" ] && [ "$BUILD_TARGET" != "deps" ]; then
build_universal
fi
if [ "1." == "$PACK_DEPS". ]; then
pack_deps
fi

View File

@@ -1,4 +1,4 @@
@REM OcarSlicer build script for Windows
@REM OrcaSlicer build script for Windows
@echo off
set WP=%CD%
@@ -44,9 +44,10 @@ if "%1"=="slicer" (
)
echo "building deps.."
echo cmake ../ -G "Visual Studio 17 2022" -A x64 -DDESTDIR="%CD%/OrcaSlicer_dep" -DCMAKE_BUILD_TYPE=%build_type% -DDEP_DEBUG=%debug% -DORCA_INCLUDE_DEBUG_INFO=%debuginfo%
cmake ../ -G "Visual Studio 17 2022" -A x64 -DDESTDIR="%CD%/OrcaSlicer_dep" -DCMAKE_BUILD_TYPE=%build_type% -DDEP_DEBUG=%debug% -DORCA_INCLUDE_DEBUG_INFO=%debuginfo%
echo on
cmake ../ -G "Visual Studio 17 2022" -A x64 -DDESTDIR="%DEPS%" -DCMAKE_BUILD_TYPE=%build_type% -DDEP_DEBUG=%debug% -DORCA_INCLUDE_DEBUG_INFO=%debuginfo%
cmake --build . --config %build_type% --target deps -- -m
@echo off
if "%1"=="deps" exit /b 0
@@ -56,10 +57,11 @@ cd %WP%
mkdir %build_dir%
cd %build_dir%
echo cmake .. -G "Visual Studio 17 2022" -A x64 -DBBL_RELEASE_TO_PUBLIC=1 -DCMAKE_PREFIX_PATH="%DEPS%/usr/local" -DCMAKE_INSTALL_PREFIX="./OrcaSlicer" -DCMAKE_BUILD_TYPE=%build_type%
cmake .. -G "Visual Studio 17 2022" -A x64 -DBBL_RELEASE_TO_PUBLIC=1 -DCMAKE_PREFIX_PATH="%DEPS%/usr/local" -DCMAKE_INSTALL_PREFIX="./OrcaSlicer" -DCMAKE_BUILD_TYPE=%build_type% -DWIN10SDK_PATH="C:/Program Files (x86)/Windows Kits/10/Include/10.0.22000.0"
echo on
cmake .. -G "Visual Studio 17 2022" -A x64 -DBBL_RELEASE_TO_PUBLIC=1 -DORCA_TOOLS=ON -DCMAKE_PREFIX_PATH="%DEPS%/usr/local" -DCMAKE_INSTALL_PREFIX="./OrcaSlicer" -DCMAKE_BUILD_TYPE=%build_type% -DWIN10SDK_PATH="%WindowsSdkDir%Include\%WindowsSDKVersion%\"
cmake --build . --config %build_type% --target ALL_BUILD -- -m
@echo off
cd ..
call run_gettext.bat
call scripts/run_gettext.bat
cd %build_dir%
cmake --build . --target install --config %build_type%

View File

@@ -123,7 +123,7 @@ if (OPENVDB_FIND_MODULE_PATH)
endif ()
# ###########################################################################
cmake_minimum_required(VERSION 3.3)
cmake_minimum_required(VERSION 3.13)
# Monitoring <PackageName>_ROOT variables
if(POLICY CMP0074)
cmake_policy(SET CMP0074 NEW)

View File

@@ -0,0 +1,15 @@
find_path(LIBNOISE_INCLUDE_DIR libnoise/noise.h)
find_library(LIBNOISE_LIBRARY NAMES libnoise libnoise_static liblibnoise_static)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(libnoise DEFAULT_MSG
LIBNOISE_LIBRARY
LIBNOISE_INCLUDE_DIR
)
if(libnoise_FOUND)
add_library(noise::noise STATIC IMPORTED)
set_target_properties(noise::noise PROPERTIES
IMPORTED_LOCATION "${LIBNOISE_LIBRARY}"
INTERFACE_INCLUDE_DIRECTORIES "${LIBNOISE_INCLUDE_DIR}"
)
endif()

59
deps/CGAL/0001-clang19.patch vendored Normal file
View File

@@ -0,0 +1,59 @@
--- a/BGL/include/CGAL/boost/graph/iterator.h 2022-10-07 19:04:41 UTC
+++ b/BGL/include/CGAL/boost/graph/iterator.h
@@ -213,18 +213,7 @@ class Halfedge_around_source_iterator { (public)
{}
#ifndef DOXYGEN_RUNNING
- // design patter: "safe bool"
- // will be replaced by explicit operator bool with C++11
- typedef void (Halfedge_around_source_iterator::*bool_type)() const;
- void this_type_does_not_support_comparisons() const {}
-
- operator bool_type() const
- {
- return (! (this->base() == nullptr)) ?
- &Halfedge_around_source_iterator::this_type_does_not_support_comparisons : 0;
- }
-
bool operator==( const Self& i) const {
CGAL_assertion( anchor == anchor);
return ( g == i.g) && ( pos == i.pos) && ( winding == i.winding);
@@ -313,18 +302,7 @@ class Halfedge_around_target_iterator { (public)
{}
#ifndef DOXYGEN_RUNNING
- // design patter: "safe bool"
- // will be replaced by explicit operator bool with C++11
- typedef void (Halfedge_around_target_iterator::*bool_type)() const;
- void this_type_does_not_support_comparisons() const {}
-
- operator bool_type() const
- {
- return (! (this->base() == nullptr)) ?
- &Halfedge_around_target_iterator::this_type_does_not_support_comparisons : 0;
- }
-
bool operator==( const Self& i) const {
CGAL_assertion( anchor == anchor);
return ( g == i.g) && ( pos == i.pos) && ( winding == i.winding);
@@ -411,18 +389,6 @@ class Halfedge_around_face_iterator { (public)
const value_type& operator * ( ) const { return pos; }
pointer operator -> ( ) { return &pos; }
const value_type* operator -> ( ) const { return &pos; }
-
- // design patter: "safe bool"
- // will be replaced by explicit operator bool with C++11
- typedef void (Halfedge_around_face_iterator::*bool_type)() const;
-
- void this_type_does_not_support_comparisons() const {}
-
- operator bool_type() const
- {
- return (! (this->base() == nullptr)) ?
- &Halfedge_around_face_iterator::this_type_does_not_support_comparisons : 0;
- }
bool operator==( const Self& i) const {
CGAL_assertion( anchor == anchor);

View File

@@ -1,3 +1,7 @@
if (IN_GIT_REPO)
set(CGAL_DIRECTORY_FLAG --directory ${BINARY_DIR_REL}/dep_CGAL-prefix/src/dep_CGAL)
endif ()
orcaslicer_add_cmake_project(
CGAL
# GIT_REPOSITORY https://github.com/CGAL/cgal.git
@@ -5,6 +9,7 @@ orcaslicer_add_cmake_project(
# For whatever reason, this keeps downloading forever (repeats downloads if finished)
URL https://github.com/CGAL/cgal/archive/refs/tags/v5.4.zip
URL_HASH SHA256=d7605e0a5a5ca17da7547592f6f6e4a59430a0bc861948974254d0de43eab4c0
PATCH_COMMAND git apply ${CGAL_DIRECTORY_FLAG} --verbose --ignore-space-change --whitespace=fix ${CMAKE_CURRENT_LIST_DIR}/0001-clang19.patch
DEPENDS dep_Boost dep_GMP dep_MPFR
)

47
deps/CMakeLists.txt vendored
View File

@@ -30,6 +30,10 @@ if (APPLE)
endif ()
if(POLICY CMP0135) # DOWNLOAD_EXTRACT_TIMESTAMP
cmake_policy(SET CMP0135 NEW)
endif()
project(OrcaSlicer-deps)
include(ExternalProject)
@@ -41,7 +45,7 @@ if (NPROC EQUAL 0)
endif ()
set(DESTDIR "${CMAKE_CURRENT_BINARY_DIR}/destdir" CACHE PATH "Destination directory")
set(DEP_DOWNLOAD_DIR ${CMAKE_CURRENT_BINARY_DIR}/../DL_CACHE CACHE PATH "Path for downloaded source packages.")
set(DEP_DOWNLOAD_DIR ${CMAKE_CURRENT_SOURCE_DIR}/DL_CACHE CACHE PATH "Path for downloaded source packages.")
set(FLATPAK FALSE CACHE BOOL "Toggles various build settings for flatpak, like /usr/local in DESTDIR or not building wxwidgets")
if (NOT FLATPAK)
set(DESTDIR "${DESTDIR}/usr/local/")
@@ -56,10 +60,6 @@ endif ()
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
option(DEP_WX_GTK3 "Build wxWidgets against GTK3" OFF)
else()
if(POLICY CMP0135) # DOWNLOAD_EXTRACT_TIMESTAMP
cmake_policy(SET CMP0135 NEW)
endif()
endif()
set(IS_CROSS_COMPILE FALSE)
@@ -88,7 +88,7 @@ endif ()
# option(DEP_BUILD_IGL_STATIC "Build IGL as a static library. Might cause link errors and increase binary size." OFF)
message(STATUS "OrcaSlicer deps DESTDIR: ${DESTDIR}")
message(STATUS "OrcaSlicer dowload dir for source packages: ${DEP_DOWNLOAD_DIR}")
message(STATUS "OrcaSlicer download dir for source packages: ${DEP_DOWNLOAD_DIR}")
message(STATUS "OrcaSlicer deps debug build: ${DEP_DEBUG}")
find_package(Git REQUIRED)
@@ -203,13 +203,13 @@ endfunction(orcaslicer_add_cmake_project)
if (MSVC)
if ("${CMAKE_SIZEOF_VOID_P}" STREQUAL "8")
message(STATUS "\nDetected 64-bit compiler => building 64-bit deps bundle\n")
set(DEPS_BITS 64)
if ("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "AMD64")
message(STATUS "\nDetected X64 compiler => building X64 deps bundle\n")
set(DEPS_ARCH "x64")
include("deps-windows.cmake")
elseif ("${CMAKE_SIZEOF_VOID_P}" STREQUAL "4")
message(STATUS "\nDetected 32-bit compiler => building 32-bit deps bundle\n")
set(DEPS_BITS 32)
elseif ("${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "X86")
message(STATUS "\nDetected X86 compiler => building X86 deps bundle\n")
set(DEPS_ARCH "x86")
include("deps-windows.cmake")
else ()
message(FATAL_ERROR "Unable to detect architecture")
@@ -248,7 +248,6 @@ if(FLATPAK)
find_package(EXPAT)
find_package(CURL)
find_package(JPEG)
find_package(TIFF)
find_package(Freetype)
find_package(OpenSSL 1.1...<3.2)
find_package(CURL)
@@ -293,6 +292,7 @@ include(MPFR/MPFR.cmake)
include(CGAL/CGAL.cmake)
include(NLopt/NLopt.cmake)
include(libnoise/libnoise.cmake)
# I *think* 1.1 is used for *just* md5 hashing?
@@ -320,12 +320,6 @@ if (NOT JPEG_FOUND)
set(JPEG_PKG dep_JPEG)
endif()
set(TIFF_PKG "")
if (NOT TIFF_FOUND)
include(TIFF/TIFF.cmake)
set(TIFF_PKG "dep_TIFF")
endif()
# flatpak builds wxwidgets separately
set(WXWIDGETS_PKG "")
if (NOT FLATPAK)
@@ -339,6 +333,20 @@ if(NOT FREETYPE_FOUND)
set(FREETYPE_PKG "dep_FREETYPE")
endif()
execute_process(
COMMAND ${GIT_EXECUTABLE} rev-parse --is-inside-work-tree
RESULT_VARIABLE REV_PARSE_RESULT
OUTPUT_VARIABLE REV_PARSE_OUTPUT
OUTPUT_STRIP_TRAILING_WHITESPACE
)
# Will output "true" and have a 0 return code if within a git repo
if((REV_PARSE_RESULT EQUAL 0) AND (REV_PARSE_OUTPUT STREQUAL "true"))
set(IN_GIT_REPO TRUE)
# Find relative path from root to source used for adjusting patch command
file(RELATIVE_PATH BINARY_DIR_REL ${CMAKE_SOURCE_DIR}/.. ${CMAKE_BINARY_DIR})
endif ()
include(OCCT/OCCT.cmake)
include(OpenCV/OpenCV.cmake)
@@ -360,6 +368,7 @@ set(_dep_list
${PNG_PKG}
${ZLIB_PKG}
${EXPAT_PKG}
dep_libnoise
)
if (MSVC)

View File

@@ -11,7 +11,7 @@ else()
endif()
orcaslicer_add_cmake_project(FREETYPE
URL https://mirror.ossplanet.net/nongnu/freetype/freetype-2.12.1.tar.gz
URL https://github.com/SoftFever/orca_deps/releases/download/freetype-2.12.1.tar.gz/freetype-2.12.1.tar.gz
URL_HASH SHA256=efe71fd4b8246f1b0b1b9bfca13cfff1c9ad85930340c27df469733bbb620938
#DEPENDS ${ZLIB_PKG}
#"${_patch_step}"

View File

@@ -22,7 +22,6 @@ https://github.com/nigels-com/glew
* [Install build tools](#install-build-tools)
* [Build](#build-1)
* [Linux EGL](#linux-egl)
* [Linux OSMesa](#linux-osmesa)
* [Linux mingw-w64](#linux-mingw-w64)
* [Using cmake](#using-cmake)
* [Install build tools](#install-build-tools-1)
@@ -95,11 +94,6 @@ _Note: you may need to call `make` in the **auto** folder first_
$ sudo apt install libegl1-mesa-dev
$ make SYSTEM=linux-egl
##### Linux OSMesa
$ sudo apt install libosmesa-dev
$ make SYSTEM=linux-osmesa
##### Linux mingw-w64
$ sudo apt install mingw-w64
@@ -140,7 +134,6 @@ RedHat/CentOS/Fedora: `$ sudo yum install libXmu-devel libXi-devel libGL-devel c
| --------------- | ----------- |
| BUILD_UTILS | Build the `glewinfo` and `visualinfo` executables. |
| GLEW_REGAL | Build in Regal mode. |
| GLEW_OSMESA | Build in off-screen Mesa mode. |
| BUILD_FRAMEWORK | Build as MacOSX Framework. Setting `CMAKE_INSTALL_PREFIX` to `/Library/Frameworks` is recommended. |
### Windows

32
deps/GMP/0001-GMP_GCC15.patch vendored Normal file
View File

@@ -0,0 +1,32 @@
--- GMP/acinclude.m4 2025-05-14 18:50:11.396354745 -0400
+++ GMP/acinclude.m4.2 2025-05-14 18:57:20.757853503 -0400
@@ -609,7 +609,7 @@
#if defined (__GNUC__) && ! defined (__cplusplus)
typedef unsigned long long t1;typedef t1*t2;
-void g(){}
+void g(int,t1 const*,t1,t2,t1 const*,int){}
void h(){}
static __inline__ t1 e(t2 rp,t2 up,int n,t1 v0)
{t1 c,x,r;int i;if(v0){c=1;for(i=1;i<n;i++){x=up[i];r=x+1;rp[i]=r;}}return c;}
--- GMP/configure 2025-05-14 19:33:35.730593315 -0400
+++ GMP/configure 2025-05-14 19:35:37.805619186 -0400
@@ -6526,7 +6526,7 @@
#if defined (__GNUC__) && ! defined (__cplusplus)
typedef unsigned long long t1;typedef t1*t2;
-void g(){}
+void g(int,t1 const*,t1,t2,t1 const*,int){}
void h(){}
static __inline__ t1 e(t2 rp,t2 up,int n,t1 v0)
{t1 c,x,r;int i;if(v0){c=1;for(i=1;i<n;i++){x=up[i];r=x+1;rp[i]=r;}}return c;}
@@ -8145,7 +8145,7 @@
#if defined (__GNUC__) && ! defined (__cplusplus)
typedef unsigned long long t1;typedef t1*t2;
-void g(){}
+void g(int,t1 const*,t1,t2,t1 const*,int){}
void h(){}
static __inline__ t1 e(t2 rp,t2 up,int n,t1 v0)
{t1 c,x,r;int i;if(v0){c=1;for(i=1;i<n;i++){x=up[i];r=x+1;rp[i]=r;}}return c;}

17
deps/GMP/GMP.cmake vendored
View File

@@ -1,18 +1,22 @@
set(_srcdir ${CMAKE_CURRENT_LIST_DIR}/gmp)
if (IN_GIT_REPO)
set(GMP_DIRECTORY_FLAG --directory ${BINARY_DIR_REL}/dep_GMP-prefix/src/dep_GMP)
endif ()
if (MSVC)
set(_output ${DESTDIR}/include/gmp.h
${DESTDIR}/lib/libgmp-10.lib
set(_output ${DESTDIR}/include/gmp.h
${DESTDIR}/lib/libgmp-10.lib
${DESTDIR}/bin/libgmp-10.dll)
add_custom_command(
OUTPUT ${_output}
COMMAND ${CMAKE_COMMAND} -E copy ${_srcdir}/include/gmp.h ${DESTDIR}/include/
COMMAND ${CMAKE_COMMAND} -E copy ${_srcdir}/lib/win${DEPS_BITS}/libgmp-10.lib ${DESTDIR}/lib/
COMMAND ${CMAKE_COMMAND} -E copy ${_srcdir}/lib/win${DEPS_BITS}/libgmp-10.dll ${DESTDIR}/bin/
COMMAND ${CMAKE_COMMAND} -E copy ${_srcdir}/lib/win-${DEPS_ARCH}/libgmp-10.lib ${DESTDIR}/lib/
COMMAND ${CMAKE_COMMAND} -E copy ${_srcdir}/lib/win-${DEPS_ARCH}/libgmp-10.dll ${DESTDIR}/bin/
)
add_custom_target(dep_GMP SOURCES ${_output})
else ()
@@ -59,7 +63,8 @@ else ()
URL https://github.com/SoftFever/OrcaSlicer_deps/releases/download/gmp-6.2.1/gmp-6.2.1.tar.bz2
URL_HASH SHA256=eae9326beb4158c386e39a356818031bd28f3124cf915f8c5b1dc4c7a36b4d7c
DOWNLOAD_DIR ${DEP_DOWNLOAD_DIR}/GMP
BUILD_IN_SOURCE ON
PATCH_COMMAND git apply ${GMP_DIRECTORY_FLAG} --verbose ${CMAKE_CURRENT_LIST_DIR}/0001-GMP_GCC15.patch
BUILD_IN_SOURCE ON
CONFIGURE_COMMAND env "CFLAGS=${_gmp_ccflags}" "CXXFLAGS=${_gmp_ccflags}" ./configure ${_cross_compile_arg} --enable-shared=no --enable-cxx=yes --enable-static=yes "--prefix=${DESTDIR}" ${_gmp_build_tgt}
BUILD_COMMAND make -j
INSTALL_COMMAND make install

View File

@@ -10,8 +10,8 @@ if (MSVC)
OUTPUT ${_output}
COMMAND ${CMAKE_COMMAND} -E copy ${_srcdir}/include/mpfr.h ${DESTDIR}/include/
COMMAND ${CMAKE_COMMAND} -E copy ${_srcdir}/include/mpf2mpfr.h ${DESTDIR}/include/
COMMAND ${CMAKE_COMMAND} -E copy ${_srcdir}/lib/win${DEPS_BITS}/libmpfr-4.lib ${DESTDIR}/lib/
COMMAND ${CMAKE_COMMAND} -E copy ${_srcdir}/lib/win${DEPS_BITS}/libmpfr-4.dll ${DESTDIR}/bin/
COMMAND ${CMAKE_COMMAND} -E copy ${_srcdir}/lib/win-${DEPS_ARCH}/libmpfr-4.lib ${DESTDIR}/lib/
COMMAND ${CMAKE_COMMAND} -E copy ${_srcdir}/lib/win-${DEPS_ARCH}/libmpfr-4.dll ${DESTDIR}/bin/
)
add_custom_target(dep_MPFR SOURCES ${_output})
@@ -25,8 +25,8 @@ else ()
endif ()
ExternalProject_Add(dep_MPFR
URL https://www.mpfr.org/mpfr-current/mpfr-4.2.1.tar.bz2
URL_HASH SHA256=b9df93635b20e4089c29623b19420c4ac848a1b29df1cfd59f26cab0d2666aa0
URL https://www.mpfr.org/mpfr-4.2.2/mpfr-4.2.2.tar.bz2
URL_HASH SHA256=9ad62c7dc910303cd384ff8f1f4767a655124980bb6d8650fe62c815a231bb7b
DOWNLOAD_DIR ${DEP_DOWNLOAD_DIR}/MPFR
BUILD_IN_SOURCE ON
CONFIGURE_COMMAND autoreconf -f -i &&

View File

@@ -195,3 +195,27 @@ index 5ae9899f..0a17372b 100644
if (!myFTLib->IsValid())
{
From 7236e83dcc1e7284e66dc61e612154617ef715d6 Mon Sep 17 00:00:00 2001
From: dpasukhi <dpasukhi@opencascade.com>
Date: Tue, 27 Aug 2024 11:33:29 +0100
Subject: [PATCH] 0033808: Coding - FreeType Use unsigned point and contour
indexing in `FT_Outline`
Changes to auto instead of specific type
---
src/StdPrs/StdPrs_BRepFont.cxx | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/StdPrs/StdPrs_BRepFont.cxx b/src/StdPrs/StdPrs_BRepFont.cxx
index ab2d9b3c9f..cd701879b1 100644
--- a/src/StdPrs/StdPrs_BRepFont.cxx
+++ b/src/StdPrs/StdPrs_BRepFont.cxx
@@ -457,7 +457,7 @@ Standard_Boolean StdPrs_BRepFont::renderGlyph (const Standard_Utf32Char theChar,
for (short aContour = 0, aStartIndex = 0; aContour < anOutline->n_contours; ++aContour)
{
const FT_Vector* aPntList = &anOutline->points[aStartIndex];
- const char* aTags = &anOutline->tags[aStartIndex];
+ const auto* aTags = &anOutline->tags[aStartIndex];
const short anEndIndex = anOutline->contours[aContour];
const short aPntsNb = (anEndIndex - aStartIndex) + 1;
aStartIndex = anEndIndex + 1;

View File

@@ -4,15 +4,15 @@ else()
set(library_build_type "Static")
endif()
# get relative path of CMAKE_BINARY_DIR against root source directory
file(RELATIVE_PATH BINARY_DIR_REL ${CMAKE_SOURCE_DIR}/.. ${CMAKE_BINARY_DIR})
if (IN_GIT_REPO)
set(OCCT_DIRECTORY_FLAG --directory ${BINARY_DIR_REL}/dep_OCCT-prefix/src/dep_OCCT)
endif ()
orcaslicer_add_cmake_project(OCCT
URL https://github.com/Open-Cascade-SAS/OCCT/archive/refs/tags/V7_6_0.zip
URL_HASH SHA256=28334f0e98f1b1629799783e9b4d21e05349d89e695809d7e6dfa45ea43e1dbc
#PATCH_COMMAND ${PATCH_CMD} ${CMAKE_CURRENT_LIST_DIR}/0001-OCCT-fix.patch
PATCH_COMMAND git apply --directory ${BINARY_DIR_REL}/dep_OCCT-prefix/src/dep_OCCT --verbose --ignore-space-change --whitespace=fix ${CMAKE_CURRENT_LIST_DIR}/0001-OCCT-fix.patch
PATCH_COMMAND git apply ${OCCT_DIRECTORY_FLAG} --verbose --ignore-space-change --whitespace=fix ${CMAKE_CURRENT_LIST_DIR}/0001-OCCT-fix.patch
#DEPENDS dep_Boost
DEPENDS ${FREETYPE_PKG}
CMAKE_ARGS
@@ -22,6 +22,7 @@ orcaslicer_add_cmake_project(OCCT
#-DUSE_FREETYPE=OFF
-DUSE_FFMPEG=OFF
-DUSE_VTK=OFF
-DBUILD_DOC_Overview=OFF
-DBUILD_MODULE_ApplicationFramework=OFF
#-DBUILD_MODULE_DataExchange=OFF
-DBUILD_MODULE_Draw=OFF

54
deps/OpenCV/0002-clang19-macos.patch vendored Normal file
View File

@@ -0,0 +1,54 @@
From 893b8113f04d408cc6177c6de19c9889a48faa24 Mon Sep 17 00:00:00 2001
From: Zixu Wang <zixu_wang@apple.com>
Date: Thu, 18 Jan 2024 11:12:00 -0800
Subject: [PATCH] Fix unused platform check and configuration for macOS
In a similar manner as zlib (https://github.com/madler/zlib/pull/895),
libpng contains a header configuration that's no longer valid and
hasn't been exercised for the macOS target.
- The target OS conditional macros are misused. Specifically
`TARGET_OS_MAC` covers all Apple targets, including iOS, and it
should not be checked with `#if defined` as they would always be
defined (to either 1 or 0) on Apple platforms.
- `#include <fp.h>` no longer works for the macOS target and results
in a compilation failure. macOS ships all required functions in
`math.h`, and clients should use `math.h` instead.
This problem has not been noticed until a recent extension in clang
(https://github.com/llvm/llvm-project/pull/74676) exposed the issue
and broke libpng builds on Apple platforms. The failure can be
reproduced now by adding `#include <TargetConditionals.h>` before the
block.
Signed-off-by: Cosmin Truta <ctruta@gmail.com>
---
AUTHORS | 2 ++
pngpriv.h | 14 ++------------
2 files changed, 4 insertions(+), 12 deletions(-)
diff --git a/3rdparty/libpng/pngpriv.h b/3rdparty/libpng/pngpriv.h
index 6c7280cf53..190eb85cbf 100644
--- a/3rdparty/libpng/pngpriv.h
+++ b/3rdparty/libpng/pngpriv.h
@@ -556,18 +556,8 @@
*/
# include <float.h>
-# if (defined(__MWERKS__) && defined(macintosh)) || defined(applec) || \
- defined(THINK_C) || defined(__SC__) || defined(TARGET_OS_MAC)
- /* We need to check that <math.h> hasn't already been included earlier
- * as it seems it doesn't agree with <fp.h>, yet we should really use
- * <fp.h> if possible.
- */
-# if !defined(__MATH_H__) && !defined(__MATH_H) && !defined(__cmath__)
-# include <fp.h>
-# endif
-# else
-# include <math.h>
-# endif
+# include <math.h>
+
# if defined(_AMIGA) && defined(__SASC) && defined(_M68881)
/* Amiga SAS/C: We must include builtin FPU functions when compiling using
* MATH=68881

View File

@@ -4,10 +4,14 @@ else ()
set(_use_IPP "-DWITH_IPP=OFF")
endif ()
if (IN_GIT_REPO)
set(OpenCV_DIRECTORY_FLAG --directory ${BINARY_DIR_REL}/dep_OpenCV-prefix/src/dep_OpenCV)
endif ()
orcaslicer_add_cmake_project(OpenCV
URL https://github.com/opencv/opencv/archive/refs/tags/4.6.0.tar.gz
URL_HASH SHA256=1ec1cba65f9f20fe5a41fda1586e01c70ea0c9a6d7b67c9e13edf0cfe2239277
PATCH_COMMAND git apply --directory ${BINARY_DIR_REL}/dep_OpenCV-prefix/src/dep_OpenCV --verbose --ignore-space-change --whitespace=fix ${CMAKE_CURRENT_LIST_DIR}/0001-vs2022.patch
PATCH_COMMAND git apply ${OpenCV_DIRECTORY_FLAG} --verbose --ignore-space-change --whitespace=fix ${CMAKE_CURRENT_LIST_DIR}/0001-vs2022.patch ${CMAKE_CURRENT_LIST_DIR}/0002-clang19-macos.patch
CMAKE_ARGS
-DBUILD_SHARED_LIBS=0
-DBUILD_PERE_TESTS=OFF

29
deps/OpenVDB/0001-clang19.patch vendored Normal file
View File

@@ -0,0 +1,29 @@
--- a/openvdb/openvdb/tree/NodeManager.h 2023-11-01 20:31:11 UTC
+++ b/openvdb/openvdb/tree/NodeManager.h
@@ -327,7 +327,7 @@ class NodeList (private)
void operator()(const NodeRange& range) const
{
for (typename NodeRange::Iterator it = range.begin(); it; ++it) {
- OpT::template eval(mNodeOp, it);
+ OpT::eval(mNodeOp, it);
}
}
const NodeOp mNodeOp;
@@ -347,7 +347,7 @@ class NodeList (private)
void operator()(const NodeRange& range) const
{
for (typename NodeRange::Iterator it = range.begin(); it; ++it) {
- OpT::template eval(mNodeOp, it);
+ OpT::eval(mNodeOp, it);
}
}
const NodeOp& mNodeOp;
@@ -372,7 +372,7 @@ class NodeList (private)
void operator()(const NodeRange& range)
{
for (typename NodeRange::Iterator it = range.begin(); it; ++it) {
- OpT::template eval(*mNodeOp, it);
+ OpT::eval(*mNodeOp, it);
}
}
void join(const NodeReducer& other)

View File

@@ -6,10 +6,15 @@ else()
set(_build_static ON)
endif()
if (IN_GIT_REPO)
set(OPENVDB_DIRECTORY_FLAG --directory ${BINARY_DIR_REL}/dep_OpenVDB-prefix/src/dep_OpenVDB)
endif ()
orcaslicer_add_cmake_project(OpenVDB
# support vs2022, update to 8.2
URL https://github.com/tamasmeszaros/openvdb/archive/a68fd58d0e2b85f01adeb8b13d7555183ab10aa5.zip
URL_HASH SHA256=f353e7b99bd0cbfc27ac9082de51acf32a8bc0b3e21ff9661ecca6f205ec1d81
PATCH_COMMAND git apply ${OPENVDB_DIRECTORY_FLAG} --verbose --ignore-space-change --whitespace=fix ${CMAKE_CURRENT_LIST_DIR}/0001-clang19.patch
DEPENDS dep_TBB dep_Blosc dep_OpenEXR dep_Boost
CMAKE_ARGS
-DCMAKE_POSITION_INDEPENDENT_CODE=ON

29
deps/PNG/0002-clang19-macos.patch vendored Normal file
View File

@@ -0,0 +1,29 @@
--- a/pngpriv.h 2025-04-20 19:36:04.000000000
+++ b/pngpriv.h 2025-04-20 19:35:55.000000000
@@ -511,24 +511,14 @@
* DBL_DIG Maximum number of decimal digits (can be set to any constant)
* DBL_MIN Smallest normalized fp number (can be set to an arbitrary value)
* DBL_MAX Maximum floating point number (can be set to an arbitrary value)
*/
# include <float.h>
-# if (defined(__MWERKS__) && defined(macintosh)) || defined(applec) || \
- defined(THINK_C) || defined(__SC__) || defined(TARGET_OS_MAC)
- /* We need to check that <math.h> hasn't already been included earlier
- * as it seems it doesn't agree with <fp.h>, yet we should really use
- * <fp.h> if possible.
- */
-# if !defined(__MATH_H__) && !defined(__MATH_H) && !defined(__cmath__)
-# include <fp.h>
-# endif
-# else
-# include <math.h>
-# endif
+# include <math.h>
+
# if defined(_AMIGA) && defined(__SASC) && defined(_M68881)
/* Amiga SAS/C: We must include builtin FPU functions when compiling using
* MATH=68881
*/
# include <m68881.h>
# endif

4
deps/PNG/PNG.cmake vendored
View File

@@ -12,7 +12,7 @@ if(APPLE AND IS_CROSS_COMPILE)
GIT_TAG v1.6.35
DEPENDS ${ZLIB_PKG}
PATCH_COMMAND ${GIT_EXECUTABLE} checkout -f -- . && git clean -df &&
${GIT_EXECUTABLE} apply --whitespace=fix ${CMAKE_CURRENT_LIST_DIR}/macos-arm64.patch
${GIT_EXECUTABLE} apply --whitespace=fix ${CMAKE_CURRENT_LIST_DIR}/macos-arm64.patch ${CMAKE_CURRENT_LIST_DIR}/0002-clang19-macos.patch
CMAKE_ARGS
-DPNG_SHARED=OFF
-DPNG_STATIC=ON
@@ -24,7 +24,7 @@ if(APPLE AND IS_CROSS_COMPILE)
else ()
set(_patch_step "")
if (APPLE)
set(_patch_step PATCH_COMMAND ${PATCH_CMD} ${CMAKE_CURRENT_LIST_DIR}/PNG.patch)
set(_patch_step PATCH_COMMAND ${PATCH_CMD} ${CMAKE_CURRENT_LIST_DIR}/PNG.patch ${CMAKE_CURRENT_LIST_DIR}/0002-clang19-macos.patch)
endif ()
orcaslicer_add_cmake_project(PNG
# GIT_REPOSITORY https://github.com/glennrp/libpng.git

33
deps/TIFF/TIFF.cmake vendored
View File

@@ -1,33 +0,0 @@
find_package(OpenGL QUIET REQUIRED)
if (APPLE)
message(STATUS "Compiling TIFF for macos ${CMAKE_SYSTEM_VERSION}.")
orcaslicer_add_cmake_project(TIFF
URL https://gitlab.com/libtiff/libtiff/-/archive/v4.3.0/libtiff-v4.3.0.zip
URL_HASH SHA256=4fca1b582c88319f3ad6ecd5b46320eadaf5eb4ef6f6c32d44caaae4a03d0726
DEPENDS ${ZLIB_PKG} ${PNG_PKG} dep_JPEG
CMAKE_ARGS
-Dlzma:BOOL=OFF
-Dwebp:BOOL=OFF
-Djbig:BOOL=OFF
-Dzstd:BOOL=OFF
-Dlibdeflate:BOOL=OFF
-Dpixarlog:BOOL=OFF
)
else()
orcaslicer_add_cmake_project(TIFF
URL https://gitlab.com/libtiff/libtiff/-/archive/v4.1.0/libtiff-v4.1.0.zip
URL_HASH SHA256=c56edfacef0a60c0de3e6489194fcb2f24c03dbb550a8a7de5938642d045bd32
DEPENDS ${ZLIB_PKG} ${PNG_PKG} dep_JPEG
CMAKE_ARGS
-Dlzma:BOOL=OFF
-Dwebp:BOOL=OFF
-Djbig:BOOL=OFF
-Dzstd:BOOL=OFF
-Dpixarlog:BOOL=OFF
)
endif()

File diff suppressed because it is too large Load Diff

View File

@@ -5,11 +5,27 @@
#ifndef __core_webview2_environment_options_h__
#define __core_webview2_environment_options_h__
// Adding the definition of this macro to enable unsafe buffer usage
#ifndef UNSAFE_BUFFERS
#if defined(__clang__)
// clang-format off
#define UNSAFE_BUFFERS(...) \
_Pragma("clang unsafe_buffer_usage begin") \
__VA_ARGS__ \
_Pragma("clang unsafe_buffer_usage end")
// clang-format on
#else
#define UNSAFE_BUFFERS(...) __VA_ARGS__
#endif
#endif
#include <objbase.h>
#include <wrl/implements.h>
#include "webview2.h"
#define CORE_WEBVIEW_TARGET_PRODUCT_VERSION L"107.0.1418.22"
#include "WebView2.h"
#define CORE_WEBVIEW_TARGET_PRODUCT_VERSION L"138.0.3351.48"
#define COREWEBVIEW2ENVIRONMENTOPTIONS_STRING_PROPERTY(p) \
public: \
@@ -31,21 +47,180 @@
protected: \
AutoCoMemString m_##p;
#define COREWEBVIEW2ENVIRONMENTOPTIONS_BOOL_PROPERTY(p) \
public: \
HRESULT STDMETHODCALLTYPE get_##p(BOOL* value) override { \
if (!value) \
return E_POINTER; \
*value = m_##p; \
return S_OK; \
} \
HRESULT STDMETHODCALLTYPE put_##p(BOOL value) override { \
m_##p = value; \
return S_OK; \
} \
\
protected: \
BOOL m_##p = FALSE;
#define COREWEBVIEW2ENVIRONMENTOPTIONS_BOOL_PROPERTY(p, defPVal) \
public: \
HRESULT STDMETHODCALLTYPE get_##p(BOOL* value) override { \
if (!value) \
return E_POINTER; \
*value = m_##p; \
return S_OK; \
} \
HRESULT STDMETHODCALLTYPE put_##p(BOOL value) override { \
m_##p = value; \
return S_OK; \
} \
\
protected: \
BOOL m_##p = defPVal ? TRUE : FALSE;
#define DEFINE_AUTO_COMEM_STRING() \
protected: \
class AutoCoMemString { \
public: \
AutoCoMemString() {} \
~AutoCoMemString() { Release(); } \
void Release() { \
if (m_string) { \
deallocate_fn(m_string); \
m_string = nullptr; \
} \
} \
\
LPCWSTR Set(LPCWSTR str) { \
Release(); \
if (str) { \
m_string = MakeCoMemString(str); \
} \
return m_string; \
} \
LPCWSTR Get() { return m_string; } \
LPWSTR Copy() { \
if (m_string) \
return MakeCoMemString(m_string); \
return nullptr; \
} \
\
protected: \
LPWSTR MakeCoMemString(LPCWSTR source) { \
const size_t length = wcslen(source); \
const size_t bytes = (length + 1) * sizeof(*source); \
\
if (bytes <= length) { \
return nullptr; \
} \
\
wchar_t* result = reinterpret_cast<wchar_t*>(allocate_fn(bytes)); \
\
if (result) \
memcpy(result, source, bytes); \
return result; \
} \
LPWSTR m_string = nullptr; \
};
template <typename allocate_fn_t,
allocate_fn_t allocate_fn,
typename deallocate_fn_t,
deallocate_fn_t deallocate_fn>
class CoreWebView2CustomSchemeRegistrationBase
: public Microsoft::WRL::RuntimeClass<
Microsoft::WRL::RuntimeClassFlags<Microsoft::WRL::ClassicCom>,
ICoreWebView2CustomSchemeRegistration> {
public:
CoreWebView2CustomSchemeRegistrationBase(LPCWSTR schemeName) {
m_schemeName.Set(schemeName);
}
CoreWebView2CustomSchemeRegistrationBase(
CoreWebView2CustomSchemeRegistrationBase&&) = default;
~CoreWebView2CustomSchemeRegistrationBase() { ReleaseAllowedOrigins(); }
HRESULT STDMETHODCALLTYPE get_SchemeName(LPWSTR* schemeName) override {
if (!schemeName)
return E_POINTER;
*schemeName = m_schemeName.Copy();
if ((*schemeName == nullptr) && (m_schemeName.Get() != nullptr))
return HRESULT_FROM_WIN32(GetLastError());
return S_OK;
}
HRESULT STDMETHODCALLTYPE
GetAllowedOrigins(UINT32* allowedOriginsCount,
LPWSTR** allowedOrigins) override {
if (!allowedOrigins || !allowedOriginsCount) {
return E_POINTER;
}
*allowedOriginsCount = 0;
if (m_allowedOriginsCount == 0) {
*allowedOrigins = nullptr;
return S_OK;
} else {
*allowedOrigins = reinterpret_cast<LPWSTR*>(
allocate_fn(m_allowedOriginsCount * sizeof(LPWSTR)));
if (!(*allowedOrigins)) {
return HRESULT_FROM_WIN32(GetLastError());
}
ZeroMemory(*allowedOrigins, m_allowedOriginsCount * sizeof(LPWSTR));
for (UINT32 i = 0; i < m_allowedOriginsCount; i++) {
UNSAFE_BUFFERS((*allowedOrigins)[i] = m_allowedOrigins[i].Copy();
if (!(*allowedOrigins)[i]) {
HRESULT hr = HRESULT_FROM_WIN32(GetLastError());
for (UINT32 j = 0; j < i; j++) {
deallocate_fn((*allowedOrigins)[j]);
}
deallocate_fn(*allowedOrigins);
return hr;
})
}
*allowedOriginsCount = m_allowedOriginsCount;
return S_OK;
}
}
HRESULT STDMETHODCALLTYPE
SetAllowedOrigins(UINT32 allowedOriginsCount,
LPCWSTR* allowedOrigins) override {
ReleaseAllowedOrigins();
if (allowedOriginsCount == 0) {
return S_OK;
} else {
m_allowedOrigins = new AutoCoMemString[allowedOriginsCount];
if (!m_allowedOrigins) {
return HRESULT_FROM_WIN32(GetLastError());
}
for (UINT32 i = 0; i < allowedOriginsCount; i++) {
UNSAFE_BUFFERS(m_allowedOrigins[i].Set(allowedOrigins[i]);
if (!m_allowedOrigins[i].Get()) {
HRESULT hr = HRESULT_FROM_WIN32(GetLastError());
for (UINT32 j = 0; j < i; j++) {
m_allowedOrigins[j].Release();
}
m_allowedOriginsCount = 0;
delete[] (m_allowedOrigins);
return hr;
})
}
m_allowedOriginsCount = allowedOriginsCount;
return S_OK;
}
}
protected:
DEFINE_AUTO_COMEM_STRING()
void ReleaseAllowedOrigins() {
if (m_allowedOrigins) {
delete[] (m_allowedOrigins);
m_allowedOrigins = nullptr;
}
}
AutoCoMemString m_schemeName;
COREWEBVIEW2ENVIRONMENTOPTIONS_BOOL_PROPERTY(TreatAsSecure, false)
COREWEBVIEW2ENVIRONMENTOPTIONS_BOOL_PROPERTY(HasAuthorityComponent, false)
// WebView2EnvironmentOptions.h this is a publicly exposed header to clients
// and it used by them to integrate the webview2 enviorment as published at
// https://learn.microsoft.com/en-us/microsoft-edge/webview2/reference/win32/icorewebview2environmentoptions?view=webview2-1.0.3179.45
// This file is not included in msedge.dll/lib/exe and is limited to WebView2
// SDK which does not use partition alloc. So need to use raw_ptr_exclusion
// here.
#if defined(__has_attribute)
__attribute__((annotate("raw_ptr_exclusion")))
#endif
AutoCoMemString* m_allowedOrigins = nullptr;
unsigned int m_allowedOriginsCount = 0;
};
// This is a base COM class that implements ICoreWebView2EnvironmentOptions.
template <typename allocate_fn_t,
@@ -56,70 +231,183 @@ class CoreWebView2EnvironmentOptionsBase
: public Microsoft::WRL::Implements<
Microsoft::WRL::RuntimeClassFlags<Microsoft::WRL::ClassicCom>,
ICoreWebView2EnvironmentOptions,
ICoreWebView2EnvironmentOptions2> {
ICoreWebView2EnvironmentOptions2,
ICoreWebView2EnvironmentOptions3,
ICoreWebView2EnvironmentOptions4,
ICoreWebView2EnvironmentOptions5,
ICoreWebView2EnvironmentOptions6,
ICoreWebView2EnvironmentOptions7,
ICoreWebView2EnvironmentOptions8> {
public:
static const COREWEBVIEW2_RELEASE_CHANNELS kInternalChannel =
static_cast<COREWEBVIEW2_RELEASE_CHANNELS>(1 << 4);
static const COREWEBVIEW2_RELEASE_CHANNELS kAllChannels =
COREWEBVIEW2_RELEASE_CHANNELS_STABLE |
COREWEBVIEW2_RELEASE_CHANNELS_BETA | COREWEBVIEW2_RELEASE_CHANNELS_DEV |
COREWEBVIEW2_RELEASE_CHANNELS_CANARY | kInternalChannel;
CoreWebView2EnvironmentOptionsBase() {
// Initialize the target compatible browser version value to the version of
// the browser binaries corresponding to this version of the SDK.
// Initialize the target compatible browser version value to the version
// of the browser binaries corresponding to this version of the SDK.
m_TargetCompatibleBrowserVersion.Set(CORE_WEBVIEW_TARGET_PRODUCT_VERSION);
}
// ICoreWebView2EnvironmentOptions7
HRESULT STDMETHODCALLTYPE
get_ReleaseChannels(COREWEBVIEW2_RELEASE_CHANNELS* channels) override {
if (!channels) {
return E_POINTER;
}
*channels = m_releaseChannels;
return S_OK;
}
HRESULT STDMETHODCALLTYPE
put_ReleaseChannels(COREWEBVIEW2_RELEASE_CHANNELS channels) override {
m_releaseChannels = channels;
return S_OK;
}
HRESULT STDMETHODCALLTYPE
get_ChannelSearchKind(COREWEBVIEW2_CHANNEL_SEARCH_KIND* value) override {
if (!value) {
return E_POINTER;
}
*value = m_channelSearchKind;
return S_OK;
}
HRESULT STDMETHODCALLTYPE
put_ChannelSearchKind(COREWEBVIEW2_CHANNEL_SEARCH_KIND value) override {
m_channelSearchKind = value;
return S_OK;
}
// ICoreWebView2EnvironmentOptions8
HRESULT STDMETHODCALLTYPE
get_ScrollBarStyle(COREWEBVIEW2_SCROLLBAR_STYLE* style) override {
if (!style) {
return E_POINTER;
}
*style = m_scrollbarStyle;
return S_OK;
}
HRESULT STDMETHODCALLTYPE
put_ScrollBarStyle(COREWEBVIEW2_SCROLLBAR_STYLE style) override {
m_scrollbarStyle = style;
return S_OK;
}
protected:
~CoreWebView2EnvironmentOptionsBase() {}
~CoreWebView2EnvironmentOptionsBase() { ReleaseCustomSchemeRegistrations(); }
class AutoCoMemString {
public:
AutoCoMemString() {}
~AutoCoMemString() { Release(); }
void Release() {
if (m_string) {
deallocate_fn(m_string);
m_string = nullptr;
void ReleaseCustomSchemeRegistrations() {
if (m_customSchemeRegistrations) {
for (UINT32 i = 0; i < m_customSchemeRegistrationsCount; i++) {
// SAFETY: Since we can't convert the raw buffer to safe type we do a
// bound check and use the macro to mitigate the error.
UNSAFE_BUFFERS(m_customSchemeRegistrations[i])->Release();
}
deallocate_fn(m_customSchemeRegistrations);
m_customSchemeRegistrations = nullptr;
m_customSchemeRegistrationsCount = 0;
}
}
LPCWSTR Set(LPCWSTR str) {
Release();
if (str) {
m_string = MakeCoMemString(str);
}
return m_string;
}
LPCWSTR Get() { return m_string; }
LPWSTR Copy() {
if (m_string)
return MakeCoMemString(m_string);
return nullptr;
}
private:
// TODO(task.ms/56073082): Use raw_ptr.
#if defined(__has_attribute)
__attribute__((annotate("raw_ptr_exclusion")))
#endif
ICoreWebView2CustomSchemeRegistration** m_customSchemeRegistrations = nullptr;
unsigned int m_customSchemeRegistrationsCount = 0;
protected:
LPWSTR MakeCoMemString(LPCWSTR source) {
const size_t length = wcslen(source);
const size_t bytes = (length + 1) * sizeof(*source);
// Ensure we didn't overflow during our size calculation.
if (bytes <= length) {
return nullptr;
}
COREWEBVIEW2_RELEASE_CHANNELS m_releaseChannels = kAllChannels;
COREWEBVIEW2_CHANNEL_SEARCH_KIND m_channelSearchKind =
COREWEBVIEW2_CHANNEL_SEARCH_KIND_MOST_STABLE;
wchar_t* result = reinterpret_cast<wchar_t*>(allocate_fn(bytes));
if (result)
memcpy(result, source, bytes);
// ICoreWebView2EnvironmentOptions8
COREWEBVIEW2_SCROLLBAR_STYLE m_scrollbarStyle =
COREWEBVIEW2_SCROLLBAR_STYLE_DEFAULT;
return result;
}
LPWSTR m_string = nullptr;
};
DEFINE_AUTO_COMEM_STRING()
public:
// ICoreWebView2EnvironmentOptions
COREWEBVIEW2ENVIRONMENTOPTIONS_STRING_PROPERTY(AdditionalBrowserArguments)
COREWEBVIEW2ENVIRONMENTOPTIONS_STRING_PROPERTY(Language)
COREWEBVIEW2ENVIRONMENTOPTIONS_STRING_PROPERTY(TargetCompatibleBrowserVersion)
COREWEBVIEW2ENVIRONMENTOPTIONS_BOOL_PROPERTY(
AllowSingleSignOnUsingOSPrimaryAccount)
AllowSingleSignOnUsingOSPrimaryAccount,
false)
// ICoreWebView2EnvironmentOptions2
COREWEBVIEW2ENVIRONMENTOPTIONS_BOOL_PROPERTY(ExclusiveUserDataFolderAccess)
COREWEBVIEW2ENVIRONMENTOPTIONS_BOOL_PROPERTY(ExclusiveUserDataFolderAccess,
false)
// ICoreWebView2EnvironmentOptions3
COREWEBVIEW2ENVIRONMENTOPTIONS_BOOL_PROPERTY(IsCustomCrashReportingEnabled,
false)
// ICoreWebView2EnvironmentOptions4
public:
HRESULT STDMETHODCALLTYPE GetCustomSchemeRegistrations(
UINT32* count,
ICoreWebView2CustomSchemeRegistration*** schemeRegistrations) override {
if (!count || !schemeRegistrations) {
return E_POINTER;
}
*count = 0;
if (m_customSchemeRegistrationsCount == 0) {
*schemeRegistrations = nullptr;
return S_OK;
} else {
*schemeRegistrations =
reinterpret_cast<ICoreWebView2CustomSchemeRegistration**>(
allocate_fn(sizeof(ICoreWebView2CustomSchemeRegistration*) *
m_customSchemeRegistrationsCount));
if (!*schemeRegistrations) {
return HRESULT_FROM_WIN32(GetLastError());
}
for (UINT32 i = 0; i < m_customSchemeRegistrationsCount; i++) {
// SAFETY: Since we can't convert the raw buffer to safe type we do a
// bound check and use the macro to mitigate the error.
UNSAFE_BUFFERS((*schemeRegistrations)[i] =
m_customSchemeRegistrations[i];
(*schemeRegistrations)[i]->AddRef();)
}
*count = m_customSchemeRegistrationsCount;
return S_OK;
}
}
HRESULT STDMETHODCALLTYPE SetCustomSchemeRegistrations(
UINT32 count,
ICoreWebView2CustomSchemeRegistration** schemeRegistrations) override {
ReleaseCustomSchemeRegistrations();
m_customSchemeRegistrations =
reinterpret_cast<ICoreWebView2CustomSchemeRegistration**>(allocate_fn(
sizeof(ICoreWebView2CustomSchemeRegistration*) * count));
if (!m_customSchemeRegistrations) {
return GetLastError();
}
for (UINT32 i = 0; i < count; i++) {
// SAFETY: Since we can't convert the raw buffer to safe type we do a
// bound check and use the macro to mitigate the error.
UNSAFE_BUFFERS(m_customSchemeRegistrations[i] = schemeRegistrations[i];
m_customSchemeRegistrations[i]->AddRef());
}
m_customSchemeRegistrationsCount = count;
return S_OK;
}
// ICoreWebView2EnvironmentOptions5
COREWEBVIEW2ENVIRONMENTOPTIONS_BOOL_PROPERTY(EnableTrackingPrevention, true)
// ICoreWebView2EnvironmentOptions6
COREWEBVIEW2ENVIRONMENTOPTIONS_BOOL_PROPERTY(AreBrowserExtensionsEnabled,
false)
};
template <typename allocate_fn_t,
@@ -140,6 +428,12 @@ class CoreWebView2EnvironmentOptionsBaseClass
~CoreWebView2EnvironmentOptionsBaseClass() override {}
};
typedef CoreWebView2CustomSchemeRegistrationBase<decltype(&::CoTaskMemAlloc),
::CoTaskMemAlloc,
decltype(&::CoTaskMemFree),
::CoTaskMemFree>
CoreWebView2CustomSchemeRegistration;
typedef CoreWebView2EnvironmentOptionsBaseClass<decltype(&::CoTaskMemAlloc),
::CoTaskMemAlloc,
decltype(&::CoTaskMemFree),

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -27,16 +27,13 @@ if (CMAKE_CXX_COMPILER_ID STREQUAL Clang)
set(DEP_BOOST_TOOLSET "clang-win")
endif ()
if (${DEPS_BITS} EQUAL 32)
set(DEP_MSVC_GEN "Visual Studio ${DEP_VS_VER}")
set(DEP_MSVC_GEN "Visual Studio ${DEP_VS_VER}")
if ("${DEPS_ARCH}" STREQUAL "x86")
set(DEP_PLATFORM "Win32")
else ()
if (DEP_VS_VER LESS 16)
set(DEP_MSVC_GEN "Visual Studio ${DEP_VS_VER} Win64")
else ()
set(DEP_MSVC_GEN "Visual Studio ${DEP_VS_VER}")
endif ()
elseif ("${DEPS_ARCH}" STREQUAL "x64")
set(DEP_PLATFORM "x64")
else ()
message(FATAL_ERROR "Unsupported OS architecture")
endif ()
if (${DEP_DEBUG})
@@ -57,12 +54,14 @@ if (${DEP_DEBUG})
endif ()
endmacro()
if (${DEPS_BITS} EQUAL 32)
if ("${DEPS_ARCH}" STREQUAL "x86")
set(DEP_WXWIDGETS_TARGET "")
set(DEP_WXWIDGETS_LIBDIR "vc_lib")
else ()
elseif ("${DEPS_ARCH}" STREQUAL "x64")
set(DEP_WXWIDGETS_TARGET "TARGET_CPU=X64")
set(DEP_WXWIDGETS_LIBDIR "vc_x64_lib")
else ()
message(FATAL_ERROR "Unsupported OS architecture")
endif ()
find_package(Git REQUIRED)

4
deps/libnoise/libnoise.cmake vendored Normal file
View File

@@ -0,0 +1,4 @@
orcaslicer_add_cmake_project(libnoise
URL https://github.com/SoftFever/Orca-deps-libnoise/archive/refs/tags/1.0.zip
URL_HASH SHA256=96ffd6cc47898dd8147aab53d7d1b1911b507d9dbaecd5613ca2649468afd8b6
)

View File

@@ -18,7 +18,7 @@ else ()
endif ()
# Note: The flatpak build builds wxwidgets separately due to CI size constraints.
# ANY CHANGES MADE IN HERE MUST ALSO BE REFLECTED IN `flatpak/io.github.SoftFever.OrcaSlicer.yml`.
# ANY CHANGES MADE IN HERE MUST ALSO BE REFLECTED IN `scripts/flatpak/io.github.SoftFever.OrcaSlicer.yml`.
# ** THIS INCLUDES BUILD ARGS. **
# ...if you can find a way around this size limitation, be my guest.
@@ -26,7 +26,7 @@ orcaslicer_add_cmake_project(
wxWidgets
GIT_REPOSITORY "https://github.com/SoftFever/Orca-deps-wxWidgets"
GIT_SHALLOW ON
DEPENDS ${PNG_PKG} ${ZLIB_PKG} ${EXPAT_PKG} ${TIFF_PKG} ${JPEG_PKG}
DEPENDS ${PNG_PKG} ${ZLIB_PKG} ${EXPAT_PKG} ${JPEG_PKG}
CMAKE_ARGS
-DwxBUILD_PRECOMP=ON
${_wx_toolkit}
@@ -52,7 +52,7 @@ orcaslicer_add_cmake_project(
-DwxUSE_LIBPNG=sys
-DwxUSE_ZLIB=sys
-DwxUSE_LIBJPEG=sys
-DwxUSE_LIBTIFF=sys
-DwxUSE_LIBTIFF=OFF
-DwxUSE_NANOSVG=OFF
-DwxUSE_EXPAT=sys
)

35
deps_src/CMakeLists.txt Normal file
View File

@@ -0,0 +1,35 @@
cmake_minimum_required(VERSION 3.13)
project(deps_src)
# Include all dependency subdirectories
# Header-only libraries (INTERFACE)
add_subdirectory(agg)
add_subdirectory(ankerl)
add_subdirectory(fast_float)
add_subdirectory(nanosvg)
add_subdirectory(nlohmann)
add_subdirectory(spline) # Header-only spline library
add_subdirectory(stb_dxt) # Header-only STB DXT compression library
# Static libraries
add_subdirectory(Shiny)
add_subdirectory(admesh)
add_subdirectory(clipper)
add_subdirectory(expat)
add_subdirectory(glu-libtess)
add_subdirectory(hidapi)
add_subdirectory(hints) # Hints library with utility executable
add_subdirectory(imgui)
add_subdirectory(imguizmo)
add_subdirectory(libigl)
add_subdirectory(libnest2d)
add_subdirectory(mcut)
add_subdirectory(miniz)
add_subdirectory(minilzo)
add_subdirectory(qhull)
add_subdirectory(qoi)
add_subdirectory(semver) # Semver static library
# Eigen header-only library
add_subdirectory(eigen)

View File

@@ -0,0 +1,119 @@
# CMake Interfaces for deps_src Libraries
This document describes how to use the CMake interface libraries created for the subdirectories in `deps_src/`.
## Available Libraries
### 1. **semver** (Static Library)
- **Type**: Static library
- **Target**: `semver` or `semver::semver`
- **Headers**: `semver.h`
- **Usage**:
```cmake
target_link_libraries(your_target PRIVATE semver)
# or
target_link_libraries(your_target PRIVATE semver::semver)
```
### 2. **hints** (Interface Library)
- **Type**: Interface library (header-only)
- **Target**: `hints`
- **Utility**: `hintsToPot` executable
- **Usage**:
```cmake
target_link_libraries(your_target PRIVATE hints)
```
### 3. **spline** (Interface Library)
- **Type**: Interface library (header-only)
- **Target**: `spline` or `spline::spline`
- **Headers**: `spline.h`
- **Usage**:
```cmake
target_link_libraries(your_target PRIVATE spline)
# or
target_link_libraries(your_target PRIVATE spline::spline)
```
### 4. **stb_dxt** (Interface Library)
- **Type**: Interface library (header-only)
- **Target**: `stb_dxt` or `stb_dxt::stb_dxt`
- **Headers**: `stb_dxt.h`
- **Usage**:
```cmake
target_link_libraries(your_target PRIVATE stb_dxt)
# or
target_link_libraries(your_target PRIVATE stb_dxt::stb_dxt)
```
## How to Use in Your Project
### From within the OrcaSlicer src/ directory:
1. **In your CMakeLists.txt**, simply link the library:
```cmake
add_executable(my_app main.cpp)
target_link_libraries(my_app
PRIVATE
semver::semver # For version parsing
spline::spline # For spline interpolation
stb_dxt::stb_dxt # For DXT texture compression
hints # For hints functionality
)
```
2. **In your C++ code**, include the headers:
```cpp
// For semver
#include <semver.h>
// For spline
#include <spline.h>
// For stb_dxt
#include <stb_dxt.h>
// Use the libraries as documented in their respective headers
```
## Benefits of This Approach
1. **Modern CMake**: Uses target-based CMake with proper INTERFACE/PUBLIC/PRIVATE visibility
2. **Proper Include Paths**: Automatically sets up include directories
3. **Namespace Aliases**: Provides namespaced aliases (e.g., `spline::spline`) for clarity
4. **Position Independent Code**: Static libraries are built with `-fPIC` for compatibility
5. **Install Support**: Libraries can be installed and used by external projects
6. **Build/Install Interface**: Separates build-time and install-time include paths
## Example Integration
Here's a complete example of using these libraries in a new component:
```cmake
# In src/mycomponent/CMakeLists.txt
add_library(mycomponent STATIC
mycomponent.cpp
mycomponent.h
)
target_link_libraries(mycomponent
PUBLIC
semver::semver # Version handling is part of public API
PRIVATE
spline::spline # Used internally for interpolation
stb_dxt::stb_dxt # Used internally for texture compression
)
target_include_directories(mycomponent
PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
$<INSTALL_INTERFACE:include>
)
```
## Notes
- All header-only libraries use the INTERFACE library type, which means they don't produce any binaries
- The `semver` library produces a static library that will be linked into your target
- The `hints` project also produces a `hintsToPot` executable utility
- All libraries require at least C++11 (some require C++17)

View File

@@ -0,0 +1,29 @@
cmake_minimum_required(VERSION 3.13)
project(Shiny)
add_library(Shiny STATIC
Shiny.h
ShinyConfig.h
ShinyData.h
ShinyMacros.h
ShinyManager.c
ShinyManager.h
ShinyNode.c
ShinyNode.h
ShinyNodePool.c
ShinyNodePool.h
ShinyNodeState.c
ShinyNodeState.h
ShinyOutput.c
ShinyOutput.h
ShinyPrereqs.h
ShinyTools.c
ShinyTools.h
ShinyVersion.h
ShinyZone.c
ShinyZone.h
)
target_include_directories(Shiny PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
)

Some files were not shown because too many files have changed in this diff Show More