Compare commits

...

626 Commits

Author SHA1 Message Date
SoftFever
eb5a1bc713 Fixed an issue that profile OTA won't work if major version didn't match app version 2024-03-12 18:48:03 +08:00
SoftFever
9324313c28 bump version to 2.0.0-beta 2024-03-11 23:01:49 +08:00
SoftFever
8d62a47b4e fix build CI/CD 2024-03-11 23:01:49 +08:00
SoftFever
21488336f2 update BBL profile to "01.08.00.25" 2024-03-11 22:56:38 +08:00
SoftFever
8a1313aa43 bump printer profile version to 2.0 2024-03-11 22:42:32 +08:00
SoftFever
92df682a8b Fix Voron "0.32mm Optimal 0.6 nozzle @Voron" profile 2024-03-11 22:37:45 +08:00
SoftFever
f83a3377ab Fixed a regression bug that device URL was not reset when changing to a machine don't have connection info 2024-03-11 22:37:15 +08:00
InfimechOfficial
6689087e6f Fix 0.16mm parameters and update start_gcode (#4414)
Fix 0.16mm parameters and update start_gcode
2024-03-11 22:36:03 +08:00
Dzmitry Neviadomski
94eb020459 ENH: Switch wxWidgets dep to a shallow git clone. (#4369)
ENH: Switch wxWidgets dep to a shallow git clone.

wxWidgets repo is pretty large, so initial clone can take
a lot of time and disk space.

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>
2024-03-11 19:54:46 +08:00
SoftFever
c9a8e55dab Update simplified Chinese translation 2024-03-11 19:53:32 +08:00
SoftFever
fbc8d41778 update deploy-nightly3.1.0 2024-03-11 14:22:17 +08:00
SoftFever
e86b973eee update readme 2024-03-11 14:22:17 +08:00
SoftFever
20477bcc40 fix node.js warning
update run_gettext.bat to use own tools
2024-03-11 14:22:17 +08:00
SoftFever
2efba59b0d add win tools 2024-03-11 14:22:17 +08:00
SoftFever
94f45f375a update locale 2024-03-10 23:17:24 +08:00
Thomas
6ff4e4c00d Added new French translations (#4401)
Added new translations
2024-03-10 21:17:15 +08:00
SoftFever
fab886c0a0 UX: check and warn users if print speed/accel/jerk are higher than the machine limits (#4403)
check and warn users if print speed/accel/jerk are higner than the machine limits
2024-03-10 21:16:46 +08:00
SoftFever
879c3924c9 Optimize ensure vertical feature's UX (#4402)
* Change ensure_vertical_shell_thickness to enum value type. Allow users to turn off this feature completely

* add warning to the tooltip for None option
2024-03-10 21:16:02 +08:00
Fabio Forcina
922d465605 Italian translation update OrcaSlicer_it.po (#4384)
Italian translation update
2024-03-10 09:34:02 +08:00
SoftFever
849fe44bf9 fix an issue that pressure eq may cause 0 feedrate in vase mode (#4398)
fix an issue that pressure eq may cause 0 feedrate
2024-03-10 09:30:13 +08:00
Ioannis Giannakas
89f51031eb Pressure equalizer documentation (#4334)
* Placeholder file

* doc renaming

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* images

* images

* Spell checking

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Credits

* Credits

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Update Extrusion-rate-smoothing.md

* Add WIKI link for the Extrusion rate smoothing option

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-03-09 21:43:44 +08:00
SoftFever
123d25b443 genreate smaller EXCLUDE_OBJECT_DEFINE for PA Line/Pattern tests Klipper 2024-03-09 21:28:43 +08:00
SoftFever
697fc38275 Add document for Adaptive Bed Mesh Support 2024-03-09 14:37:04 +08:00
SoftFever
a4bf3dabb4 Scarf joint seam enhancement: conditional scarf joint and slowdown for scarf joint only (#4317)
* Allow apply scarf joint seams to perimeters without sharp corners only

* 1. Fix an error when detect whether a loop is smooth
2. Expose scarf_angle_threshold to UI

* fix linux build error

* minor code changes

* Support slowdown speed for scarf joint only

* update tips

* improve the logic a bit

* Fixed a bug that scarf speed may not respected for overhangs

* Add a new scarf flow ratio option
2024-03-08 23:41:59 +08:00
Dzmitry Neviadomski
6264fe64b4 FIX: Support building with latest Xcode 15.3 (#4367)
* FIX: Support building with latest Xcode 15.3

Downgrade 'enum-constexpr-conversion' error to warning.

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>

* FIX: Do not assume libdeflate is not installed on the system

Explicitly disable libdeflate support in TIFF depencency.
PrusaSlicer already does that.

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>

* FIX: Downgrade enum-constexpr-conversion warning only on AppleClang 15+

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>

---------

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>
2024-03-08 23:40:23 +08:00
SoftFever
99a090b83c Improve PA tower: 1. support large nozzles 2. remove jerk=1 settings 3. move settings changes to object to avoid accidently saving the profile (#4382)
Improve PA tower: 1. support large nozzles 2. remove jerk=1 settings
2024-03-08 23:38:46 +08:00
InfimechOfficial
2b62017d63 Add a new filament named PLA Hyper (#4339)
Add a new filament named PLA Hyper

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-03-07 23:01:48 +08:00
Dzmitry Neviadomski
e787cd5315 FIX: revert default CMake generator for deps on macOS (#4357)
* FIX: revert default CMake generator for deps on macOS

Before I wrongfully assumed that default CMake generator for both deps
and slicer is Xcode.
This is not true, as deps used implicitly-defaulted Unix Makefiles.
Fix by separating generator used for Slicer and deps, leaving the
choice to use Ninja for both.
Right now Xcode generator is not supported for deps and must be fixed
separately.

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>

* FIX: Use ALL_BUILD target when building slicer with Xcode generator

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>

* FIX: Adjust .app searching subdir for Xcode generator

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>

---------

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>
2024-03-07 22:39:18 +08:00
Geoffrey Ward
16164e99a9 Add AnkerMake 0.6mm Nozzle Profiles (#4338)
* Correct consistency error in layer heights

* Initial 0.6 settings

* Set good retraction values

---------

Co-authored-by: Geofrey Ward <Xelinor@mail.com>
2024-03-05 22:37:28 +08:00
Construct3D-AM
394eddd650 Construct 1 XL Start G-code Change (#4336)
* First stage addition of C1 printers

* More updates

* Create Construct 1 XL 0.6 nozzle.json

* More updates

* Updated image format

* Added C1 printer

* Update CONSTRUCT3D.json

* Adding CONSTRUCT3D Printer Files

* Update Construct 1 0.4 nozzle.json

* Slight formatting change

* More Typo Fixes

* Even more typo fixes

* Fixed Error with nozzle variants

* Reversion of accidental changes

* Update Construct 1 XL 0.6 nozzle.json

Updating to remove suspect lines for new future firmware changes
2024-03-05 22:36:43 +08:00
Dzmitry Neviadomski
7b31ee3a45 ENH: Improve macOS build script (#4310)
* ENH: Improve macOS build script

 - Update shebang to bash, as it is already expected to be present in
   run_gettext.sh
 - Added fail-fast shell options.
 - Changed default CMake generator to Ninja
 - Adopted configuration for non-multi-config generators (Ninja, Make)
 - Added new options:
   - Allow to set CMake generator back to Xcode, no option for make
     thou.
   - Allow to build without reconfiguring CMake, improves build times.
     Unnecessary Cmake reconfigurations require full rebuild.
   - Allow to set build configuration for CMake
 - Reorganized targets into separate function to break "cd" dependency.
 - Reformat shell code.
 - Fix all warnings reported by ShellCheck linter tool.
 - Update run_gettext.sh to respect build dir in full mode.

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>

* FIX: Install ninja with brew on CI.

Test if building works with Ninja by default.

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>

* ENH: Set Xcode back as default generator.

Use Ninja on CI with explicit option.

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>

* FIX: Partially revent changes in run_gettext.sh

Revert changes for option parsing.
Leave fixes for issues found by ShellCheck linter tool.

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>

---------

Signed-off-by: Dzmitry Neviadomski <nevack.d@gmail.com>
2024-03-05 22:35:46 +08:00
Thomas
eae2703610 Optimized PNG files (#4294)
* Optimized PNG files

* Added back hints

* Revert "Added back hints"

This reverts commit e1d3890b08.

* Fixed Comgrow T500 cover background
2024-03-04 22:00:47 +08:00
Asim Siddiqui
878a7a0e58 Added Flashforge Adventurer 3 Series profile (#4331)
Added Adventurer 3 settings
2024-03-04 21:57:09 +08:00
Thomas
a4d9d83805 Added Voron 120 build plate for V0 (#4292)
* Added Voron 120 build plate for V0

* Complete bed design

* Build plate is now correctly positionned
2024-03-04 21:18:22 +08:00
SoftFever
5cbbd053d1 update WIKI 2024-03-04 20:26:50 +08:00
Olcay ÖREN
27439ed547 Update OrcaSlicer_tr.po - TURKISH translation update (#4322)
* Update OrcaSlicer_tr.po - TURKISH translation update
2024-03-04 08:00:43 +08:00
Thomas
946cf2b334 Added new French translations (#4319) 2024-03-04 08:00:04 +08:00
Heiko Liebscher
25054a11a8 add new Germany translation for beta features (#4313)
add new translation
2024-03-03 23:56:00 +08:00
Olcay ÖREN
d932b0d7ed Update OrcaSlicer_tr.po - TURKISH translation update (#4303)
* Update OrcaSlicer_tr.po - TURKISH translation update
2024-03-03 23:55:00 +08:00
KrisMorr
0787cc20b6 Update .POT, Polish translations .PO, and list.txt for gettext (#4301)
* Update .POT, Polish translations .PO, and list.txt for gettext

* update

* update
2024-03-03 23:54:18 +08:00
SoftFever
27b8c3498b fix in_head_wrap_detect_zone issue
fixes #4262
2024-03-03 10:51:01 +08:00
Heiko Liebscher
96b07a4e49 add new de translation (#4305)
* add new

* fix more

* fix more
2024-03-03 09:42:25 +08:00
SoftFever
042d9c423a update loacale files 2024-03-03 09:33:28 +08:00
Noisyfox
924a2b4551 Seam: use scarf joint to minimize seam visiblity (#3839)
* Remember z of previous layer

* Support travel to middle of the layer z

* Support sloped extrusion

* Implement sloped seam

* Reduce extra movements

* Don't clip loop if sloped seam is enabled

* Fix wipe

* Ensure `slope_max_segment_length`

* Add options

* Limit slope length to perimeter length

* Fix slope segmentation

* Rename the option to scarf joint seam

* Don't modify the slope option when turning on spiral vase

* Add a few suggestions when turnning on scarf joint

* Add option to add scarf joint to inner walls

* Apply seam gap at the end of the slope

* Add option to explicitly use the entire loop as scarf length

* Fix layer number

* Increase default scarf length to 20mm

* Better way of storing the global scarf state

* Better vase mode layer height recognition

* Move id should exclude seams

* Fix slope height with independent support layer height

* Fix linux build

* Allow controlling the scarf with modifier

* Scarf start height default to 0

* Allow enable scarf seam on contour only

* Fix type error

* Move the creation of sloped loop into ExtrusionEntity.cpp

* Fix error "vector too long"

* Detect seams properly

* The correct way of calculating the rate limit

* The correct way of calculating the rate limit

(cherry picked from commit 05961f7c98)

* Add pressure equalizer in print by object mode

* Remove the settings recommendation as it varies a lot depends on printer & filament

* Add a beta suffix

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-03-02 23:25:02 +08:00
Noisyfox
ab1b0e0ebc Improve pressure equalizer so that it's less aggressive (#4264)
* The correct way of calculating the rate limit

* Add pressure equalizer in print by object mode

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-03-02 23:10:01 +08:00
Thomas
5dab9b20b5 Fr translations updates (#4288)
* Fixes for French
2024-03-02 18:24:54 +08:00
FlyingbearOfficial
6e7117e0b1 Add a new model named S1 and fix some parameters of previous files (#4267)
* Update fdm_klipper_common.json

* Update fdm_filament_abs.json

* Update fdm_filament_pa.json

* Update fdm_filament_abs.json

* Update FlyingBear Generic ABS.json

* Update fdm_klipper_common.json

* Update FlyingBear Generic PA-CF.json

* Update fdm_filament_pa.json

* Update fdm_filament_pc.json

* Update FlyingBear Generic PC.json

* Update fdm_filament_pet.json

* Update FlyingBear Generic PETG.json

* Update FlyingBear Generic PLA.json

* Update fdm_filament_pla.json

* Update FlyingBear Generic TPU.json

* Update fdm_filament_tpu.json

* Update fdm_filament_common.json

* Add a new filament named pla_Hyper

* Update FlyingBear Reborn3 0.4 nozzle.json

fix z_hop 0.4

* Update fdm_machine_common.json

* Update 0.08mm Extra Fine @FlyingBear Reborn3.json

* Update 0.12mm Fine @FlyingBear Reborn3.json

* Update 0.20mm Standard @FlyingBear Reborn3.json

* Update 0.24mm Draft @FlyingBear Reborn3.json

* Update fdm_process_common.json

* Add new a Model named S1

* Add a new model named S1 for machine

* Add a new model named S1 for process

* Rename lyingBear Reborn3-texture.png to FlyingBear Reborn3-texture.png.png

fixed file's name

* Rename FlyingBear Reborn3-texture.png.png to FlyingBear Reborn3-texture.png

fixed file's name

* Add a new model named S1 for img

* Update FlyingBear.json

add a new model named S1

* Add a new layer hieght

* Update FlyingBear.json

fixed mistakes

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-03-02 14:13:23 +08:00
Valérian Gaudeau
569e50283d FIX: Typo with exhuast (#4269)
Change exhuast to exhaust in various files.

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-03-02 14:10:13 +08:00
yw4z
aa518420b5 Reduced size of Max Flowrate Test model (#4281)
Size dropped 2328KB to 2060KB after changing side surfaces. current model has 3 surfaces for each line on side surface. just redraw a cylinder and rejoined surface. result is exactly same.
It's my first commit. i hope i did right. i choose simpler one for first. i will send more
thanks
2024-03-02 12:58:59 +08:00
Scott Mudge
3757d96cd4 Add shell type to STEP importer, to fix importing of some STEP files (#4247)
* Add shell type to STEP importer, to fix importing of some files.

* Merge branch 'main' into feat_STEPImportImprovement
2024-03-02 12:08:12 +08:00
SoftFever
9f7cec3f44 Fix some xgettext errors 2024-03-02 11:43:18 +08:00
KrisMorr
840c347957 Update OrcaSlicer.pot + fix (#4272)
* Update OrcaSlicer.pot + fix

* fix %

* fix hints

* fix

* fix3

* revert PrintConfig + .pot update

* fix
2024-03-02 11:12:16 +08:00
SoftFever
f44eac74ea fix orca_custom_preset_tests 2024-03-01 23:32:15 +08:00
Thomas
418354c53b Creality textures and covers tweaks (#4274)
* Creality textures and covers tweaks

* Texture improvements for Hi-dpi devices
2024-03-01 21:40:37 +08:00
Geoffrey Ward
a5029c263c Add 0.2mm and 0.25mm nozzle profiles to AnkerMake printers (#4260)
* Add .02 nozzle profiles

* Remove carbon fiber 0.2 profiles

* Flag Filament Types Correctly

* Add missing PC 0.2 profile

* Correct PLA nozzle name typo

* Tune supports for the thinner layer lines

* Pull in latest main branch updates

* Correct Support bottom distance

* Correct the numbering

* Add 0.25mm Nozzle Profiles

* Enable manual filament changing for all AnkerMake Printers

* Pull in latest main branch updates

* Remove extra white space from file name

---------

Co-authored-by: Geofrey Ward <Xelinor@mail.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-03-01 21:37:08 +08:00
InfimechOfficial
ad9779f08a Modified filaments/process/starting codes and added a new print layer height 0.16mm in the process (#4200)
* Update InfiMech Generic ABS.json

* Update fdm_filament_abs.json

* Update InfiMech Generic PA-CF.json

* Update fdm_filament_pa.json

* Update InfiMech Generic PC.json

* Update fdm_filament_pc.json

* Update InfiMech Generic PETG.json

* Update fdm_filament_pet.json

* Update fdm_filament_pla.json

* Update InfiMech Generic PLA.json

* Update InfiMech Generic TPU.json

* Update InfiMech Generic TPU.json

* Update fdm_filament_tpu.json

* Update fdm_filament_common.json

* Add new files named Other Filament 

Add ”Other+ ABS PA PC PETG PLA PLAHYPER TPU“ filaments

* Update InfiMech.json

* Update 0.08mm Extra Fine @InfiMech TX.json

* Update 0.12mm Fine @InfiMech TX.json

* Update 0.20mm Standard @InfiMech TX.json

* Update 0.24mm Draft @InfiMech TX.json

* Update fdm_process_common.json

* Add a new 0.16mm optimal file

* Update InfiMech.json

* Update fdm_klipper_common.json

* Update fdm_machine_common.json

* Change cover.png img

* Update fdm_filament_pa.json

* Update InfiMech Generic PETG.json

* Update InfiMech.json

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-03-01 21:32:28 +08:00
SoftFever
ca0fb9fb75 Fix check_profile 2024-03-01 21:30:35 +08:00
SoftFever
2b6937acbe Feature/enhance profile validator (#4278)
* check more profile issues

* 1

* update ci/cd

* update name
2024-03-01 21:27:12 +08:00
Construct3D-AM
01b0c87471 CONSTRUCT3D Construct 1 & Construct 1 XL print profiles (#4187)
* First stage addition of C1 printers

* More updates

* Create Construct 1 XL 0.6 nozzle.json

* More updates

* Updated image format

* Added C1 printer

* Update CONSTRUCT3D.json

* Adding CONSTRUCT3D Printer Files

* Update Construct 1 0.4 nozzle.json

* Slight formatting change

* More Typo Fixes

* Even more typo fixes

* Fixed Error with nozzle variants

* Reversion of accidental changes
2024-02-29 18:54:39 +08:00
SoftFever
0f6cbace22 add profile validate tool (#4249)
* add profile validate tool

* handle invalid path
2024-02-28 23:18:04 +08:00
FlyingbearOfficial
93714f834d Fix paramters of the process and machine files (#4246)
* Update fdm_process_common.json

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-02-28 22:05:45 +08:00
SoftFever
0e1307ab83 check profile for PRs (#4251)
* check profile for PRs
2024-02-28 22:02:22 +08:00
FlyingbearOfficial
a88f31cdaa Fixed all filaments and added a new filament named pla_Hyper (#4213)
* Update fdm_klipper_common.json

* Update fdm_filament_abs.json

* Update fdm_filament_pa.json

* Update fdm_filament_abs.json

* Update FlyingBear Generic ABS.json

* Update fdm_klipper_common.json

* Update FlyingBear Generic PA-CF.json

* Update fdm_filament_pa.json

* Update fdm_filament_pc.json

* Update FlyingBear Generic PC.json

* Update fdm_filament_pet.json

* Update FlyingBear Generic PETG.json

* Update FlyingBear Generic PLA.json

* Update fdm_filament_pla.json

* Update FlyingBear Generic TPU.json

* Update fdm_filament_tpu.json

* Update fdm_filament_common.json

* Add a new filament named pla_Hyper
2024-02-27 22:11:55 +08:00
Thomas
56ce711c48 Ender 3 V3 SE/KE improvements (#4225)
* Set default brim width and added new 0.24 quality profile

* Fixed 0.24 name
2024-02-27 22:09:07 +08:00
SoftFever
6f3a49aabe Fixed a bug that in edge cases, wrong top surfaces were detected (#4244)
offset clipped upper slices
2024-02-27 22:07:43 +08:00
Kenneth Jiang
8c941df4e8 Support for Obico cloud integration (#4116)
support obico (#3)

Add printer support for Obico cloud.

---------

Co-authored-by: zzh <anjingxw@126.com>
2024-02-27 22:04:51 +08:00
Ocraftyone
047b889ba6 ENH: Better Scrolling Over Multiline Fields (#4218)
* Improve scrolling over multiline fields

* Fix text control scrolling
2024-02-27 22:03:59 +08:00
Noisyfox
bf4d59a676 QoL: 3D navigator (#4181)
* Initial integration of ImGuizmo

* Fix mouse capture

* Fix frame update

* Update face color

* Show current camera rotation

* Fix coord mapping

* Update camera rotation from 3d navigator

* Use orthographic

* Render axis

* Make the axis color lighter if at back

* Show axis label

* Fix linux build

* Move to separate method

* Refine

* Add option to show/hide 3d navigator

* Add license info

* Handle dpi scaling

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-02-27 21:57:31 +08:00
SoftFever
4991a3d312 General profile tweak
1. Adjust bed textures for some printer to accommodate bed texture scale bug fix d3309b978f
2. Reduce some bed model size
2024-02-25 22:38:07 +08:00
Noisyfox
7e3b8007cb Allow exporting filament profiles for non-bbl printers (#4217)
Allow exporting non-bbl profiles
2024-02-25 15:40:55 +08:00
SoftFever
d3309b978f Fixed a bug that caused bed textures to scale improperly
Fixes #1175
2024-02-24 22:59:14 +08:00
SoftFever
2c279c5648 Add direct adaptive bed mesh support (#4212)
* Add direct adaptive bed mesh support

* fix Linux build error

* update tooltip
2024-02-24 20:44:00 +08:00
SoftFever
ab2aaefe42 Some tiny UI adjustment 2024-02-24 18:55:24 +08:00
Noisyfox
e4255b3c01 Allow specify wall directions (#4156)
* Add wall direction option

* Force wall direction if specified

* Format

* Rename default to auto
2024-02-23 20:45:56 +08:00
Thomas
d82987ca32 TwoTrees SK1 Profiles : New filament (PLA Matte) and tuned volumetric flow rates (#4172)
* Increased max volumetric flow of PETG and PLA silk

* New filament profile for TT SK1 : PLA Matte

* Increased Max volumetric flow rate for PLA-CF
2024-02-22 22:15:42 +08:00
InfimechOfficial
f280aed9d1 InfiMech profile updates: Change some parameterts and Update ABS filament (#4166)
* Update InfiMech Generic ABS.json

* Update fdm_filament_abs.json
2024-02-22 22:14:27 +08:00
FlyingbearOfficial
372518582b FlyingBear profiles updates: abs filament (#4165)
* Update fdm_klipper_common.json

* Update fdm_filament_abs.json

* Update fdm_filament_pa.json

* Update fdm_filament_abs.json

* Update FlyingBear Generic ABS.json

* Update fdm_klipper_common.json
2024-02-22 22:12:31 +08:00
SoftFever
558510c5f1 Show a warning dlg when enabling Make overhangs printable option
Fixes #4078
2024-02-22 21:33:37 +08:00
SoftFever
099e496ce9 apply precise_outer_wall for inner-outer wall seq only 2024-02-22 21:31:51 +08:00
SoftFever
40f17be21f Show warning notification if jerk is set to 1 2024-02-22 21:30:22 +08:00
Noisyfox
bff50a5fd8 Fix caucluation of rotation between two vectors during auto-orient (#4144)
* Properly extract rotation matrix

* Another attempt to fix auto-orient
2024-02-20 22:28:06 +08:00
Noisyfox
a74a1d26fd Fix object list crash on click (#2823) (#4164) 2024-02-20 22:02:48 +08:00
Carlos Caruncho
b78e459705 Update Spanish translation (#4142)
* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

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

This reverts commit 694a900845, reversing
changes made to 4f53ce4f88.

* Revert "Update OrcaSlicer_es.po"

This reverts commit 4f53ce4f88.

* Revert "Revert "Update OrcaSlicer_es.po""

This reverts commit 53bd15617c.

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Revert "Update OrcaSlicer_es.po"

This reverts commit b21aad079f.

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_en.po

* Update OrcaSlicer_es.po

* Traduccion de OrcaSlicer al español

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Add new text translations for profile and filament management

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-02-19 20:32:35 +08:00
Noisyfox
7e78f0d64f Fix move gizmo on parts (#4138) 2024-02-18 23:22:09 +08:00
markleaf131313
8ce07d3e8e Show dialog when opening 3mf files to choose whether to import settings. (#4110)
* Show dialog when opening 3mf files to choose whether to import settings.

* Merge branch 'main' into main
2024-02-18 22:54:43 +08:00
pagdot
1f835e01fc Fix for postprocessing scripts not working on UNIX when $SHELL is undefined (#4101)
Fix for PP scripts not working on UNIX when $SHELL is undefined

thanks @jfbauer432 for pointing the problem out.
thanks @lukasmatena for fixing it in PrusaSlicer (commit 87a5116)

Co-authored-by: Lukáš Matěna <lukasmatena@seznam.cz>
2024-02-18 20:59:24 +08:00
davidjuanesb
407661522f Catalan Language updated to V1.9.1 (#4131) 2024-02-18 20:39:07 +08:00
goyetus
8bb9c8deb1 Bug Fixed: Added "Printer Variant" to all Ender 3 and Prusa Mk3s Profiles (#4098)
Added "Printer Variant"  to all Ender 3  and Prusa Mk3s Profiles

Bug Fixed:

When selected only 1 profile from menu ,   Orcaslicer imports all  nozzle from the printer.

Added "printer_variant": "" for each nozzle.

Now it imports correct only the selected nozzled in the menu.
2024-02-18 20:15:44 +08:00
Eldenroot
4db05c0a0f Update and rename feature_request.md to feature_request.yml (#4084)
* Update and rename feature_request.md to feature_request.yml

* Update feature_request.yml

* Update feature_request.yml

* Update feature_request.yml

* Update feature_request.yml

* Update feature_request.yml
2024-02-18 20:14:22 +08:00
Eldenroot
f9849d1302 Update bug_report.yml (#4082)
* Update bug_report.yml

Make it easier and nice r.)

* Update bug_report.yml
2024-02-18 10:15:58 +08:00
Eldenroot
ab11266b10 Make reporting easier - part I (#4080)
* Make reporting easier - part I

Make reporting easier - part I

* Update config.yml
2024-02-14 21:35:29 +08:00
Thomas
eb345650a5 Fixed Ender 3 profile inheritance (#4089)
Fixed 4087
2024-02-14 21:34:19 +08:00
Eldenroot
35f39df1f9 Update orca_bot.yml (#4044)
* Update orca_bot.yml

My mistake, now should be fixed. 

ef9ff99cea

* Update orca_bot.yml
2024-02-14 21:30:26 +08:00
SoftFever
8d56490dad Security: skip more print_host related info 2024-02-14 21:01:33 +08:00
Thomas
32418eb66e Fix for #4047 (#4072) 2024-02-13 23:59:50 +08:00
SoftFever
73bb37b7c9 Support profile OTA update for Orca Slicer (#4069)
profile ota support
2024-02-13 23:58:14 +08:00
Thomas
f5654d80ef Fixed typo "Confing" (#4071) 2024-02-13 23:57:26 +08:00
Noisyfox
2d140f92ff Various Emboss improvements from PS (#4039)
* Fix: invalid distance from surface when load from 3mf

Cherry-picked from prusa3d/PrusaSlicer@e1d9393e51

Co-authored-by: YFilip Sykala - NTB T15p <Filip.Sykala@Prusa3D.cz>

* Apply rotation angle given by style for new text object
Turn off feature 'use_surface' for new text object

Cherry-picked from prusa3d/PrusaSlicer@1cb156c815

Co-authored-by: YFilip Sykala - NTB T15p <Filip.Sykala@Prusa3D.cz>

* Store/Load align and per_glyph in Slicer.ini for text style

Cherry-picked from prusa3d/PrusaSlicer@fe16f5bdd1

Co-authored-by: YFilip Sykala - NTB T15p <Filip.Sykala@Prusa3D.cz>

* Store undo/redo snap after stop input-sliding

Cherry-picked from prusa3d/PrusaSlicer@fb4e4710e7

Co-authored-by: YFilip Sykala - NTB T15p <Filip.Sykala@Prusa3D.cz>

* Initialize SvgFile object in optional different way.

Cherry-picked from prusa3d/PrusaSlicer@0ff255eadc

Co-authored-by: YFilip Sykala - NTB T15p <Filip.Sykala@Prusa3D.cz>

* SPE-2103
Make snap-shot to undo/redo stack only on release slider

Connected with attributes:
Text/advanced(char gap, line gap, boldness, skew ratio)
SVG(size)

Also change range for Boldness. VRT font-Ascent.
(different font may have different slider value range)

Fix line gap (it was denied when per glyph was false)

Cherry-picked from prusa3d/PrusaSlicer@ee3546b186

Co-authored-by: YFilip Sykala - NTB T15p <Filip.Sykala@Prusa3D.cz>

---------

Co-authored-by: YFilip Sykala - NTB T15p <Filip.Sykala@Prusa3D.cz>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-02-13 23:56:48 +08:00
Andy
291cfe1d4a Russian translation update (#4049)
Russian translation update OrcaSlicer V2.0.0-dev
+ update text.js (added and translated missing lines)
2024-02-13 20:28:29 +08:00
SoftFever
9f1d47117e skip .stl/.png file when copying system profiles 2024-02-13 16:24:24 +08:00
davidjuanesb
38409359a8 New Language: Catalan language for OrcaSlicer 1.9.0 (#4036)
* Create OrcaSlicer_ca.po

* New Language: Catalan language for OrcaSlicer 1.9.0

New Language: Catalan language for OrcaSlicer 1.9.0

* Add code changes to support Catalan

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-02-11 12:48:44 +08:00
SoftFever
ef9ff99cea fix Orca bot 2024-02-11 12:07:07 +08:00
Ioannis Giannakas
083e7cd3d5 Decouple filament minimum print speed from overhang slowdown (#3859) 2024-02-11 11:56:20 +08:00
Oleksii Dashkevych
e93195ab34 Creality Ender-3 V3 SE: Fix present print (#4031)
* Creality Ender-3 V3 SE: Fix present print
2024-02-11 10:56:35 +08:00
KrisMorr
174ee050ea Update HMS.cpp set language code to en by default for PL language (#4034)
* Update HMS.cpp set language code to en by default for PL language
2024-02-11 10:55:10 +08:00
goyetus
31d1d03578 Creality Ender 3 and Prusa Mk3s 0,2;0,4,06 and 0,8 profiles (#4029)
* Ender 3 - All nozzles and Quality Profiles

Ender 3 Profiles.

0.20 Nozzle
0.40 Nozzle
0.60 Nozzle
0.80 Nozzle

0.12 to 0.24 Quality Profiles for every Nozzle in Process Folder

* all

all

* Ender 3 Profiles

Ender 3 Profiles for: 0,2;0,4;0,6;0,8

5 Different and independent Quality profiles for each Nozzle.

Fine, Optimal, Standard, Draft and Superdraft

* aa

aa

* aa

aa

* aa

aa

* Prusa Mk3s Profiles

Prusa Mk3s Profiles

* Mk3s FIXED

mk3s FIXED

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-02-11 10:25:18 +08:00
SoftFever
cc55c2dde7 Security: skip writing print_host and apikey in gcode (#4030) 2024-02-10 23:28:17 +08:00
frankieorabona
439db2862d Fixed and integrated some Italian translations (#4008)
* Update OrcaSlicer_it.po

* Update OrcaSlicer_it.po

* Update OrcaSlicer_it.po
2024-02-10 11:55:40 +08:00
KrisMorr
df36de4780 Update Polish translation (#3998)
* Update Polish translation

* Update Polish translation
2024-02-10 11:53:31 +08:00
Eldenroot
7aee6d7e61 Update orca_bot.yml (#3986)
Update orca_bot.yml

I hope this one will make Orca BOT happy again :)
2024-02-10 11:53:03 +08:00
Thomas
208784c783 New printer profile : TwoTrees SK1 (#3982)
* Initial profile for TwoTrees SK1

* Added PAUSE command instead of M601 and added machine_pause_gcode

* Enabled multi bed types and removed skirt loop

* Fixed non-ascii characters

* Added PETG, PLA-CF plus clean ups and fixes.

* Optimizations, and added PLA Silk

* Maximum velocity is too high on Klipper settings, lowered to 730mm/s, this was obtained with Klipper Auto Speed

* Ditto

* Small optimizations

* Added one layer to bottom for HSpeed profile
2024-02-10 11:37:24 +08:00
Aidan
955601d632 Give CGAL a boost::prior (import) (#3978)
CGAL uses boost::prior but doesn't import it properly. A small hack here
just imports it before importing anything CGAL.
2024-02-10 10:25:16 +08:00
tsmith35
5524d9db53 Update build_release.bat (#3961)
Missing double-quotes after "Visual Studio 16 2019
on lines 32, 33, 44 and 45.
2024-02-10 10:24:28 +08:00
Ioannis Giannakas
8b1b3355e6 Fix crashing on AMS filament edit (#3981) 2024-02-06 00:09:47 +07:00
Peopoly
b23ab4434d 🔧 add Peopoly Magneto X profiles (#3944) 2024-02-05 00:23:57 +07:00
KrisMorr
1e087aeaa4 [Fix] Polish translation update (#3934)
* Update Polish translation

* Update Polish translation

* [Fix] Polish translation

* [Fix] Polish translation update

* [Fix] Polish translation

* [Fix] Polish translation

* [Fix] Polish translation

* [Fix] Polish translation
2024-02-04 23:07:31 +07:00
Aidan
951fc8e98a A *lot* of import fixes for flatpak (#3909)
* A *lot* of import fixes for flatpak

Aside, thank you @hadess for the majority of these fixes. You are the
base point for a lot of issues fixed during the creation of this
flatpak.

* Use slic3r::load_string_file

Boost 1.84 removed `boost::fs::load_string_file` so use the func located
in Utils.hpp
2024-01-31 11:23:29 +00:00
Seth LaForge
4110ecc968 Improve ExtrusionLine::simplify, eliminating many very-short extrusion segments which led to blemishes in thin-wall models sliced with Arachne - Take 2 (#3750)
* Improve toolpath simplification to avoid blemishes when using Arachne on thin walls.

* Avoid reducing closed perimeters below 3 points.

Downstream code contains assumptions that closed ExtrusionLines are not
degenerate. Open ExtrusionLines already are not reduced below 2 points by
ExtrusionLine::simplify().

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-30 14:54:51 +00:00
KrisMorr
e56a0de51b Update Polish translation (#3903) 2024-01-30 14:29:48 +00:00
Noisyfox
6d9b1d46d6 Fix issue with auto orient a scaled object. (#3904)
Partly revert 73ab032e82
2024-01-30 14:28:49 +00:00
Eldenroot
6937f031db Update orca_bot.yml (#3798)
* Update orca_bot.yml

Just for discussion :)

Also would be nice to set a different style of "stale" label, maybe with an icon... it is quite not visible on smartphone anr Github app.

* Update orca_bot.yml
2024-01-30 13:02:30 +00:00
Ioannis Giannakas
10cba023e6 Fix issue with PA pattern test using travel acceleration and jerk for the PA patterns (#3851) 2024-01-30 12:40:07 +00:00
Noisyfox
73ab032e82 Fix some rotation-related issues (#3890)
* Fix issue with max_z after rotation

* Don't use `object.bounding_box()`, use `bounding_box_exact()` instead.

* Fix auto-orient

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-30 11:45:14 +00:00
SoftFever
d1eea4c677 Add a new handy model: Orca string hell (#3892)
* add string hell

* tweak message
2024-01-30 00:30:36 +00:00
KrisMorr
da349202d2 Change from "Back" to "Return" in the project tab (#3867) 2024-01-29 15:28:07 +00:00
SoftFever
cb99f29bbf Enforce retraction before wipe (#3888)
enforce retraction before wipe
2024-01-29 14:53:03 +00:00
Carlos Caruncho
10137d66b9 Update Spanish translation (#3873)
* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

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

This reverts commit 694a900845, reversing
changes made to 4f53ce4f88.

* Revert "Update OrcaSlicer_es.po"

This reverts commit 4f53ce4f88.

* Revert "Revert "Update OrcaSlicer_es.po""

This reverts commit 53bd15617c.

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Revert "Update OrcaSlicer_es.po"

This reverts commit b21aad079f.

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_en.po

* Update OrcaSlicer_es.po

* Traduccion de OrcaSlicer al español

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-29 07:16:04 +00:00
Olcay ÖREN
9b3a6d09db Update OrcaSlicer_tr.po - TURKISH translation update (#3864)
* Update OrcaSlicer_tr.po - TURKISH translation update

* Update OrcaSlicer_tr.po - TURKISH translation update

* elegoo_neptune4pro_buildplate_texture.png updated

* Update OrcaSlicer_tr.po - TURKISH translation update

* Update OrcaSlicer_tr.po - TURKISH translation update

* Update OrcaSlicer_tr.po - TURKISH translation update

* Update OrcaSlicer_tr.po - TURKISH translation update

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-29 07:15:31 +00:00
Seth LaForge
ab161d5a2b Fix DEBUG build (#3861)
* Fix asserts which would not compile.

* Fix DEBUG build.

Fully enable checking gcode placeholders in debug builds.
2024-01-29 07:14:54 +00:00
Ocraftyone
3b7b10f72f Port "No Unsupported Perimeters" feature from SS (#3189)
* first impl

* Properly handle extra bridges in `detect_surfaces_type()`

* Pass `perimeter_spacing` and `ext_perimeter_width` as parameters instead of instance property

* Make `process_no_bridge()` private

* Attempt to run `process_no_bridge()` in arachne

* Update `BridgeDetector::coverage` to give us more precise bridge coverage

Co-authored-by: supermerill <merill@free.fr>

* Fix bridge infill margin scaling

* Rename the option name as well as add tooltip

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
Co-authored-by: supermerill <merill@free.fr>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-28 10:12:55 +00:00
Geoffrey Ward
1487bdd69c Fixes Anker M5C profiles (#3862)
Fixes M5C profiles to use the old naming convention so they don't break existing M5c profiles

Co-authored-by: Geofrey Ward <Xelinor@mail.com>
2024-01-28 08:05:05 +00:00
KrisMorr
c75e0c958f [Fix] Polish translation update (#3855)
* [Fix] Polish translation update

* [Fix] Polish translation update text.js
2024-01-28 10:08:30 +08:00
Geoffrey Ward
d70fcc143f Refactor anker (#3845)
* Bring over bed and cover files

* Initial refactored configuration file with placeholders for adding more nozzles

* Uniqueify filament profiles

* Initial refactored machine profiles

* Remove placeholders

* Correct machine selection flow

* Correct Typo

* Add placeholders to bring CE profile settings current with new format

* Fixes #3326

* Port 0.4 Normal Mode Profiles

* Port fast mode profiles

* Remove superfluous settings

* Migrate existing filament profiles

* Update available nozzles and default materials

* Remove 'with' from file names

* Remove 'with' from file names

* Correct support object distance default

* Correct transcription errors

* Correct transcription error

* Bring max_travel_detour_distance into convention with other profiles

* Replace old profiles with the refactored profiles

* Correct name used from Extra Draft to Superdraft

* Re-use original names so printer profiles don't break

---------

Co-authored-by: Geofrey Ward <Xelinor@mail.com>
2024-01-28 10:01:44 +08:00
Oleksii Suprun
3ae8cca5cf Prevent extra wall generation when sparse infill is zero (#3775)
Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-28 00:16:51 +08:00
Ocraftyone
fba490969d Add Devcontainer Support (#3777)
* add devcontainer files

* update postCreate

* add chmod for postCreate

* set CORES env variable to pass to build tool

* remove ssh functionality

* Move delete env file cmd to postStartCommand

* update how env file is done

* Update

- Move to older version of ubuntu for compatability
- Change vnc password to orca
2024-01-27 14:16:30 +08:00
SoftFever
da7f8e85fd update plug-in page text 2024-01-27 14:12:27 +08:00
SoftFever
e185795c87 update locale 2024-01-27 13:21:25 +08:00
KrisMorr
eaabaffa7a Add the Polish language (#3622)
* Update localazy.json

Add localization pl

* Update Preferences.cpp

Add polish language

* OrcaSlicer_pl.po

Add OrcaSlicer_pl.po

* Update text.js

Add pl_PL translate

* Rename OrcaStudio_pl.po to OrcaSlicer_pl.po

* Add files via upload

* Update HMS.cpp

* Add files via upload

Update OrcaSlicer_pl

* Update OrcaSlicer_pl.po

* revert irrelevant change

* fix one misspelling

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-27 12:34:51 +08:00
Thomas
65ff80a687 Fixes 3833 ("Miss spelling") (#3840) 2024-01-27 11:56:14 +08:00
Mr-PBH
c8f4895373 Add Artillery Genius Pro Profile (#3742)
* add photos required for genius pro

* add genius pro

* add genius pro

* add genius pro

* added genius pro, changed bed temp to 60c, nozzle temp 200c

* add genius pro, changed bed temp 60c, nozzle temp 200c

* add genius pro

* add genius pro and 0.4mm nozzle

* elafant foot to 0.15mm, 2 walls

* add genius pro print settings

* add genius pro paths
2024-01-27 11:45:17 +08:00
Seth LaForge
e5bdc7d5bd Fix asserts which would not compile. (#3741) 2024-01-27 10:30:29 +08:00
SoftFever
3cb573dcb9 Feature/merge 1.8.4 (#3827)
* FIX: the logic of buried points that were not buried

JIRA: none

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Change-Id: Id95174659c5fce7feba409eb5e14916608745fa4

* ci: update network module based on commit bc7ca98

Change-Id: I923526f0bf9ce5a288144fa1f9b0f2fc640f41b7

* Fix Firefox
Co-authored-by: hadess <hadess@hadess.net>

* FIX: cali: custom created filament from AMS displayed as incompatible

jira: new

remove the condition: is_system

Change-Id: Ib1366966bbdbe01bc9e2483d9914d270ebefa976

* FIX: duplicated items in comboBox at calibration completed page

jira: new

Change-Id: I4749a2206df16c438e0d3098e36274b2a20f313e

* ENH:update support for P1S plus

jira:[for p1s plus]

Change-Id: Id577d4e94e2162cb0045d261dfaa5f396ecded2f

* ENH: CLI: add mk information support

JIRA: no jira
Change-Id: Idd89b143d439de50d9f52eb8aec95b262d66875d

* ENH:calibration support p1p plus

jira:[plus]

Change-Id: Ia290d3a8a8b9adaac7a6ee26d9a8b5ea0c1b3aee

* FIX: add log for base_id and filament_id

github: #3087

Change-Id: Iebfbd0f224fce49f33fc81c71e6108f6e3abb5ff

* FIX: sync whole preset vendor directory

Change-Id: I191dbe979a87ff35d38cab1149b7975664344838
Jira: STUDIO-5534
(cherry picked from commit 628866608116336453804aa1217dd55db04d47ad)

* FIX: use t_utc for debug only

Change-Id: Ia05d8969d4de3dd38908980d6e17a3ebb11ca279
Github 3045

Change-Id: I77935df53bbf2772b1146e5c330c537165a3a2e6

* FIX:make sort_volumes right

Jira: STUDIO-5645
Change-Id: If324c9115bfaaf0c1b7b4be7c7ee96ba6b8ac890

* ENH:keep an unload logic

jira:[for unload]

Change-Id: Id30ec71ffa5b2dac89346ea47ca48a62479e3ab1

* FIX: several problems with mesh boolean

1. Cut with multiple volumes are OK now.
2. Close mesh boolean fail error with new object or open object
3. Fix wrong name and config of boolean resulting object

github: #3118
jira: none

Change-Id: If2c9dbfb36cbdfe4917a2371217923891bb7909c
(cherry picked from commit 982c0ecb92cf7c2b5ae5972ab900a6b10e7dda50)

* NEW:limit the length of project name

jira:[project name]

Change-Id: I955620f7073b3b7fda280d1118524f561d047751

* ENH:adjusting the warning level of timelpase

jira:[STUDIO-5662]

Change-Id: I4902b22d316f5e09a97a62c88b8a98e55c405434

* FIX: 3mf specification: change namespace form slic3rpe to BambuStudio

Jira: XXXX

Change-Id: Id705affc875ef23fdf2ac6d79f0cb0aafc4f7050

* NEW: Open MakerWorld With BambuStudio GetParam

JIRA: none
Change-Id: I0d65b364f1cd2d634a88882ab072c3e61ea89167
(cherry picked from commit 8eaf45e5359439a7c796fd79876c86775abcf48e)

* FIX: Filament issue generated when creating a printer

Jira: XXXX

Change-Id: I976770b69b47641bd54aa7a9c56fba7f58d1ab68
(cherry picked from commit ba42188b93c58b3954234d72acdd9769a68e3d3c)

* FIX: Blank page appears when editing presets

Jira: 5563

Change-Id: I4c49e05515b1beff55991e92f8079c4499c27eab
(cherry picked from commit e86517d290f4cd0765a230d811b0ddf2c9f34c17)

* FIX: context menu didn't update UI

jira: STUDIO-5691

Change-Id: Ia66b8623d832eba805aff5320941233a68ff258b

* FIX: crash of "filling bed"

"get_arrange_settings() const" gets trapped in infinite recursive calling.
Now we delete this function.

jira: STUDIO-5688
Change-Id: Ia39974734bb37b2a2f06b5bf78185f01be726872

* FIX: boolean hangs in the middle of color painting

Can't do splits in combine_mesh_fff, as do_boolean of mcut will split meshes.

jira: STUDIO-5693
Change-Id: Idddb7d20dd7ca386c39ddd3d87d9defc3136aa5d
(cherry picked from commit 6c67d015941458e37faaf0015b6509b5a0eadc0e)

* Fix: Fix a number of compilation problems

issues found when using gcc version 13.2.0 (GCC) in a Flatpak sandbox

github : https://github.com/bambulab/BambuStudio/issues/3074
github pull request: https://github.com/bambulab/BambuStudio/pull/3096

Change-Id: I08aeac593eb1ce7675894df72e8489200bae713d
(cherry picked from commit 069d133d66bfa682de4a860e379d5dc16b3d907c)

* fix: macos icns issue when icon was not attached

github pull request:https://github.com/bambulab/BambuStudio/pull/3116

Change-Id: I49072ad49f3af7669a6d307c791594ade210da50
(cherry picked from commit c977e5582e3a30ad16dd267810037423aad9a53c)

* FIX: Add flush_length for change_filament_gcode

Change-Id: I30f4b97d3d61c2a57f0e92f157cbd31c38aa7265
Jira: XXXX
(cherry picked from commit 92eb2bac977a0c4095b316cbbc6580fb5228b710)

* FIX: edit preset dialog can't close on mac

Jira: 5696

Change-Id: Ib33dfd07cc588ddd3805e3490a4d8c36dcd890ac

* ENH: add dev_ota_version in ssdp

JIRA: STUDIO-5740

Change-Id: Ic80e6d4b9bf82813fdc4a76604a3d36213d12b03
Signed-off-by: Stone Li <stone.li@bambulab.com>

* NEW:Adapt to multicolour and gradient colour

JIRA:xxxx
Change-Id: I8084cab603d5681cbcaf2d6f5e0d7ad5419cb2af

* NEW:Adaptation of semi transparent materials

JIRA: XXXX
Change-Id: Ie32d8ce67c37b85eb6d7d6594cb514a696307e68

* FIX: disable flush options if prime tower is unchecked

jira: STUDIO-5639

Change-Id: I25081584d430bc7d062e14bcc2cdbf7522cf9d99

* ENH: refine GetVersion for HMS query

JIRA: STUDIO-5763

Change-Id: Ia3ccc07d79cc0736eb12e9782da50211abb74772
Signed-off-by: Stone Li <stone.li@bambulab.com>

* FIX: Prefer old selection when sync AMS not compatible

Change-Id: I6b18db51887132a997cf78d70fff9a92e23bc44a
Jira: STUDIO-5416
(cherry picked from commit 077fae29823cf4f3071d408b1b40f55ee0cb33c6)

* FIX: The flushing was not auto-calc when sync ams list

JIRA: STUDIO-5551

1. flushing volume auto-calc when sync ams list
2. flushing volume takes the larger calculation value when filament has
   multi-colors

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Change-Id: I72e6f9780ea56103a44c2da6068440a4615c254d

* FIX:fixed invalid links

jira:[fixed link]

Change-Id: I036a38b6e8e94da762f93805bd7be706538771fe

* FIX: Prompt to delete problematic presets

Jira: XXXX

Change-Id: Ic43f7bb782794d7ab0b6acbffbb5d73e94f6ed73

* FIX:fixed incorrect HMS content

jira:[STUDIO-5818]

Change-Id: Ia2896d6f0ab1ffedbc850e54168acece8e47bdbb

* FIX:external transparent material display error

JIRA: STUDIO-5845
Change-Id: I0a4f05ac5d5c0ac49d85a704ee65a7221c5f1e1d

* FIX: [5846] Custom Filament Page show System Filament

Simultaneously solve: When downloading Preset from the cloud, the filament_id of the preset in m_preset is null.

Jira: 5846

Change-Id: I6ba1b46fe92e345614b6a4af3fffa87d81fa2456

* FIX:A1 and p1 series do not support custom materials

JIRA:XXXX
Change-Id: Ib0459273d1f9a7152a5563757204634a8d0cd6f5

* FIX: exception when comparing profiles

jira:[NEW]

Signed-off-by: XunZhangBambu <xun.zhang@bambulab.com>
Change-Id: I946b5fcd35f779d271df2b3de731fdcada5aab29
(cherry picked from commit 00e739570812e5c4be3e0f7702ce8c72c0f9e72b)

* FIX: hide_id_middle_string

Change-Id: I28f32ec526b443d31d7992971b80ab1cb737deb6
Github: STUDIO-5825

* ENH: modify some logs level

JIRA: STUDIO-5958

Change-Id: I5a8592dfb8ffa9a81952535cb30944f867aa0e22
Signed-off-by: Stone Li <stone.li@bambulab.com>

* NEW:build plate marker detect

Change-Id: I70f03efea688bb6ce71c3f5990bb3c50605ab184

* FIX: Studio UI Freeze when saving user preset

github: #3335

Change-Id: Idaf53f673a3e46408826c06bdde2c592395d358b

* update bbl plugin version

* fix build errors

* update bbl profiles

* update color

---------

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Signed-off-by: Stone Li <stone.li@bambulab.com>
Co-authored-by: Kunlong Ma <kunlong.ma@bambulab.com>
Co-authored-by: gerrit <gerrit@bambulab.com>
Co-authored-by: liz.li <liz.li@bambulab.com>
Co-authored-by: tao wang <tao.wang@bambulab.com>
Co-authored-by: lane.wei <lane.wei@bambulab.com>
Co-authored-by: maosheng.wei <maosheng.wei@bambulab.com>
Co-authored-by: chunmao.guo <chunmao.guo@bambulab.com>
Co-authored-by: zhou.xu <zhou.xu@bambulab.com>
Co-authored-by: Arthur <arthur.tang@bambulab.com>
Co-authored-by: Bastien Nocera <hadess@hadess.net>
Co-authored-by: zhimin.zeng <zhimin.zeng@bambulab.com>
Co-authored-by: hu.wang <hu.wang@bambulab.com>
Co-authored-by: Stone Li <stone.li@bambulab.com>
Co-authored-by: XunZhangBambu <xun.zhang@bambulab.com>
2024-01-26 20:18:10 +08:00
Noisyfox
481fff494b Update the naming of the layer order option to intra-layer order (#3834) 2024-01-26 20:06:21 +08:00
SoftFever
0aebd8d002 handle the case when source file and target file is the same file 2024-01-25 21:11:27 +08:00
SoftFever
35ab4c645a fix PR build on lInux 2024-01-25 21:09:55 +08:00
Erkan Ozgur Yilmaz
252788419b Fix #3311: filament Load / Unload time was not used in time estimation (#3706)
* Fix for #3311:

The `config.filament_load_time.values` and `config.filament_unload_time.values` are completely ignored. This was working in PrusaSlicer and apparently BBS converted the `GCodeProcessor::TimeProcessor.filament_load_times` and `GCodeProcessor::TimeProcessor.filament_unload_times` from being `std::vector<float>` to just `float` and they were using the BBS specific and currently hidden `machine_load_filament_time` and `machine_unload_filament_time` config values. Reverted that change by copying those lines from PrusaSlicer.

* Fix for #3311:

Updated the previously fixed to code to keep compatibility with BBS printer .

* Fix for #3311:

Updated `GCodeProcessor::get_filament_unload_time()` to keep compatibility with BBS printers.
2024-01-25 10:42:27 +00:00
SoftFever
aac618dcb7 Fix build errors on main branch caused by version string 2024-01-25 13:02:29 +08:00
foghatredbird
afb89c4309 Modifiers should load at object offset like in Prusaslicer (#3802)
* fix precedence errors

Fix a handful of precedence errors and 1 logic/precedence error.  None of the code will compile as intended without these changes.

* Update GUI_ObjectList.cpp

Modifiers should load at same offset as object they are created against.  Based on prusaslicer ObjectList::load_from_files where it works correctly.

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-24 15:50:42 +00:00
Noisyfox
55b6f2a588 QoL: Port profile value transfer on profile diff dialog from PrusaSlicer (#3737)
* DiffDialog: Implemented a transfer of options from one preset to another
Related to [Feature Request] #5384 - Copy values in Profile comparaison dialog

Cherry-picked from prusa3d/PrusaSlicer@0b8d7380ff

Co-authored-by: YuSanka <yusanka@gmail.com>

* Remove save button

* Sync with latest PS

* Use Orca button style

* Show tips about trasnfer disabled

---------

Co-authored-by: YuSanka <yusanka@gmail.com>
2024-01-24 15:18:52 +00:00
Thomas
48541be681 Creality K1 Profiles improvements (and K1C addition) (#3728)
* Added K1C and fixed some settings (took from config files instead of Creality Print)

* Files renaming

* New PLA-CF, prettify json for K1C, naming uniformisation, ...

* Port Special PLA profiles to K1/K1 Max

* Changed slow down layer time and slow down min speed in order to improve overall speed on details.

* Raised PLA bed temp to 55°C

* Optimisations for ABS, ASA and added Generic PC profile.

* Added PA-CF and fixed PC profiles.

* Added new filaments to default materials
2024-01-24 14:19:36 +00:00
SoftFever
5ff00fb48c Port EditGCodeDialog from PrusaSlicer (#3417)
This is a port of the EditGCodeDialog from PrusaSlicer 2.7.x. There were
a few changes made to make it a bit more functional. Also, it isn't
quite fully complete, but it should be in a very usable state.

General Changes:
- Implement UndoValueUIManager and EditValueUI in Field
- Implement EditGCodeDialog and add buttons to the tabs
- Other minor changes to accommodate the new classes

Differences from PrusaSlicer's Implementation:
- backported to wxWidgets 3.1.5 (reverse commit 8770c4b7 after updating
to 3.2.x)
- icons have been updated to use Orca colors
- improve the report that tells you if certain placeholders have not
been defined properly for the dialog. It now shows all issues at once
rather than having to fix then recompile to see the next issue.
- allow the use of the cmake option `ORCA_CHECK_GCODE_PLACEHOLDERS` to
toggle the above report since our workflow rarely uses debug mode.
- if a custom gcode value is not set when checking gcode placeholders, a
testing value is set. Custom gcode is not parsed if it is empty, and the
only way to check if the placeholders are all defined is by running the
placeholder operation on the custom gcode.
- some calls to `print.config()` in Gcode.cpp were changed to `m_config`
to support the above testing values feature (only m_config is modified
with the placeholders and `print.config()` would return an empty string)
- a macro has been added to quickly add a definition to
SlicingStatesConfigDefs with less boiler plate (it could technically be
used for any ConfigOptionDef, but that would hurt interoperability with
PS. I tried to not use the macro for too many PS defined definitions.)
- the presets are now also categorized by the page they are on in their
tab
<table>
<tr>
 <td>Prusa
 <td>Orca
<tr>
 <td>
<img
src="https://github.com/SoftFever/OrcaSlicer/assets/24759591/27cb4f48-d225-4563-9aeb-b2b461f8bff5"
/>
 <td>
<img
src="https://github.com/SoftFever/OrcaSlicer/assets/24759591/4fcd8cde-2427-4d1a-a0ed-1738b570b919"
/>
</table>

TODO:
- [x] Make sure all linux fixes have been applied
- [x] Finish adding "universal" gcode options
- [x] add search function to dataview (maybe?)
- [x] determine if any options are being left out of the preset
categories by getting options from Tab rather than Presets. If so,
consider adding outside of the groupings
2024-01-24 19:56:18 +08:00
Ocraftyone
c4a66f36ae Debug Improvments on Windows (#3275)
* fix assert statements

* Add ORCA_INCLUDE_DEBUG_INFO to deps cmake

adds option ORCA_INCLUDE_DEBUG_INFO to deps build script to allow an alternative for RelWithDebInfo that works on windows

* add build type option to windows script

* update .gitignore to include build*
2024-01-24 11:48:14 +00:00
Ryan Whipple
73481da6da corrected printable_area (#3527)
* corrected printable_area

* adjusted to keep origin at 0x0
2024-01-24 11:36:17 +00:00
SoftFever
1f00fe92d2 nightly release (#3792)
* nightly release
2024-01-24 11:31:18 +00:00
duub qnnp
d3210a4530 Update Spanish translation (#3793)
* Update Spanish translation

* Update Spanish translation
2024-01-23 23:32:45 +08:00
Giveen
4ec96d25a4 Create SECURITY.md (#3696) 2024-01-23 11:20:08 +00:00
Ioannis Giannakas
757b4de4c6 Fix duplicate entry of Only Lift Z above and below in the extruder tab (#3788) 2024-01-22 13:03:20 +00:00
Morton Jonuschat
7aee846ddc [BUGFIX] Prevent crash in small area infill comp with gcode comments (#3786)
Enabling the option "Verbose G-Code" would trigger a crash in the Small Area Infill flow compensation due to concurrent access/modification of the gcode comment.
2024-01-22 13:01:18 +00:00
Ocraftyone
11fd73a90d Merge branch 'main' into enh-port-edit-gcode-dlg 2024-01-21 14:12:39 -05:00
Ocraftyone
7c02b5c9f4 Revert to BBL get_line function 2024-01-21 14:11:06 -05:00
Thomas
273b3682dc Fixes for French translations (#3773)
* Fixes for French

* Added missing translations
2024-01-21 22:39:24 +08:00
Noisyfox
6479bc8edc Retain mirror state when scaling using text input (#3643) (#3719) 2024-01-21 22:38:04 +08:00
Heiko Liebscher
8a529e1239 fix DE localization after feature updates (#3746) 2024-01-21 22:17:51 +08:00
Noisyfox
606438d61a QoL: Some UI improvements to Cut Gizmo (#3752)
* Cut: Add color legend for upper & lower part

* Cut: Make grabber larger
2024-01-21 22:15:03 +08:00
Noisyfox
122c5cedd8 Add project info editor (#3754)
* Add button to add model info

* Initial impl of project info editor

* Add sidebar item to edit project info

* Add license selector

* Fix use of deprecated apis

* Fix license combox dark mode

* Add back button on project info editor screen

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-21 22:13:37 +08:00
Ocraftyone
ead78a98f9 Re-enable printing by object gcode (#3691)
Re-enable printing by object gcide
2024-01-21 21:06:23 +08:00
Noisyfox
33987d3e79 Add plate name edit btn (#3756) 2024-01-21 21:00:18 +08:00
Noisyfox
26505e23ee Allow specifying print order within each layer (#3685)
* Allow reordering objects regardless of print seq

* Add option to control the layer print order

* Sort object by their order in object list instead of id

* Show print order when print order is the same as the object list

* Ensure the print order when print order is same as object list

* Update option name

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-21 20:11:09 +08:00
Dylan
e92be73894 Don't check the temperature of multi filament for multi toolhead printers (#3649)
do not check the temperature of multi filaments for multi toolhead printers
2024-01-21 12:34:00 +08:00
Morton Jonuschat
82ead12cde [FEATURE] Experimental small area flow compensation (#3334)
* [FEATURE] Experimental small area flow compensation

This is a native implementation of the [Small Area Flow Compensation](https://github.com/Alexander-T-Moss/Small-Area-Flow-Comp)
post-processor by Alexander Þór for OrcaSlicer.

Quite often small areas of solid infill appear to be over-extruded, despite
the rest of a print looking like it has a well-dialled-in EM/Flow. Currently,
there isn't a good understanding of why this happens, so this is an attempt
at a brute-force approach to treat the symptom.

This feature modifies the flow of extrusion lines inversely proportional to
the length of the extrusion line (the shorter the extrusion, the less flow
it should have).

Alexander Þór: Author of the original script implementation
Weaslus: Proof Reader, Hypeman & pestered folks into making this

* [TASK] Whitespace cleanup

* [TASK] Add credits, format code, improve input labels

* [TASK] Use multi-line textbox as input for flow model

* [TASK] Toggle flow compensation per object

* [TASK] Enable flow compensation for first layer

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-21 12:07:52 +08:00
Ocraftyone
9f44e151ba Merge branch 'main' into enh-port-edit-gcode-dlg 2024-01-20 19:43:17 -05:00
Ocraftyone
595f707f22 Fix linux crashing when opening EditGcodeDialog 2024-01-21 00:40:52 +00:00
Olcay ÖREN
b30efa727f Update OrcaSlicer_tr.po - TURKISH translation update (#3732)
* Update OrcaSlicer_tr.po - TURKISH translation update

* Update OrcaSlicer_tr.po - TURKISH translation update

* elegoo_neptune4pro_buildplate_texture.png updated

* Update OrcaSlicer_tr.po - TURKISH translation update

* Update OrcaSlicer_tr.po - TURKISH translation update

* Update OrcaSlicer_tr.po - TURKISH translation update

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-19 16:10:14 +00:00
Eldenroot
e673e48c57 Fixes #3721 - Typo in lang files (#3722)
* Update OrcaSlicer.pot

* Update CreatePresetsDialog.cpp

* Update OrcaSlicer_hu.po

* Update OrcaSlicer_nl.po

* Update OrcaSlicer_ja.po

* Update OrcaSlicer_sv.po

* Update OrcaSlicer_en.po
2024-01-19 16:09:24 +00:00
Seth LaForge
54795dfaaa Document building and debugging with XCode. (#3733)
* Document building and debugging with XCode.

* Account for Intel Macs!
2024-01-19 20:36:32 +08:00
Ioannis Giannakas
fe148515ce [Feature] Enabled gap fill algorithm for all solid fill types (#3412)
* ENH: Enabled gap fill algorithm for all solid fill types

* Made gap fill an option & refactored code into its own method

* Code comment updates

* Converted gap fill to enum and control filter out gap fill in the UI

* Update label for consistency

* Spelling mistake
2024-01-18 14:43:23 +00:00
Ioannis Giannakas
c0c05c715b [Bug fix] Fixes "Wipe before external loop" causing blobs on single wall perimeters (#3616)
* #3603 - fix "Wipe before external loop" causing blobs on single wall perimeters

* Updated parameters to pass by const reference to avoid re-creation of object
2024-01-18 14:19:30 +00:00
Ioannis Giannakas
0b6968c36f [Feature] Introduced experimental option to fully disable solid infill against walls when ensure vertical thickness is turned off (#3235)
* ENH: Introduced experimental option to fully disable wall solid infill when ensure vertical thickness is turned off.

* Merge branch 'main' into pr-reduce-wall-solid-infill

* Merge remote-tracking branch 'upstream/main' into pr-reduce-wall-solid-infill

* Merge branch 'pr-reduce-wall-solid-infill' of https://github.com/igiannakas/OrcaSlicer into pr-reduce-wall-solid-infill

* Merge branch 'SoftFever:main' into pr-reduce-wall-solid-infill

* Merge branch 'SoftFever:main' into pr-reduce-wall-solid-infill

* Fixed bridges too short when ensure vertical thickness is off

* Merge branch 'main' into pr-reduce-wall-solid-infill

* Fixed if statement typo

* Merge remote-tracking branch 'upstream/main' into pr-reduce-wall-solid-infill

* Updated code comments and tweaked overlap parameter to generate top solid infill.

* Parameter tweaks and caption adjustment

* Code comment update

* Merge branch 'SoftFever:main' into pr-reduce-wall-solid-infill

* Merge branch 'SoftFever:main' into pr-reduce-wall-solid-infill

* Merge branch 'SoftFever:main' into pr-reduce-wall-solid-infill

* Merge branch 'main' into pr-reduce-wall-solid-infill

* Merge branch 'main' into pr-reduce-wall-solid-infill

* Merge branch 'SoftFever:main' into pr-reduce-wall-solid-infill
2024-01-18 21:57:43 +08:00
Noisyfox
b2708fb1f4 Fix constrainted scale (scale with ctrl key pressed) (#3717)
Fix constrainted scale (scale with ctrl key pressed) (#3699)
2024-01-17 23:59:48 +08:00
konradmb
7eb45a0c73 Fix Kingroon KP3S profiles (#3712) 2024-01-17 23:54:17 +08:00
Noisyfox
418aca7186 Remember the sidebar size (#3700)
Store the current sidebar size using `best_size`
2024-01-17 23:36:43 +08:00
SoftFever
44ad091bf0 Remove version checks when loading profiles 2024-01-17 23:06:22 +08:00
SoftFever
95adb899a4 Merge branch 'main' into enh-port-edit-gcode-dlg 2024-01-15 22:35:36 +08:00
foghatredbird
1615832236 fix precedence errors (#3611)
Fix a handful of precedence errors and 1 logic/precedence error.  None of the code will compile as intended without these changes.

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-15 22:35:08 +08:00
Ocraftyone
9b76f51bd3 Update BuildLinux.sh (#3679)
* Update BuildLinux.sh

Echo the cmake command. Helps with transparency of what command/parameters are being used. Helps point users in the right direction if they want to build via an IDE.

* Update BuildLinux.sh
2024-01-15 22:34:25 +08:00
Aleksej Wesselbaum
f4cf1c706b fix(TemperaturesCalibration): typo in end_temp_string (#3680)
* fix(TemperaturesCalibration): typo in end_temp_string

* Update po files

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-15 22:33:17 +08:00
Noisyfox
1ffa32beed Fix painting Gizmo rendering on AMD Vega GPUs (#3663)
* Fix painting gizmo rendering on AMD Vega GPUs

* Fix issue that support & seam painting gizmo rendering issue if wireframe is enabled in MMU gizmo
2024-01-15 22:19:50 +08:00
VBits
b25617892e Update for colpic thumbnails background color to match Elegoo theme (#3647)
Update Thumbnails.cpp

Changed background color from white to a dark gray to match the rest of the Elegoo touch screen theme
2024-01-15 22:17:54 +08:00
Thomas
2e4e1a2e0f [Fix] Fixed error in Anycubic Kobra 2 profile using "rectilinear" sparse infill (#3664)
Fixed error in Anycubic Kobra 2 profile "rectilinear" sparce infill doesn't exist, it is "zig-zag"
2024-01-15 22:15:40 +08:00
Thomas
a9c572f0a9 [Translations] Added missing strings from 1.9.0 (#3655)
* Added missing strings from 1.9.0

* Uniformisation : "processus" is "traitement"

* Center is infinitive

* Clarified "Start temp", "End temp" and "Temp step"
2024-01-15 22:08:23 +08:00
Ioannis Giannakas
698aba3570 [Bug fix] Fixes retraction on layer change being performed when retract travel threshold is set to 0 (#3614)
Fixes retraction on layer change being performed when retract travel threshold is set to 0
2024-01-15 21:22:00 +08:00
tome9111991
fff85195b8 Qidi x 3 thumbnail scale (#3600)
Qidi x 3

correct scale thumbnails on Qidi X3 printer
2024-01-15 21:18:40 +08:00
Leland Lucius
1cdd31fa99 Fix garbled text when display scalling > 300% (#3402)
* Fix garbled text when display scalling > 300%

On Windows, if your display scaling is greater than 300%,
the text rendered by imgui will be garbled. Allowing imgui
to do the scaling instead of making the font to large
corrects the issue.

* Only use modified scaling on Windows

And only if the system's scaling factor is greater than 300%.

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-15 21:01:43 +08:00
Ioannis Giannakas
a996188e38 [Bug fix] Fixes lightning infill with sparse infill width set to 0 causes "divide by zero" fatal error (#3592)
* Fix issue #3567 - Lightning infill with sparse infill width set to 0 causes "divide by zero" fatal error

* Merge branch 'SoftFever:main' into Fix-#3567---Lightning-infill-with-sparse-infill-width-set-to-0-causes-divide-by-zero-fatal-error

* Merge branch 'main' into Fix-#3567---Lightning-infill-with-sparse-infill-width-set-to-0-causes-divide-by-zero-fatal-error
2024-01-14 23:38:34 +08:00
Geoffrey Ward
c26a73a1ca Default Anker support_base_pattern (Fixes #3326) (#3585)
* Fixes #3326
2024-01-14 23:09:46 +08:00
FlashforgeOfficial
76b97c3963 0109 Machine end gcode and process update for Adventurer 5M series (#3580)
* Machine G-code Fix

* Merge branch 'SoftFever:main' into main

* 0109 Update end code and process

* 0109 new update

* 0109 Profile Update for end gcode

* Merge branch 'main' into main
2024-01-14 23:08:27 +08:00
Thomas
ff291a4ab8 New generic profile for Ender 3 V2 Neo (#3434)
* Added generic profile for Ender 3 V2 Neo

* Disable skirt, because a purge line is drawn

* Added printer_structure
2024-01-14 23:07:35 +08:00
Ocraftyone
0af1b9b958 Merge branch 'main' into enh-port-edit-gcode-dlg 2024-01-14 03:54:27 -05:00
Tuomas Salokanto
b7b22eb78f Support custom IP camera (#3415)
* Support custom IP camera

Allow adding custom IP camera source while keeping possible
built-in bambulab camera also functional and add button to
switch between them.

This uses WebView widget to show the stream. Upon loading the
page, javascript is used to remove native controls and scroll-
bars for aesthetic reasons.

* Add partial support for PiP video

HTMLVideoElement supports picture-in-picture video
but the dedicated control is hidden in this implementation
to have more integrated look in OrcaSlicer. Add right-click
listener to the camera switch icon that opens the video element
in a PiP window.

Only works when the video is in <video> HTML element, so for
example MJPEG streams in <img> element won't work.
2024-01-14 16:18:30 +08:00
SoftFever
d26513e635 Pressure advance Line: support different nozzle sizes 2024-01-14 10:07:50 +08:00
Ioannis Giannakas
f7b92d9813 [Feature] Introduced option to control amount of internal bridging, fixing internal bridge missing for some sloped surfaces (#3319)
* ENH: Improve internal bridge detection for sloped surfaces

* Moved lightning detection out of the parallel threads

* Naming conventions

* Revised approach - use reduced expansion multipliers

* Further reduce filtering, flagged option as experimental

* Corrected code comment

* Updated tool tip

* Introduced filtering drop down option
2024-01-13 23:20:08 +08:00
Ocraftyone
7dd7b301e1 Remove Resizeable Border
Helps with previous commit
DataView currently doesn't resize vertically
Also, at the moment, the resize grabber is not respecting dark mode and this solves that too.
2024-01-11 06:46:04 -05:00
Ocraftyone
aef74ab005 Hardcode Location of Add Button
Hardcoding it prevents the add button from jumping around when switching between parameters with single-line and multi-line descriptions
2024-01-11 06:03:20 -05:00
Ocraftyone
3252e1c228 Append extra parameters from preset
If an option is not under a category in the tab but is part of the preset, it is added to the dataview.
2024-01-10 21:33:53 -05:00
Ocraftyone
8de9d97cd8 Add search term highlighting to EditGCodeDialog
Now leaves text stored in ParamsNode un-formatted and uses flags to determine the formatting. The GetFormattedText function now returns the markup text.
2024-01-10 07:22:36 -05:00
Ocraftyone
22302a0f10 Merge branch 'main' into enh-port-edit-gcode-dlg 2024-01-10 07:18:47 -05:00
gswatkins
b4925363d6 Display accurate precision for percent config values (#3466)
Percent config values are managed as float types, but decimal precision
is not displayed in the GUI. This change uses the `double_to_string()`
converstion rather than casting to an int when retrieving the config
option value.
2024-01-09 21:56:17 +08:00
Ioannis Giannakas
0bf78f8e9e Bug: Fix retraction issues with PA pattern calibration (#3314)
* Attempt to fix retraction issues with PA pattern calibration

* PA pattern test fix - retract and wipe on layer change

* Naming convention

* fix crash
2024-01-09 21:55:11 +08:00
Ocraftyone
d5ee4ff1ab Merge branch 'main' into enh-port-edit-gcode-dlg 2024-01-08 22:41:35 -05:00
Ocraftyone
068b888199 Implement Search for GCode DataView 2024-01-08 18:00:32 -05:00
Hukete
1067fc2649 Update the some profiles (#3470)
* 10-25

Add TPU-95A HF

* 1030

Adding Introduction of Chamber Temperature Control Macros(M191) to Notes

* 1102

Add ABS-GF10 profile,
Remove a extra "s" from the "0.36mm Standard @Qidi XPlus3 0.6 nozzle.json" file

* 1106

Add the PA value to some genetic filament profiles

* Add new filaments profiles

Add new filaments profiles

* 1

1

* Add two new filaments

Add two new filaments

* Optimized 0.2mm nozzle profiles

Optimized 0.2 mm nozzle QIDI Generic ABS/PETG/PLA profiles

* disable prime tower

disable prime tower and independent_support_layer_height,
Improve some part of the surface when supported

* Fix the name issue

Fix the name issue
2024-01-06 15:15:49 +08:00
Thomas
cb9792e1d9 Added i3 printer_structure to Creality printers (#3460) 2024-01-06 15:14:55 +08:00
Olcay ÖREN
8de98fc229 Update OrcaSlicer_tr.po - TURKISH translation update (#3484)
* Update OrcaSlicer_tr.po - TURKISH translation update

* Update OrcaSlicer_tr.po - TURKISH translation update

* elegoo_neptune4pro_buildplate_texture.png updated

* Update OrcaSlicer_tr.po - TURKISH translation update

* Update OrcaSlicer_tr.po - TURKISH translation update

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-06 15:13:42 +08:00
Thomas
7e59e99841 M600 for Neptune 3 series (and removed from Neptune X) (#3432) 2024-01-06 13:47:34 +08:00
Ocraftyone
40a980f5d8 CICD: Fail on no cache hit (#3429) 2024-01-06 13:46:53 +08:00
Ioannis Giannakas
5aae123cbb Bug: Corrected monotonic lines not respecting user infill / wall overlap setting (#3388)
Bug: Correct monotonic lines not respecting user infill / wall overlap setting

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-06 13:44:33 +08:00
SoftFever
67de85ba43 Fix an issue when loading older 3mf project 2024-01-06 11:21:46 +08:00
SoftFever
793a753cfc Fixed an issue that Orca project can't be loaded in dev branch 2024-01-06 10:13:34 +08:00
Ocraftyone
43417b0f63 fix linux compilation 2024-01-05 21:01:45 -05:00
SoftFever
18b52fd780 bump version profile version to "01.09.00.02" 2024-01-06 09:22:44 +08:00
SoftFever
61f8719c69 Fixed an issue that some profiles has ironings enabled by default 2024-01-06 09:22:44 +08:00
SoftFever
c02d2c4db3 Added an option to enable multiple bed type support for printers 2024-01-06 09:22:44 +08:00
SoftFever
c4538ae0a4 Fixed crashes when send gcode to BBL printers 2024-01-06 09:22:44 +08:00
SoftFever
1fad2a76b3 update gitignore 2024-01-06 09:22:44 +08:00
SoftFever
67547d1037 fix object exclusion regression on BBL printers 2024-01-06 09:22:44 +08:00
SoftFever
0e16ad4fbf skip writting object info for BBL printers 2024-01-06 09:22:44 +08:00
Heiko Liebscher
71c9ae7b2a Fix de for 1.9 release (#3387)
fix some typos and new msgids
2024-01-06 09:22:14 +08:00
Ocraftyone
907b160007 Merge remote-tracking branch 'origin/enh-port-edit-gcode-dlg' into enh-port-edit-gcode-dlg 2024-01-05 06:06:40 -05:00
Ocraftyone
50b7b3d073 Remove unused code 2024-01-05 06:03:34 -05:00
Ocraftyone
a8c3377d9b Merge branch 'main' into enh-port-edit-gcode-dlg 2024-01-05 05:59:43 -05:00
Ocraftyone
4abca6a091 Override full config defs in non-preset categories 2024-01-05 05:58:44 -05:00
Ocraftyone
ecd20184f9 Add the rest of the param defs
Also added temperatures category to handle them
2024-01-05 05:24:53 -05:00
Noisyfox
e713849fed QoL: Keyboard shortcuts updates & fixes (#3457)
* Bring back the shortcut to zoom in & out

* Update keyboard shortcut info

* Update keyboard shortcut info

* Different handling of shortcut 'T' for emboss text

Cherry-picked from prusa3d/PrusaSlicer@58e3143ad8

Co-authored-by: Filip Sykala - NTB T15p <Filip.Sykala@prusa3d.cz>

---------

Co-authored-by: Filip Sykala - NTB T15p <Filip.Sykala@prusa3d.cz>
(cherry picked from commit 002208fc8c)
2024-01-04 19:36:04 +08:00
SoftFever
9d59cd66c4 Feature/update deps (#3445)
* update deps

* fix win build errors

* fix mac build

* update linux

(cherry picked from commit 77b6225060)
2024-01-04 19:36:04 +08:00
Noisyfox
1ea33f0919 Fix NaN when adding negative part (#3423) (#3431) 2024-01-02 20:48:25 +08:00
SoftFever
8e3f7e7bf2 some profile changes based on feedbacks 2024-01-02 20:41:41 +08:00
SoftFever
02258b4391 Merge branch 'main' into enh-port-edit-gcode-dlg 2024-01-02 18:23:52 +08:00
SoftFever
eec8508e74 Fix boost download server issue
(cherry picked from commit b2ce4c1880)
2024-01-02 16:26:01 +08:00
SoftFever
3efe5f82d7 bump dev to 2.0.0-dev version 2024-01-02 16:02:51 +08:00
SoftFever
70c282667f Fix wrong option order 2024-01-02 16:02:51 +08:00
Noisyfox
712478c240 Fix issue that "Per-glyph" option not working when UI is in Chinese (#3425) 2024-01-02 16:01:05 +08:00
Ocraftyone
b619e5bf8e Merge remote-tracking branch 'origin/enh-port-edit-gcode-dlg' into enh-port-edit-gcode-dlg 2024-01-02 00:58:44 -05:00
Ocraftyone
42e6b18149 Check if cmake option is truthy rather than defined 2024-01-02 00:56:30 -05:00
SoftFever
9e443baf95 Improve rendering quality when model color is pure black 2024-01-02 13:14:46 +08:00
SoftFever
8d5bb6cc4b Set CMAKE_OSX_DEPLOYMENT_TARGET properly on dev machine when calling build_release_mac.sh 2024-01-02 13:14:20 +08:00
Scott Mudge
209e9a2bb9 Add configurable short wall/perimeter cleaning for Arachne (#2790)
* add feature to add configurable value to clean/remove short un-closed walls/perimeters, to improve print times and reduce stringing (and generally lead to a cleaner print).

* fixes to short wall removal, which no longer affects bottom or top surfaces. allowed adjusting Top-surface threshold (renamed from One wall threshold for clarity) when short wall removal value is configured above default of 0.5.

* small fix for toggle_line for min_width_top_surface, to only be visible if min_length_factor > 0.5 and arachne is enabled.

* Use copy of input_params

* revert `One wall threshold"` string change

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-01 22:21:36 +00:00
Ocraftyone
a8148d8ee6 Merge branch 'main' into enh-port-edit-gcode-dlg 2024-01-01 11:01:22 -05:00
Ocraftyone
23942781ff fix spacing in tooltip 2024-01-01 10:58:27 -05:00
Ocraftyone
7f1f94d531 Subgroup presets by page 2024-01-01 10:58:26 -05:00
Ocraftyone
7297997837 Add defs for custom gcode 2024-01-01 10:58:25 -05:00
Ocraftyone
2235371f91 Don't show option if defined with type coNone 2024-01-01 10:58:24 -05:00
Ocraftyone
529f14d64b Use proper config when checking for custom gcode
make sure that the local copy of the config is being used when checking if there is custom gcode otherwise it would be possible it doesn't get run during testing
2024-01-01 10:58:23 -05:00
Ocraftyone
066e2f6062 Make Compatible with wx 3.1.5
This should be reverted when wxWidgets 3.2.1 is re-implemented
2024-01-01 10:58:22 -05:00
Ocraftyone
f78d55eac5 Merge branch 'main' into enh-port-edit-gcode-dlg
# Conflicts:
#	src/slic3r/GUI/OG_CustomCtrl.cpp
#	src/slic3r/GUI/OG_CustomCtrl.hpp
2024-01-01 10:58:04 -05:00
Ocraftyone
4e3039b6f9 Improve checking placeholders
Dialog now shows all issues within the same dialog

If a custom gcode value is not specified within the config, a testing value is added. This ensures that (most) of the custom gcode is parsed, and thus checked against the definitions.
2024-01-01 10:57:23 -05:00
Ocraftyone
d839d673d0 Remove SlicingState Options that aren't in Orca
Also organized and added missing options to `s_CustomGcodeSpecificPlaceholders`
2024-01-01 10:57:22 -05:00
Ocraftyone
5fc6301520 Update Icons
Add new icons from PS and update to use Orca color scheme

Original Commit: prusa3d/PrusaSlicer@37afe79

Co-authored-by: YuSanka <yusanka@gmail.com>
2024-01-01 10:57:21 -05:00
Ocraftyone
2109ac649d Fix duplicate else statement 2024-01-01 10:57:19 -05:00
Ocraftyone
011d7ade15 Remove extraneous options 2024-01-01 10:57:18 -05:00
Ocraftyone
7a1d782ce1 Add fix for linux
Original Commit: prusa3d/PrusaSlicer@361ef22

Co-authored-by: YuSanka <yusanka@gmail.com>
2024-01-01 10:57:17 -05:00
Ocraftyone
8c6100ea21 Update Labels
Original Commit: prusa3d/PrusaSlicer@7efdbec

Co-authored-by: Lukas Matena <lukasmatena@seznam.cz>
2024-01-01 10:57:15 -05:00
Ocraftyone
036b21edb9 Add wrapping description
Original Commit: prusa3d/PrusaSlicer@83b8988

Co-authored-by: YuSanka <yusanka@gmail.com>
2024-01-01 10:57:14 -05:00
Ocraftyone
0e590083fa Edit Custom G-Codes Improvements
Orca: Added option to use CMake config option ORCA_CHECK_GCODE_PLACEHOLDERS to check custom gcode placeholders rather than using debug

Original Commit: prusa3d/PrusaSlicer@b8bb7f2

Co-authored-by: YuSanka <yusanka@gmail.com>
2024-01-01 10:57:13 -05:00
Ocraftyone
6539dc4efa Add parameter description
Original Commit: prusa3d/PrusaSlicer@d652f15

Co-authored-by: YuSanka <yusanka@gmail.com>
2024-01-01 10:57:11 -05:00
Ocraftyone
58cd50cc23 Implemented new grouping for the params
Original Commit: prusa3d/PrusaSlicer@b2bd7f5

Co-authored-by: YuSanka <yusanka@gmail.com>
2024-01-01 10:57:10 -05:00
Ocraftyone
6d19d6207a Partial Automation of getting Gcode placeholders
Included pre-generated files specific to Orca rather than PS provided files

Original Commit: prusa3d/PrusaSlicer@55d5921

Co-authored-by: YuSanka <yusanka@gmail.com>
2024-01-01 10:57:09 -05:00
Ocraftyone
05e159037f Improved ParamsViewCtrl
Original Commit: prusa3d/PrusaSlicer@59af551

Co-authored-by: YuSanka <yusanka@gmail.com>
2024-01-01 10:57:07 -05:00
Ocraftyone
bdac496130 Implement ParamsViewCtrl
+ GUI_App : Fixed update of the dark mode, when DataViewCtrl doesn't have header
-Orca: currently doesn't seem to display dataview labels properly. TBD if it continues to be an issue.

Original Commit: prusa3d/PrusaSlicer@c577b7f

Co-authored-by: YuSanka <yusanka@gmail.com>
2024-01-01 10:57:06 -05:00
Ocraftyone
dd802764b9 Add first impl of EditGCodeDialog
Only current issue is that the grabber for the resizeable window is currently white (ongoing issue for Orca)

Original Commit: prusa3d/PrusaSlicer@a8307bf

Co-authored-by: YuSanka <yusanka@gmail.com>
2024-01-01 10:57:05 -05:00
Ocraftyone
accdbb9661 Implement Preparation for Edit Custom Gcode
Original Commit: prusa3d/PrusaSlicer@7db83d5

Co-authored-by: YuSanka <yusanka@gmail.com>
2024-01-01 10:57:04 -05:00
Ocraftyone
4f0a47b7f4 add UndoValueUIManager from PS
from prusa3d/PrusaSlicer@32ff20d

Co-authored-by: YuSanka <yusanka@gmail.com>
2024-01-01 10:57:03 -05:00
Thomas
9701ab18e8 Added PAUSE command for change_filament_gcode on Elegoo Neptune 4 series (#3411)
Added PAUSE command for change_filament_gcode

on-behalf-of: @tomsbasement <tom@tomsbasement.shop>
2024-01-01 20:01:30 +08:00
SufficentMuffin
f99394b53c Update 0.48mm Standard @BBL X1C 0.8 nozzle.json (#3379)
* Update 0.48mm Standard @BBL X1C 0.8 nozzle.json

Removed P1S 0.6mm nozzle from process profile.

* fix

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-01 19:42:53 +08:00
Thomas
2cfcd0d03a Updated French translations. (#3410)
on-behalf-of: @tomsbasement tom@tomsbasement.shop
2024-01-01 19:35:16 +08:00
SoftFever
4d1885e7a4 fix intermittent crashes caused by detect_overhang_wall 2024-01-01 19:30:55 +08:00
SoftFever
5683729b17 Fxied a regression that wall order can't be set in height modifier 2024-01-01 18:21:19 +08:00
SoftFever
2f916f5ee9 Fixed crashes caused by pressure eq when support is used (#3407)
Fixed crashed caused by pressure eq when support is used
2024-01-01 17:05:40 +08:00
Thomas
967dc3d487 Creality K1/K1 Max, Ender 3 V3 Series and Ender 5 S1 baseplates (#3365)
* Fixed retraction speed and added missing parameters.

* Fixes for manual filament change

* More tunings and fixes.

* Fixes and tunings

* Formatting

* Decrease z-hop for K1

* K1/K1 Max, Ender 3 V3 and Ender 5 S1 correct build platforms (Thanks Henlor !)
2024-01-01 15:08:56 +08:00
SoftFever
a36df66083 Revert "Improve ExtrusionLine::simplify, eliminating many very-short extrusion segments which led to blemishes in thin-wall models sliced with Arachne (#3014)"
This reverts commit 3ca290d503.

Fixed #3340 #3375
2024-01-01 14:20:47 +08:00
Olcay ÖREN
1dfaef3948 Update OrcaSlicer_tr.po - TURKISH translation update (#3396)
* Update OrcaSlicer_tr.po - TURKISH translation update

* Update OrcaSlicer_tr.po - TURKISH translation update

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-01-01 13:47:25 +08:00
Vitalii Kutia
c623070395 edit Ukrainian translation (#3403) 2024-01-01 13:47:04 +08:00
Lee Jong Mun
52c08ca481 kor translation update (#3406) 2024-01-01 13:46:53 +08:00
Noisyfox
8fd4477110 Fix crash when click the color paint gizmo when object part is selected (#3405)
Fix crash when click the color paint gizmo when object part is selected (#3404)

Cherry-picked from bambulab/BambuStudio@1e99ce9535

Co-authored-by: liz.li <liz.li@bambulab.com>
2024-01-01 13:45:53 +08:00
Silence
60ab79cae0 Update README.md to provide alternative download links of webview2 runtimes (#3384)
Improve install and build instructions slightly.
2023-12-31 19:05:23 +08:00
Thomas
98a9bf6170 Creality Ender 3 V3/KE important fixes and some fine-tunings (#3362)
* Fixed retraction speed and added missing parameters.

* Fixes for manual filament change

* More tunings and fixes.

* Fixes and tunings

* Formatting

* Decrease z-hop for K1

* Updated thumbnails sizes to the same as Creality Print has.
2023-12-31 18:36:32 +08:00
Thomas
8afb675cd7 Fr translations (#3361)
* Updated French translations.

* Reword "strength"

* Updated translations

* Added missing translations.

* Fixed place on face translation

* Fixed strings.

* Updated locales

* Better translation for "Brim ears"

* Other round of fixes

* Added missing strings

* Renaming studio to Orca.

* Rewording "Arc fitting"

* Flush means purge and not "rinçage"
2023-12-31 14:46:18 +08:00
SoftFever
074490491e fixed a crash bug when switching to Bambu device page too fast 2023-12-31 13:31:58 +08:00
Noisyfox
a8ade1554f Fix preview legend window size (#3363)
Fix issue that the legend window expands to all available horizontal space if scrollbar is displayed
2023-12-30 22:02:32 +08:00
SoftFever
1d8cdf04d2 remove P1P-P1S warning 2023-12-30 15:22:18 +08:00
SoftFever
d0cf699617 bump dev branch version to 1.9.1-dev 2023-12-30 10:29:48 +08:00
SoftFever
527aefc6fb preset export small tweak 2023-12-30 10:29:32 +08:00
kpishere
044e25d1cf Feature/build target 10.15 (#3252)
* Set target to 10.15, make porter templates explicit

* CMAKE_OSX_DEPLOYMENT_TARGET refactor

* Update build_release_macos.sh

fix typo

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-30 09:12:06 +08:00
Olcay ÖREN
141e74a5d9 Update OrcaSlicer_tr.po - TURKISH translation update (#3354)
Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-30 08:52:26 +08:00
SoftFever
c08ace303a fix po errors 2023-12-30 08:50:27 +08:00
SoftFever
d5210c9fc9 Rename '.bbscfg/bbsflmt' to 'orca_printer/orca_filament' for clarity and to reduce user errors. Note: Configs may no longer be compatible with BS hence the change 2023-12-29 23:36:28 +08:00
SoftFever
ec9030e0ef create datadir folder if not exist 2023-12-29 22:49:45 +08:00
Fabio Forcina
20f7cc0cf9 Updated Italian translation (#3347) 2023-12-29 13:52:30 +00:00
Heiko Liebscher
86936e8873 Update German translation for 1.9 (#3343) 2023-12-29 20:20:21 +08:00
Thomas
e3f08c544b Changed Slic3r mentions (#3344) 2023-12-29 20:18:46 +08:00
SoftFever
fab8b78d69 update locale 2023-12-29 12:08:45 +08:00
SoftFever
63f9b3b1ba check for new version rework, support "check for stable updates only" mode 2023-12-29 12:04:40 +08:00
SoftFever
f89932f63e make exclude_object off by default 2023-12-29 09:21:49 +08:00
just-trey
a96ed26519 Profile: Anker M5/C first layer consistency improvements (#3321)
first layer consistency improvments
2023-12-29 00:04:45 +08:00
Thomas
c1bb9ecc43 Fixed typo (#3331)
* Fixed typo

* An other swtitch

* Main-i-fold(tm)
2023-12-29 00:02:45 +08:00
Thomas
2901c85ea9 Fixes and simplification of some Creality profiles. (#3315)
* Fixes and simplification of some Creality profiles.

* Set correct support_air_filtration for K1 Max
2023-12-29 00:02:01 +08:00
SoftFever
b51856faff fix/update locale 2023-12-28 00:23:42 +08:00
SoftFever
87830fdb9d add more hints 2023-12-28 00:23:42 +08:00
SoftFever
bab1a79511 Fixed a regression bug that --datadir was broken
fixed #3191
2023-12-28 00:23:42 +08:00
Ioannis Giannakas
7ab2fabe6a ENH: Port of "wipe inside before extruding an external perimeter" feature from super slicer (#3287)
* Wipe Inside at Start of perimeter

Co-Authored-By: Merill <6536403+supermerill@users.noreply.github.com>

* Cleaned up code and linked it to the wipe on loop parameter

* Trigger build

* Introduced wipe before external loop parameter.

* Removed redundant functions

---------

Co-authored-by: Merill <6536403+supermerill@users.noreply.github.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-27 11:21:33 +00:00
Thomas
90dd67e4e4 Update OrcaSlicer_fr.po (#3295)
* Update OrcaSlicer_fr.po

Added missing translations.

* Update OrcaSlicer_fr.po

* Update OrcaSlicer_fr.po

* Update OrcaSlicer_fr.po

* Update OrcaSlicer_fr.po
2023-12-27 09:31:19 +00:00
Hukete
309979eaff QIDI: Add two new filaments (#3304)
* 10-25

Add TPU-95A HF

* 1030

Adding Introduction of Chamber Temperature Control Macros(M191) to Notes

* 1102

Add ABS-GF10 profile,
Remove a extra "s" from the "0.36mm Standard @Qidi XPlus3 0.6 nozzle.json" file

* 1106

Add the PA value to some genetic filament profiles

* Add new filaments profiles

Add new filaments profiles

* 1

1

* Add two new filaments

Add two new filaments
2023-12-27 09:16:45 +00:00
SoftFever
78c7abe4c2 workaround to solve unwanted zstd dependency on runner (#3298)
* trigger build

* Remove zstd only for dep build

* reinstall zstd after building completed
2023-12-27 17:01:12 +08:00
SoftFever
98d8b010c4 downgrade to macos-12 as there are not many macos-13 runner instances availble yet 2023-12-27 17:01:12 +08:00
SoftFever
63351c01da upgrade to macos 13 (#3289)
brew uninstall --ignore-dependencies zstd
Use local curl
remove brew/macport dependency
2023-12-27 17:01:12 +08:00
SoftFever
de8013f211 upgrade libjpeg-turbo to 3.0.1 to properly suppor cross compile 2023-12-27 17:01:12 +08:00
SoftFever
20dab5d996 force to use own glew even if the system has installed one(brew) 2023-12-27 17:01:12 +08:00
SoftFever
9127bed11f Move DL_CACHE into deps folder. Make cross compile easier 2023-12-27 17:01:12 +08:00
SoftFever
3086875c51 Fixed a bug that spiral_mode_max_xy_smoothing was not hiden when vase is not enabled 2023-12-26 23:41:57 +08:00
SoftFever
2f17c1915d Fixed a regression that Turkish lang option was missing
Fixed #3278
2023-12-26 23:41:56 +08:00
SoftFever
0325e28b50 Layer height can't be zero. Fixed #3268 2023-12-26 23:14:53 +08:00
Lee Jong Mun
9416af2247 kor translation update (#3288)
fix typo
2023-12-26 21:00:10 +08:00
Ikko Eltociear Ashimine
c02732e11c Update README.md (#3281)
bellow -> below
2023-12-26 20:19:41 +08:00
Lee Jong Mun
7e11aed69d kor translation update (#3272)
fix type

다리 -> 브릿지
프리셋 -> 사전설정
퇴출 -> 후퇴
갭 -> 간격
인쇄 -> 출력
2023-12-25 04:10:18 +00:00
Olcay ÖREN
cf36ca6ef9 Update Turkish translation (#3270)
* Update OrcaSlicer_tr.po

New English terms were translated into Turkish.

* Update OrcaSlicer_tr.po

* Turkish language sentences were added.

* Turkish words were edited.

* Turkish words were edited.

* Turkish words were edited.

* Turkish words were edited.

* Turkish words were edited.

* Turkish translation update

* Update Turkish translation
2023-12-25 04:09:09 +00:00
SoftFever
9e4c332df2 Don't hide exclude_object option for Marlin/RRF firmwares as Orca now support these firmwares
Fixed #3267
2023-12-25 12:00:32 +08:00
SoftFever
665526e4eb Fix Qidi X3 preview images 2023-12-24 15:01:46 +08:00
Noisyfox
35d5b62604 Show used filament length and weight per line type (#3246)
Show used filament length and weight per feature

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-24 11:54:55 +08:00
SoftFever
7db0ad3112 bump profile version to 1.9.0 2023-12-24 11:41:55 +08:00
SoftFever
68e1722e97 Fixed an issue that bed texture was not reset when switching to a new printer model that don't have a valid bed texture.
also fix/tweak some printer's bed texture
2023-12-24 11:41:55 +08:00
SoftFever
cc984b21fe bump version to 1.9.0-alpha 2023-12-23 22:36:14 +08:00
SoftFever
ba8caef962 update locale 2023-12-23 22:35:15 +08:00
Noisyfox
e034af7050 Trigger task progress update on paint event as well (#3237) 2023-12-23 22:35:07 +08:00
SoftFever
1a2d127276 patch image.cpp and window.mm
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2023-12-23 20:32:29 +08:00
SoftFever
c5df337f01 use ankerl::unordered_dense instead of std::unordered_set/map 2023-12-23 19:29:10 +08:00
Lukáš Hejl
f2c3174896 Fixed asserts and calculations in calculateExtrusionAreaDeviationError.
The previous method worked just for near collinear edges. But it was also used for sharp corners, and for those sharp corners, there was an overflow in the computation of weighted width.
Also, the computation of deviation error was wrong for those sharp corners.

(cherry picked from commit 89b9f702d6cd59bc64c93687bc086f17a206cd0b)
2023-12-23 19:29:10 +08:00
SoftFever
374f78c768 Revert to WxWidgets 3.1.5 (#3249)
* revert to WxWidgets 3.1.5

* update nanosvg unicode path
2023-12-23 17:44:09 +08:00
SoftFever
cc23ec6626 Add a new option "emit_machine_limits_to_gcode" (#3236) 2023-12-23 15:02:27 +08:00
Noisyfox
01706eff84 Fix tutk logs location (#3209) (#3248) 2023-12-23 15:02:06 +08:00
Carlos Caruncho
0f2a223abd Update Spanish translation (#3231)
* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

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

This reverts commit 694a900845, reversing
changes made to 4f53ce4f88.

* Revert "Update OrcaSlicer_es.po"

This reverts commit 4f53ce4f88.

* Revert "Revert "Update OrcaSlicer_es.po""

This reverts commit 53bd15617c.

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Revert "Update OrcaSlicer_es.po"

This reverts commit b21aad079f.

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_en.po

* Update OrcaSlicer_es.po

* Traduccion de OrcaSlicer al español

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-22 21:11:07 +08:00
Ioannis Giannakas
951f9e9aef Bug fix: VFA Test fix (#3230)
VFA Test fix
2023-12-22 21:10:36 +08:00
Ioannis Giannakas
ba09fa3866 Bug Fix: Fix crash when printing by object after 1.8.2 code merge. Fixed tool ordering not done based on flush volume on BBL printers (#3223)
* PR: Fix crash when printing by object after 1.8.2 code merge

* PR: Revert change in tool ordering - reorder_extruders_for_minimum_flush_volume to enable tool sequencing based on projected flush volumes

* Bumping up reordering to up to 12 different colors on same layer.

* Updated tool ordering to distinguish between bbl printers when reordering tools

* Update to code comment

* Updated population handling of is_bbl_printer variable
2023-12-22 21:09:42 +08:00
Ioannis Giannakas
90097a1926 ENH: PR: Alternate extra wall (#3196)
* ENH: PR: Alternate extra wall

* Updated tooltip

* Tooltip spelling correction

* Introduce dialog box to disable ensure vertical shell thickness

* Alternate Extra Wall - automatically disable for Vase mode and revert vase mode toggles

* Corrected invalid push

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-22 08:54:03 +08:00
SoftFever
e187ada1e9 write Orca version into 3mf project file 2023-12-21 22:36:43 +08:00
SoftFever
22d3c713fb Fixed an issue that Qidi ABS-GF10 is visible for all vendors 2023-12-21 17:46:25 +08:00
Thomas
a3990485fc Fixed Ender 3 V3's default materials (#3218) 2023-12-21 09:40:45 +00:00
Thomas
f5cbe6a38b New profile for Creality Ender 3 V3 KE (#3216)
* Added Creality Ender 3 V3 SE.

* Fixed fine profile.

* Optimized first layer speed (based on Creality Print)

* Brought back Ender-5 (2019)

* Setting Marlin 2 as gcode flavor

* Added Ender 3 V3 KE Profile

* Use inheritance for Ender-3 V3 filament profiles.

* Various improvements.

* Temperature optimisations (less power consumption)

* Added Ender 3 V3 KE Profile

* Tweaks for KE integration.

* Fixed some log errors.

* Optimizations

* Optimizations.

* Reverted support_interface_top_layers

* Added correct jerk and acceleration settings.

* Added correct jerk and acceleration.

* Added retraction speed.

* Re-added missing Ender-5 references in filaments.

* Inherits processes from process_common_klipper

* Reverted code simplification for inherited profiles.
2023-12-21 08:51:18 +00:00
Carlos Caruncho
e5bf702a3a Update Spanish translation (#3212)
* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

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

This reverts commit 694a900845, reversing
changes made to 4f53ce4f88.

* Revert "Update OrcaSlicer_es.po"

This reverts commit 4f53ce4f88.

* Revert "Revert "Update OrcaSlicer_es.po""

This reverts commit 53bd15617c.

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Revert "Update OrcaSlicer_es.po"

This reverts commit b21aad079f.

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_en.po

* Update OrcaSlicer_es.po

* Traduccion de OrcaSlicer al español

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-21 08:31:23 +00:00
Ocraftyone
53d752b606 Fix wx issues from upgrade (#3032)
* fix top bar resizing

* Attempt to fix bitmap bundle scaling issues

* Revert "Attempt to fix bitmap bundle scaling issues"

This reverts commit e94ba58d90.

* Fix AboutDialog and partially fix SwitchButton

* Fix switch button scaling on windows

* Fix dropdown icon size

* fixed sdcard/recording/timelapse icon size in device page

* Set use_legacy_bmp to true by default to it's back compatible

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-21 08:27:02 +00:00
Noisyfox
401ac1adef Fix crash on MacOS when clicking filament dropdown in object list (#3205)
* Disable optimization for `RelWithDebInfo` for Clang as well

* Fix crash on MacOS (#3134, #3202)
2023-12-21 14:19:22 +08:00
Noisyfox
6bb0d5ec30 Do not limit the max window size (#3149)
Do not limit the max window size (#2889)

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-20 21:09:13 +08:00
SoftFever
eeef52bf5d Rename bunny to Stanford Bunny 2023-12-20 19:57:30 +08:00
Thomas
888096d75c New profile for Creality Ender 3 V3 SE (#3180)
* Added Creality Ender 3 V3 SE.

* Fixed fine profile.

* Optimized first layer speed (based on Creality Print)

* Brought back Ender-5 (2019)

* Setting Marlin 2 as gcode flavor

* Use inheritance for Ender-3 V3 filament profiles.

* Various improvements.

* Temperature optimisations (less power consumption)

* Fixed some log errors.

* Optimizations

* Reverted support_interface_top_layers

* Added correct jerk and acceleration settings.

* Added retraction speed.

* Re-added missing Ender-5 references in filaments.

* Reverted slow_down_layer_time, Creality print is too optimistic on this at least for Ender 3 V3 SE.

* Optimizations for supports (easier to remove)

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-20 19:56:13 +08:00
SoftFever
69602d24fc Add more built-in models: Disc/Torus/Bunny 2023-12-20 17:53:12 +08:00
SoftFever
604851fc9c Fix custom filament tab missing bug
Fixed #3135
2023-12-20 15:13:29 +08:00
Noisyfox
7739252711 Another sidebar improvement PR (#3194)
* Show sidebar when opening normal 3mf file

* Retain sidebar size when switching between tabs
2023-12-20 11:21:48 +08:00
Lee Jong Mun
53ccff6ad0 kor translation update (#3199) 2023-12-20 08:38:13 +08:00
Olcay ÖREN
d9241dca74 Turkish translation update (#3197)
* Update OrcaSlicer_tr.po

New English terms were translated into Turkish.

* Update OrcaSlicer_tr.po

* Turkish language sentences were added.

* Turkish words were edited.

* Turkish words were edited.

* Turkish words were edited.

* Turkish words were edited.

* Turkish words were edited.

* Turkish translation update
2023-12-20 08:37:51 +08:00
Fabio Forcina
e7651fe2ed Italian translation update (#3185)
* Italian translation update

updating of new terminologies

* fix errors

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-20 08:36:08 +08:00
SoftFever
8dd9c11241 Revert "update user agent" for now as it cause trouble to login
This reverts commit ae8995fec2.

(cherry picked from commit cd35171fd18d47839faa3ea119f3cbfc356c0a65)
2023-12-19 23:50:51 +08:00
SoftFever
bba367cde8 Feature/merge 1.8.2 (#3193)
* FIX: user preset sync token

Change-Id: Id2aa865b778ee9ac4cfddb68ceef0374507b519b
Jira: none

* FIX: Bitmap cache not take effect

Change-Id: I972098fdbda0b4542c6c759a8f5e1f0f2a30852b
Jira: STUDIO-4991

* NEW: Open HotModel Link With GetParam-From bambustudio

JIRA: NO JIRA

Change-Id: I4ac49bac5ee0c50988c76a38b00b7ba7dc3201f5

* NEW:AmsMaterialsSetting Support for user-preset

JIRA: STUDIO-5135
Change-Id: If848047cd5dbd059d440de30989c505c361305a7

* FIX: upload custom root preset fail

Change-Id: I621c8d542dd604b07cc5df63d97d7a31558d3aba
Jira: none

* FIX: show custom filament in AMS filament list

Change-Id: I79b9f8f2f08db8c52bbed76f1ea133baff383c00
Jira: none

* FIX: dailytips window and gcodeviwer legend window size issue

reset to original logic of dailytips and legend window size

jira: new

Change-Id: Iacb016bb222ba3f87317cfbe1f2b003802d773a5

* ENH: add text translation

jira: new

Change-Id: I780cfb8a0a64d806b5e0a414b6598e3b7bdf52dc

* FIX: Delete and search object outside the plate

JIRA:
1. STUDIO-5132 Deleting object outside the plate will crash
2. STUDIO-5146 The search function cannot search for object outside the plate

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Change-Id: I84cb3fe990a9c2a182e7434c262466a70545280e

* FIX: [5149 5142 5141 5140 5136] create printer and filament issue

Jira: 5149 5142 5141 5140 5136
5149 process preset name can not show all
5142 improt configs combobox not update
5141 disable modify filament_vendor
5140 disable input Bambu and Generic vendor
5136 preset list window adjust

Change-Id: I111a23996146cc16cc7f533c8616d50223d34c40
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ci: update build version to 01.08.00.54

Change-Id: Ifd69c01a82f627a9c6cf4fe0d48a759563ee90e7

* FIX: print model from sdcard with p1p

Change-Id: If85383ba762022ead3dd754ae02a08817b891114
Jira: none

* FIX: dailytips text translation

jira: STUDIO-2556

Change-Id: If44e503615b09ee1692f42ba1f998918ec5bd691

* FIX: clone shortcut key conflict with quit in macos

jira: STUDIO-5166

Change-Id: I548f275bb68d3b0e6bb3cfad6fe93df09d507da3

* FIX:User preset material settings dependent on firmware

JIRA: 5167
Change-Id: I82cf26848594b01155883ad0aa2e9ee77d371fb2

* ENH:update the description of nozzle detection

Change-Id: Id27b25c69dc11fcf66fc82053af705906ae8c370

* FIX: [5159 5165 5171 5172] create printer and filament issue

Jira: 5159 5165 5171 5172
5159 create printer dialog no refresh
5165 create printer 2 step dialog no refersh
5171 change font
5172 edit filament dialog darkUI issue
input special character is prohibited
'/' in preset name translate to '-'
update printer combobox

Change-Id: I5fa27836dab7f604f1a065c65efa099c7a2f0f96
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ci: update build version to 01.08.00.55

Change-Id: If1865d561cf274719204662314de163497759e89

* FIX:fix GLmodel deconstruction causing section not to be rendered

Jira: STUDIO-5156
Change-Id: Ibb2f459920989ee54f7b827352dc8893424b4de6

* FIX: missing unlock cause device or resource busy

Change-Id: I87563312ea9c6ce4e4e471da7ce7a02b53b64762

* FIX: some translation

Change-Id: I9758cbc758030b5a3945697a50ca4898af9fcb1b

* ci: update build version to 01.08.00.56

Change-Id: Id5ee53dd2ebb0b37b6927dc58b3cca94a1f66a83

* ENH: remove PLA GLOW in A1 mini

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Id99c1bbd4248e28df9150a85eecec831f6f32856

* ci: update build version to 01.08.00.57

Change-Id: Ib4dfa60f097128b76b95bb14ca04978619021b56

* Allow line width of nozzle diameter * 2.5

As it were, 1 mm would be disallowed but 0.99 would be allowed for 0.4
nozzle.  1 mm is the sane maximum and 0.99 is unnecessary tedious to write.

* Russian translation update

Russian translation Bambu Studio_v1.8.0 Beta

* FIX: scale problem in needs_retraction

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Idfbe954b22fa6aa5769c55e46874fa6a80ecbf45
(cherry picked from commit 4e853f50b748e3af11e2d64862b6ee557fda361b)

* ENH: CLI: support load_assemble_list

JIRA: STUDIO-4848
Change-Id: Ife11533740988331ea71eac86c370e625970cb8b

* FIX: align to Y not working

This is a bug introduced in 7fbb650 when solving jira STUDIO-4695.
Now we use a more decent way to solve it.

Change-Id: I92deffcb9fe53e8a24c93fe973446ae37df07375
(cherry picked from commit bd98430dbd15eb6c9bb4b447990e0dcf8a50eef0)

* ENH: Add buried points for cut and meshboolean

JIRA: NONE

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Change-Id: I67ce498d0c335dd7a8582f56b880c2c8314f8541

* FIX: 5092 edit filament add scrolled window

Jira: 5092

Change-Id: I53ae996b04e4e2f1b1ddce6a858d505001b11615
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: can not select user preset when create filament

Jira: XXXX
github: 1936
and fix add preset for printer dialog can not show selected printer

Change-Id: Id4308c6bdca17d52d4aa321db359941aa87e0e45
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH: template filament don't be show in filament list and sort

Jira: 5160 5179

Change-Id: I56a7e1897e1ef3c061dc66d318896413ca25b76b
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: [5174] export configs dialog issue

filament name too long to can not show all

Jira: 5174

Change-Id: I92018c9d7f86009b78b533592d899b4b5d78c3c8
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH: add filament Bambu TPU 95A HF

1.As title

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I752ec43da6297a6c172679997ce68f2318a7b8fb

* ENH: modify some params with filaments

1.Modify the PEI bed temperature of PLA Basic, Matte, and Tough to 65 in
 A1 mini. Set the bed temperature for the first layer of Bambu PETG-CF
 to 65 and 70 for the other layers

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ia902bbb7f824082d5346709d781cac64296f47a8

* ENH: add more status during printing

JIRA: STUDIO-5195

Change-Id: I85b3107839c6e2fdecbc10d90a876463e284468c
Signed-off-by: Stone Li <stone.li@bambulab.com>

* FIX:cut imgui has overlapping rendering on Apple

Jira: STUDIO-5150
Change-Id: I7969e19dc189cd617026a183067dad628208955c

* FIX:not TakeSnapshot for m_start_dragging_m

Jira: STUDIO-5176

Change-Id: Ia03e3e2c2664dbdcffa19ec8d0fa97dfd95e6d35

* FIX: rendered color changes

Jira: STUDIO-4956
during the drag processin connectors editing state

Change-Id: I3027176ea9f93a9ba9d6a2052f41aaa4adef79f1

* FIX: merge the patch from Prusa

Thanks for PrusaSlicer and YuSanka
Jira:STUDIO-5175
commit 510d59687b3b19c4a0f4e6540620d0694dd1b7ac
Author: YuSanka <yusanka@gmail.com>
Date:   Thu Oct 5 14:13:14 2023 +0200
    Follow-up 1b451cdf: Fixed #11415 - Connectors disappear when slicing => only when using multiple cut planes AND excluding parts

Change-Id: I9ccd5b85f482d723d21fccf5e104c9e0a9cc4849

* FIX:Press ESC directly to exit after entering the profile rendering

rendering is not normal,Code from PrusaSlicer,thanks for PrusaSlicer and enricoturri1966
commit a078627552f54497ed0518dc7bc349d243576d19
Author: enricoturri1966 <enricoturri@seznam.cz>
Date:   Mon Jan 30 14:00:02 2023 +0100

    Follow-up of 1218103fd620b319c56fd08116f81b581c537188 - Fixed gizmo missbehavior when closing a gizmo by resetting the selection clicking on the scene

Jira: STUDIO-5164
Change-Id: I261da9dba2a5ac37f3e263c175fbccd80d8045bd

* FIX: correct the strings and move create printer dialog center

Jira: 5221 5183

Change-Id: Ida4eba63f0e962ffcc8000fcc04cf20849577217
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH: CLI: skip layer height limit validate when slicing for existing models

JIRA: no jira
Change-Id: I1444a28b500ca7d08ed2606eecfa5cfaf261105e

* ENH:update the translation of auto refill

jira:[for translation]

Change-Id: Iaa7b4f3d7cd88c8b4f69a3db721ebd8ca8986eea

* FIX: icon issue for copying

Jira: STUDIO-4168

Icon issue when filling bed with copies

Change-Id: I61a03ecae02b75602c236ed2810e9c9cfe5a19f9
(cherry picked from commit b5079f8a2e79f19f65803f23ef4fd83aff17c84a)

* ENH: update some filament params

1. Modify texture bed temp to 65
2. Modify max-v-speed for ABS
3. Modify some params in Generic PA
4. Modify PLA,PVA params

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I42584a6015b8526f6bbb93024316968198bd76ce

* FIX: 3770 printable checkbox incorrect display in darkUI

Jira: 3770

Change-Id: I97f67d7a0ffc41f6ee625abeecc52ee4e73cf318

* FIX:Display garbled code in AmsMaterialsSetting pop-up

Change-Id: I50531e939afa7715ae376bac47172ccf7b248114

* ENH:Modifying the Line Color of Transparent Materials

JIRA: STUDIO-4311,5088,4983
Change-Id: I9e63413dc9cd7d523f0f7f1a2e32c4537a84467a

* FIX: crash when async delete printer file

Change-Id: I92c5e812d04da263338fb0eea2fd7583cf9ecde0
Jira: STUDIO-5222

* FIX: 3733 backup time not effective

Jira: 3733

Change-Id: I50c2ce156fcbd0a17aa8a6777bce04aa6093c830
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: enable edit and delete preset btn and fix issue

Jira: XXXX

Change-Id: I724d7236b28fcc4746698f094531948a8fbb5d93
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX:send print job,file name displays error

JIRA:3137
Change-Id: I1c113025d274a13fba1b845a58aada14058fadd4

* FIX: skip hold user preset from sync

Change-Id: I2252246e19bd80903ad82170782ea49535d30d05
Jira: STUDIO-5185

* FIX: 5115 translations

Jira: 5115

Change-Id: I21b03bdd4d28c0bb097226143177e763cf8c777f
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: add link for ironing parameter

Change-Id: I451f5549db3ac2205aa5703a2e5edc831e946af8

* FIX: scale problem in lift type decide

1. Scale the travel threshhold

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ib594d640fe63b0919bc9318af88577513f7dbf30

* ENH: add small perimeter speed and threshold

The original param is added by Prusa. Thanks orca for adding threshold.

1. Re add small perimeter speed and threhold.

github: #2221

Change-Id: I35b269b26f085d80f0edca28650bb21fc04898d7

* FIX: modify the picture of pa manual cali

Jira: STUDIO-5102
Change-Id: Id87898959ad4461b7bd2505b159271f2aa589c36

* FIX: Filament preset is the same with the first one

Jira: STUDIO-4519

Filament preset is the same wit the first one, it should align with the
last one.

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: I304d0ff0fbc1c8948d410ea552e4d42b6a4e8fd9

* FIX: scoreDailog dark mode issue

Jira: 4570

Change-Id: I8be97b306a1494f73e3bba678ecc864e7ff88ca3

* FIX: CLI: fix the slicing issue while only one object with multicolor using seq-print

JIRA: no-jira
Change-Id: Iea2d23ff8e484bf2fd58aa2f596a8e4e4292fe39

* 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)

* FIX: compiling error on linux

jira: none
Change-Id: I1a4563503b5ddf74a1979cc0cee7a15b8aced904
(cherry picked from commit de52c6ca62c9f3a6314ddf5a856c1d8534329886)

* ENH: add translation for small perimeter

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I95013649e4e0c07c0f04b89a91488814c8d228cc

* FIX: clone shortcut key issue on macos

jira: STUDIO-5166

Change-Id: I1967da1d443ed43bd750dad8e11560688d7bd533

* FIX: custom gcode window cannot paste/ navigate

jira: STUDIO-5208、STUDIO-5070

Change-Id: I4ecb9d06cf5db0ae53a4678181aae9298bac106b

* ENH: modify dailytips collapse & expand interaction

jira: STUDIO-5209、STUDIO-5210

Change-Id: Ifb0b998e5004d4b49390ba5a250eaf4743bf3471

* ENH:Add shortcut keys and lists for objects search

JIRA: STUDIO-5157 STUDIO-5158 STUDIO-5240

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Change-Id: Ic7cfaaa9b4bb8a85208bafab7fe3bafdb78f0045

* FIX:Re-calculate button with White Box displayed in dark mode

JIRA: STUDIO-5098

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Change-Id: I07cc6c72d5dbd03b72573cd27dd5938bb0e6a29a

* NEW: display plate index when printing a task

JIRA: STUDIO-2689

display on the thumbnail of the current task

Change-Id: I5f1f46c56e9d1e9120a66d491551908dfad099d6
Signed-off-by: Stone Li <stone.li@bambulab.com>

* ENH:fixed incorrect path prefix

jira:[for file path prefix]

Change-Id: Ie9e3999f02b78272e528ceceb479e746d46a7e6c

* FIX: thumbnail is not clear in dark mode

JIRA: STUDIO-5087

Change-Id: Ie86493ed71b5554095927f061509a1f551758b61
Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>

* FIX: translation

Jira: XXXX

Change-Id: Id03f0d704aa852632a907ea628d1277400112062
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH: first nozzle change to 0.4 and nozzle change to mm

Jira: XXXX

Change-Id: I14defd36442dbd7008e46782b08415b6244224f1
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH:editing_window_width's value is small on the laptop

Jira: STUDIO-5238 STUDIO-5265
apply_selected_connectors should check_and_update_connectors_state

Change-Id: I8c2c1c920cc4d197d1908815a3e62f4962335451

* FIX: fix new_bed_shape's calculation process

Jira: STUDIO-5122
Change-Id: I5f3e6a301a297123af28692c90bef6759f425b06

* ENH:update some translations

jira:[STUDIO-5262]

Change-Id: Idb1d3586888043ac325f272bc7a2b788adb3e9e5

* FIX: edit text command resets object settings

Jira: STUDIO-4655

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: Iac25c4e40f1d0d32e6d1f40e62226cc22bc96042

* ci: update build version to 01.08.00.58

Change-Id: Iacfec02aa50c617e4c9fe566319b07b30d47dce1

* FIX: remove GetUserAgent

Change-Id: I92886e1f0dcb091109231a10da8c19d51178e13b
Jira: STUDIO-5205

* FIX: nozzle_diameter_map data structure adjustment

Change-Id: Ifb724afc0fcf974e6d331e73ecac723107a102cf

* ENH:add _A and _B for perform_with_groove

Jira: STUDIO-5267
Change-Id: Iee3310dfa1cd8e6680310f0af0eff5c817490813

* ENH:is_equal for min_z and max_z

Jira: STUDIO-5267
Change-Id: I9493883d8be9d44e26ddc9afe62b7e9eb09c5052

* ci: update build version to 01.08.00.59

Change-Id: Ie8ed29ccf5d6c94594eb2ab8b717416fbeace3bd

* FIX:Image display unclear in light mode

JIRA:5161
Change-Id: I134cc64a2af0dfff60c47d0ff09d78d9c0f86b3f

* FIX:fix bugs of non manifold edge

Jira: STUDIO-5267

Change-Id: I8ac9a2cf96da0bc07ee00b309e65611b92fd174d

* ENH:nozzle type detection

jira:[STUDIO-5246]

Change-Id: Ic41a2161a0e41d23f56af93ad8ec34cc83ada0e3

* ENH: upadte P1S start gcode

1.turn on MC board fan by default on P1S

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I5b2f7868e350942fb8b7baf7d429e22a0987184a
(cherry picked from commit e866a575b6b7d9552f7412f84272f4b48dfc3961)

* ENH: improve support style's tooltip

jira: none
Change-Id: I8ee858d7052f04ce7ea6b226a500c7d1bf8a482f
(cherry picked from commit 665f31c4fcde22bd894cbb4a5fb160635947f2a4)

* ENH: set layer range error to warning

1. If layer range exceeds maximum/minimum layer range in printer
settings,pop up a window to warn

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I0304ee790e557ecf967f355c171993d1f51b5057

* ENH: CLI: remove the warning of layer height

JIRA: no jira
Change-Id: Idaceee4f52611479fc3f4238d016d891b4dc8cd1

* FIX: the word search is not translated

Jira: STUDIO-5224

The world search in the device panel is not translated.

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: Ia3d651c2159a3aad94e10cd0a6da98848f53ee2a
(cherry picked from commit 4a46a0a4750d82d49c9523f4b668a1a00c41ed83)

* FIX: Bitmap will flash when sending printing task

Jira: STUDIO-5278

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: Ib0c8710b8d5d6b98fad043c950f054aa35bea965

* ENH:display the euler angle of rotation plane

Jira: STUDIO-5268
Change-Id: I6b7b431931d60f1a9a832908400417781798c472

* ci: update build version to 01.08.00.60

Change-Id: I1c15b5c6437554c43327cd6b537f7a5860dba5a0

* ENH:cancel EnterReturnsTrue for imgui in cut

Jira: STUDIO-5269
Change-Id: I2832e1dccaf9755448debe7b2bd56426f90dfe0d

* ci: update build version to 01.08.00.61

Change-Id: Ib03e664a20990322c788686550c491d0139d8237

* FIX: some translation problems

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: If9f2af53b4f0bfa9469e84bcba68cc182df4a473

* add: Ukrainian lang support for 1.8

* FIX: calibration selected preset is null in some case

jira: STUDIO-5258

Change-Id: Iee63593c5f833c5a43e3b1d1c9ddb82f8c69569a

* FIX: create filament issue

Jira: 5296 5297 5295 5302 5311 5276

5296 create filament: list has same printer
5297 create filament: filament combobox has blank options
5298 edit filament: delete last preset prompt users
5302 create filament: filament combox has cili preset
5311 create filament: printer name too long to can not show all
5276 edit filament: PLA Aero filament type filter issue
add prusa vendor
Revised copy

Change-Id: I5dcc615ce0951b1a9953fa12283f6090f5069045

* FIX: some translation

Change-Id: Icb8614a0af18f96d15f3b97c17e0f6f708296847

* FIX:cancel is_equal for slicing function

Jira: STUDIO-5267
Change-Id: I66d759aa2c968f8a28a6a5d8378929754f2db689

* FIX:UI stuck due to pop-up window with wrong chamber temperature

JIRA: 5304
Change-Id: I1a49a7219b7a6f5700243704c348724e7930ce1a

* FIX: allow input '+' and hide edit preset btn

Change-Id: I97aec7c3ac4cc8b9d6c535f0126aaa1926553d86

* ENH: handle printer direct close and not retry

Change-Id: I5dd55f8085cf6383a8420ab41e614ea6ae210c78
Jira: STUDIO-5305

* ci: update build version to 01.08.00.62

Change-Id: I09716bf79354b503197c751272fd3171e0abc8fd

* add: new translation to ukr for AirFlow and Prusa

* add: Texture Plate name fix

* FIX:add slice_facet_for_cut_mesh api for cut tool

and modify section_vertices_map 's traverse
Jira: STUDIO-5267
Change-Id: Ifc4b183a4e4c4fdb4f47742f14f70a1ed93fa056

Change-Id: I52bfaef8926ef967b78a6cb712a1731a1b528a24

* FIX: Make the front smaller for Czech in device panel

Jira: STUDIO-5151

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: I315174b55f923da069854fb4fed8cf3937b82074

* FIX: there is no object can be jumped to in notification

jira: new

Change-Id: Ib81bf49236952ede24a2de126051572d63916e01

* FIX: add height range, modifier in Preview pane will crash

jira: STUDIO-5340

1. fix crash at add height range, modifiers in Preview from objectList
2. fix an assert hit when slicing
3. fix an assert hit when enter AssembleView
4. forbidden popup menu by right-click objectList in Preview

Change-Id: I444bc76b1a4307999b387e4f60386b2d272bd308

* FIX: Black spot in the sending printing task page

Jira: STUDIO-5307

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: I3bd97c063ec5f0faf7d12047da39f60ce55cae4b

* FIX: reset_cut_by_contours should update_buffer_data

Jira: STUDIO-5376
Change-Id: I5aacb1f7b65822031d7138abd61a45b09c743531

* ENH:editing_window_width's value is small on the laptop

Jira: STUDIO-5238 STUDIO-5265
Change-Id: Ia958772bcb081817da621115f99328bb62770cd5

* ENH: bumped version to 1.8.1

Change-Id: I9d25403daa5b7b8ca415c0b364670da9e0f932b0

* FIX: create filament dialog: create btn can not show all

Jira: 5310 5331

Change-Id: I185272c90d9ff1c3d6b47abbefbf488d0d965cca

* FIX:update custom_texture when new_shape=false

Jira: STUDIO-5287
Change-Id: I3add95f9f9345c14a48cc7467513d1b3ce95f4c9

* ENH:editing_window_width's value is small on the laptop

Jira: STUDIO-5238
Change-Id: I9044129f4e0c8ca7469db05b3e547fca4754342a

* FIX:add slash_to_back_slash for saving file path

Jira: STUDIO-5287
Change-Id: I9f3c176cd0831c793958f08601c63efac98176a4

* FIX: a button color didn't response to dark mode change

jira: STUDIO-5315

Change-Id: I95489f01ccd1f77b9e95b0d0f69e5398d2e88487

* FIX: height range layers displayed in wrong position

jira: STUDIO-5341

Change-Id: I83918b4624f367efa54321f1898e1176cdb04ea9

* FIX: auto arranging issues with locked plates

1. global auto arranging may put items overlap with wipe tower if some plates are locked
jira: STUDIO-5329
2. items outside bed may overlap with plate boundary if it's rotated
jira: STUDIO-5329
3. plate-wise auto arranging uses wrong min_obj_distance if the
plate is by-layer printing but global setting is by-object printing
jira: STUDIO-5330

Change-Id: I5dba2f1317e183c9aeec1cb2bd227fbddf4316e6
(cherry picked from commit db1eac41efff5f1e8d5ac0af74c6fc7ab59fc253)

* FIX:  a mistake in upward machine

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ibdb26c3d904634f322aef0dc0c7b8867d9fb5854

* FIX:a blank pop-up appears

JIRA:XXXX
Change-Id: Ice92b55204e4897fec024a6d99412eb810bddd4a

* FIX:fixed failure in updating nozzle type

jira:[STUDIO-5248]

Change-Id: Iad37b5d5b76d37cb1723ef21d7c39b1e3fcaf8d7

* FIX:fixed issue with AI monitoring settings

jira:[STUDIO-5082]

Change-Id: I967fe3c1e9da61a55bcbfaa2a8e067dd5af18f72

* FIX:fixed issue with lan mode

jira:[STUDIO-5189]

Change-Id: I1d0a05f19dcea154cf3ef2b61ed0546d3581905e

* FIX:update text for loading or unloading filaments

jira:[STUDIO-5231]

Change-Id: Ic7729c3ec012485b3d87e3d01f11e87502c67895

* FIX: Revert "ENH: do not leave a gap for top...

Revert "ENH: do not leave a gap for top interface if the top z distance is 0"

This reverts commit 79ea32c7cbbdb7e689637980af7c36caf42284c9.

Revert reason: the supports are impossible to remove in some cases.
jira: STUDIO-5385

Change-Id: I376a6f4dfd78da6dfea68b9ac3d552cddd0b4272
(cherry picked from commit 34e38b705fde7f5d7f9a3a89c96a3627ce0c998e)

* ENH: improve normal support's quality

1. Add a base_interface_layer when using Supp.W
2. Fix a bug where base_angle and interface_angle are wong

jira: STUDIO-5386
Change-Id: I52ab32c63b3cd1e6e2ba6463b01ae26699cf13d3
(cherry picked from commit 92ddd4a10b793572a1fa009da5b9e44fcdf81de2)

* NEW:tracking stl model files

jira:[STUDIO-5372]

Change-Id: Idb1275b07441f0cd06c24588d5f7c20f81f1556c

* FIX: edit filament dialog: preset name too long to del btn nan't show

Jira: 5336 5174
and verify string normalization

Change-Id: I380c3bed2bf43d01094b68979a8b67f4187c0b93

* FIX: some translation

Jira: 5232 5300 5334

Change-Id: Ie474ca823011e81aab82a9809af3d6e42980496b

* FIX: some translation

Change-Id: Iaabe6087bed3b7d47d911cf4fb51c770804e72fb

* ENH: change default tree_support_wall_count to 0

Now normal support also uses this option, so we can't default it to 1, otherwise normal supports will be too hard to remove.

jira: none
Change-Id: Ic5700af5c17e3a7b265c8915f28b0db35c6e06e6
(cherry picked from commit 6b84a9826da108b76569e686bd9def0b23ae29fd)

* FIX:The name of the material in the error prompt is empty

JIRA:STUDIO-4907
Change-Id: I3cf44f099256a51f21a44a89c89c000f734d1f36

* ci: update build version to 01.08.01.51

Change-Id: Ib20f5a12b65472102befec0a2adf82744fc29c46

* FIX: imgui textinput cannot paste on macos

jira: STUDIO-5070、STUDIO-5365

Change-Id: Iea8f41e12744ecda0fbb95c1a8f2e014a7cdc384

* FIX: not cache printer file list on error

Change-Id: I99843aedbf14d3d1d553ccac9b0bd26403274a82
Jira: none

* FIX: thread of close BBLUserPresetExceedLimit notify

Change-Id: I9698134ba1cc91fc83eac441f900d68c4c4b556a

* ENH: Resolve non manifold edges by fixing model interfaces

Jira: STUDIO-5124
Change-Id: I7ea86be44acb80b6c4762a76208b4a031acd0b27

* FIX:nozzle type sync

jira:[STUDIO-5248]

Change-Id: I63d48628832473d8d371ed643dc8528b00382531

* FIX: array bound happen in TriangleSelector::deserialize

Jira: STUDIO-5170
Change-Id: I92b72a887845b462fad208f13607293b44d3d333

* FIX:cropping rendering without considering assembly views

Jira: STUDIO-5260
Change-Id: Ia56cf80b305ae05f25f06ec277f85b3c5430a6df

* FIX: PA for custom filament not available in BL Studio

github: 2971
Change-Id: I6ccd36a183e7367d69557300f7242f5403f4bb33

* FIX: Bitmap is way too small on Mac

Jira: STUDIO-5393

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: I6b550669fa8cd5fc9bfa6ed96d64d19a949f01b2

* FIX: move shutdown wait to OnExit

Change-Id: I70d9a2bb686525ae5273aa9d63e25691da4ab65c
Jira: STUDIO-2884

* FIX: calibration manage result dialog issue on macos

jira: STUDIO-4949 STUDIO-5378

Change-Id: I00abefd45a0d274a4b68bb1ab18debe8f91d169e

* FIX: adjust bed shape dialog button UI style

fix that button text is hard to see in dark mode
jira: STUDIO-5247

Change-Id: I2cf5b3cdd2eff9b821bdf5525bec4f329fc58dd1

* FIX: 5331 rescale btn

Jira: STUDIO-5331

Change-Id: If153424b8480e64b166018e3cd98c17db557d0a8
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: support do not generate

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ide9709d95203185538e280517f7aa6136beeda44

* FIX: remove not match printer config ota cache

Change-Id: Ib73fc2ea31fa2186061cfcb5a170bc59b9db84ca
Jira: none

* FIX:cancel the variable of "checkbox_size"  as a fixed value

Jira: STUDIO-5150
Change-Id: I30d876d141b8b35ab4a3fee4889993d87b7c1741

* ENH:add reset_cut_by_contours in on_load function

Jira:STUDIO-5269
m_connector_size_tolerance default value is 0.1f

Change-Id: I6c67fff3cb0c1190e9141ed6f68fbfa848679f35

* ENH:cancel EnterReturnsTrue for imgui in cut

Jira: STUDIO-5269
Change-Id: Ifc4b183a4e4c4fdb4f47742f14f70a1ed93fa056
Signed-off-by: zhou.xu <zhou.xu@bambulab.com>

* FIX: dailytips should not change content frequently when slicing all

jira: STUDIO-5234

Change-Id: Icb7e9c28404d9db8ebed58d937e13f89c5403b5c

* FIX: objectList clone shortcut key issue

jira: new

Change-Id: Ia75bf58a7d53f962e1af6c2fd97497270b7eea84

* ENH:handling cases without msgs

jira:[STUDIO-5401 STUDIO-5399]

Change-Id: Iae651d5a19a45b0138a6aa621326a8b4a9649824

* ENH: optimize param description

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Id0ca9224227a716b21fc0b8430722264dc319344

* ENH: add translation

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I3b1f04fee3cd6322793794ad8b8707859f6c7d26

* FIX: close edit preset paramsDialog, mac unresponsive

Jira: 5298

Change-Id: I021e00567354cfb1f2f5f1f2bf6ba1fc35b164c5

* ENH:disable AI monitoring on the p1p series

Change-Id: I514bb1fb1ced6c03dd619230a9adac3be63f2de2

* ci: update build version to 01.08.01.52

Change-Id: I9f5e30d3fc4b7ef9321c522d3c18fce98f03742f

* FIX: close edit preset paramsDialog, mac unresponsive

Change-Id: Ic816754a20b7f6a5cdb46475750eb301fec3ad3a

* 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

* FIX: CLI: add object config when assemble

JIRA: no jira
Change-Id: I945f820fb58f2f643170b4b0b66742f6bbbdfd29

* FIX: delete preset prompt

Jira: XXXX

Change-Id: I6511c806c56393d4f6bd72d1c506da59675d49ff

* FIX:Reorganize the assignment of variables of "m_editing_window_width"

Jira: STUDIO-5238
Change-Id: If369916f3f5c21510f5f297bfd05c1230bdda7a4

* ENH: CLI: re-compute flush_volumes_matrix when it is missed

Change-Id: Ie8f53c6bef003b1434de02ea14de5787b376484f

* FIX: some translation for delete filament

Change-Id: Ib46a8eba33f2e21016476aaab4a57a740e86b1b8

* FIX: scrolled window / del preset / edit filament issue

Jira: 5092
GitHub: 1936
edit filament: just one preset, the scroll bar obscures the preset name
edit filament: delete selected preset, click no, but preset be deleted
from UI
edit filament: serial sometimes displays incorrectly

Change-Id: Ibc91609e252179de0c05ca065099756da6631165

* ci: update build version to 01.08.01.53

Change-Id: I5563a2c0812ab9a0d7727df27e17e681066ffa08

* FIX: mistake in filament vendor

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I3af712e417379d8b98ae18feebffe465bfa1e72d

* NEW:set customized materials for the A1 P1 series

Change-Id: I9c34f62867c074bf9ebb315013e5e40526e0eac7

* ci: update build version to 01.08.01.54

Change-Id: I579dcee428417ae7e7f7a96bd315a7066d72d974

* FIX: the flow rate ratio crashes after load model

for third party printer
Jira: 5244

Change-Id: Idd829c9d99eeba9d180653ac8de4e51b9a0d6370

* FIX: The maximum value is not printed in PA line mode

Jira: 5046  4951
Change-Id: Ic81f9a75ce7f088fe950fdde283ff5c942cd6e83

* ENH:add preset check for sending files

Change-Id: Ia3313d281b5ce91e277b380498014ffdac5debd3

* ci: update build version to 01.08.01.55

Change-Id: Ia839344d01a43f7159f376d4147337575c4edbe1

* FIX: locale loading user preset

Change-Id: I88521e4b10cb802d9253eb79a6b78b3286f15a33
Jira: STUDIO-5436

* FIX: sync user preset notify crash on exit

Change-Id: I88f5dbcbd487293ea847ea6092efb61744399541
Jira: STUDIO-5413

* ci: update build version to 01.08.01.56

Change-Id: Id7a9718d5f920da50d52fd2ef220acf5d3270d3c

* GUI/Field: Fix crash in color picker init (#2220)

wxButton->GetBitmap() may return an invalid wxBitmap.
Guard against this.

* FIX: custom filament preset display in cali history issue

jira: new

Change-Id: I4145450a231adff542ab1a7428b3479f4074e06a

* FIX: meshboolean transform result issue

jira: STUDIO-5425

Change-Id: If66fe909ce4458c1b3192e4fd8a3d758fe7c7eaa

* FIX: fix combobox and delete btn in filament setting enabled

Jira: XXXX

Change-Id: I8b659bd77ceb97c8cea9d3e5e931f4ea50822721

* ci: update build version to 01.08.01.57

Change-Id: I7a6f5439863ca81275ae8b80f1b5cf0bb36c4c0f

* unix: Use canonical mime-type for 3MF files

model/3mf is the canonical mime-type, but keep the
application/vnd.ms-3mfdocument alias.

See for details:
https://gitlab.freedesktop.org/xdg/shared-mime-info/-/merge_requests/179

* FIX: fix the compiling issue under windows

github: https://github.com/bambulab/BambuStudio/issues/3028
Change-Id: Iafde9d2086c0cd31aa12e39cef7ded1e19e9d3e7

* add: K1 and K1Max Support

* fix: Optimized STL and PNG for plates K1 & K1Max

* fix: simple version of models

* FIX: Close scan_first_layer when PA line cali

Jira: XXXX
Change-Id: Ide5c0038f4028b8f1d445a6b2d09b705d7872fb8

* FIX: CLI: fix the wipe tower disappear issue

JIRA: no jira
Change-Id: I547a8468b0bea06912d5d9ceee1c8deead85e28f

* FIX: the preset is the same with the first one when switching printers

Jira: STUDIO-5433

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: Icf1979f2bcffbc9c59a072924df5073fc3eac363

* FIX: [5504] Optimization description

Jira: 5540

Change-Id: I9379f2c69b6724ec1ef5294dd3c404b0e3189486

* FIX: [5451]Directly crash when memory is low

Jira: 5451

Change-Id: I5c75994e2bd556bec7ce8de6be44888e6924ff56

* ci: update build version to 01.08.01.58

Change-Id: I12b1e3ca6b07ed13f3ad42ab2f40b825cb84a8dc

* ENH: CLI: refine some logic

1. set wipe tower position to default when duplicate object
2. add cli_safe check logic when switch printers

JIRA: no jira
Change-Id: Iebe62f8be6acd6f44743abf3b0fe92ec04c94197

* ENH: CLI: allow height shrink when printer switch

to let the error generated at validate
JIRA: no jira

Change-Id: I94db90db858659a9254dfdc0a6eed04fd40d3768

* ENH: add support for A1

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I5dfd8f3b6b872c01d8093527df1a3c37b8a0d56d

* ENH: refine description of interface not for base

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ibe11e845b90ef2caf96d5780eaaf8764755cce1d

* ENH: version: bumped to 1.8.2

Change-Id: Ic9acb5607ec94188112999afa41f2052281a08f1

* ENH: update some machine settings

1. Update A1 mini start  gcode
2. Update A1 load/unload filament time

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I84825a47f2741e95ca122382e4119d35a61bdbf6

* ENH: support for head wrap detect

1.Add "in_head_wrap_detect_zone".Detect if the model projection enters
a specified area.

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I6aed5a782d2f33f023bdc19cf06dff0957828eeb

* ENH: modify default head detect zone

1. Set default head detect to empty

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I686c4c3115041471bc016cf3b0972ed730af64d3

* ENH: change head wrap detect zone

Change to (156,156)-(180,180)

jira:[new]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I7b9dec3fbf44d31311fd7eb331e52f307f45ede1

* FIX:backup iterator location

Jira: STUDIO-5267
Change-Id: Id035c9225a858bb551aa4f09870fc4c6bb30b255

* NEW:compatible with p1p (plus)

jira:[p1p]

Change-Id: I7b30903dc0a728604c4f33c325aa79fd3bd08f68

* NEW:installed & supported p1p(plus)

jira:[pip plus]

Change-Id: I0a69f8629749e3076465b85f28aa39d5e7ae6277

* ENH: modify default head wrap detect zone

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I39ccc810a19192919a21b5608d3fa2a806c787ee

* FIX: excpetion when plate center is negative

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ia1066bd7457181711d0a59b9544d65ed502410e0

* FIX: big window's scaling causes incomplete display

Jira: STUDIO-5530
Change-Id: I1d69e60658e49e43d4b3de718f2fd6739bab73ce

* ENH: update: remove the comment which is not used when updating preset

JIRA: no jira
Change-Id: Ic930eea50a7beb78aa6dc7c53fbb5c366857e825
(cherry picked from commit e0225fc147702cf73e6eda4830a2592c7598901c)

* FIX: wrong initial layer height in profile

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I91f1779761a13f70d68ad51041b7f75ef872c138

* NEW:add N2S picture and printers

JIRA: XXXX
Change-Id: Id8eddd9fafd07c967abfb1543c1b01ad8c0e1b0c

* ENH: rearrange machine pos on printer selection page

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Iccc52043c232d19384487884e4071343744976a9

* ci: update build version to 01.08.02.51

Change-Id: I1985730c4ea29528a6f9b03f56c73131a07779b0

* ENH: some translations

Jira: STUDIO-5434

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: Ie6868728edfc40bd1d20dec6a78d8e5ea7f8edf8

* ENH: do not cancel printing job when timeout

JIRA: STUDIO-5009

Change-Id: I067470173acc26d7ecd8ceb6f0e04ac7f03e3a4d
Signed-off-by: Stone Li <stone.li@bambulab.com>
(cherry picked from commit 7ab5817c7229c5179adca026ffacb97c2affd292)

* ENH: udpate A1 series gcode

1. Update A1 mini change layer gcode
2. Update A1 start gcode

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I131676a991f4727bca1ea2fa727f40f293d06139

* ENH:After cutting,fix non manifold edges needed confirmed by user

Jira: STUDIO-5217
Change-Id: I52ba0db27ebe0b7b763c49311c7aa305bc4dcd5a

* ENH: linux: refine the d-bus name

github: #3075
Change-Id: Icf997f4f9203f4d429e3b6058d6d6e5f23bf29ac
(cherry picked from commit 5c766bff445cefee488ba9d057121b04c8e1445d)

* NEW:add "bed type to follow machine preset" function

Jira: STUDIO-5535
Change-Id: I2ef99a0a783a074d9379685adde11fddfd6f8cec

* NEW:add "default_bed_type"

Jira: STUDIO-5535
Change-Id: Ice1262937923b62854b0196229d5fb99392470af

* ENH:comment out two line code

Jira: STUDIO-5535
Change-Id: I5475e4f9ec6fb7e4abdb3d950da34fadead3b606

* ENH:translate three texts

Jira: STUDIO-5535
Change-Id: I00938567f0ae30bb354042769021451364bef308

* FIX: incorrect flag in A1 mini gcode

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: If587678bf0aa06c079a9d3cbff9f2c7628c5e380

* ci: update build version to 01.08.02.52

Change-Id: I2d8310b7321fefcb742d4cdbe5e4bc9a035ec45a

* FIX: Allow vendors that are not entirely numerical

github: #3082

Change-Id: I318f4df7f65c934ab6703e0970d775b754b24276

* ENH: update A1 series first layer speed

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I597bcf86f202f681eccfda4306be5619d669ea5a

* FIX: CLI: fix the wipe tower issue while mapping to one filament

JIRA: STUDIO-5550
Change-Id: I0b8d3af09d16bdfc45cdc5951d182f7e33dc9b93

* FIX: crash when support type and style are inconsistent

jira: STUDIO-5428
Change-Id: Ib1e79c71736810099e15282c30524e55e8f60f34
(cherry picked from commit aefb7fbaf25146c03bd2eb336f58ed2eb0e83ea6)

* NEW:display beta version

JIRA: XXXX
Change-Id: I78d748e53b266c3397b1c038c3425a52c573cc88

* FIX: slice error: WipeTowerIntegration::append_tcr

when print by object with multi-color
Jira: XXXX

Change-Id: Ic9ee2f6de45abb4a118fdb4cf89dea9ca7335094

* ci: update build version to 01.08.02.53

Change-Id: I980bff783b59fc6e9d6fd12a016c2daa2840991f

* FIX: remove duplicated profiles

jira:[NEW]

Signed-off-by: XunZhangBambu <xun.zhang@bambulab.com>
Change-Id: Iaa87233ae6c327faf43a152bdb0cd6fa8c5131d7

* FIX: translation: vendor can not be number

Jira: XXXX

Change-Id: I7bd45de944e8b25b30c88ab742b35d996c933966

* ci: update build version to 01.08.02.54

Change-Id: Ib83b131c533a03d6e48e9ded5e6f9ba574819756

* ENH: update A1 extruder clearance radius

jira:[NEW]

Signed-off-by: XunZhangBambu <xun.zhang@bambulab.com>
Change-Id: I13cfb882c672083dcd1af2c1be448c5422fdbc0a

* ci: update build version to 01.08.02.55

Change-Id: I8d7016d27166b457e4cdc198b61e6aa36a72b8c1

* FIX: bed_type not follow machine preset

Jira: STUDIO-5578
when direct open project from https://makerworld.com/

Change-Id: I3281cf45e3057d766008487975b4585d2e277110

* ci: update build version to 01.08.02.56

Change-Id: I43cadeeb1a2fa150fa9396a63b9bc471da1500d5

* update strings

* autofix mesh after cut

---------

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Signed-off-by: Stone Li <stone.li@bambulab.com>
Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Signed-off-by: zhou.xu <zhou.xu@bambulab.com>
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Signed-off-by: XunZhangBambu <xun.zhang@bambulab.com>
Co-authored-by: chunmao.guo <chunmao.guo@bambulab.com>
Co-authored-by: zorro.zhang <zorro.zhang@bambulab.com>
Co-authored-by: hu.wang <hu.wang@bambulab.com>
Co-authored-by: liz.li <liz.li@bambulab.com>
Co-authored-by: Kunlong Ma <kunlong.ma@bambulab.com>
Co-authored-by: maosheng.wei <maosheng.wei@bambulab.com>
Co-authored-by: gerrit <gerrit@bambulab.com>
Co-authored-by: tao wang <tao.wang@bambulab.com>
Co-authored-by: zhou.xu <zhou.xu@bambulab.com>
Co-authored-by: xun.zhang <xun.zhang@bambulab.com>
Co-authored-by: the Raz <rasmus@abc.se>
Co-authored-by: Andy <andylg@yandex.ru>
Co-authored-by: lane.wei <lane.wei@bambulab.com>
Co-authored-by: Arthur <arthur.tang@bambulab.com>
Co-authored-by: Stone Li <stone.li@bambulab.com>
Co-authored-by: enricoturri1966 <enricoturri@seznam.cz>
Co-authored-by: wenjie.guo <wenjie.guo@bambulab.com>
Co-authored-by: zhimin.zeng <zhimin.zeng@bambulab.com>
Co-authored-by: Dmytro Chystiakov <dlchistyakov@gmail.com>
Co-authored-by: mia <652892+mia-0@users.noreply.github.com>
Co-authored-by: Bastien Nocera <hadess@hadess.net>
Co-authored-by: qing.zhang <qing.zhang@bambulab.com>
2023-12-19 23:46:19 +08:00
Ocraftyone
75b1a30293 fix pwsh variable in CICD (#3188) 2023-12-19 16:07:30 +08:00
SoftFever
1a1760ffd9 Fix unicode path for nanosvg (#3179) 2023-12-19 11:15:44 +08:00
Noisyfox
cc06a2e83b Fix sidebar not shown when open 3mf file from command line arg (#3172)
* Show sidebar when open file from cmd

* Fix issue that sidebar collapse button is not enabled when load 3mf file with gcode
2023-12-19 11:15:26 +08:00
Olcay ÖREN
60a9b38404 Turkish words were edited. (#3184)
* Update OrcaSlicer_tr.po

New English terms were translated into Turkish.

* Update OrcaSlicer_tr.po

* Turkish language sentences were added.

* Turkish words were edited.

* Turkish words were edited.

* Turkish words were edited.

* Turkish words were edited.

* Turkish words were edited.
2023-12-19 11:09:05 +08:00
Noisyfox
871f163a32 Fix regression that shell is not rendered unless slice is completed (#3181)
* Fix issue that `is_update_alpha` doesn't work

* Fix regression that shell is not rendered unless slice is completed

* Format
2023-12-19 11:07:21 +08:00
Thomas
3ee42f42da Update OrcaSlicer_fr.po (#3177)
* Update OrcaSlicer_fr.po

Translated all remaining text that were not yet translated in French.

* Update OrcaSlicer_fr.po

Reverted slicer name.
2023-12-18 22:48:18 +08:00
SoftFever
0ab5601add Add "Cancel Objects" support for Prusa/Marlin/RRF firmware (#3164)
object cancel support for Prusa/Marlin/RRF
2023-12-18 04:21:55 +00:00
SoftFever
9c76cefde0 add hints to locale 2023-12-18 12:21:35 +08:00
Heiko Liebscher
5c9f7e24e5 fix Bamabu to Bambu (#3166)
* fix Bamabu to Bambu

* fix dup typo
2023-12-18 04:17:26 +00:00
SoftFever
9e3c393665 Move downloaded deps into DL_CACHE subfolder 2023-12-18 12:16:40 +08:00
Heiko Liebscher
9d5959c353 fix de and other localization files (#3159)
* fix de and other localization files

* Turkish words were edited. (#3161)

* Update OrcaSlicer_tr.po

New English terms were translated into Turkish.

* Update OrcaSlicer_tr.po

* Turkish language sentences were added.

* Turkish words were edited.

* Turkish words were edited.

* kor translation update (#3163)

* fix pot and de

* fix hints de
2023-12-17 22:39:14 +08:00
Lee Jong Mun
b2832270b3 kor translation update (#3163) 2023-12-17 22:05:03 +08:00
Olcay ÖREN
78090aa02a Turkish words were edited. (#3161)
* Update OrcaSlicer_tr.po

New English terms were translated into Turkish.

* Update OrcaSlicer_tr.po

* Turkish language sentences were added.

* Turkish words were edited.

* Turkish words were edited.
2023-12-17 22:04:09 +08:00
SoftFever
522b8485aa Fixed a regression that non spiral vase mode was broken. #3091 2023-12-17 20:27:46 +08:00
andrewboktor
9acd550a9c Full re-write of spiral vase (#3091)
* Practically full re-write of spiral vase
- Adds transition out to prevent sharp edge at the top of spiral vase.
- Adds XY interpolation
- Adds option to turn XY interpolation on/off

* - Increasing E to 5 decimal digits (I observed uneven flow with less than that)
- Excluding all travel moves (I saw a bug where somehow we ended up with travel moves within the print so excluding all travel moves)

* - max_xy_smoothing is now configurable, default is 200% of nozzle_diameter
- fixed no-op travel moves in the middle of spiral that now show up as defects when Smooth Spiral is enabled!

* - Avoiding namespace pollution
- Fixing dist_XY == 0 bug

---------

Co-authored-by: Andrew Boktor <aboktor@microsoft.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-17 13:48:21 +08:00
SoftFever
995ed049cb Revert "Do not limit the max window size (#2889) (#3142)"
This reverts commit fe80dc6ca6.
2023-12-17 09:01:59 +08:00
SoftFever
dea7f419cf Revert "Fix window maximize when task bar is on the left. (#3148)"
This reverts commit 0f87fdb98b.
2023-12-17 09:01:52 +08:00
Noisyfox
0f87fdb98b Fix window maximize when task bar is on the left. (#3148)
Partially revert fe80dc6
2023-12-16 15:31:10 +00:00
SoftFever
183f8fb012 update locale 2023-12-16 22:41:45 +08:00
SoftFever
1929fb0e18 Tweak dailytip: remove images/added a few new tips 2023-12-16 22:41:36 +08:00
Noisyfox
fe80dc6ca6 Do not limit the max window size (#2889) (#3142) 2023-12-16 14:25:28 +00:00
Ioannis Giannakas
712c28251c Updated wipe logic to respect retraction speed during wiping (#3094)
* Wipe retraction adjusted based on available wipe distance and retraction speed

* Wipe Improvements: Removed debug code, removed retract before wipe and made the respect retract speed an option.

* Wipe improvements: Spelling & grammar

* Revert "Wipe improvements: Spelling & grammar"

This reverts commit c8f8612b3f.

* Revert "Wipe Improvements: Removed debug code, removed retract before wipe and made the respect retract speed an option."

This reverts commit ba515ffb62.

* Wipe improvements: Using retraction before wipe parameter to judge when to do excess retraction

* Wipe Improvements: Floating point comparison check

* Wipe Improvements: Refactoring the code

* Wipe Improvements: Updated Wipe Distance tool tip

* Wipe Improvements: Removed redundant code

* Wipe Improvements: Use unscale_
2023-12-16 13:54:03 +00:00
Noisyfox
7b6dbfdbcc Fix checking is volume svg (#3129)
(cherry picked from commit prusa3d/PrusaSlicer@f31d7f1d8c)

Co-authored-by: Filip Sykala - NTB T15p <Filip.Sykala@Prusa3D.cz>
2023-12-15 22:59:17 +08:00
SoftFever
1e7300a476 Update M106 macro for auxiliary fan. fix is by @IntenseWiggling from PR #3133 2023-12-15 22:57:27 +08:00
IntenseWiggling
de0f5c9d1e Fix value passed to SPEED in air-filteration.md macro. (#3133)
Fix value passed to SPEED

The SPEED parameter of SET_FAN_SPEED needs to be between 0.0  and 1.0. Since the S param, which is between 0 and 255, was being passed as is to SPEED, it effectively resulted in the target fan running at 100% if any value > 0 was passed to M106.
2023-12-15 22:54:16 +08:00
Seth LaForge
3ca290d503 Improve ExtrusionLine::simplify, eliminating many very-short extrusion segments which led to blemishes in thin-wall models sliced with Arachne (#3014)
Improve toolpath simplification to avoid blemishes when using Arachne on thin walls.

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-15 02:46:33 +00:00
Alex Khalilieh
41f0e4d1ce Adds rotate on stl import (#3116)
* Adds rotate on stl import

* Fixed comma placement

* update location of rotate variables

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-15 00:59:35 +00:00
SoftFever
dc840ea451 update some profiles 2023-12-14 19:46:17 +08:00
Ioannis Giannakas
0a31b33b2b Fix #2662 - "Extra length on restart" setting is ignored when wipe is enabled (#3065)
Fix #2662
2023-12-13 22:16:39 +08:00
SoftFever
fa9148670c Update dependencies for compiling Orca on Mac 2023-12-13 20:59:34 +08:00
SoftFever
7393d61e8d Neptune4 profile updates, support preview image and some setting changes 2023-12-13 20:55:19 +08:00
SoftFever
dad0f348ab Update QIDI profile to display preview images on printer's monitor. 2023-12-13 18:27:02 +08:00
SoftFever
58e43ccb39 Fix a regression that thumbnails were not zoomed properly 2023-12-13 18:13:25 +08:00
Ev
d75bac2f01 make fan percentages a float (#3087)
makes fan percentages an int.

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-12 21:56:20 +08:00
SoftFever
103d778e63 Fix false "The 3mf has following modified G-codes in filament or printer presets" warning when loading a project 2023-12-12 19:24:31 +08:00
SoftFever
057926f957 Reuse bed model across Voron 2.4 and Trident 2023-12-11 22:52:41 +08:00
SoftFever
dd5fd06356 Add ColPic encoding for thumbnails(;gimage/;simage) as metadata.
This will enable showing preview images on QIDI/Elegoo machines
2023-12-11 22:27:40 +08:00
SoftFever
ae8995fec2 update user agent 2023-12-11 22:20:42 +08:00
Dylan
62bd10a27c Disable the cooling moves for snapmaker printers (#3081)
disable the cooling moves for snapmaker printers
2023-12-11 22:04:24 +08:00
StdVectorBool
2174cd6999 FIX: K1/Max profiles use consistently higher accelerations (#3052)
* FIX: K1/Max consistently increase Default accel to match Creality.

* FIX: K1/Max consistently decrease initial_layer_acceleration.

* FIX: K1/Max consistently increase Top accel to match Outer Wall quality.

* FIX: K1/Max consistently increase Travel accel instead of inherited slow default.

* More tweaks

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-11 22:03:09 +08:00
Nevax
fdd42eccd2 add bed models for voron 2.4 variants (#3075)
Credits to ldo for 3d models.
https://github.com/MotorDynamicsLab/LDOVoron2/tree/main/Slicer/PlateModels
2023-12-11 22:01:43 +08:00
SoftFever
e70da30753 Fixed a regression issue that wrong accel was used for PA Line 2023-12-10 21:21:12 +08:00
Ioannis Giannakas
9e10266646 Updated PA test to address crash when default line width was zero (#3055)
Updated PA test address "bug" #3043
2023-12-10 09:57:50 +08:00
SoftFever
b218d81d38 Fix btt tft thumbnail regression (#3056)
fix btt tft thumbnail regression
2023-12-10 09:56:40 +08:00
Noisyfox
933aa3050b Port Emboss & SVG gizmo from PrusaSlicer (#2819)
* Rework UI jobs to make them more understandable and flexible.

* Update Orca specific jobs

* Fix progress issue

* Fix dark mode and window radius

* Update cereal version from 1.2.2 to 1.3.0

(cherry picked from commit prusa3d/PrusaSlicer@057232a275)

* Initial port of Emboss gizmo

* Bump up CGAL version to 5.4

(cherry picked from commit prusa3d/PrusaSlicer@1bf9dee3e7)

* Fix text rotation

* Fix test dragging

* Add text gizmo to right click menu

* Initial port of SVG gizmo

* Fix text rotation

* Fix Linux build

* Fix "from surface"

* Fix -90 rotation

* Fix icon path

* Fix loading font with non-ascii name

* Fix storing non-utf8 font descriptor in 3mf file

* Fix filtering with non-utf8 characters

* Emboss: Use Orca style input dialog

* Fix build on macOS

* Fix tooltip color in light mode

* InputText: fixed incorrect padding when FrameBorder > 0. (ocornut/imgui#4794, ocornut/imgui#3781)
InputTextMultiline: fixed vertical tracking with large values of FramePadding.y. (ocornut/imgui#3781, ocornut/imgui#4794)

(cherry picked from commit ocornut/imgui@072caa4a90)
(cherry picked from commit ocornut/imgui@bdd2a94315)

* SVG: Use Orca style input dialog

* Fix job progress update

* Fix crash when select editing text in preview screen

* Use Orca checkbox style

* Fix issue that toolbar icons are kept regenerated

* Emboss: Fix text & icon alignment

* SVG: Fix text & icon alignment

* Emboss: fix toolbar icon mouse hover state

* Add a simple subtle outline effect by drawing back faces using wireframe mode

* Disable selection outlines

* Show outline in white if the model color is too dark

* Make the outline algorithm more reliable

* Enable cull face, which fix render on Linux

* Fix `disable_cullface`

* Post merge fix

* Optimize selection rendering

* Fix scale gizmo

* Emboss: Fix text rotation if base object is scaled

* Fix volume synchronize

* Fix emboss rotation

* Emboss: Fix advance toggle

* Fix text position after reopened the project

* Make font style preview darker

* Make font style preview selector height shorter

---------

Co-authored-by: tamasmeszaros <meszaros.q@gmail.com>
Co-authored-by: ocornut <omarcornut@gmail.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-09 22:46:18 +08:00
Ioannis Giannakas
7a8e1929ee Fixed a bug that caused curled edge detection not to work as expected for left facing edges when using Arachne. Enabled fan speed control for curled overhangs (#3034)
* Update malformation distance factors (curled edge detection)

* Updated curled detection logic from latest prusa 2.7 release, including updated estimate_points_properties algorithm

Updated curled detection logic from latest prusa 2.7 release, including updated estimate_points_properties algorithm

* Curled distance expansion const introduction

* Enable overhang fan speed logic for curled edges slow downs

* Reverted erroneous change
2023-12-09 09:17:49 +00:00
Jim Broadus
325009bc48 Fix build error with CGAL 5.6 with -std=gnu++17 on Fedora (#3045)
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.
2023-12-09 09:14:20 +00:00
Olcay ÖREN
a8f69377df Turkish language sentences were added for web wizard. (#3047)
* Update OrcaSlicer_tr.po

New English terms were translated into Turkish.

* Update OrcaSlicer_tr.po

* Turkish language sentences were added.
2023-12-09 08:42:05 +00:00
Noisyfox
59164bff88 Various fix & improvements to collapse sidebar (#3044)
* Fix sidebar collapse button color in dark mode

* Make collapse button half the size

* Add tooltip to sidebar collapse button

* Don't trigger sidebar collapse hotkey twice

* Fix sidebar disable on gcode-only mode
2023-12-09 08:41:09 +00:00
Noisyfox
f598a1209a Only regenerate bed triangles if actually changed (#3039)
* Remove unused bed texture

* Only regenerate bed triangles if actually changed
2023-12-09 08:40:04 +00:00
SoftFever
d24aef36ae set osx deployment target for openssl 2023-12-09 14:08:19 +08:00
SoftFever
ccd3c44fab fix mac build pack error 2023-12-09 00:34:54 +08:00
Ioannis Giannakas
1c6f2c6817 Merge upstream BBL changes up to 5th Dec (01.08.01.57) & fix issues with 1.8 BBL merge (#2994)
* FIX: mistake in filament vendor

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I3af712e417379d8b98ae18feebffe465bfa1e72d

* NEW:set customized materials for the A1 P1 series

Change-Id: I9c34f62867c074bf9ebb315013e5e40526e0eac7

* FIX: the flow rate ratio crashes after load model

for third party printer
Jira: 5244

Change-Id: Idd829c9d99eeba9d180653ac8de4e51b9a0d6370

* FIX: The maximum value is not printed in PA line mode

Jira: 5046  4951
Change-Id: Ic81f9a75ce7f088fe950fdde283ff5c942cd6e83

* ENH:add preset check for sending files

Change-Id: Ia3313d281b5ce91e277b380498014ffdac5debd3

* FIX: locale loading user preset

Change-Id: I88521e4b10cb802d9253eb79a6b78b3286f15a33
Jira: STUDIO-5436

* FIX: sync user preset notify crash on exit

Change-Id: I88f5dbcbd487293ea847ea6092efb61744399541
Jira: STUDIO-5413

* ci: update build version to 01.08.01.56

Change-Id: Id7a9718d5f920da50d52fd2ef220acf5d3270d3c

* GUI/Field: Fix crash in color picker init (#2220)

wxButton->GetBitmap() may return an invalid wxBitmap.
Guard against this.

* FIX: custom filament preset display in cali history issue

jira: new

Change-Id: I4145450a231adff542ab1a7428b3479f4074e06a

* FIX: meshboolean transform result issue

jira: STUDIO-5425

Change-Id: If66fe909ce4458c1b3192e4fd8a3d758fe7c7eaa

* FIX: fix combobox and delete btn in filament setting enabled

Jira: XXXX

Change-Id: I8b659bd77ceb97c8cea9d3e5e931f4ea50822721

* ci: update build version to 01.08.01.57

Change-Id: I7a6f5439863ca81275ae8b80f1b5cf0bb36c4c0f

* Fix crashing of flow rate calibration post BS 1.8 merge

* Revert Staggered Inner Seam logic from Prusa slicer that was overwritten by the BS1.8 update

---------

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Co-authored-by: xun.zhang <xun.zhang@bambulab.com>
Co-authored-by: hu.wang <hu.wang@bambulab.com>
Co-authored-by: zhimin.zeng <zhimin.zeng@bambulab.com>
Co-authored-by: tao wang <tao.wang@bambulab.com>
Co-authored-by: chunmao.guo <chunmao.guo@bambulab.com>
Co-authored-by: gerrit <gerrit@bambulab.com>
Co-authored-by: mia <652892+mia-0@users.noreply.github.com>
Co-authored-by: liz.li <liz.li@bambulab.com>
Co-authored-by: maosheng.wei <maosheng.wei@bambulab.com>
2023-12-08 10:27:24 +00:00
Noisyfox
7cfa4f3bcd QoL: Make sidebar collapsible, resizable, movable, floatable and dockable (#2972)
* Add sidebar docking

* Fix sidebar initial size

* Fix sidebar collapse

* Hide floating sidebar when switch away from model view

* Add option to reset window layout

* Save & load window layout

* Fix a small issue with gcode toggle

* Properly save & restore sidebar state

* Show collapse icon based on sidebar docking state

* Adjust toolbar position based on docking position

* Fix return toolbar position

* Fix plate list position
2023-12-08 09:16:16 +00:00
Thomas
3d2ab8e2e2 French language update (#3019)
* French language update

Imported FR strings from Bambustudio to keep same strings.
Fixed a syntax error.
Added missing translations.

* Update OrcaSlicer_fr.po

Changed mention to Bambu Studio, updated name to OrcaSlicer (1 word instead of 2 like before)
2023-12-07 11:34:11 +00:00
Dylan
63d46c5c83 Update snapmaker files (#3009) 2023-12-06 22:40:15 +08:00
Olcay ÖREN
77e0c164e8 Update OrcaSlicer_tr.po (#3017)
* Update OrcaSlicer_tr.po

New English terms were translated into Turkish.

* Update OrcaSlicer_tr.po
2023-12-06 22:02:52 +08:00
Lee Jong Mun
ca4c75f577 kor translation update (#2991)
fix

remove c-format

fix typo

fix
2023-12-06 22:02:28 +08:00
Fabio Forcina
7030ec55cf Italian translation update (#3006)
Some corrections and updating to version 1.8.1
2023-12-05 22:47:48 +08:00
SoftFever
685de31088 Revert "Add a simple subtle outline effect by drawing back faces using wireframe mode (#2934)"
This reverts commit 0cee513416.
2023-12-05 22:05:11 +08:00
Armael
f0e35839fb Update OrcaSlicer_ru.po (#3007)
Misprint in translation
2023-12-05 21:56:43 +08:00
Trist0ne
a850cd9f3f HOTFIX: Fixed T500 broken fdm_process file and added new build plate texture (#2999)
Fixed broken fdm_process file and added new build plate texture
2023-12-05 21:56:13 +08:00
Kalooth
dae9d62be5 Initial add of Neptune 4 Plus profile (#2980)
* Initial add of N4Plus profile

Still some tuning to get it "right" but way better than nothing or just copying the Max profile.

* Fixing machine_start and manual filament change

Adding PRINT_START to the machine_start_gcode
Adding manual_filament_change override to True since this printer doesn't have automatic filament change.

* Adjusting accelerations and removing Z-Hop

Bumping accelerations to stock levels for all sizes and removing Z-Hop by default.

* Adding Z-Hop back in to be safe

Getting more stringing with Z-hop on but also rubbing prints during some moves.

* Removing print_start and lower accels a little

PRINT_START is automatically called on this printer so removing it from machine start gcode
Lowering accelerations a tiny bit. May bump it back up later but wanted a safer value.
2023-12-05 21:35:34 +08:00
Ioannis Giannakas
82cb9e3565 QOL: Dev 1.9 - Regroup Advanced Quality Options (#2962)
* Dev 1.9 - Regroup Advanced Quality Options

* Regroup Advanced Quality Options

* Regroup advanced quality options and flow rate labels

* Updates labels for consistency. Renamed Order of walls to Walls printing order. Updated walls printing order and print infill first tooltip

* Another option spelling mistake

* Another spelling mistake part 2

* Updated localisation files

* Updated de localisation file post upstream merge to resolve conflicts

* Fix merge error when transferring change to branch.

* update locale file for one more message

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-05 21:23:31 +08:00
Dylan
1998ec41c5 Update Snapmaker profiles (#2939)
* fix printing parameters for Snapmaker printers

* update

* Update Snapmaker profiles

* update end gcode
2023-12-05 21:08:48 +08:00
SoftFever
d45ac9201d create debug folder automatically 2023-12-05 20:55:42 +08:00
SoftFever
7699dbb272 fix an issue that image is not showen in precise wall wiki 2023-12-05 20:55:42 +08:00
SoftFever
9e63d42444 Sign app and notary Mac build for Release branches 2023-12-05 20:55:42 +08:00
Ocraftyone
25a055491e Update wxWidgets to v3.2.1 (#2905)
* Upgrade wxWidgets to 3.2.1
Based on prusa3d/PrusaSlicer@9a7e024

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

* Implement BitmapCache

* update wxExtensions while keeping legacy items

* update dc.DrawBitmap calls to use get_bitmap

* Fix GetSize/Width/Height calls

* update BitmapComboBox

* fix ifndef in wxExtensions.hpp

* update my todos to OcraftyoneTODO

* Get to a compilable state
Everything seems to be working (including the plater). I am not seeing any graphical issues

* fix extruder color icons

* fix crash on opening support tab

* remove GetBmpSize method from DropDown.cpp

* Update TextInput to use bitmap bundles

* update a TODO after testing

* fix the rendering of the icons on combobox

* fix a few todos

* fix WipeTowerDialog.cpp

* Overhaul WipeTowerDialog

Removed simple version of the dialog since BBS removed the functionality but left the code.
Center the table (only seen when the table is smaller than the minimum size of the dialog)
Fix issue where editing a value causes the m_min_flush_label to change colors slightly
Fix an issue where changing a value or running an auto calc changes the disabled value from "-" to "0"

* update a few todos

* Update some todos

* Show dropdown when editing is started

* Update NanoSVG.cmake

Update NanoSVG to work with PR #2780

* Dim the icon on ComboBox when disabled

* solve ObjectDataViewModel todos

leaving colPrint and colEditing cases alone as it does not seem to impact anything

* Update names in wxExtensions

-Rename msw_rescale to sys_color_changed
-Replace GetBmpSize, GetBmpWidth, GetBmpHeight with renamed version (same name without "Bmp")

Both of these changes were also made by PrusaSlicer.

Original Commit: Prusa3D/PrusaSlicer@066b567
Co-authored-by: YuSanka <yusanka@gmail.com>

* update BitmapCache::from_svg

disable finding bundle in the cache to match load_svg
update to match values used in load_svg

* Update ScalableButton

change the signature and remove functions/vars pertaining to a default bmp
fix TODOs in ScalableButton

Original Commit: Prusa3D/PrusaSlicer@066b567
Co-authored-by: YuSanka <yusanka@gmail.com>

* fix up some more todos in wxExtensions

* update ScalableBitmap to use bmp bundles

use wxBitmapBundle by default
add flag to use old scaled bitmap function (specifically to solve issue with advanced toggle)

* attempt to fix macos deps build

* fix ubuntu build

* Revert "attempt to fix macos deps build"

Mistakenly made change to wrong file

This reverts commit d9c20b5121.

* update wxWidgets patch

an attempt to fix macOS build

* Remove duplicate variable from OrcaSlicer.cpp

* Fix macOS build issue

* Fix blank DataViewItem being added to objects list

* Filament ComboBox editor updates

-Add show drop down feature to ObjectTable
-Call finish editing when ComboBox is closed in ObjectList

* remove Apple specific declarations missed during refactor

* delete old wxWidgets patch

* fix ubuntu seg fault

* include patch from #2926

* update patch to include wxWidgets/wxWidgets@991a74c

* fix deps not compiling on Windows

* update WipeTowerDialog

relocates the recalculate button back to its previous position
changes the wording of the tip message label
add spacing below the matrix

* finish patching wxWidgets

from prusa3d/PrusaSlicer@f8477d1 and prusa3d/PrusaSlicer@066b567

Co-authored-by: YuSanka <yusanka@gmail.com>

* fix combobox crash

* revert outside plate changes

---------

Co-authored-by: tamasmeszaros <meszaros.q@gmail.com>
Co-authored-by: YuSanka <yusanka@gmail.com>
2023-12-04 15:21:49 +00:00
Paul
0bf65aa217 Additional Nozzles for the Creality Ender-5 Pro (2019) (#2964)
* Add 0.6mm Nozzle Configurations for CE5Pro

* Add 0.5mm Nozzle Configurations for CE5Pro

* Add Nozzle Size Printer Variants 0.2-1.0mm

* Add 0.3mm Printer Variant

* Add 0.5mm Printer Variant

* Fix: 0.6mm Printer Variant

* Add Remaining Printer Variants

* Add CE5Pro Nozzles to list of Compatible Filament

* Add Generic FDM Process for Creality 0.3 Nozzle

* Update Generic FDM Process for Creality 0.6 Nozzle

* Add FDM Process for Remaining Creality Nozzle

* Add Processes For CE5Pro 0.8mm Nozzle

* Add Processes For CE5Pro 1.0mm Nozzle

* Add Processes For CE5Pro 0.2mm Nozzle

* Fix Initial Layer Settings

* Add Processes For CE5Pro 0.25mm Nozzle

* Add Processes For CE5Pro 0.3mm Nozzle

* Remove Profiles Outside their Min/Max Layer Height

* Update CE5Pro 0.4 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.2 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.25 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.3 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.5 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.6 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.8 Nozzle Naming Scheme to PR1100

* Update CE5Pro 1.0 Nozzle Naming Scheme to PR1100

* Incl. Remaining Base Config That Diff Is Based On

* Remove whitespace

* Revert from Nozzle Naming Scheme in PR1100

* Update Nozzle Names

* Revert "Incl. Remaining Base Config That Diff Is Based On"

This reverts commit 87e15d621b.
These settings were already captured by fdm_process_creality_common.json

* Fix Indentations
2023-12-03 12:02:03 +08:00
SoftFever
d22a7254c4 Fix precise wall for Arachne wall generator (#2966)
Update WIKI for it
2023-12-03 09:43:18 +08:00
Heiko Liebscher
8f660f5b6a fix typo "Improt Preset" and add new de for 1.9dev (#2968)
Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-12-03 09:42:58 +08:00
Ioannis Giannakas
b86b077075 Dev 1.9 - Fix Spelling Mistake on Create Printer dialog box (#2961)
* Fix Spelling Mistake on Create Printer dialog box

* Dev 1.9 - Regroup Advanced Quality Options

* Revert "Dev 1.9 - Regroup Advanced Quality Options"

This reverts commit 6ffae875f0.
2023-12-03 09:38:17 +08:00
stew675
ab2a2d5725 Add zhop to PA pattern (#2952)
The current PA pattern implementation does not lift the nozzle
when moving.  The way the pattern is drawn means that the nozzle
is often dragged over already printed lines, which can pull the
pattern off the bed, or damage the lines already drawn. As a
result I often see failed prints with the PA pattern, or moderate
damage to already drawn lines.
This change adds a 1 layer hop between each move to eliminate
nozzle drag.
2023-12-03 09:37:33 +08:00
Noisyfox
a6c927d87f Add option to disable emitting M73 gcode (#2114) (#2940) 2023-12-03 09:36:27 +08:00
Noisyfox
0cee513416 Add a simple subtle outline effect by drawing back faces using wireframe mode (#2934)
* Add a simple subtle outline effect by drawing back faces using wireframe mode

* Show outline in white if the model color is too dark

* Make the outline algorithm more reliable

* Enable cull face, which fix render on Linux

* Fix `disable_cullface`
2023-12-03 09:27:03 +08:00
SoftFever
2745575dd2 bump version to 1.9.0-dev 2023-12-02 13:03:47 +08:00
SoftFever
c6bf6ec15c update locale 2023-12-02 13:03:09 +08:00
SoftFever
bfd8ac6e40 Improve PA calibration Line method so it works for bed origin not in (0,0)
(cherry picked from commit f0522065d8)
2023-12-02 12:53:43 +08:00
SoftFever
cd1be11458 thick internal bridges (#2954)
(cherry picked from commit f2f2ede5d5)
2023-12-02 12:53:34 +08:00
SoftFever
be91ae6ebe disable misleading 3mf version warning
(cherry picked from commit b4b9805383)
2023-12-02 12:53:11 +08:00
Ioannis Giannakas
643476084a Feature Merge: Fix missing options on print window (#2951)
Fix missing options on print window - Feature merge
2023-12-02 04:51:28 +00:00
Ioannis Giannakas
205bf5db3f Feature Merge: Fix for inner-outer-inner mode post BBS feature merge (#2949)
Fix for inner-outer-inner mode post BBS feature merge
2023-12-02 04:51:14 +00:00
SoftFever
f899025363 Revert "Adding new nozzle profiles for the Creality Ender-5 Pro (2019) (#2817)"
This reverts commit eab8139d3c.
2023-12-02 10:24:12 +08:00
Ioannis Giannakas
ae9a2d5929 Updated internal bridging flow change and reverted bridge PR (#2943)
Updated internal bridging flow change & reverted bridge PR
2023-12-01 15:50:58 +00:00
Ocraftyone
6ba1e6d6ae Set PointerAlignment to Left (#2948)
A lot of the codebase that I have seen typically uses a left justified pointer character. This would update the formatter to also follow that.
2023-12-01 15:32:48 +00:00
SoftFever
3923b9c846 Improve arc fitting when new overhang slowdown is used (#2942) 2023-12-01 15:13:26 +00:00
SoftFever
d8dd8fa634 Feature/bs1.8beta (#2844)
* ENH: Show Recent File Image Keep Scale

Change-Id: Ib8a6cf916eaee8e353bf858bc4f2ea503705809e

* FIX: wipetower position problem

jira: STUDIO-4914

Change-Id: I7b05d3c53931ed8ce3d4603ff21ee6ef675611e5

* FIX: dailytips adapts screen scale

jira: STUDIO-5019 STUDIO-5026 STUDIO-5027 STUDIO-5028 STUDIO-5025

Change-Id: I63d3af1870218ba8e0f048a6ef03fb29fabe27cb

* FIX: generate process preset based on template

Jira: XXXX

Change-Id: I50adf0790dc239307d236a4cebece860ef6beb16
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: object list plate name edit

Change-Id: I61d3dcd7d9598d759a3a0b44cc77d2af2adca25a
Jira: STUDIO-4937

* ENH:no longer checking nozzle type

jira:[for nozzle type check]

Change-Id: I0e88445a264f21b0c11519e9a22a165d05611d14

* 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)

* ENH: version: bumped to 1.8

JIRA: no jira
Change-Id: I50903098b59f1dd9a6b6cf7656cec7d388f3ff17

* ENH:try again after subscription failure

jira:[Try again after subscription failure]

Change-Id: Ibfb1e8e26eb166d786a372632a86ef98030db034

* ENH:display msg dialog once

jira:[for http error msg]

Change-Id: I12e9c155fdb567cac99c35b6feeef650269ba75d

* ENH:remove config.json file

Change-Id: Idfcf3a63fefe968e88153c26fb691fd05cd83dc4

* ENH:add protection in threads

jira:[for random crash]

Change-Id: I6286012dd77abccba461f7cd72a6fc531a84c95f

* FIX: add protection for get_model_task_thread thread

Jira: XXXX

Change-Id: I3cbc17d181a0e13c658f31eaeb6a4df878e6df41
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: delete all compatible presets when delete third printer

Jira: XXXX

Change-Id: I1a294402627e7ab7a8c6701f20679b3d04aff059
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ci: update build version to 01.08.00.51

Change-Id: I20a01adacbdb5fe69c106b9efd029f7308136e10

* ENH: default open support_interface_not_for_body

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I48e084deb18633f9ec47a8ec4ec643163bf66318

* ENH:modified text with too low version

jira:[for low version]

Change-Id: I862a0defda976a35f326a8805e002330f2ed7fdf

* NEW:update printer config file version

Change-Id: I9a46b29b03beb67a3da0b8f76d8b5c4b3c482928

* FIX:The plane should rotate around the world coordinate system

Jira: STUDIO-5054
Change-Id: I16e484b38d79cabd9473acf1abf3c5c6b0adc4c6

* ENH:translate for limit file size and so on

Jira: STUDIO-5007
Change-Id: I2c279eb690841aa51cd8128f8028266cbc17e977

* ENH:use on_render_rotate_gizmos() replace GLGizmoRotate3D::on_render()

Jira: STUDIO-4227
Change-Id: If9b9ea5596e59472d5fa87ac56aeb7f6ecc65643

* FIX: some mistakes in filament profiles

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ibe7f3650f2d9cf47561dd5f2ec591a5f6c553503

* FIX: fix shard_ptr is null

Change-Id: I0187cf64ffbb08a2265a11900b5c865e9ac9678f

* FIX:N1 printer image in dark mode

JIRA:STUDIO-4057
Change-Id: I22c001d96839daf213d5096f6ff6e3d6398fa8c4

* FIX: create printer issue

Jira: 5034 5059 5053
5034 create printer but filament is repeat
5039 create successful dialog remove to center
5053 create existing printer copywriting adjustments and preset updates
Delete printer secondary confirmation dialog

Change-Id: Ifb3822d1e168459d2af11e02b31ecaf3719d338a
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH:just don't check the nozzle diameter

jira:[for nozzle check]

Change-Id: I678e7d62832eaa14b9be47d6dce70f29ebd601f6

* NEW:p1 and x1 series added motor noise calibration

JIRA: 5085
Change-Id: Id73cc2d34b6130f215d81ffcdc39ba6b241445bf

* ci: update build version to 01.08.00.52

Change-Id: I93d800b413f2751d132fac53fbd9b191603d0352

* FIX: ObjectSetting changed when search plate

JIRA: STUDIO-5095

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Change-Id: I39b1ad997d51ac4224ff5ad2b3555f56da4bd911

* FIX: invalid support params in 3rd party profiles

Many params are not right.Just use default

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I5c4a1e8b046940e174f5681a79031b5f20fcafc5

* ENH: update A1 mini start gcode

Change x-axis freq sweep amp 5->10

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I2e731cc6392c0204d5e4467bf4b933ab233bc157

* FIX: [STUDIO-4946] use utf8 path to create sub process

Change-Id: I5873c114e8cd36978a7d50bf13c3aa7bf8b740ca
Jira: STUDIO-4946

* FIX: fix a plate state not correct issue

JIRA: no-jira
the object and instance states lost after undo

Change-Id: I527df9a7d426d994501a4ed5bbb198c7bbac810b

* FIX: some translation

Jira: 5096 5089 5036 5004

Change-Id: I4f1bd6e352b11451f5caf02cbc4eeb31dfa03eee
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: [STUDIO-4935] plate name edit in object list

Change-Id: I271fa217281d0c7ceca61166497136628a66681e
Jira: STUDIO-4935

* FIX: take custom root as AMS sync candicate

Change-Id: I9c71babcd74238d1533b15d77a978b19997c70c0
Jira: none

* FIX: modify some default support params in code

1. Modify default values of some supports params, so 3rd party profiles are easier to setup.
3. Fix a bug that organic support may cause crash.

Jira: none

Change-Id: Icae348d8fe5985f4287404e96089198a499283f2
(cherry picked from commit 8889cfc703b72e142f288e525b89c87619f2213c)

* FIX: do not generate sheath for normal support

Jira: none
Change-Id: I8f3f3e39171055f8d18c06ceee8e245594273238
(cherry picked from commit 93bc7ecf4346f179f502bebc3cf47b0030b56e2c)

* FIX: push_notification on GUI thread

Change-Id: Iaec347f5684fe0f65d6418759518189b67033c42
Jira: STUDIO-5106

* ENH: CLI: add some params to support more functions

1. uptodate_filaments to support update the original filaments to newest config
2. allow_rotations/avoid_extrusion_cali_region for auto-arrange
3. skip_modified_gcodes to support skip modified gcodes

JIRA: STUDIO-5112
Change-Id: I95c09af1b5462cce3bf27aea32228d6d1d1d201d

* FIX: missed manually entered values for secondary processing

Jira: STUDIO-4964
Change-Id: I5cf0da1ae77cccd34de05b4a0318a751ac9f6753

* FIX: Z hop is still enabled when upper boundary is zero.

Jira: STUDIO-4893

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: I5f46a02e1fbb15ff43e253e3a184aa6cc38e7598

* ENH: update default filaments for Bambu printers

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ic6380f39e546854ad0b7dc36929a8605c9ab3acc

* ENH: dailytips modification

1. modify closing behavior
2. dailytips can adjust self size according to the canvas size. And also adjust
   GodeViewer legend window size
3. fix a button text encoding bug
4. support vertical/horizontal layout(horizontal layout currently not used)

jira: new

Change-Id: I8e0b6e85c455d0608d7388fb441829c1991ad01f

* FIX: [4857 5097] export list and del preset two confirm issue

Jira: 4857 5097

Change-Id: If7cc4967a663f575527a227e9c4ac31e0491930c

* FIX: UUID conflict issue when referencing volume

Jira: XXXX
3mf file standard

Change-Id: I953a87294684ea85d03a95e7d2843c096904aeae
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: [4483 5003 5109] create printer and edit filament issue

Jira: 4483 5003 5109
4483 dialog blink
5003 preset list too long
5109 encode

Change-Id: I190e12272ca09f36b841f2f85a6cf60f2c2614bd
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: cloud use presets limit notify

Change-Id: I6cc7b4e560cb83db0fc30921633b10531957128e
Jira: STUDIO-5091, STUDIO-5104

* FIX: do user preset sync later on startup

Change-Id: I0653a0438477b1c803ce1cddc66ef47f95616dae
Jira: STUDIO-5106

* FIX: linux: pressing enter in height range will crash

jira: STUDIO-4391
Change-Id: I6bf990951d1456f5b2605b8d62a05bceb3cc4c10

* FIX: failed to limit the max width of DropDown

Jira: STUDIO-4503

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: Id9352d16f4bc016daade72a9c8d3d90164a1cb3d

* FIX: not jump to preview after first wizard

Change-Id: I8c94d66a91aa15a7874441a300b40438638bd33b
Jira: STUDIO-5018

* ENH: CLI: clear custom gcodes when skip_modified_gcodes

JIRA: STUDIO-5112
Change-Id: I2e7346d2ac57519029a4e80e5492c34d3d91ed77

* FIX: [4492 4851 4883 5121] create printer issue

Jira: 4492 4851 4883 5121

Change-Id: If252b5f30be0403f79410aa8c00fc14b066d5bbd
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH: add 'edit preset' and 'delete preset' btn for each preset

Jira: 5200 5113

Change-Id: I208ad63eb4b895306fa76db424da2e1df10a582e
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: add skip label before tool change

Jira: 5074
github: 2776

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Icaafd3b45da1e78c1a82e7d17d7505d9439b9100

* FIX:Network test dark mode adaptation

JIRA:STUDIO-2468
Change-Id: I20cb7f1fd8eca3ce852acb563c1cc87978e216dc

* FIX:n1 external feed prompt pop-up without retry button

JIRA: STUDIO-4696
Change-Id: I31069c72e29d3398469d71cdbc2a344a5430fc2c

* FIX: not show device page when switch printer preset

Change-Id: I00d8524625a4682b6a39876ddb66bf8bd928dbef
Jira: none

* ENH: Check the nozzle diameter when sending calibration

Jira: 4977
Change-Id: Iabbba44583bbd9fbaaa889ca546ee0ccbb2aa77f

* FIX: Generate UUID from objectID and volumeIndex

Jira: XXXX

Change-Id: I65147ef9b695f8af8de260d722e604b0e0bab563
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: disable filament_typep

Jira: XXXX

Change-Id: Ib605b33e4474525fbe49e70596fc09aa356f478a
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ci: update build version to 01.08.00.53

Change-Id: I1d574fa2cf2a4d0eb63a38eb8ced7587d06a4272

* ENH: refine display logic of param

1. Refine the display logic of "support_interface_not_for_body".Only
toggle if support_filament is default and support_interface_filament
is specified

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ia2af030c4531ad6b04a198bfe8a1677b3d20a800

* FIX: user preset sync token

Change-Id: Id2aa865b778ee9ac4cfddb68ceef0374507b519b
Jira: none

* FIX: Bitmap cache not take effect

Change-Id: I972098fdbda0b4542c6c759a8f5e1f0f2a30852b
Jira: STUDIO-4991

* NEW: Open HotModel Link With GetParam-From bambustudio

JIRA: NO JIRA

Change-Id: I4ac49bac5ee0c50988c76a38b00b7ba7dc3201f5

* NEW:AmsMaterialsSetting Support for user-preset

JIRA: STUDIO-5135
Change-Id: If848047cd5dbd059d440de30989c505c361305a7

* FIX: upload custom root preset fail

Change-Id: I621c8d542dd604b07cc5df63d97d7a31558d3aba
Jira: none

* FIX: show custom filament in AMS filament list

Change-Id: I79b9f8f2f08db8c52bbed76f1ea133baff383c00
Jira: none

* FIX: dailytips window and gcodeviwer legend window size issue

reset to original logic of dailytips and legend window size

jira: new

Change-Id: Iacb016bb222ba3f87317cfbe1f2b003802d773a5

* ENH: add text translation

jira: new

Change-Id: I780cfb8a0a64d806b5e0a414b6598e3b7bdf52dc

* FIX: Delete and search object outside the plate

JIRA:
1. STUDIO-5132 Deleting object outside the plate will crash
2. STUDIO-5146 The search function cannot search for object outside the plate

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Change-Id: I84cb3fe990a9c2a182e7434c262466a70545280e

* FIX: [5149 5142 5141 5140 5136] create printer and filament issue

Jira: 5149 5142 5141 5140 5136
5149 process preset name can not show all
5142 improt configs combobox not update
5141 disable modify filament_vendor
5140 disable input Bambu and Generic vendor
5136 preset list window adjust

Change-Id: I111a23996146cc16cc7f533c8616d50223d34c40
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ci: update build version to 01.08.00.54

Change-Id: Ifd69c01a82f627a9c6cf4fe0d48a759563ee90e7

* FIX: print model from sdcard with p1p

Change-Id: If85383ba762022ead3dd754ae02a08817b891114
Jira: none

* FIX: dailytips text translation

jira: STUDIO-2556

Change-Id: If44e503615b09ee1692f42ba1f998918ec5bd691

* FIX: clone shortcut key conflict with quit in macos

jira: STUDIO-5166

Change-Id: I548f275bb68d3b0e6bb3cfad6fe93df09d507da3

* FIX:User preset material settings dependent on firmware

JIRA: 5167
Change-Id: I82cf26848594b01155883ad0aa2e9ee77d371fb2

* ENH:update the description of nozzle detection

Change-Id: Id27b25c69dc11fcf66fc82053af705906ae8c370

* FIX: [5159 5165 5171 5172] create printer and filament issue

Jira: 5159 5165 5171 5172
5159 create printer dialog no refresh
5165 create printer 2 step dialog no refersh
5171 change font
5172 edit filament dialog darkUI issue
input special character is prohibited
'/' in preset name translate to '-'
update printer combobox

Change-Id: I5fa27836dab7f604f1a065c65efa099c7a2f0f96
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ci: update build version to 01.08.00.55

Change-Id: If1865d561cf274719204662314de163497759e89

* FIX:fix GLmodel deconstruction causing section not to be rendered

Jira: STUDIO-5156
Change-Id: Ibb2f459920989ee54f7b827352dc8893424b4de6

* FIX: missing unlock cause device or resource busy

Change-Id: I87563312ea9c6ce4e4e471da7ce7a02b53b64762

* FIX: some translation

Change-Id: I9758cbc758030b5a3945697a50ca4898af9fcb1b

* ci: update build version to 01.08.00.56

Change-Id: Id5ee53dd2ebb0b37b6927dc58b3cca94a1f66a83

* ENH: remove PLA GLOW in A1 mini

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Id99c1bbd4248e28df9150a85eecec831f6f32856

* ci: update build version to 01.08.00.57

Change-Id: Ib4dfa60f097128b76b95bb14ca04978619021b56

* Allow line width of nozzle diameter * 2.5

As it were, 1 mm would be disallowed but 0.99 would be allowed for 0.4
nozzle.  1 mm is the sane maximum and 0.99 is unnecessary tedious to write.

* Russian translation update

Russian translation Bambu Studio_v1.8.0 Beta

* FIX: scale problem in needs_retraction

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Idfbe954b22fa6aa5769c55e46874fa6a80ecbf45
(cherry picked from commit 4e853f50b748e3af11e2d64862b6ee557fda361b)

* ENH: CLI: support load_assemble_list

JIRA: STUDIO-4848
Change-Id: Ife11533740988331ea71eac86c370e625970cb8b

* FIX: align to Y not working

This is a bug introduced in 7fbb650 when solving jira STUDIO-4695.
Now we use a more decent way to solve it.

Change-Id: I92deffcb9fe53e8a24c93fe973446ae37df07375
(cherry picked from commit bd98430dbd15eb6c9bb4b447990e0dcf8a50eef0)

* ENH: Add buried points for cut and meshboolean

JIRA: NONE

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Change-Id: I67ce498d0c335dd7a8582f56b880c2c8314f8541

* FIX: 5092 edit filament add scrolled window

Jira: 5092

Change-Id: I53ae996b04e4e2f1b1ddce6a858d505001b11615
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: can not select user preset when create filament

Jira: XXXX
github: 1936
and fix add preset for printer dialog can not show selected printer

Change-Id: Id4308c6bdca17d52d4aa321db359941aa87e0e45
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH: template filament don't be show in filament list and sort

Jira: 5160 5179

Change-Id: I56a7e1897e1ef3c061dc66d318896413ca25b76b
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: [5174] export configs dialog issue

filament name too long to can not show all

Jira: 5174

Change-Id: I92018c9d7f86009b78b533592d899b4b5d78c3c8
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH: add filament Bambu TPU 95A HF

1.As title

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I752ec43da6297a6c172679997ce68f2318a7b8fb

* ENH: modify some params with filaments

1.Modify the PEI bed temperature of PLA Basic, Matte, and Tough to 65 in
 A1 mini. Set the bed temperature for the first layer of Bambu PETG-CF
 to 65 and 70 for the other layers

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ia902bbb7f824082d5346709d781cac64296f47a8

* ENH: add more status during printing

JIRA: STUDIO-5195

Change-Id: I85b3107839c6e2fdecbc10d90a876463e284468c
Signed-off-by: Stone Li <stone.li@bambulab.com>

* FIX:cut imgui has overlapping rendering on Apple

Jira: STUDIO-5150
Change-Id: I7969e19dc189cd617026a183067dad628208955c

* FIX:not TakeSnapshot for m_start_dragging_m

Jira: STUDIO-5176

Change-Id: Ia03e3e2c2664dbdcffa19ec8d0fa97dfd95e6d35

* FIX: rendered color changes

Jira: STUDIO-4956
during the drag processin connectors editing state

Change-Id: I3027176ea9f93a9ba9d6a2052f41aaa4adef79f1

* FIX: merge the patch from Prusa

Thanks for PrusaSlicer and YuSanka
Jira:STUDIO-5175
commit 510d59687b3b19c4a0f4e6540620d0694dd1b7ac
Author: YuSanka <yusanka@gmail.com>
Date:   Thu Oct 5 14:13:14 2023 +0200
    Follow-up 1b451cdf: Fixed #11415 - Connectors disappear when slicing => only when using multiple cut planes AND excluding parts

Change-Id: I9ccd5b85f482d723d21fccf5e104c9e0a9cc4849

* FIX:Press ESC directly to exit after entering the profile rendering

rendering is not normal,Code from PrusaSlicer,thanks for PrusaSlicer and enricoturri1966
commit a078627552f54497ed0518dc7bc349d243576d19
Author: enricoturri1966 <enricoturri@seznam.cz>
Date:   Mon Jan 30 14:00:02 2023 +0100

    Follow-up of 1218103fd620b319c56fd08116f81b581c537188 - Fixed gizmo missbehavior when closing a gizmo by resetting the selection clicking on the scene

Jira: STUDIO-5164
Change-Id: I261da9dba2a5ac37f3e263c175fbccd80d8045bd

* FIX: correct the strings and move create printer dialog center

Jira: 5221 5183

Change-Id: Ida4eba63f0e962ffcc8000fcc04cf20849577217
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH: CLI: skip layer height limit validate when slicing for existing models

JIRA: no jira
Change-Id: I1444a28b500ca7d08ed2606eecfa5cfaf261105e

* ENH:update the translation of auto refill

jira:[for translation]

Change-Id: Iaa7b4f3d7cd88c8b4f69a3db721ebd8ca8986eea

* FIX: icon issue for copying

Jira: STUDIO-4168

Icon issue when filling bed with copies

Change-Id: I61a03ecae02b75602c236ed2810e9c9cfe5a19f9
(cherry picked from commit b5079f8a2e79f19f65803f23ef4fd83aff17c84a)

* ENH: update some filament params

1. Modify texture bed temp to 65
2. Modify max-v-speed for ABS
3. Modify some params in Generic PA
4. Modify PLA,PVA params

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I42584a6015b8526f6bbb93024316968198bd76ce

* FIX: 3770 printable checkbox incorrect display in darkUI

Jira: 3770

Change-Id: I97f67d7a0ffc41f6ee625abeecc52ee4e73cf318

* FIX:Display garbled code in AmsMaterialsSetting pop-up

Change-Id: I50531e939afa7715ae376bac47172ccf7b248114

* ENH:Modifying the Line Color of Transparent Materials

JIRA: STUDIO-4311,5088,4983
Change-Id: I9e63413dc9cd7d523f0f7f1a2e32c4537a84467a

* FIX: crash when async delete printer file

Change-Id: I92c5e812d04da263338fb0eea2fd7583cf9ecde0
Jira: STUDIO-5222

* FIX: 3733 backup time not effective

Jira: 3733

Change-Id: I50c2ce156fcbd0a17aa8a6777bce04aa6093c830
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: enable edit and delete preset btn and fix issue

Jira: XXXX

Change-Id: I724d7236b28fcc4746698f094531948a8fbb5d93
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX:send print job,file name displays error

JIRA:3137
Change-Id: I1c113025d274a13fba1b845a58aada14058fadd4

* FIX: skip hold user preset from sync

Change-Id: I2252246e19bd80903ad82170782ea49535d30d05
Jira: STUDIO-5185

* FIX: 5115 translations

Jira: 5115

Change-Id: I21b03bdd4d28c0bb097226143177e763cf8c777f
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: add link for ironing parameter

Change-Id: I451f5549db3ac2205aa5703a2e5edc831e946af8

* FIX: scale problem in lift type decide

1. Scale the travel threshhold

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ib594d640fe63b0919bc9318af88577513f7dbf30

* ENH: add small perimeter speed and threshold

The original param is added by Prusa. Thanks orca for adding threshold.

1. Re add small perimeter speed and threhold.

github: #2221

Change-Id: I35b269b26f085d80f0edca28650bb21fc04898d7

* FIX: modify the picture of pa manual cali

Jira: STUDIO-5102
Change-Id: Id87898959ad4461b7bd2505b159271f2aa589c36

* FIX: Filament preset is the same with the first one

Jira: STUDIO-4519

Filament preset is the same wit the first one, it should align with the
last one.

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: I304d0ff0fbc1c8948d410ea552e4d42b6a4e8fd9

* FIX: scoreDailog dark mode issue

Jira: 4570

Change-Id: I8be97b306a1494f73e3bba678ecc864e7ff88ca3

* FIX: CLI: fix the slicing issue while only one object with multicolor using seq-print

JIRA: no-jira
Change-Id: Iea2d23ff8e484bf2fd58aa2f596a8e4e4292fe39

* 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)

* FIX: compiling error on linux

jira: none
Change-Id: I1a4563503b5ddf74a1979cc0cee7a15b8aced904
(cherry picked from commit de52c6ca62c9f3a6314ddf5a856c1d8534329886)

* ENH: add translation for small perimeter

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I95013649e4e0c07c0f04b89a91488814c8d228cc

* FIX: clone shortcut key issue on macos

jira: STUDIO-5166

Change-Id: I1967da1d443ed43bd750dad8e11560688d7bd533

* FIX: custom gcode window cannot paste/ navigate

jira: STUDIO-5208、STUDIO-5070

Change-Id: I4ecb9d06cf5db0ae53a4678181aae9298bac106b

* ENH: modify dailytips collapse & expand interaction

jira: STUDIO-5209、STUDIO-5210

Change-Id: Ifb0b998e5004d4b49390ba5a250eaf4743bf3471

* ENH:Add shortcut keys and lists for objects search

JIRA: STUDIO-5157 STUDIO-5158 STUDIO-5240

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Change-Id: Ic7cfaaa9b4bb8a85208bafab7fe3bafdb78f0045

* FIX:Re-calculate button with White Box displayed in dark mode

JIRA: STUDIO-5098

Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Change-Id: I07cc6c72d5dbd03b72573cd27dd5938bb0e6a29a

* NEW: display plate index when printing a task

JIRA: STUDIO-2689

display on the thumbnail of the current task

Change-Id: I5f1f46c56e9d1e9120a66d491551908dfad099d6
Signed-off-by: Stone Li <stone.li@bambulab.com>

* ENH:fixed incorrect path prefix

jira:[for file path prefix]

Change-Id: Ie9e3999f02b78272e528ceceb479e746d46a7e6c

* FIX: thumbnail is not clear in dark mode

JIRA: STUDIO-5087

Change-Id: Ie86493ed71b5554095927f061509a1f551758b61
Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>

* FIX: translation

Jira: XXXX

Change-Id: Id03f0d704aa852632a907ea628d1277400112062
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH: first nozzle change to 0.4 and nozzle change to mm

Jira: XXXX

Change-Id: I14defd36442dbd7008e46782b08415b6244224f1
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* ENH:editing_window_width's value is small on the laptop

Jira: STUDIO-5238 STUDIO-5265
apply_selected_connectors should check_and_update_connectors_state

Change-Id: I8c2c1c920cc4d197d1908815a3e62f4962335451

* FIX: fix new_bed_shape's calculation process

Jira: STUDIO-5122
Change-Id: I5f3e6a301a297123af28692c90bef6759f425b06

* ENH:update some translations

jira:[STUDIO-5262]

Change-Id: Idb1d3586888043ac325f272bc7a2b788adb3e9e5

* FIX: edit text command resets object settings

Jira: STUDIO-4655

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: Iac25c4e40f1d0d32e6d1f40e62226cc22bc96042

* ci: update build version to 01.08.00.58

Change-Id: Iacfec02aa50c617e4c9fe566319b07b30d47dce1

* FIX: remove GetUserAgent

Change-Id: I92886e1f0dcb091109231a10da8c19d51178e13b
Jira: STUDIO-5205

* FIX: nozzle_diameter_map data structure adjustment

Change-Id: Ifb724afc0fcf974e6d331e73ecac723107a102cf

* ENH:add _A and _B for perform_with_groove

Jira: STUDIO-5267
Change-Id: Iee3310dfa1cd8e6680310f0af0eff5c817490813

* ENH:is_equal for min_z and max_z

Jira: STUDIO-5267
Change-Id: I9493883d8be9d44e26ddc9afe62b7e9eb09c5052

* ci: update build version to 01.08.00.59

Change-Id: Ie8ed29ccf5d6c94594eb2ab8b717416fbeace3bd

* FIX:Image display unclear in light mode

JIRA:5161
Change-Id: I134cc64a2af0dfff60c47d0ff09d78d9c0f86b3f

* FIX:fix bugs of non manifold edge

Jira: STUDIO-5267

Change-Id: I8ac9a2cf96da0bc07ee00b309e65611b92fd174d

* ENH:nozzle type detection

jira:[STUDIO-5246]

Change-Id: Ic41a2161a0e41d23f56af93ad8ec34cc83ada0e3

* ENH: upadte P1S start gcode

1.turn on MC board fan by default on P1S

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I5b2f7868e350942fb8b7baf7d429e22a0987184a
(cherry picked from commit e866a575b6b7d9552f7412f84272f4b48dfc3961)

* ENH: improve support style's tooltip

jira: none
Change-Id: I8ee858d7052f04ce7ea6b226a500c7d1bf8a482f
(cherry picked from commit 665f31c4fcde22bd894cbb4a5fb160635947f2a4)

* ENH: set layer range error to warning

1. If layer range exceeds maximum/minimum layer range in printer
settings,pop up a window to warn

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I0304ee790e557ecf967f355c171993d1f51b5057

* ENH: CLI: remove the warning of layer height

JIRA: no jira
Change-Id: Idaceee4f52611479fc3f4238d016d891b4dc8cd1

* FIX: the word search is not translated

Jira: STUDIO-5224

The world search in the device panel is not translated.

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: Ia3d651c2159a3aad94e10cd0a6da98848f53ee2a
(cherry picked from commit 4a46a0a4750d82d49c9523f4b668a1a00c41ed83)

* FIX: Bitmap will flash when sending printing task

Jira: STUDIO-5278

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: Ib0c8710b8d5d6b98fad043c950f054aa35bea965

* ENH:display the euler angle of rotation plane

Jira: STUDIO-5268
Change-Id: I6b7b431931d60f1a9a832908400417781798c472

* ci: update build version to 01.08.00.60

Change-Id: I1c15b5c6437554c43327cd6b537f7a5860dba5a0

* ENH:cancel EnterReturnsTrue for imgui in cut

Jira: STUDIO-5269
Change-Id: I2832e1dccaf9755448debe7b2bd56426f90dfe0d

* ci: update build version to 01.08.00.61

Change-Id: Ib03e664a20990322c788686550c491d0139d8237

* FIX: some translation problems

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: If9f2af53b4f0bfa9469e84bcba68cc182df4a473

* add: Ukrainian lang support for 1.8

* fix linux

* fix some string and colors

* fix linux build error 2

* fix .gitignore

* FIX: calibration selected preset is null in some case

jira: STUDIO-5258

Change-Id: Iee63593c5f833c5a43e3b1d1c9ddb82f8c69569a

* FIX: create filament issue

Jira: 5296 5297 5295 5302 5311 5276

5296 create filament: list has same printer
5297 create filament: filament combobox has blank options
5298 edit filament: delete last preset prompt users
5302 create filament: filament combox has cili preset
5311 create filament: printer name too long to can not show all
5276 edit filament: PLA Aero filament type filter issue
add prusa vendor
Revised copy

Change-Id: I5dcc615ce0951b1a9953fa12283f6090f5069045

* FIX: some translation

Change-Id: Icb8614a0af18f96d15f3b97c17e0f6f708296847

* FIX:cancel is_equal for slicing function

Jira: STUDIO-5267
Change-Id: I66d759aa2c968f8a28a6a5d8378929754f2db689

* FIX:UI stuck due to pop-up window with wrong chamber temperature

JIRA: 5304
Change-Id: I1a49a7219b7a6f5700243704c348724e7930ce1a

* FIX: allow input '+' and hide edit preset btn

Change-Id: I97aec7c3ac4cc8b9d6c535f0126aaa1926553d86

* ENH: handle printer direct close and not retry

Change-Id: I5dd55f8085cf6383a8420ab41e614ea6ae210c78
Jira: STUDIO-5305

* ci: update build version to 01.08.00.62

Change-Id: I09716bf79354b503197c751272fd3171e0abc8fd

* add: new translation to ukr for AirFlow and Prusa

* add: Texture Plate name fix

* add new feature to localization .de, fix .it (#2876)

* FIX:add slice_facet_for_cut_mesh api for cut tool

and modify section_vertices_map 's traverse
Jira: STUDIO-5267
Change-Id: Ifc4b183a4e4c4fdb4f47742f14f70a1ed93fa056

Change-Id: I52bfaef8926ef967b78a6cb712a1731a1b528a24

* FIX: Make the front smaller for Czech in device panel

Jira: STUDIO-5151

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: I315174b55f923da069854fb4fed8cf3937b82074

* FIX: there is no object can be jumped to in notification

jira: new

Change-Id: Ib81bf49236952ede24a2de126051572d63916e01

* FIX: add height range, modifier in Preview pane will crash

jira: STUDIO-5340

1. fix crash at add height range, modifiers in Preview from objectList
2. fix an assert hit when slicing
3. fix an assert hit when enter AssembleView
4. forbidden popup menu by right-click objectList in Preview

Change-Id: I444bc76b1a4307999b387e4f60386b2d272bd308

* FIX: Black spot in the sending printing task page

Jira: STUDIO-5307

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: I3bd97c063ec5f0faf7d12047da39f60ce55cae4b

* FIX: reset_cut_by_contours should update_buffer_data

Jira: STUDIO-5376
Change-Id: I5aacb1f7b65822031d7138abd61a45b09c743531

* ENH:editing_window_width's value is small on the laptop

Jira: STUDIO-5238 STUDIO-5265
Change-Id: Ia958772bcb081817da621115f99328bb62770cd5

* ENH: bumped version to 1.8.1

Change-Id: I9d25403daa5b7b8ca415c0b364670da9e0f932b0

* FIX: create filament dialog: create btn can not show all

Jira: 5310 5331

Change-Id: I185272c90d9ff1c3d6b47abbefbf488d0d965cca

* FIX:update custom_texture when new_shape=false

Jira: STUDIO-5287
Change-Id: I3add95f9f9345c14a48cc7467513d1b3ce95f4c9

* ENH:editing_window_width's value is small on the laptop

Jira: STUDIO-5238
Change-Id: I9044129f4e0c8ca7469db05b3e547fca4754342a

* FIX:add slash_to_back_slash for saving file path

Jira: STUDIO-5287
Change-Id: I9f3c176cd0831c793958f08601c63efac98176a4

* FIX: a button color didn't response to dark mode change

jira: STUDIO-5315

Change-Id: I95489f01ccd1f77b9e95b0d0f69e5398d2e88487

* FIX: height range layers displayed in wrong position

jira: STUDIO-5341

Change-Id: I83918b4624f367efa54321f1898e1176cdb04ea9

* FIX: auto arranging issues with locked plates

1. global auto arranging may put items overlap with wipe tower if some plates are locked
jira: STUDIO-5329
2. items outside bed may overlap with plate boundary if it's rotated
jira: STUDIO-5329
3. plate-wise auto arranging uses wrong min_obj_distance if the
plate is by-layer printing but global setting is by-object printing
jira: STUDIO-5330

Change-Id: I5dba2f1317e183c9aeec1cb2bd227fbddf4316e6
(cherry picked from commit db1eac41efff5f1e8d5ac0af74c6fc7ab59fc253)

* FIX:  a mistake in upward machine

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ibdb26c3d904634f322aef0dc0c7b8867d9fb5854

* FIX:a blank pop-up appears

JIRA:XXXX
Change-Id: Ice92b55204e4897fec024a6d99412eb810bddd4a

* FIX:fixed failure in updating nozzle type

jira:[STUDIO-5248]

Change-Id: Iad37b5d5b76d37cb1723ef21d7c39b1e3fcaf8d7

* FIX:fixed issue with AI monitoring settings

jira:[STUDIO-5082]

Change-Id: I967fe3c1e9da61a55bcbfaa2a8e067dd5af18f72

* FIX:fixed issue with lan mode

jira:[STUDIO-5189]

Change-Id: I1d0a05f19dcea154cf3ef2b61ed0546d3581905e

* FIX:update text for loading or unloading filaments

jira:[STUDIO-5231]

Change-Id: Ic7729c3ec012485b3d87e3d01f11e87502c67895

* FIX: Revert "ENH: do not leave a gap for top...

Revert "ENH: do not leave a gap for top interface if the top z distance is 0"

This reverts commit 79ea32c7cbbdb7e689637980af7c36caf42284c9.

Revert reason: the supports are impossible to remove in some cases.
jira: STUDIO-5385

Change-Id: I376a6f4dfd78da6dfea68b9ac3d552cddd0b4272
(cherry picked from commit 34e38b705fde7f5d7f9a3a89c96a3627ce0c998e)

* ENH: improve normal support's quality

1. Add a base_interface_layer when using Supp.W
2. Fix a bug where base_angle and interface_angle are wong

jira: STUDIO-5386
Change-Id: I52ab32c63b3cd1e6e2ba6463b01ae26699cf13d3
(cherry picked from commit 92ddd4a10b793572a1fa009da5b9e44fcdf81de2)

* NEW:tracking stl model files

jira:[STUDIO-5372]

Change-Id: Idb1275b07441f0cd06c24588d5f7c20f81f1556c

* FIX: edit filament dialog: preset name too long to del btn nan't show

Jira: 5336 5174
and verify string normalization

Change-Id: I380c3bed2bf43d01094b68979a8b67f4187c0b93

* FIX: some translation

Jira: 5232 5300 5334

Change-Id: Ie474ca823011e81aab82a9809af3d6e42980496b

* FIX: some translation

Change-Id: Iaabe6087bed3b7d47d911cf4fb51c770804e72fb

* ENH: change default tree_support_wall_count to 0

Now normal support also uses this option, so we can't default it to 1, otherwise normal supports will be too hard to remove.

jira: none
Change-Id: Ic5700af5c17e3a7b265c8915f28b0db35c6e06e6
(cherry picked from commit 6b84a9826da108b76569e686bd9def0b23ae29fd)

* FIX:The name of the material in the error prompt is empty

JIRA:STUDIO-4907
Change-Id: I3cf44f099256a51f21a44a89c89c000f734d1f36

* ci: update build version to 01.08.01.51

Change-Id: Ib20f5a12b65472102befec0a2adf82744fc29c46

* FIX: imgui textinput cannot paste on macos

jira: STUDIO-5070、STUDIO-5365

Change-Id: Iea8f41e12744ecda0fbb95c1a8f2e014a7cdc384

* FIX: not cache printer file list on error

Change-Id: I99843aedbf14d3d1d553ccac9b0bd26403274a82
Jira: none

* FIX: thread of close BBLUserPresetExceedLimit notify

Change-Id: I9698134ba1cc91fc83eac441f900d68c4c4b556a

* ENH: Resolve non manifold edges by fixing model interfaces

Jira: STUDIO-5124
Change-Id: I7ea86be44acb80b6c4762a76208b4a031acd0b27

* FIX:nozzle type sync

jira:[STUDIO-5248]

Change-Id: I63d48628832473d8d371ed643dc8528b00382531

* FIX: array bound happen in TriangleSelector::deserialize

Jira: STUDIO-5170
Change-Id: I92b72a887845b462fad208f13607293b44d3d333

* FIX:cropping rendering without considering assembly views

Jira: STUDIO-5260
Change-Id: Ia56cf80b305ae05f25f06ec277f85b3c5430a6df

* FIX: PA for custom filament not available in BL Studio

github: 2971
Change-Id: I6ccd36a183e7367d69557300f7242f5403f4bb33

* FIX: Bitmap is way too small on Mac

Jira: STUDIO-5393

Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Change-Id: I6b550669fa8cd5fc9bfa6ed96d64d19a949f01b2

* FIX: move shutdown wait to OnExit

Change-Id: I70d9a2bb686525ae5273aa9d63e25691da4ab65c
Jira: STUDIO-2884

* FIX: calibration manage result dialog issue on macos

jira: STUDIO-4949 STUDIO-5378

Change-Id: I00abefd45a0d274a4b68bb1ab18debe8f91d169e

* FIX: adjust bed shape dialog button UI style

fix that button text is hard to see in dark mode
jira: STUDIO-5247

Change-Id: I2cf5b3cdd2eff9b821bdf5525bec4f329fc58dd1

* FIX: 5331 rescale btn

Jira: STUDIO-5331

Change-Id: If153424b8480e64b166018e3cd98c17db557d0a8
Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>

* FIX: support do not generate

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ide9709d95203185538e280517f7aa6136beeda44

* FIX: remove not match printer config ota cache

Change-Id: Ib73fc2ea31fa2186061cfcb5a170bc59b9db84ca
Jira: none

* FIX:cancel the variable of "checkbox_size"  as a fixed value

Jira: STUDIO-5150
Change-Id: I30d876d141b8b35ab4a3fee4889993d87b7c1741

* ENH:add reset_cut_by_contours in on_load function

Jira:STUDIO-5269
m_connector_size_tolerance default value is 0.1f

Change-Id: I6c67fff3cb0c1190e9141ed6f68fbfa848679f35

* ENH:cancel EnterReturnsTrue for imgui in cut

Jira: STUDIO-5269
Change-Id: Ifc4b183a4e4c4fdb4f47742f14f70a1ed93fa056
Signed-off-by: zhou.xu <zhou.xu@bambulab.com>

* FIX: dailytips should not change content frequently when slicing all

jira: STUDIO-5234

Change-Id: Icb7e9c28404d9db8ebed58d937e13f89c5403b5c

* FIX: objectList clone shortcut key issue

jira: new

Change-Id: Ia75bf58a7d53f962e1af6c2fd97497270b7eea84

* ENH:handling cases without msgs

jira:[STUDIO-5401 STUDIO-5399]

Change-Id: Iae651d5a19a45b0138a6aa621326a8b4a9649824

* ENH: optimize param description

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Id0ca9224227a716b21fc0b8430722264dc319344

* ENH: add translation

jira:[NEW]

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I3b1f04fee3cd6322793794ad8b8707859f6c7d26

* FIX: close edit preset paramsDialog, mac unresponsive

Jira: 5298

Change-Id: I021e00567354cfb1f2f5f1f2bf6ba1fc35b164c5

* ENH:disable AI monitoring on the p1p series

Change-Id: I514bb1fb1ced6c03dd619230a9adac3be63f2de2

* ci: update build version to 01.08.01.52

Change-Id: I9f5e30d3fc4b7ef9321c522d3c18fce98f03742f

* FIX: close edit preset paramsDialog, mac unresponsive

Change-Id: Ic816754a20b7f6a5cdb46475750eb301fec3ad3a

* 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

* FIX: CLI: add object config when assemble

JIRA: no jira
Change-Id: I945f820fb58f2f643170b4b0b66742f6bbbdfd29

* FIX: delete preset prompt

Jira: XXXX

Change-Id: I6511c806c56393d4f6bd72d1c506da59675d49ff

* FIX:Reorganize the assignment of variables of "m_editing_window_width"

Jira: STUDIO-5238
Change-Id: If369916f3f5c21510f5f297bfd05c1230bdda7a4

* ENH: CLI: re-compute flush_volumes_matrix when it is missed

Change-Id: Ie8f53c6bef003b1434de02ea14de5787b376484f

* FIX: some translation for delete filament

Change-Id: Ib46a8eba33f2e21016476aaab4a57a740e86b1b8

* FIX: scrolled window / del preset / edit filament issue

Jira: 5092
GitHub: 1936
edit filament: just one preset, the scroll bar obscures the preset name
edit filament: delete selected preset, click no, but preset be deleted
from UI
edit filament: serial sometimes displays incorrectly

Change-Id: Ibc91609e252179de0c05ca065099756da6631165

* ci: update build version to 01.08.01.53

Change-Id: I5563a2c0812ab9a0d7727df27e17e681066ffa08

---------

Signed-off-by: maosheng.wei <maosheng.wei@bambulab.com>
Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Signed-off-by: wenjie.guo <wenjie.guo@bambulab.com>
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Signed-off-by: Stone Li <stone.li@bambulab.com>
Signed-off-by: zhou.xu <zhou.xu@bambulab.com>
Co-authored-by: zorro.zhang <zorro.zhang@bambulab.com>
Co-authored-by: liz.li <liz.li@bambulab.com>
Co-authored-by: maosheng.wei <maosheng.wei@bambulab.com>
Co-authored-by: chunmao.guo <chunmao.guo@bambulab.com>
Co-authored-by: tao wang <tao.wang@bambulab.com>
Co-authored-by: Arthur <arthur.tang@bambulab.com>
Co-authored-by: lane.wei <lane.wei@bambulab.com>
Co-authored-by: gerrit <gerrit@bambulab.com>
Co-authored-by: xun.zhang <xun.zhang@bambulab.com>
Co-authored-by: zhou.xu <zhou.xu@bambulab.com>
Co-authored-by: hu.wang <hu.wang@bambulab.com>
Co-authored-by: Kunlong Ma <kunlong.ma@bambulab.com>
Co-authored-by: wenjie.guo <wenjie.guo@bambulab.com>
Co-authored-by: qing.zhang <qing.zhang@bambulab.com>
Co-authored-by: zhimin.zeng <zhimin.zeng@bambulab.com>
Co-authored-by: the Raz <rasmus@abc.se>
Co-authored-by: Andy <andylg@yandex.ru>
Co-authored-by: Stone Li <stone.li@bambulab.com>
Co-authored-by: enricoturri1966 <enricoturri@seznam.cz>
Co-authored-by: Dmytro Chystiakov <dlchistyakov@gmail.com>
Co-authored-by: Heiko Liebscher <hliebscher@idn.de>
2023-12-01 10:42:45 +00:00
SoftFever
2f3ec2ab7d Build release branches (#2941)
update cicd to build release branches
2023-11-30 23:58:52 +08:00
SoftFever
82fe9beb57 Update status badge 2023-11-30 13:36:52 +00:00
Noisyfox
e8a053e248 Use windows API to copy files (#2923) 2023-11-29 22:43:37 +08:00
FlashforgeOfficial
930eac0abb Flashforge: Machine G-code Fix (#2922)
Machine G-code Fix
2023-11-29 22:36:09 +08:00
Trist0ne
10a0f58a61 T500 profile fixes and optimizations (#2848)
Corrected corrupted buildplate texture, corrected too high accelerations that made printing 0.4mm impossible, optimized T500 print and filament profiles with testing
2023-11-29 22:35:30 +08:00
Andy
48c9143769 Russian translation update OrcaSlicer V1.8.0 Release. (#2873)
* Russian translation update

Russian translation update

* Russian translation update

Russian translation update
2023-11-29 22:33:52 +08:00
Paul
eab8139d3c Adding new nozzle profiles for the Creality Ender-5 Pro (2019) (#2817)
* Add 0.6mm Nozzle Configurations for CE5Pro

* Add 0.5mm Nozzle Configurations for CE5Pro

* Add Nozzle Size Printer Variants 0.2-1.0mm

* Add 0.3mm Printer Variant

* Add 0.5mm Printer Variant

* Fix: 0.6mm Printer Variant

* Add Remaining Printer Variants

* Add CE5Pro Nozzles to list of Compatible Filament

* Add Generic FDM Process for Creality 0.3 Nozzle

* Update Generic FDM Process for Creality 0.6 Nozzle

* Add FDM Process for Remaining Creality Nozzle

* Add Processes For CE5Pro 0.8mm Nozzle

* Add Processes For CE5Pro 1.0mm Nozzle

* Add Processes For CE5Pro 0.2mm Nozzle

* Fix Initial Layer Settings

* Add Processes For CE5Pro 0.25mm Nozzle

* Add Processes For CE5Pro 0.3mm Nozzle

* Remove Profiles Outside their Min/Max Layer Height

* Update CE5Pro 0.4 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.2 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.25 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.3 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.5 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.6 Nozzle Naming Scheme to PR1100

* Update CE5Pro 0.8 Nozzle Naming Scheme to PR1100

* Update CE5Pro 1.0 Nozzle Naming Scheme to PR1100

* Incl. Remaining Base Config That Diff Is Based On

* Remove whitespace
2023-11-29 22:32:58 +08:00
Noisyfox
0fa884d9ca Various infill improvements (#2716)
* Fix issue that sparse infill threshold no longer working

* Turn all internal sparse infill into solid infill if infill density is 100%

* Allow combining solid infill when sparse infill density is 100%
2023-11-29 21:28:23 +08:00
discip
d48c279762 Update OrcaSlicer_fr.po (#2874)
Fixes #2866
2023-11-29 21:25:47 +08:00
Noisyfox
284c3e71eb Some changes to gcode window toggles (#2704)
* Show gcode window automatically (#2572)

* Move the show gcode toggle to view menu, and remember if gcode window is shown last time

* fix an issue when merging main branch

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-11-29 21:19:56 +08:00
Ocraftyone
b86b8ea810 Update BuildLinux.sh (#2919)
getting the value for FOUND_GTK* variables seems to cause an error which prevents using the -u option to install the needed packages. This is fixed by moving the "exit on first error" flag to after setting these vars.
2023-11-29 10:25:00 +08:00
Ioannis Giannakas
4985cc7e67 Fix purging not working for BBL printers (#2912) 2023-11-28 20:44:29 +08:00
andrewboktor
7c3d97c287 Fuzzy skin fixes + on/off for first layer (#2903)
* Fixing fuzzy skin so it doesn't exit the desired geometry at line ends
Adding option to enable/disable fuzzy skin on first layer

* Whitespace + removing extra file
2023-11-28 15:40:26 +08:00
Ioannis Giannakas
d71eaf958e Fix crash when closing application (#2904)
* Update GUI_ObjectList.cpp

* Update GUI_ObjectList.cpp
2023-11-27 21:39:16 +08:00
Ioannis Giannakas
ce9a8d7b20 Internal Bridge Flow rate parameter introduction (#2859)
* Internal Bridge Flow rate parameter introduction

* updated incorrect capitalisation

* Updated parameter ordering
2023-11-26 21:43:47 +08:00
Jim Broadus
cd35995402 Fix cmake error (#2871)
Use the correct target name when setting properties on cereal.
2023-11-26 13:17:29 +08:00
Noisyfox
a6163a1550 Another fix to the preview shell (#2821) 2023-11-22 23:21:34 +08:00
Ikko Eltociear Ashimine
a085ac6e32 Update README.md (#2815)
oppened -> opened
2023-11-21 17:17:53 +08:00
Noisyfox
03a9014d3a Show wireframe in MMU painter gizmo (#2808)
* Remove unused shader files

* Port wireframe shader from BBS

* Enable wireframe in MMU painter

Co-Authored-By: zhou.xu <zhou.xu@bambulab.com>

---------

Co-authored-by: zhou.xu <zhou.xu@bambulab.com>
2023-11-21 17:17:22 +08:00
Noisyfox
70d86af253 Fix color blending of preview shells (#2799) 2023-11-19 22:20:42 +08:00
Lee Jong Mun
50a9345ddd kor_translation update (#2794) 2023-11-19 19:10:30 +08:00
SoftFever
5c64a0587a Fix toolbar rendering on Windows (#2784)
Currently on windows, when you resize the window relatively small, the
end of the toolbar will be clipped like so:

![d95d24afdc47eef04df4a2c755d13494](https://github.com/SoftFever/OrcaSlicer/assets/1537155/5f060966-3613-4bd7-8036-e9b27c12ffd3)

This is what it look like on Linux/macOS:

![image](https://github.com/SoftFever/OrcaSlicer/assets/1537155/167ab075-1c48-4531-a2ef-3f225874cfbd)

This PR fixes this issue so it behaves like on Linux/macOS:

![60cb540f198c5d680fceaa387302c475](https://github.com/SoftFever/OrcaSlicer/assets/1537155/7e1b404b-bdf7-4c3b-bee7-5d2f0a11f91e)
2023-11-19 19:10:01 +08:00
SoftFever
93f62a47f5 Merge pull request #2780 from Noisyfox:bugfix/amd-png
Fix PNG build plate texture not rendering on AMD GPUs
2023-11-19 19:08:04 +08:00
Ioannis Giannakas
cd475f0f94 Add option to "Reverse only internal perimeters" under the reverse on odd feature to reduce part warping (#2722) 2023-11-19 19:02:47 +08:00
SoftFever
e9f519d092 Port PrusaSlicer's Measure & Cut gizmos (#2603)
Build on top of #2520 and replaces it.

This PR includes:
- Rewrite the opengl rendering code, which now renders (almost)
everything using shaders instead of legacy opengl function calls
- Rewriting the gizmo mouse handling code that moves the mouse handling
coding into each gizmo themselves
- Rewriting the mouse picking code, now it uses ray casting to figure
out what's under the mouse cursor
- Porting of the PrusaSlicer's measure tool
- Replacing existing cuting tool with the better one PrusaSlicer has
- Updating of other gizmos using PrusaSlicer's latest code base

There was a plan to also port PrusaSlicer's emboss & svg tools, but this
PR is already very big and the changes needed for emboss will be even
bigger and might take forever to finish. So I decided to separate them
so we can get something out and start rolling out testing builds for
people to play with as soon as possible.

This was developed mainly using Windows, be prepared it could have
graphic issue under Linux & macOS.

Huge credit to Prusa for their amazing job!


![image](https://github.com/SoftFever/OrcaSlicer/assets/1537155/b7ec85d7-1013-4d8e-9914-c2b4d8cb5360)

![image](https://github.com/SoftFever/OrcaSlicer/assets/1537155/1e97d744-99c0-402d-9b23-456d95e07bba)

![image](https://github.com/SoftFever/OrcaSlicer/assets/1537155/f0a5dbea-677a-43f5-918b-c6817ff659c8)


Fixes #717
Fixes #1150
Fixes #1590
2023-11-19 16:50:32 +08:00
SoftFever
0e6197f0a7 Set openssl osx target properly 2023-11-19 16:45:36 +08:00
SoftFever
df48b05f73 Merge branch 'main' into dev/gizmo 2023-11-19 15:47:47 +08:00
SoftFever
ebbe5a4d80 fix secrets were not passed from build_check_cache to build_deps 2023-11-19 12:12:01 +08:00
SoftFever
d7453aa20f Fix CICD: failed to sign Mac build 1. upload PDB 2023-11-19 11:23:36 +08:00
niklasb
8ca0d79b05 Adds overview for custom gcodes like pause, change filament, custom #2191 (#2728)
* Adds overview for custom gcodes like pause, change filament, custom

* Fix: incorrect time display of inserted pauses
2023-11-19 00:04:30 +08:00
SoftFever
07d5a06794 fix windows CICD error 2023-11-18 23:51:55 +08:00
Noisyfox
a590d4cead Fix toolbar rendering on Windows 2023-11-18 17:24:08 +08:00
SoftFever
cc55957070 Zip Windows portable build and PDB before upload artifacts 2023-11-18 16:23:40 +08:00
Ocraftyone
cbb7c3381c Rework Github Build Actions (#2566)
update workflows from dev branch

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-11-18 15:30:06 +08:00
Noisyfox
5045642de0 Merge branch 'main' into dev/gizmo 2023-11-18 14:51:32 +08:00
Noisyfox
67fe5ee7f5 Bring back anti-aliasing to toolbar icons (#2739) 2023-11-18 14:51:22 +08:00
Jason Pell
b3db0a560a the layer height should be 0.24 not 0.2 (#2779) 2023-11-18 13:43:57 +08:00
enricoturri1966
8c0cf34a6c Fixed generation of texture mipmap using glGenerateMipMap (added also for png)
Fix mipmap of compressed textures on AMD Radeon graphics cards by forcing the use of squared power of two textures

(cherry picked from commit prusa3d/PrusaSlicer@971f2a08e2)
(cherry picked from commit prusa3d/PrusaSlicer@eee4453993)
2023-11-18 10:21:41 +08:00
Ocraftyone
c0386d786c Fix macOS deps build issues (#2541)
update deps/CMakeLists.txt and MPFR.cmake
2023-11-17 21:59:18 +08:00
SoftFever
f5ec607b6a update WIKI 2023-11-17 20:00:12 +08:00
SoftFever
cb038d0469 fix Prusa MK3S and Mini profile issues
Fixed #2768
2023-11-17 20:00:05 +08:00
mariuske
698440d5a4 Removed print_flow_ratio from Flashforge process (#2769)
For some reason this value stayed in this profile file after a recent merge and it's now been removed again.
2023-11-17 19:40:03 +08:00
Noisyfox
b2642039c7 Fix creality k1/max default materials (#2609) (#2767) 2023-11-17 14:28:48 +08:00
Lukas Matena
67c1f40eae Fixed a crash when deleting the last object with autocenter enabled (prusa3d/PrusaSlicer#11186).
(cherry picked from commit prusa3d/PrusaSlicer@926af1ab8d)
2023-11-17 09:32:45 +08:00
Noisyfox
f6e4c48fe7 Merge branch 'main' into dev/gizmo 2023-11-17 09:18:31 +08:00
SVNMLR
4dcfd97181 [Multi Material] Fix first layers of prime tower when using "no sparse layers" (#2764)
* MM - Add check for first layer

* Change: If no sparse layer is on -> Respect the toolchange in the first-layer checkup, to use a brim and slow down printspeed if using a primetower

* Fix comment
2023-11-17 08:01:52 +08:00
SoftFever
9505f93717 fix thumbnails regression 2023-11-17 07:54:59 +08:00
SoftFever
bc05653a72 orca bot: processing issues in ascending order 2023-11-16 23:25:28 +08:00
SoftFever
9af22da7d1 bump version to 1.8 2023-11-16 23:17:59 +08:00
SoftFever
09c77c45da update profile version to 1.08.00.00 2023-11-16 23:02:10 +08:00
mariuske
6c957d40d0 Restructured Flashforge process profiles (#2718)
* Restructured Flashforge process profiles

* Fixed typo in machine profiles

* Changed skirt loops to 2

Based on best practise (other profiles), I have changed the number of skirt loops from 1 to 2
2023-11-16 22:07:02 +08:00
Andy
75c019a1a9 Russian translation update (#2760)
Russian translation update
2023-11-16 22:02:13 +08:00
SoftFever
7566df566d fix snapmaker J1 not displaying bug
fixed #2750
2023-11-16 19:42:40 +08:00
Noisyfox
2fc5a7d01e Fix layer height modifier layout (#2708) (#2756) 2023-11-16 19:15:37 +08:00
SoftFever
565732a027 remove print_flow_ratio from profiles and hide it from process setting. It should be only displayed for parts 2023-11-16 19:07:40 +08:00
FlyingbearOfficial
e8ac1575e7 Flyingbear official patch 9 (#2746)
* Add a new brand named Flyingbear

Add a new brand named Flyingbear
Model name: Flyingbear Reborn3

* Update fdm_machine_common.json

fix
z_hop 0,2(2)

* make bed model smaller and set default internal_solid_infill_pattern to monotonic

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-11-16 18:46:32 +08:00
Fabio Forcina
24ae038e0e Italian translation (#2706)
* Update OrcaSlicer_it.po

* Italian translation

Italian translation

* fix errors

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-11-16 18:18:50 +08:00
Exerqtor
f61c504696 Fix for QOI thumbnails not working (#2755)
Fix for QOI not working

Should remidy the issues in https://github.com/SoftFever/OrcaSlicer/issues/2741
2023-11-16 18:13:08 +08:00
SoftFever
bbdd580bb1 fix wipe tower bug: filament end inserted twice 2023-11-16 01:00:59 +08:00
SoftFever
930e1b3bdf limit max wipe tower speed to 90 mm/s 2023-11-16 00:59:45 +08:00
SoftFever
cf4aceec79 remove filament_max_volumetric_speed cap 2023-11-15 19:03:16 +08:00
Noisyfox
016d3a74eb Improve Windows crash log (#2736)
* Show RVA of each call stack so we can locate the symbol with pdb file

* CI upload pdb file
2023-11-15 19:00:55 +08:00
Olcay ÖREN
3f3bd08a70 Update OrcaSlicer_tr.po (#2742)
* Update OrcaSlicer_tr.po

Missing fields in Turkish are filled in and word errors are improved.

* Update OrcaSlicer_tr.po

Editing the missing and incorrect parts in the Turkish language file.

* Update OrcaSlicer_tr.po

Editing the missing and incorrect parts in the Turkish language file.

* Update OrcaSlicer_tr.po

The bug on line 6082 has been fixed.

* Update OrcaSlicer_tr.po

character fixes
2023-11-15 18:56:21 +08:00
Hotsolidinfill
dcddf9974a Update translation Korean (#2731)
update translation korean
2023-11-14 17:16:00 +08:00
Noisyfox
b1a164b67f Fix scaling of min_width_top_surface when using abs value (#2725) 2023-11-14 17:15:29 +08:00
SoftFever
4754b38afa diable activate_air_filtration by default for ABS/ASA 2023-11-13 22:31:06 +08:00
SoftFever
5213fbfa86 Support initial_tool variable for filename format 2023-11-13 22:25:32 +08:00
Hukete
c03d58318a Update fdm_process_qidi_x3_common.json 11/13 (#2717)
* 10-25

Add TPU-95A HF

* 1030

Adding Introduction of Chamber Temperature Control Macros(M191) to Notes

* 1102

Add ABS-GF10 profile,
Remove a extra "s" from the "0.36mm Standard @Qidi XPlus3 0.6 nozzle.json" file

* 1106

Add the PA value to some genetic filament profiles

* Update fdm_filament_pla.json

Change the fan rate of begin layers

* Update fdm_process_qidi_x3_common.json

Reduction of top surface particles

* Update fdm_process_qidi_x3_common.json

Add  M140 S90 to M191 macro, Preventing slow chamber warming in cold winter environments
2023-11-13 22:22:21 +08:00
SoftFever
60424baac0 Fix draft_shield error for MK3S profile
Fixed #2660
2023-11-12 23:31:18 +08:00
SoftFever
9731ea3277 update chamber temperature WIKI 2023-11-12 22:10:10 +08:00
Noisyfox
d6c2192fe2 Merge branch 'main' into dev/gizmo 2023-11-12 11:03:05 +08:00
SoftFever
b1c325a419 bump version to 1.8.0-rc2 2023-11-12 10:28:32 +08:00
SoftFever
50f776fe6b fixed an issue when purge_in_prime_tower is disabled for non bbl printers 2023-11-12 09:52:07 +08:00
SoftFever
15358b211d Fix a regression issue that retraction is not correct when wipe is off
Fix #2697
2023-11-12 09:52:07 +08:00
mariuske
da4e7817a8 Enable skirt for Flashforge process profiles (#2695)
Activate skirt for Flashforge profiles
2023-11-12 09:51:32 +08:00
Carlos Caruncho
153cba58e5 Update Spanish translation (#2696)
* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

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

This reverts commit 694a900845, reversing
changes made to 4f53ce4f88.

* Revert "Update OrcaSlicer_es.po"

This reverts commit 4f53ce4f88.

* Revert "Revert "Update OrcaSlicer_es.po""

This reverts commit 53bd15617c.

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Revert "Update OrcaSlicer_es.po"

This reverts commit b21aad079f.

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

* Update OrcaSlicer_en.po

* Update OrcaSlicer_es.po

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2023-11-12 09:49:05 +08:00
SoftFever
4f48afd6fe update WIKI for exhuast/auxiliar fan and active chamber temperature features 2023-11-11 23:30:54 +08:00
Noisyfox
5669b4fef0 Merge branch 'main' into dev/gizmo 2023-11-11 16:28:17 +08:00
Noisyfox
6510fd4054 Hide raycast debug window 2023-11-11 16:27:44 +08:00
YuSanka
799b0965f5 Fix for prusa3d/PrusaSlicer#11487 - Cut Connectors Broken when assigning part to other side
+ Added check objects after cut
+ CutUtils: Ensuring that volumes start with solid parts after solid parts merging for proper slicing

(cherry picked from commit prusa3d/PrusaSlicer@a9410edc2c)
2023-11-11 12:51:29 +08:00
Noisyfox
66d4b4d59a Merge branch 'main' into dev/gizmo 2023-11-10 23:32:14 +08:00
Noisyfox
ee8ea0df04 Rewrite bed raycaster registering that fixes crash when creating new project 2023-11-10 23:02:11 +08:00
Noisyfox
7984b4dc48 Fix complie error after merge 2023-11-10 10:54:02 +08:00
Noisyfox
cf5c19fa24 Merge remote-tracking branch 'origin/main' into dev/gizmo 2023-11-10 09:57:11 +08:00
Noisyfox
5f001c89fd Merge remote-tracking branch 'origin/main' into dev/gizmo 2023-11-08 09:14:28 +08:00
Noisyfox
483475ff48 Fix canvas background in dark mode 2023-11-08 09:14:16 +08:00
Noisyfox
e57f68a266 Fix painter gizmos crash on macOS 2023-11-06 20:42:02 +08:00
Noisyfox
28e2995a01 Cut: Fix crashing in programming cut. Also fixes the cut z offset. 2023-11-05 16:03:10 +08:00
Noisyfox
018b2744db Text: Fix text moving grabber 2023-11-04 11:41:11 +08:00
Noisyfox
090a9247cb Cut: Fix model rendering 2023-11-04 11:41:11 +08:00
Noisyfox
3ec927a841 Cut: Use Orca color schema and dialog layout 2023-11-04 11:41:11 +08:00
enricoturri1966
18406c31c0 Cut: Initial porting of Cut Gizmo 2023-11-04 11:41:11 +08:00
Noisyfox
ce2836a7f9 Measure: Fix copy to clipboard encoding 2023-11-04 11:41:11 +08:00
Noisyfox
1bfd9f63b6 Measure: Update measure dialog layout 2023-11-04 11:41:11 +08:00
Noisyfox
4843cda535 Measure: Use Orca color schema 2023-11-04 11:41:11 +08:00
Noisyfox
2c00408d08 Measure: Update measure gizmo tooltip 2023-11-04 11:41:11 +08:00
Noisyfox
d25780ae4a Fix-position tooltip should also be clamped inside render area 2023-11-04 11:41:10 +08:00
Noisyfox
c31e1f5229 Measure: Fix measure window position 2023-11-04 11:41:10 +08:00
enricoturri1966
f72d42f920 Measure: Initial porting of Measure Gizmo 2023-11-04 11:41:10 +08:00
enricoturri1966
1561d65712 Sync most of the gizmos with latest PrusaSlicer 2023-11-04 11:41:10 +08:00
enricoturri1966
049dfd3e08 Added method const GLVolume* Selection::get_first_volume() const to simplify client code
(cherry picked from commit prusa3d/PrusaSlicer@0e3490620e)
2023-11-04 11:41:10 +08:00
Filip Sykala
9dbb2dfe0d Various gizmos refactoring 2023-11-04 11:41:10 +08:00
Filip Sykala
30af274d44 Separate GizmoManager on_move into gizmo itself
(cherry picked from commit prusa3d/PrusaSlicer@c751d6327d)
2023-11-04 11:41:10 +08:00
Noisyfox
005b83912d Do not compile sla related gizmos 2023-11-04 11:41:10 +08:00
Filip Sykala
8e2ab660c5 Add virtual function to process mouse_event
(cherry picked from commit prusa3d/PrusaSlicer@2ab44546bd)
2023-11-04 11:41:10 +08:00
Filip Sykala
158bb47af3 Suggestion to detect volume modification instead of check some gizmos during dragging
(cherry picked from commit prusa3d/PrusaSlicer@96610ecea9)
2023-11-04 11:41:10 +08:00
Filip Sykala
da4a70785d remove unnecessary getting of raw pointer from unique pointer
(cherry picked from commit prusa3d/PrusaSlicer@209eda75a0)
2023-11-04 11:41:10 +08:00
enricoturri1966
094acdb645 Tech ENABLE_RAYCAST_PICKING - Gizmo flatten: fixed update of raycasters transformations
(cherry picked from commit prusa3d/PrusaSlicer@2a2d442b28)
2023-11-04 11:41:10 +08:00
enricoturri1966
e4ec0cfc2e Tech ENABLE_RAYCAST_PICKING - Method GLCanvas3D::_mouse_to_3d() modified to use the new scene raycaster instead of reading data from the depth buffer
(cherry picked from commit prusa3d/PrusaSlicer@a7af73795d)
2023-11-04 11:41:09 +08:00
enricoturri1966
d2d77456ac Tech ENABLE_RAYCAST_PICKING - Rendering for rectangle selection made only inside the rectangle, on systems supporting framebuffers
Various other refactorings & fixes

(cherry picked from commit prusa3d/PrusaSlicer@39b1222b22)
2023-11-04 11:41:09 +08:00
enricoturri1966
f0199159e7 Removed tech ENABLE_RENDER_PICKING_PASS
(cherry picked from commit prusa3d/PrusaSlicer@f45711e7e5)
2023-11-04 11:41:09 +08:00
enricoturri1966
1e7a91e2d5 Tech ENABLE_RAYCAST_PICKING - Raytraced picking of Gizmo Flatten
(cherry picked from commit prusa3d/PrusaSlicer@f5e68a6ac6)
2023-11-04 11:41:09 +08:00
enricoturri1966
ab090bf20d Tech ENABLE_RAYCAST_PICKING - Refactoring to allow for easier update of raycasters transform
(cherry picked from commit prusa3d/PrusaSlicer@9ac5ab857b)
2023-11-04 11:41:09 +08:00
enricoturri1966
29be4cc9a3 Tech ENABLE_RAYCAST_PICKING - Raytraced picking of Move, Rotate and Scale Gizmo 2023-11-04 11:41:09 +08:00
Noisyfox
6a40d3af16 Fix volume picking in cut gizmo 2023-11-04 11:41:09 +08:00
enricoturri1966
1cd421c4b1 Tech ENABLE_RAYCAST_PICKING - Raytraced picking of gizmos - Move Gizmo
(cherry picked from commit prusa3d/PrusaSlicer@df47ba7122)
2023-11-04 11:41:09 +08:00
Noisyfox
cd1705e6eb Implement plate picking 2023-11-04 11:41:06 +08:00
enricoturri1966
3577a259d5 Tech ENABLE_RAYCAST_PICKING - Raytraced picking of volumes 2023-11-04 11:41:06 +08:00
enricoturri1966
02f83f29c7 Tech ENABLE_GIZMO_GRABBER_REFACTOR - Refactoring of GLGizmoBase::Grabber to have a single static instance of the cube and cone models to be shared by all grabbers
(cherry picked from commit prusa3d/PrusaSlicer@f504236734)
2023-11-04 11:41:06 +08:00
Noisyfox
b2f94e16aa Fix variable init 2023-11-04 11:41:06 +08:00
Noisyfox
65b6856262 Fix macos build 2023-11-04 11:41:06 +08:00
Noisyfox
467223b8b0 Fix move gizmo grabber rendering 2023-11-04 11:41:06 +08:00
enricoturri1966
461fa63cbf Tech ENABLE_LEGACY_OPENGL_REMOVAL - Fixed rendering of layer editing background on older OpenGL compatibility profile
(cherry picked from commit prusa3d/PrusaSlicer@642f64cb41)
2023-11-04 11:41:06 +08:00
enricoturri1966
19ad0ca4d9 Tech ENABLE_LEGACY_OPENGL_REMOVAL - Fixed calculation of normal matrices sent to shaders
(cherry picked from commit prusa3d/PrusaSlicer@c468dcbed7)
2023-11-04 11:41:06 +08:00
enricoturri1966
4fb5b1f904 Cherry-picked a few changes from Tech ENABLE_GL_CORE_PROFILE 2023-11-04 11:41:06 +08:00
Noisyfox
5ce3ec716e Fix draw cut line 2023-11-04 11:41:06 +08:00
enricoturri1966
fe78e40cb4 Various fixes 2023-11-04 11:41:06 +08:00
Noisyfox
a50c5a2b7a Fix preview shell transparency 2023-11-04 11:41:05 +08:00
Noisyfox
0d27e084f3 Fix thumbnail shader 2023-11-04 11:41:05 +08:00
enricoturri1966
eb2b6af0d7 Tech ENABLE_LEGACY_OPENGL_REMOVAL - Fix into GLModel::send_to_gpu()
(cherry picked from commit prusa3d/PrusaSlicer@4b4ed423ef)
2023-11-04 11:41:05 +08:00
enricoturri1966
59b7c52862 Tech ENABLE_LEGACY_OPENGL_REMOVAL - Calculation of camera projection matrix
(cherry picked from commit prusa3d/PrusaSlicer@a0630420d9)
2023-11-04 11:41:05 +08:00
enricoturri1966
1e4f16bd39 Tech ENABLE_GL_SHADERS_ATTRIBUTES - Added shaders for glsl version 140
(cherry picked from commit prusa3d/PrusaSlicer@76d1d4949b)
2023-11-04 11:41:05 +08:00
enricoturri1966
bb044754af ENABLE_GL_IMGUI_SHADERS - Fixes in ImGuiWrapper::render_draw_data()
(cherry picked from commit prusa3d/PrusaSlicer@4964d6ecd5)
2023-11-04 11:41:05 +08:00
enricoturri1966
7081ebddfa Follow-up of 6b2fea5f8bb67a38bdcb7e3fb43c06a12a6d7798 - Fixed warnings
(cherry picked from commit prusa3d/PrusaSlicer@9701d3b01d)
2023-11-04 11:41:05 +08:00
enricoturri1966
cabb8fcf6e Tech ENABLE_GL_SHADERS_ATTRIBUTES - Fixed rendering of default bed in thumbnails
(cherry picked from commit prusa3d/PrusaSlicer@568bd39c5a)
2023-11-04 11:41:05 +08:00
enricoturri1966
96c8c11030 Removed obsolete code from GCodeViewer
(cherry picked from commit prusa3d/PrusaSlicer@033bee6431)
2023-11-04 11:41:05 +08:00
enricoturri1966
63272a9df8 Tech ENABLE_GL_SHADERS_ATTRIBUTES - Use shader's vertex attributes and matrices in GLMmSegmentationGizmo3DScene
(cherry picked from commit prusa3d/PrusaSlicer@4eee0d05f3)
2023-11-04 11:41:05 +08:00
enricoturri1966
15bad7fc19 Tech ENABLE_GL_IMGUI_SHADERS - Render imgui using shaders
(cherry picked from commit prusa3d/PrusaSlicer@d0d89a4d5b)
2023-11-04 11:41:05 +08:00
enricoturri1966
8dc82e7a8d Few small fixes 2023-11-04 11:41:05 +08:00
Noisyfox
ac001f8816 Fix pick rendering depth issue 2023-11-04 11:41:05 +08:00
Noisyfox
e211e7d144 Fix mm rendering 2023-11-04 11:41:05 +08:00
Noisyfox
511bfa71b6 Fix plate texture rendering depth issue 2023-11-04 11:41:05 +08:00
Noisyfox
8f49be40b7 Fix preview shell rendering 2023-11-04 11:41:04 +08:00
Noisyfox
03daf61862 Fix outline rendering 2023-11-04 11:41:04 +08:00
enricoturri1966
71fd4084c2 Tech ENABLE_LEGACY_OPENGL_REMOVAL - porting remaining changes
(cherry picked from commit prusa3d/PrusaSlicer@2f572d3cf0 )
2023-11-04 11:41:04 +08:00
enricoturri1966
9f4713eee8 Tech ENABLE_GLBEGIN_GLEND_SHADERS_ATTRIBUTES - Use vertex attributes and matrices in shaders. 1st installment.
Shader: flat - Default bed

(cherry picked from commit prusa3d/PrusaSlicer@a5ff37013b)
2023-11-04 11:41:04 +08:00
enricoturri1966
5fc056edfb Some refactoring into GLGizmoSlaSupports::render_points()
(cherry picked from commit prusa3d/PrusaSlicer@5621f00ee6)
2023-11-04 11:41:04 +08:00
enricoturri1966
d8551d7a7d Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Use 2D vertices to render GLGizmoPainterBase circle
(cherry picked from commit prusa3d/PrusaSlicer@5193a15852)
2023-11-04 11:41:04 +08:00
enricoturri1966
61ed6143e6 Removed unneeded pairs glPushMatrix()/glPopMatrix()
(cherry picked from commit prusa3d/PrusaSlicer@5f9aeb1e38)
2023-11-04 11:41:04 +08:00
Noisyfox
e6443b5b27 Removed empty IMSlider_Utils.hpp 2023-11-04 11:41:04 +08:00
Noisyfox
c5b209270c Fix a few issues in cut gizmo 2023-11-04 11:41:04 +08:00
enricoturri1966
1fedcb61b7 Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Fix in GLGizmoRotate::render_angle_arc():
Tech ENABLE_GLINDEXEDVERTEXARRAY_REMOVAL - Fix in GLModel::render()

(cherry picked from commit prusa3d/PrusaSlicer@2379588196)
2023-11-04 11:41:04 +08:00
enricoturri1966
d09dc36ff1 Tech ENABLE_GLINDEXEDVERTEXARRAY_REMOVAL - Replace GLIndexedVertexArray with GLModel: GLVolume geometry + removed class GLIndexedVertexArray from codebase
(cherry picked from commit prusa3d/PrusaSlicer@1eac357739)
2023-11-04 11:41:04 +08:00
enricoturri1966
d85bbcba50 Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Fixed bug in rendering gizmo rotate
(cherry picked from commit prusa3d/PrusaSlicer@5fcb618f96)
2023-11-04 11:41:04 +08:00
enricoturri1966
d1b0743735 Removed obsolete member variable GLCanvas3D::m_color_by
(cherry picked from commit prusa3d/PrusaSlicer@5089d1460d)
2023-11-04 11:41:04 +08:00
enricoturri1966
dd51ce3b90 Follow-up of fdf8b11d4cfa793d1e45d82560d4bd97d0466d40 - Fixed GLGizmoSlaSupports::render_points()
(cherry picked from commit prusa3d/PrusaSlicer@0c74081f7d)
2023-11-04 11:41:03 +08:00
enricoturri1966
dde64acf72 Tech ENABLE_GLBEGIN_GLEND_REMOVAL - SLA caps rendered using GLModel
(cherry picked from commit prusa3d/PrusaSlicer@c9ff260d13)
2023-11-04 11:41:03 +08:00
enricoturri1966
10243b3a8c Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Removed OpenGL legacy calls from GLCanvas3D::init()
(cherry picked from commit prusa3d/PrusaSlicer@aa4714a239)
2023-11-04 11:41:03 +08:00
enricoturri1966
12dbbf2d1c Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Another refactoring to simplify client code of GLModel::Geometry
(cherry picked from commit prusa3d/PrusaSlicer@fa1ff1c357)
2023-11-04 11:41:03 +08:00
enricoturri1966
8107057e17 Tech ENABLE_GLINDEXEDVERTEXARRAY_REMOVAL - Replace GLIndexedVertexArray with GLModel: MeshClipper::m_vertex_array
(cherry picked from commit prusa3d/PrusaSlicer@be6922795d)
2023-11-04 11:41:03 +08:00
enricoturri1966
fc1c8c2565 Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Removed Slic3r::GUI::GLPaintContour from GLGizmoPainterBase.hpp/.cpp and replaced with GLModel
(cherry picked from commit prusa3d/PrusaSlicer@df3d670357)
2023-11-04 11:41:03 +08:00
enricoturri1966
baa575b5aa Tech ENABLE_GLINDEXEDVERTEXARRAY_REMOVAL - Replace GLIndexedVertexArray with GLModel:
TriangleSelectorGUI::m_iva_enforcers

TriangleSelectorGUI::m_iva_blockers

TriangleSelectorGUI::m_iva_seed_fills

TriangleSelectorGUI::m_varrays

GLGizmoPainterBase::s_sphere

(cherry picked from commit prusa3d/PrusaSlicer@8916a00821)
2023-11-04 11:41:03 +08:00
enricoturri1966
b7989e3b2f Gizmos refactoring - Removed GLModels defined into GLGizmoBase, and mostly unused, to avoid wasting GPU memory. Use a shared GLModel for Gizmos inheriting from GLGizmoPainterBase. Initialization of GLModels moved from constructor to render methods
(cherry picked from commit prusa3d/PrusaSlicer@e3d5cd445c)
2023-11-04 11:41:03 +08:00
enricoturri1966
874f39aac1 Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Adapt GLModel::Geometry index format in dependence of data size, where possible
(cherry picked from commit prusa3d/PrusaSlicer@4d2d77e99c)
2023-11-04 11:41:03 +08:00
Noisyfox
6d4e0840bc Fix move gizmo grabber connection render 2023-11-04 11:41:03 +08:00
enricoturri1966
269fbaa60c Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Refactoring to simplify client code of GLModel::Geometry
(cherry picked from commit prusa3d/PrusaSlicer@be6b6590be)
2023-11-04 11:41:03 +08:00
enricoturri1966
6eed22015a Tech ENABLE_GLINDEXEDVERTEXARRAY_REMOVAL - Replace GLIndexedVertexArray with GLModel - GLGizmoFlatten::PlaneData::vbo
(cherry picked from commit prusa3d/PrusaSlicer@ffa3a1d8fc)
2023-11-04 11:41:03 +08:00
enricoturri1966
f9de4ec399 Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Removed Slic3r::GUI::GeometryBuffer from 3DBed.hpp and replaced with GLModel
(cherry picked from commit prusa3d/PrusaSlicer@6b041429f6)
2023-11-04 11:41:03 +08:00
Lukáš Hejl
499b9d1be8 Fix various memory leaks
(cherry picked from commit prusa3d/PrusaSlicer@deb17c5920)
2023-11-04 11:41:03 +08:00
enricoturri1966
7907426d00 Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Textures rendering
(cherry picked from commit prusa3d/PrusaSlicer@1a47211bfc)
2023-11-04 11:41:03 +08:00
enricoturri1966
04ad26f611 Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Background rendering
(cherry picked from commit prusa3d/PrusaSlicer@eda55701a2)
2023-11-04 11:41:01 +08:00
enricoturri1966
35899b96ba Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Layers editing profile's background texture rendering
Tech ENABLE_GLBEGIN_GLEND_REMOVAL - A few fixes in layers editing profile rendering

(cherry picked from commit prusa3d/PrusaSlicer@a939d8e4c0)
(cherry picked from commit prusa3d/PrusaSlicer@8c807dbcc4)
2023-11-04 11:41:01 +08:00
enricoturri1966
354f8e20fb Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Refactoring of GLModel to:
1) allow for custom vertex data layout

2) allow for custom index data format

3) allow for any OpenGL primitive type

(cherry picked from commit prusa3d/PrusaSlicer@afcac6e2ea)
2023-11-04 11:41:00 +08:00
enricoturri1966
7e04448b7a Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Various Gizmos updates and fixes
prusa3d/PrusaSlicer@35dd03e8cb
prusa3d/PrusaSlicer@bcaa0d38bd
prusa3d/PrusaSlicer@2673994471
prusa3d/PrusaSlicer@0e3a3aa522
prusa3d/PrusaSlicer@08a2711034
prusa3d/PrusaSlicer@f6f95808cc
prusa3d/PrusaSlicer@81edc7d752
prusa3d/PrusaSlicer@0b6e2b4aec
prusa3d/PrusaSlicer@71f08841f9
2023-11-04 11:41:00 +08:00
Filip Sykala
f6a3421e2a remove GLModel from base class
- only 2 gizmo use cone

(cherry picked from commit prusa3d/PrusaSlicer@3c7390e34e)
(cherry picked from commit 4647fc49ef5b925432e087252f32a6601d0410da)
2023-11-04 11:41:00 +08:00
enricoturri1966
356405adf6 Tech ENABLE_GLBEGIN_GLEND_REMOVAL - Selection layers hints
(cherry picked from commit prusa3d/PrusaSlicer@bebb5505a3)
2023-11-04 11:41:00 +08:00
enricoturri1966
7f0c095446 Tech ENABLE_GLBEGIN_GLEND_REMOVAL - 1st installment - Selection bounding box
(cherry picked from commit prusa3d/PrusaSlicer@22f38235ea)
2023-11-04 11:41:00 +08:00
enricoturri1966
28d0147d09 Introduction of classes ColorRGB and ColorRGBA to unify color data definition and manipulation
(cherry picked from commit prusa3d/PrusaSlicer@d0bff2d996 )
2023-11-04 11:41:00 +08:00
2580 changed files with 281234 additions and 56052 deletions

View File

@@ -95,7 +95,7 @@ PenaltyBreakString: 600
PenaltyBreakTemplateDeclaration: 10
PenaltyExcessCharacter: 50
PenaltyReturnTypeOnItsOwnLine: 300
PointerAlignment: Right
PointerAlignment: Left
ReflowComments: true
SortIncludes: false
SortUsingDeclarations: false

View File

@@ -0,0 +1,51 @@
{
"name": "OrcaSlicer",
"image": "mcr.microsoft.com/devcontainers/cpp:ubuntu-20.04",
"runArgs": ["--env-file", "/tmp/devcontainer.env"],
"features": {
"ghcr.io/devcontainers/features/desktop-lite:1": {
"password": "orca"
}
},
"customizations": {
"vscode": {
"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}"
]
},
// Add the IDs of extensions you want installed when the container is created.
"extensions": [
"ms-vscode.cmake-tools",
"ms-vscode.cpptools-extension-pack"
]
}
},
"forwardPorts": [6080],
"portsAttributes": {
"6080": {
"label": "VNC web client (noVNC)",
"onAutoForward": "silent"
}
},
"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"
}

14
.devcontainer/postCreate.sh Executable file
View File

@@ -0,0 +1,14 @@
#!/bin/bash
# Update and upgrade all system packages
apt update
apt upgrade -y
echo "-----------------------------------------"
echo "Running BuildLinux.sh with update flag..."
echo "-----------------------------------------"
./BuildLinux.sh -u
echo "------------------------------"
echo "Installing missing packages..."
echo "------------------------------"
apt install -y libgl1-mesa-dev m4 autoconf libtool

1
.gitattributes vendored Normal file
View File

@@ -0,0 +1 @@
*.exe filter=lfs diff=lfs merge=lfs -text

View File

@@ -1,36 +1,58 @@
name: Bug Report
name: 🐞 Bug Report
description: File a bug report
labels: bug
labels: ["bug"]
body:
- type: markdown
attributes:
value: |
**Thank you for using Orca Slicer and wanting to report a bug.**
Please note that this is not the place to make feature requests or ask for help.
For this, please use the [Feature request](https://github.com/SoftFever/OrcaSlicer/issues/new?assignees=&labels=&projects=&template=feature_request.yml) issue type or you can discuss your idea on our [Discord server](https://discord.gg/P4VE9UY9gJ) with others.
Before filing, please check if the issue already exists (either open or closed) by using the search bar on the issues page. If it does, comment there. Even if it's closed, we can reopen it based on your comment.
- type: checkboxes
attributes:
label: Is there an existing issue for this problem?
description: Please search to see if an issue already exists for the bug you encountered.
options:
- label: I have searched the existing issues
required: true
- type: input
id: version
attributes:
label: OrcaSlicer Version
description: Which version of Orca Slicer are you running? You can see the full version in `Help` -> `About Orca Slicer`.
placeholder: e.g. 1.6.6
placeholder: e.g. 1.9.0
validations:
required: true
- type: dropdown
id: os_type
attributes:
label: "Operating System (OS)"
description: "What OSes are you are experiencing issues on?"
multiple: true
options:
- Linux
- macOS
- Windows
validations:
required: true
- type: input
id: os_info
id: os_version
attributes:
label: OS version
description: Which OS version are you using?
placeholder: |
OS: Windows 7/8/10/11 ... , Ubuntu 22.04/Fedora 36 ... , macOS 10.15/11.1/12.3 ...
label: "OS Version"
description: "What OS version does this relate to?"
placeholder: "i.e. OS: Windows 7/8/10/11 ..., Ubuntu 22.04/Fedora 36 ..., macOS 10.15/11.1/12.3 ..."
validations:
required: true
- type: textarea
id: system_info
attributes:
label: Additional system information
description: For the performance issue, please also show the CPUMemory information; For the 3D Rendering issue, please also show the Display Card information.
description: For the performance issue, please also show the CPU, Memory information; For the 3D Rendering issue, please also show the Display Card information.
placeholder: |
CPU: 11th gen intel r core tm i7-1185g7/amd ryzen 7 6800h/...
CPU: 11th gen Intel r core tm i7-1185g7/AMD Ryzen 7 6800h/...
Memory: 32/16 GB...
Display Card: NVIDIA Quadro P400/...
validations:
@@ -50,8 +72,8 @@ body:
description: Please described the detailed steps to reproduce this issue
placeholder: |
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
2. Click on '...'
3. Scroll down to '...'
4. See error
validations:
required: true
@@ -100,3 +122,12 @@ body:
options:
- label: Log file
- label: Project file
- type: textarea
attributes:
label: Anything else?
description: |
Screenshots? References? Anything that will give us more context about the issue you are encountering!
Tip: You can attach images or log files by clicking this area to highlight it and then dragging files in.
validations:
required: false

8
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@@ -0,0 +1,8 @@
blank_issues_enabled: false
contact_links:
- name: Community Support (Discord channel)
url: https://discord.gg/P4VE9UY9gJ
about: Please ask and answer support "how do I?"questions here.
- name: Discussion Forum
url: https://github.com/SoftFever/OrcaSlicer/discussions
about: Please raise ideas and feature suggestions here.

View File

@@ -1,23 +0,0 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''
---
**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
**Which printers will be beneficial to this feature**
E.g. Voron/Klipper based printer/etc...
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
Add any other context or screenshots about the feature request here.

View File

@@ -0,0 +1,66 @@
name: 🚀 Feature Request / Enhancement
description: Suggest an improvement to make Orca Slicer even better!
labels: ["enhancement"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this feature request!
If your idea is still at the formulation stage, or you're not sure it would
be useful to many users, you can raise it as a discussion topic under [Ideas](https://github.com/SoftFever/OrcaSlicer/discussions/categories/ideas)
or you can raise it on the [Discord server](https://discord.gg/P4VE9UY9gJ).
- type: checkboxes
attributes:
label: Is there an existing issue for this feature request?
description: |
Please search to see if an issue already exists for a feature, or perhaps one similar.
You can then comment and react so that we know know much interest there is in the feature request.
options:
- label: I have searched the existing issues
required: true
- type: textarea
attributes:
label: Is your feature request related to a problem?
description: A clear and concise description of what the problem is.
placeholder: I'm always frustrated when [...]
validations:
required: true
- type: dropdown
attributes:
label: Which printers will be beneficial to this feature?
description: Select affected printer firmware type.
multiple: true
options:
- Klipper
- Marlin
- Others
- All
validations:
required: true
- type: textarea
attributes:
label: Describe the solution you'd like
description: A clear and concise description of what you want to happen.
placeholder: It should do [...]
validations:
required: true
- type: textarea
attributes:
label: Describe alternatives you've considered
description: A clear and concise description of any alternative solutions or features you've considered.
placeholder: |
1. [...]
2. [...]
3. [...]
validations:
required: false
- type: textarea
attributes:
label: Additional context
description: |
Add any other context, diagrams, illustations or screenshots about the feature request here.
Tip: You can attach images or log files by clicking this area to highlight it and then dragging files in.
validations:
required: false

58
.github/workflows/build_all.yml vendored Normal file
View File

@@ -0,0 +1,58 @@
name: Build all
on:
push:
branches:
- main
- release/*
paths:
- 'deps/**'
- 'src/**'
- '**/CMakeLists.txt'
- 'version.inc'
- 'localization/**'
- 'resources/**'
- ".github/workflows/build_*.yml"
pull_request:
branches:
- main
- release/*
paths:
- 'deps/**'
- 'src/**'
- '**/CMakeLists.txt'
- 'version.inc'
- ".github/workflows/build_*.yml"
workflow_dispatch: # allows for manual dispatch
inputs:
build-deps-only:
description: 'Only build dependencies (bypasses caching)'
type: boolean
default: false
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
build_all:
name: Build All
strategy:
fail-fast: false
matrix:
include:
- os: ubuntu-20.04
- os: windows-latest
- os: macos-12
arch: x86_64
- os: macos-12
arch: arm64
uses: ./.github/workflows/build_check_cache.yml
with:
os: ${{ matrix.os }}
arch: ${{ matrix.arch }}
build-deps-only: ${{ inputs.build-deps-only || false }}
secrets: inherit

60
.github/workflows/build_check_cache.yml vendored Normal file
View File

@@ -0,0 +1,60 @@
name: Check Cache
on:
workflow_call:
inputs:
os:
required: true
type: string
arch:
required: false
type: string
build-deps-only:
required: false
type: boolean
jobs:
check_cache: # determines if there is a cache and outputs variables used in caching process
name: Check Cache
runs-on: ${{ inputs.os }}
outputs:
cache-key: ${{ steps.set_outputs.outputs.cache-key }}
cache-path: ${{ steps.set_outputs.outputs.cache-path }}
valid-cache: ${{ steps.cache_deps.outputs.cache-hit }}
steps:
- name: Checkout
uses: actions/checkout@v4
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' }}
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 }}
- name: load cache
id: cache_deps
uses: actions/cache@v4
with:
path: ${{ steps.set_outputs.outputs.cache-path }}
key: ${{ steps.set_outputs.outputs.cache-key }}
lookup-only: true
build_deps: # call next step
name: Build Deps
needs: [check_cache]
uses: ./.github/workflows/build_deps.yml
with:
cache-key: ${{ needs.check_cache.outputs.cache-key }}
cache-path: ${{ needs.check_cache.outputs.cache-path }}
valid-cache: ${{ needs.check_cache.outputs.valid-cache == 'true' }}
os: ${{ inputs.os }}
arch: ${{ inputs.arch }}
build-deps-only: ${{ inputs.build-deps-only }}
secrets: inherit

View File

@@ -1,60 +1,64 @@
# name: Build Deps
name: Build deps
on:
pull_request:
branches:
- main
paths:
- 'deps/**'
- .github/workflows/build_deps.yml
push:
branches:
- main
paths:
- 'deps/**'
- .github/workflows/build_deps.yml
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
workflow_call:
inputs:
cache-key:
required: true
type: string
cache-path:
required: true
type: string
valid-cache:
required: true
type: boolean
os:
required: true
type: string
arch:
required: false
type: string
build-deps-only:
required: false
type: boolean
jobs:
build_deps:
strategy:
fail-fast: false
matrix:
include:
- os: ubuntu-20.04
- os: windows-latest
- os: macos-12
arch: x86_64
- os: macos-12
arch: arm64
runs-on: ${{ matrix.os }}
name: Build Deps
if: inputs.build-deps-only || inputs.valid-cache != true
runs-on: ${{ inputs.os }}
env:
date:
steps:
# Setup the environment
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
lfs: 'true'
- name: load cached deps
uses: actions/cache@v4
with:
path: ${{ inputs.cache-path }}
key: ${{ inputs.cache-key }}
- name: setup dev on Windows
if: matrix.os == 'Windows'
uses: microsoft/setup-msbuild@v1.1
if: inputs.os == 'windows-latest'
uses: microsoft/setup-msbuild@v2
- name: Get the date on Ubuntu and macOS
if: matrix.os != 'windows-latest'
id: get-date-unix
if: inputs.os != 'windows-latest'
run: echo "date=$(date +'%Y%m%d')" >> $GITHUB_ENV
shell: bash
- name: Get the date on Windows
if: matrix.os == 'windows-latest'
id: get-date-windows
if: inputs.os == 'windows-latest'
run: echo "date=$(Get-Date -Format 'yyyyMMdd')" | Out-File -Append -FilePath $env:GITHUB_ENV -Encoding utf8
shell: pwsh
# Build Dependencies
- name: Build on Windows
if: matrix.os == 'windows-latest'
if: inputs.os == 'windows-latest'
working-directory: ${{ github.workspace }}
run: |
choco install strawberryperl
@@ -64,26 +68,21 @@ jobs:
.\build_release_vs2022.bat pack
cd ${{ github.workspace }}/deps/build
- name: Build on Mac x86_64
if: matrix.os == 'macos-12' && matrix.arch == 'x86_64'
- name: Build on Mac ${{ inputs.arch }}
if: inputs.os == 'macos-12'
working-directory: ${{ github.workspace }}
run: |
brew install cmake git gettext automake
mkdir -p ${{ github.workspace }}/deps/build_x86_64
mkdir -p ${{ github.workspace }}/deps/build_x86_64/OrcaSlicer_dep_x86_64
./build_release_macos.sh -dp -a x86_64
brew install cmake git gettext automake texinfo ninja
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
brew install zstd
- name: Build on Mac arm64
if: matrix.os == 'macos-12' && matrix.arch == 'arm64'
working-directory: ${{ github.workspace }}
run: |
brew install cmake git gettext automake
mkdir -p ${{ github.workspace }}/deps/build_arm64
mkdir -p ${{ github.workspace }}/deps/build_arm64/OrcaSlicer_dep_arm64
./build_release_macos.sh -dp -a arm64
- name: Build on Ubuntu
if: matrix.os == 'ubuntu-20.04'
if: inputs.os == 'ubuntu-20.04'
working-directory: ${{ github.workspace }}
run: |
sudo apt-get update
@@ -91,7 +90,7 @@ jobs:
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
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
@@ -99,32 +98,39 @@ jobs:
./BuildLinux.sh -dr
cd deps/build
tar -czvf OrcaSlicer_dep_ubuntu_$(date +"%Y%m%d").tar.gz destdir
- name: Upload Mac arm64 artifacts
if: matrix.os == 'macos-12' && matrix.arch == 'arm64'
uses: actions/upload-artifact@v3
with:
name: OrcaSlicer_dep_mac_arm64_${{ env.date }}
path: ${{ github.workspace }}/deps/build_arm64/OrcaSlicer_dep*.tar.gz
- name: Upload Mac x86_64 artifacts
if: matrix.os == 'macos-12' && matrix.arch == 'x86_64'
uses: actions/upload-artifact@v3
# Upload Artifacts
- name: Upload Mac ${{ inputs.arch }} artifacts
if: inputs.os == 'macos-12'
uses: actions/upload-artifact@v4
with:
name: OrcaSlicer_dep_mac_x86_64_${{ env.date }}
path: ${{ github.workspace }}/deps/build_x86_64/OrcaSlicer_dep*.tar.gz
name: OrcaSlicer_dep_mac_${{ inputs.arch }}_${{ env.date }}
path: ${{ github.workspace }}/deps/build_${{ inputs.arch }}/OrcaSlicer_dep*.tar.gz
- name: Upload Windows artifacts
if: matrix.os == 'windows-latest'
uses: actions/upload-artifact@v3
if: inputs.os == 'windows-latest'
uses: actions/upload-artifact@v4
with:
name: OrcaSlicer_dep_win64_${{ env.date }}
path: ${{ github.workspace }}/deps/build/OrcaSlicer_dep*.zip
- name: Upload Ubuntu artifacts
if: matrix.os == 'ubuntu-20.04'
uses: actions/upload-artifact@v3
if: inputs.os == 'ubuntu-20.04'
uses: actions/upload-artifact@v4
with:
name: OrcaSlicer_dep_ubuntu_${{ env.date }}
path: ${{ github.workspace }}/deps/build/OrcaSlicer_dep_ubuntu_*.tar.gz
build_orca:
name: Build OrcaSlicer
needs: [build_deps]
if: ${{ !cancelled() && !inputs.build-deps-only && (inputs.valid-cache == true && needs.build_deps.result == 'skipped') || (inputs.valid-cache != true && success()) }}
uses: ./.github/workflows/build_orca.yml
with:
cache-key: ${{ inputs.cache-key }}
cache-path: ${{ inputs.cache-path }}
os: ${{ inputs.os }}
arch: ${{ inputs.arch }}
secrets: inherit

View File

@@ -1,114 +1,97 @@
name: Build OrcaSlicer
on:
push:
branches:
- main
paths:
- 'src/**'
- '**/CMakeLists.txt'
- 'version.inc'
- 'localization/**'
- 'resources/**'
- ".github/workflows/build_orca.yml"
pull_request:
branches:
- main
paths:
- 'src/**'
- '**/CMakeLists.txt'
- 'version.inc'
- ".github/workflows/build_orca.yml"
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
on:
workflow_call:
inputs:
cache-key:
required: true
type: string
cache-path:
required: true
type: string
os:
required: true
type: string
arch:
required: false
type: string
jobs:
build_orca:
strategy:
fail-fast: false
matrix:
include:
- os: ubuntu-20.04
- os: windows-latest
- os: macos-12
arch: x86_64
- os: macos-12
arch: arm64
runs-on: ${{ matrix.os }}
name: Build OrcaSlicer
runs-on: ${{ inputs.os }}
env:
date:
ver:
ver_pure:
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
lfs: 'true'
- name: load cached deps
uses: actions/cache@v4
with:
path: ${{ inputs.cache-path }}
key: ${{ inputs.cache-key }}
fail-on-cache-miss: true
- name: Get the version and date on Ubuntu and macOS
if: matrix.os != 'windows-latest'
id: get-version-unix
if: inputs.os != 'windows-latest'
run: |
ver=$(grep 'set(SoftFever_VERSION' version.inc | cut -d '"' -f2)
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
- name: Get the version and date on Windows
if: matrix.os == 'windows-latest'
id: get-version-windows
if: inputs.os == 'windows-latest'
run: |
echo "date=$(Get-Date -Format 'yyyyMMdd')" | Out-File -Append -FilePath $env:GITHUB_ENV -Encoding utf8
# Extract the version from the file
$versionContent = Get-Content version.inc -Raw
if ($versionContent -match 'set\(SoftFever_VERSION "(.*?)"\)') {
$ver = $matches[1]
$date = Get-Date -Format 'yyyyMMdd'
$ref = "${{ github.ref }}"
$eventName = "${{ github.event_name }}"
$prNumber = "${{ github.event.number }}"
if ($eventName -eq 'pull_request') {
$ver = "PR" + $prNumber
} else {
$versionContent = Get-Content version.inc -Raw
if ($versionContent -match 'set\(SoftFever_VERSION "(.*?)"\)') {
$ver = $matches[1]
}
$ver = "V$ver"
}
echo "ver=$ver" | Out-File -Append -FilePath $env:GITHUB_ENV -Encoding utf8
echo "date: ${{ env.date }} version: $ver"
echo "date=$date" | Out-File -Append -FilePath $env:GITHUB_ENV -Encoding utf8
echo "date: ${{ env.date }} version: ${{ env.ver }}"
shell: pwsh
# Mac
- name: Install tools mac
if: matrix.os == 'macos-12'
if: inputs.os == 'macos-12'
run: |
brew install cmake git gettext zstd tree
mkdir -p ${{ github.workspace }}/deps/build_${{matrix.arch}}
mkdir -p ${{ github.workspace }}/deps/build_${{matrix.arch}}/OrcaSlicer_dep_${{matrix.arch}}
# - name: build deps
# if: matrix.os == 'macos-12'
# id: cache_deps
# uses: actions/cache@v3
# env:
# cache-name: ${{ runner.os }}-cache-orcaslicer_deps_${{matrix.arch}}
# with:
# path: ${{ github.workspace }}/deps/build/OrcaSlicer_dep
# key: build-${{ env.cache-name }}
# - if: ${{ steps.cache_deps.outputs.cache-hit != 'true' }}
# name: build deps
# working-directory: ${{ github.workspace }}
# continue-on-error: true
# run: ./build_release_macos.sh -d -a ${{matrix.arch}}
- name: Download and extract deps
if: matrix.os == 'macos-12'
working-directory: ${{ github.workspace }}
run: |
curl -LJO https://github.com/SoftFever/OrcaSlicer_deps/releases/download/OrcaSlicer_deps_Oct2023/OrcaSlicer_dep_mac_${{matrix.arch}}_20231008.tar.gz
tar -zvxf ./OrcaSlicer_dep_mac_${{matrix.arch}}_20231008.tar.gz -C ${{ github.workspace }}/deps/build_${{matrix.arch}}
chown -R $(id -u):$(id -g) ${{ github.workspace }}/deps/build_${{matrix.arch}}
tree ${{ github.workspace }}/deps/build_${{matrix.arch}}
rm ./OrcaSlicer_dep_mac_${{matrix.arch}}_20231008.tar.gz
brew install cmake git gettext tree ninja
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}}
- name: Build slicer mac
if: matrix.os == 'macos-12'
if: inputs.os == 'macos-12'
working-directory: ${{ github.workspace }}
run: |
./build_release_macos.sh -s -n -a ${{matrix.arch}}
./build_release_macos.sh -s -n -x -a ${{inputs.arch}} -t 10.15
# Thanks to RaySajuuk, it's working now
- name: Sign app and notary
if: github.ref == 'refs/heads/main' && matrix.os == 'macos-12'
if: (github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/heads/release/')) && inputs.os == 'macos-12'
working-directory: ${{ github.workspace }}
env:
BUILD_CERTIFICATE_BASE64: ${{ secrets.BUILD_CERTIFICATE_BASE64 }}
@@ -125,109 +108,119 @@ 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_${{matrix.arch}}/OrcaSlicer/OrcaSlicer.app
ln -s /Applications ${{ github.workspace }}/build_${{matrix.arch}}/OrcaSlicer/Applications
hdiutil create -volname "OrcaSlicer" -srcfolder ${{ github.workspace }}/build_${{matrix.arch}}/OrcaSlicer -ov -format UDZO OrcaSlicer_Mac_${{matrix.arch}}_V${{ env.ver }}.dmg
codesign --deep --force --verbose --options runtime --timestamp --entitlements ${{ github.workspace }}/scripts/disable_validation.entitlements --sign "$CERTIFICATE_ID" OrcaSlicer_Mac_${{matrix.arch}}_V${{ env.ver }}.dmg
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
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_${{matrix.arch}}_V${{ env.ver }}.dmg" --keychain-profile "notarytool-profile" --wait
xcrun stapler staple OrcaSlicer_Mac_${{matrix.arch}}_V${{ env.ver }}.dmg
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
- name: Create DMG without notary
if: github.ref != 'refs/heads/main' && matrix.os == 'macos-12'
if: github.ref != 'refs/heads/main' && inputs.os == 'macos-12'
working-directory: ${{ github.workspace }}
run: |
ln -s /Applications ${{ github.workspace }}/build_${{matrix.arch}}/OrcaSlicer/Applications
hdiutil create -volname "OrcaSlicer" -srcfolder ${{ github.workspace }}/build_${{matrix.arch}}/OrcaSlicer -ov -format UDZO OrcaSlicer_Mac_${{matrix.arch}}_V${{ env.ver }}.dmg
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
- name: Upload artifacts mac
if: matrix.os == 'macos-12'
uses: actions/upload-artifact@v3
if: inputs.os == 'macos-12'
uses: actions/upload-artifact@v4
with:
name: OrcaSlicer_Mac_${{matrix.arch}}_V${{ env.ver }}
path: ${{ github.workspace }}/OrcaSlicer_Mac_${{matrix.arch}}_V${{ env.ver }}.dmg
name: OrcaSlicer_Mac_${{inputs.arch}}_${{ env.ver }}
path: ${{ github.workspace }}/OrcaSlicer_Mac_${{inputs.arch}}_${{ env.ver }}.dmg
- name: Deploy Mac release
if: github.ref == 'refs/heads/main' && inputs.os == 'macos-12'
uses: WebFreak001/deploy-nightly@v3.1.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_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
# Windows
- name: setup MSVC
if: matrix.os == 'windows-latest'
uses: microsoft/setup-msbuild@v1.1
if: inputs.os == 'windows-latest'
uses: microsoft/setup-msbuild@v2
- name: Install nsis
if: matrix.os == 'windows-latest'
if: inputs.os == 'windows-latest'
run: |
dir "C:/Program Files (x86)/Windows Kits/10/Include"
choco install nsis
- name: download deps
if: matrix.os == 'windows-latest'
shell: powershell
run: '(new-object System.Net.WebClient).DownloadFile("https://github.com/SoftFever/OrcaSlicer_deps/releases/download/OrcaSlicer_deps_Oct2023/OrcaSlicer_dep_win64_20230810_vs2022.zip", "$env:temp\OrcaSlicer_dep_win64_20230810_vs2022.zip")'
- name: maker dir
if: matrix.os == 'windows-latest'
working-directory: ${{ github.workspace }}
run: |
mkdir ${{ github.workspace }}/deps/build
mkdir ${{ github.workspace }}/deps/build/OrcaSlicer_dep
- name: extract deps
if: matrix.os == 'windows-latest'
working-directory: ${{ github.workspace }}/deps/build
shell: cmd
run: '"C:/Program Files/7-Zip/7z.exe" x %temp%\OrcaSlicer_dep_win64_20230810_vs2022.zip'
# - name: build deps
# if: matrix.os == 'windows-latest'
# id: cache_deps
# uses: actions/cache@v3
# env:
# cache-name: ${{ runner.os }}-cache-orcaslicer_deps
# with:
# path: ${{ github.workspace }}/deps/build/OrcaSlicer_dep
# key: ${{ runner.os }}-build-${{ env.cache-name }}
# - if: ${{ steps.cache_deps.outputs.cache-hit != 'true' }}
# name: build deps
# working-directory: ${{ github.workspace }}
# continue-on-error: true
# run: .\build_release_vs2022.bat deps
# - run: Get-ChildItem ${{ github.workspace }}/deps/build/ -Exclude OrcaSlicer_dep | Remove-Item -Recurse -Force
- name: Build slicer Win
if: matrix.os == 'windows-latest'
if: inputs.os == 'windows-latest'
working-directory: ${{ github.workspace }}
run: .\build_release_vs2022.bat slicer
- name: Create installer Win
if: matrix.os == 'windows-latest'
if: inputs.os == 'windows-latest'
working-directory: ${{ github.workspace }}/build
run: |
cpack -G NSIS
# - name: pack app
# if: matrix.os == 'windows-latest'
# working-directory: ${{ github.workspace }}/build
# shell: cmd
# run: '"C:/Program Files/7-Zip/7z.exe" a -tzip OrcaSlicer_dev_build.zip ${{ github.workspace }}/build/OrcaSlicer'
- name: Pack app
if: inputs.os == 'windows-latest'
working-directory: ${{ github.workspace }}/build
shell: cmd
run: '"C:/Program Files/7-Zip/7z.exe" a -tzip OrcaSlicer_Windows_${{ env.ver }}_portable.zip ${{ github.workspace }}/build/OrcaSlicer'
- name: Pack PDB
if: inputs.os == 'windows-latest'
working-directory: ${{ github.workspace }}/build/src/Release
shell: cmd
run: '"C:/Program Files/7-Zip/7z.exe" a -m0=lzma2 -mx9 Debug_PDB_${{ env.ver }}_for_developers_only.7z *.pdb'
- name: Upload artifacts Win zip
if: matrix.os == 'windows-latest'
uses: actions/upload-artifact@v3
if: inputs.os == 'windows-latest'
uses: actions/upload-artifact@v4
with:
name: OrcaSlicer_Windows_V${{ env.ver }}_portable
path: ${{ github.workspace }}/build/OrcaSlicer
name: OrcaSlicer_Windows_${{ env.ver }}_portable
path: ${{ github.workspace }}/build/OrcaSlicer_Windows_${{ env.ver }}_portable.zip
- name: Upload artifacts Win installer
if: matrix.os == 'windows-latest'
uses: actions/upload-artifact@v3
if: inputs.os == 'windows-latest'
uses: actions/upload-artifact@v4
with:
name: OrcaSlicer_Windows_V${{ env.ver }}
name: OrcaSlicer_Windows_${{ env.ver }}
path: ${{ github.workspace }}/build/OrcaSlicer*.exe
# Ubuntu
- name: Upload artifacts Win PDB
if: inputs.os == 'windows-latest'
uses: actions/upload-artifact@v4
with:
name: PDB
path: ${{ github.workspace }}/build/src/Release/Debug_PDB_${{ env.ver }}_for_developers_only.7z
- name: Deploy Windows release portable
if: github.ref == 'refs/heads/main' && inputs.os == 'windows-latest'
uses: WebFreak001/deploy-nightly@v3.1.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_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
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_content_type: application/x-msdownload
max_releases: 1
# Ubuntu
- name: Install dependencies
if: matrix.os == 'ubuntu-20.04'
if: inputs.os == 'ubuntu-20.04'
run: |
sudo apt-get update
sudo apt-get install -y autoconf build-essential cmake curl eglexternalplatform-dev \
@@ -237,52 +230,57 @@ jobs:
libwebkit2gtk-4.0-dev libxkbcommon-dev locales locales-all m4 pkgconf sudo wayland-protocols wget
- name: Install dependencies from BuildLinux.sh
if: matrix.os == 'ubuntu-20.04'
if: inputs.os == 'ubuntu-20.04'
shell: bash
run: sudo ./BuildLinux.sh -ur
- name: Fix permissions
if: matrix.os == 'ubuntu-20.04'
if: inputs.os == 'ubuntu-20.04'
shell: bash
run: sudo chown $USER -R ./
# - name: Build deps
# if: matrix.os == 'ubuntu-20.04'
# id: cache_deps
# uses: actions/cache@v3
# env:
# cache-name: ${{ runner.os }}-cache-orcaslicer_deps_x64
# with:
# path: ${{ github.workspace }}/deps/build/destdir
# key: build-${{ env.cache-name }}
# - if: ${{ steps.cache_deps.outputs.cache-hit != 'true' }}
# name: Build deps
# working-directory: ${{ github.workspace }}
# continue-on-error: true
# run: ./BuildLinux.sh -dr
- name: Download and extract deps
if: matrix.os == 'ubuntu-20.04'
working-directory: ${{ github.workspace }}
run: |
mkdir -p ${{ github.workspace }}/deps/build
mkdir -p ${{ github.workspace }}/deps/build/destdir
curl -LJO https://github.com/SoftFever/OrcaSlicer_deps/releases/download/OrcaSlicer_deps_Oct2023/OrcaSlicer_dep_ubuntu_20231008.zip
unzip ./OrcaSlicer_dep_ubuntu_20231008.zip -d ${{ github.workspace }}/deps/build/destdir
chown -R $(id -u):$(id -g) ${{ github.workspace }}/deps/build/destdir
ls -l ${{ github.workspace }}/deps/build/destdir
rm OrcaSlicer_dep_ubuntu_20231008.zip
- name: Build slicer
if: matrix.os == 'ubuntu-20.04'
if: inputs.os == 'ubuntu-20.04'
shell: bash
run: |
./BuildLinux.sh -isr
chmod +x ./build/OrcaSlicer_ubu64.AppImage
mv -n ./build/OrcaSlicer_Linux_V${{ env.ver_pure }}.AppImage ./build/OrcaSlicer_Linux_${{ env.ver }}.AppImage
chmod +x ./build/OrcaSlicer_Linux_${{ 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
shell: bash
run: |
./OrcaSlicer_profile_validator -p ${{ github.workspace }}/resources/profiles -g 1
cd ${{ github.workspace }}/resources/profiles
zip -r orca_custom_preset_tests.zip user/
- name: Upload artifacts Ubuntu
if: matrix.os == 'ubuntu-20.04'
uses: actions/upload-artifact@v3
if: inputs.os == 'ubuntu-20.04'
uses: actions/upload-artifact@v4
with:
name: OrcaSlicer_Linux_V${{ env.ver }}
path: './build/OrcaSlicer_ubu64.AppImage'
name: OrcaSlicer_Linux_${{ env.ver }}
path: './build/OrcaSlicer_Linux_${{ env.ver }}.AppImage'
- name: Deploy Ubuntu release
if: github.ref == 'refs/heads/main' && inputs.os == 'ubuntu-20.04'
uses: WebFreak001/deploy-nightly@v3.1.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_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 orca_custom_preset_tests
if: github.ref == 'refs/heads/main' && inputs.os == 'ubuntu-20.04'
uses: WebFreak001/deploy-nightly@v3.1.0
with:
upload_url: https://uploads.github.com/repos/SoftFever/OrcaSlicer/releases/137995723/assets{?name,label}
release_id: 137995723
asset_path: ${{ github.workspace }}/resources/profiles/orca_custom_preset_tests.zip
asset_name: orca_custom_preset_tests.zip
asset_content_type: application/octet-stream
max_releases: 1

View File

@@ -14,7 +14,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Install gettext
run: |

39
.github/workflows/check_profiles.yml vendored Normal file
View File

@@ -0,0 +1,39 @@
name: Check profiles
on:
pull_request:
branches:
- main
paths:
- 'resources/profiles/**'
- ".github/workflows/check_profiles.yml"
jobs:
check_translation:
name: Check profiles
runs-on: ubuntu-22.04
steps:
- name: Checkout repository
uses: actions/checkout@v4
# download
- name: Download
working-directory: ${{ github.workspace }}
run: |
curl -LJO https://github.com/SoftFever/Orca_tools/releases/download/1/OrcaSlicer_profile_validator
chmod +x ./OrcaSlicer_profile_validator
# validate profiles
- name: validate system profiles
run: |
./OrcaSlicer_profile_validator -p ${{ github.workspace }}/resources/profiles -l 2
- name: validate custom presets
working-directory: ${{ github.workspace }}
run: |
curl -LJO https://github.com/SoftFever/OrcaSlicer/releases/download/nightly-builds/orca_custom_preset_tests.zip
unzip ./orca_custom_preset_tests.zip -d ${{ github.workspace }}/resources/profiles
./OrcaSlicer_profile_validator -p ${{ github.workspace }}/resources/profiles -l 2

View File

@@ -4,22 +4,62 @@ on:
- cron: "0 0 * * *"
jobs:
close-issues:
stale:
runs-on: ubuntu-latest
permissions:
issues: write
pull-requests: write
contents: write # only for delete-branch option
steps:
- uses: actions/stale@v5
- uses: actions/stale@v9
with:
days-before-issue-stale: 90
days-before-issue-close: 14
operations-per-run: 1000
stale-issue-label: "stale"
stale-issue-message: "GitHub bot: this issue is stale because it has been open for 90 days with no activity."
close-issue-message: "GitHub bot: This issue was closed because it has been inactive for 14 days since being marked as stale."
days-before-pr-stale: -1
days-before-pr-close: -1
remove-issue-stale-when-updated: true
remove-pr-stale-when-updated: true
# PAT for GitHub API authentication
repo-token: ${{ secrets.GITHUB_TOKEN }}
# Max number of operations per run
operations-per-run: 1000
# Order to get issues/PRs
ascending: true
# ISSUES
# Do not auto-close an issue if it is assigned to a milestone
exempt-all-issue-milestones: true
# Exempt all issues with assignees from stale
exempt-all-issue-assignees: true
# Idle number of days before marking issues stale
days-before-issue-stale: 90
# Idle number of days before marking issues close
days-before-issue-close: 7
# Label to apply on staled issues
stale-issue-label: "stale"
# Issue close reason
close-issue-reason: not_planned
# Remove stale label from issues on updates
remove-issue-stale-when-updated: true
# Issue stale message
stale-issue-message: "Orca bot: this issue is stale because it has been open for 90 days with no activity."
# Issue closure message
close-issue-message: "Orca bot: This issue was closed because it has been inactive for 7 days since being marked as stale."
# PRs
# Do not auto-close a PR if it is assigned to a milestone
exempt-all-pr-milestones: true
# Exempt all PRs with assignees from stale
exempt-all-pr-assignees: true
# Skip the stale action for draft PRs
exempt-draft-pr: true
# Idle number of days before marking PRs stale
days-before-pr-stale: -1
# Idle number of days before marking PRs close
days-before-pr-close: -1
# Label to apply on staled PRs
stale-pr-label: "stale"
# Label to apply on closed PRs
close-pr-label: not_planned
# Remove stale label from PRs on updates
remove-pr-stale-when-updated: true
# PR stale message
stale-pr-message: "Orca bot: this PR is stale because it has been open for XX days with no activity."
# PR closure message
close-pr-message: "Orca bot: This PR was closed because it has been inactive for X days since being marked as stale."
# Delete branch after closing a stale PR
delete-branch: true

View File

@@ -20,7 +20,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4
# 1. Clone the current wiki master branch to a folder named `tmp_wiki`
- name: Pull content from wiki

10
.gitignore vendored
View File

@@ -1,7 +1,7 @@
Build
Build.bat
/build*/
deps/build
deps/build*
MYMETA.json
MYMETA.yml
_build
@@ -26,4 +26,10 @@ SVG
src/OrcaSlicer-doc/
.idea/
/.cache/
*.mo
*.mo
**/process_full/
**/machine_full/
**/filament_full/
/deps/DL_CACHE/
/deps/DL_CACHE
resources/profiles/user/default

View File

@@ -1,5 +1,4 @@
#!/bin/bash
set -e # exit on first error
export ROOT=`pwd`
export NCORES=`nproc --all`
@@ -7,6 +6,8 @@ export CMAKE_BUILD_PARALLEL_LEVEL=${NCORES}
FOUND_GTK2=$(dpkg -l libgtk* | grep gtk2)
FOUND_GTK3=$(dpkg -l libgtk* | grep gtk-3)
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
@@ -77,7 +78,7 @@ then
fi
# Addtional Dev packages for OrcaSlicer
export REQUIRED_DEV_PACKAGES="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"
export REQUIRED_DEV_PACKAGES="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 texinfo"
# libwebkit2gtk-4.1-dev ??
export DEV_PACKAGES_COUNT=$(echo ${REQUIRED_DEV_PACKAGES} | wc -w)
if [ $(dpkg --get-selections | grep -E "$(echo ${REQUIRED_DEV_PACKAGES} | tr ' ' '|')" | wc -l) -lt ${DEV_PACKAGES_COUNT} ]; then
@@ -162,9 +163,10 @@ then
fi
if [[ -n "$BUILD_DEBUG" ]]
then
# have to build deps with debug & release or the cmake won't find evrything it needs
# have to build deps with debug & release or the cmake won't find everything it needs
mkdir deps/build/release
pushd deps/build/release
echo -e "cmake ../.. -DDESTDIR=\"../destdir\" $BUILD_ARGS"
cmake ../.. -DDESTDIR="../destdir" $BUILD_ARGS
make -j$NCORES
popd
@@ -173,6 +175,7 @@ then
# cmake deps
pushd deps/build
echo "cmake .. $BUILD_ARGS"
cmake .. $BUILD_ARGS
echo "done"
@@ -224,12 +227,16 @@ then
# cmake
pushd build
cmake .. -DCMAKE_PREFIX_PATH="$PWD/../deps/build/destdir/usr/local" -DSLIC3R_STATIC=1 ${BUILD_ARGS}
echo -e "cmake .. -DCMAKE_PREFIX_PATH=\"$PWD/../deps/build/destdir/usr/local\" -DSLIC3R_STATIC=1 -DORCA_TOOLS=ON ${BUILD_ARGS}"
cmake .. -DCMAKE_PREFIX_PATH="$PWD/../deps/build/destdir/usr/local" -DSLIC3R_STATIC=1 ${BUILD_ARGS} -DORCA_TOOLS=ON
echo "done"
# make Slic3r
echo "[8/9] Building Slic3r..."
make -j$NCORES OrcaSlicer # Slic3r
# make OrcaSlicer_profile_validator
make -j$NCORES OrcaSlicer_profile_validator
popd
./run_gettext.sh
echo "done"

View File

@@ -1,4 +1,13 @@
cmake_minimum_required(VERSION 3.13)
if (APPLE)
# if CMAKE_OSX_DEPLOYMENT_TARGET is not set, set it to 11.3
if (NOT CMAKE_OSX_DEPLOYMENT_TARGET)
set(CMAKE_OSX_DEPLOYMENT_TARGET "11.3" CACHE STRING "Minimum OS X deployment version" FORCE)
endif ()
message(STATUS "CMAKE_OSX_DEPLOYMENT_TARGET: ${CMAKE_OSX_DEPLOYMENT_TARGET}")
endif ()
project(OrcaSlicer)
include("version.inc")
@@ -52,14 +61,15 @@ if (APPLE)
if (CMAKE_MACOSX_BUNDLE)
set(CMAKE_INSTALL_RPATH @executable_path/../Frameworks)
endif()
set(CMAKE_OSX_DEPLOYMENT_TARGET "11.3" CACHE STRING "Minimum OS X deployment version" FORCE)
SET(CMAKE_XCODE_ATTRIBUTE_PRODUCT_BUNDLE_IDENTIFIER "com.softfever3d.orca-slicer")
message(STATUS "Orca: IS_CROSS_COMPILE: ${IS_CROSS_COMPILE}")
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(ORCA_TOOLS "Build Orca tools" OFF)
if (IS_CROSS_COMPILE)
message("Detected cross compilation setup. Tests and encoding checks will be forcedly disabled!")
@@ -252,6 +262,10 @@ 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)
add_compile_options(-Wno-error=enum-constexpr-conversion)
endif()
#GCC generates loads of -Wunknown-pragmas when compiling igl. The fix is not easy due to a bug in gcc, see
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66943 or
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53431
@@ -306,7 +320,7 @@ if(WIN32)
add_definitions(-D_USE_MATH_DEFINES -D_WIN32 -D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_WARNINGS)
if(MSVC)
# BOOST_ALL_NO_LIB: Avoid the automatic linking of Boost libraries on Windows. Rather rely on explicit linking.
add_definitions(-DBOOST_ALL_NO_LIB -DBOOST_USE_WINAPI_VERSION=0x601 -DBOOST_SYSTEM_USE_UTF8 )
add_definitions(-DBOOST_ALL_NO_LIB -DBOOST_USE_WINAPI_VERSION=0x602 -DBOOST_SYSTEM_USE_UTF8 )
# Force the source code encoding to UTF-8. See OrcaSlicer GH pull request #5583
add_compile_options("$<$<C_COMPILER_ID:MSVC>:/utf-8>")
add_compile_options("$<$<CXX_COMPILER_ID:MSVC>:/utf-8>")
@@ -332,6 +346,16 @@ if(CMAKE_CXX_FLAGS_RELWITHDEBINFO MATCHES "/O2")
string(REGEX REPLACE "/O2" "/Od" CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
endif()
if("${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang")
if(CMAKE_C_FLAGS_RELWITHDEBINFO MATCHES "-O2")
string(REGEX REPLACE "-O2" "-O0" CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO}")
endif()
if(CMAKE_CXX_FLAGS_RELWITHDEBINFO MATCHES "-O2")
string(REGEX REPLACE "-O2" "-O0" CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
endif()
endif()
if(MSVC)
if(CMAKE_C_FLAGS_RELWITHDEBINFO MATCHES "/Ob1")
string(REGEX REPLACE "/Ob1" "/Ob0" CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO}")
@@ -359,7 +383,7 @@ endif()
# boost::process was introduced first in version 1.64.0,
# boost::beast::detail::base64 was introduced first in version 1.66.0
set(MINIMUM_BOOST_VERSION "1.66.0")
set(_boost_components "system;filesystem;thread;log;locale;regex;chrono;atomic;date_time;iostreams")
set(_boost_components "system;filesystem;thread;log;locale;regex;chrono;atomic;date_time;iostreams;program_options")
find_package(Boost ${MINIMUM_BOOST_VERSION} REQUIRED COMPONENTS ${_boost_components})
add_library(boost_libs INTERFACE)
@@ -426,11 +450,8 @@ find_package(TBB REQUIRED)
# add_definitions(-DTBB_USE_CAPTURED_EXCEPTION=0)
find_package(OpenSSL REQUIRED)
if (APPLE)
find_package(CURL CONFIG REQUIRED)
else()
find_package(CURL REQUIRED)
endif()
add_library(libcurl INTERFACE)
target_link_libraries(libcurl INTERFACE CURL::libcurl)
@@ -499,6 +520,8 @@ find_package(PNG REQUIRED)
set(OpenGL_GL_PREFERENCE "LEGACY")
find_package(OpenGL REQUIRED)
set(GLEW_ROOT "${CMAKE_PREFIX_PATH}")
message("GLEW_ROOT: ${GLEW_ROOT}")
# Find glew or use bundled version
if (SLIC3R_STATIC AND NOT SLIC3R_STATIC_EXCLUDE_GLEW)
set(GLEW_USE_STATIC_LIBS ON)
@@ -511,9 +534,11 @@ find_package(glfw3 REQUIRED)
# Find the Cereal serialization library
find_package(cereal REQUIRED)
set_target_properties(cereal PROPERTIES IMPORTED_GLOBAL TRUE)
if (NOT TARGET cereal::cereal)
set_target_properties(cereal PROPERTIES IMPORTED_GLOBAL TRUE)
add_library(cereal::cereal ALIAS cereal)
else ()
set_target_properties(cereal::cereal PROPERTIES IMPORTED_GLOBAL TRUE)
endif ()
# l10n
@@ -752,7 +777,7 @@ set (CPACK_PACKAGE_VENDOR "SoftFever")
set (CPACK_PACKAGE_VERSION_MAJOR "${ORCA_VERSION_MAJOR}")
set (CPACK_PACKAGE_VERSION_MINOR "${ORCA_VERSION_MINOR}")
set (CPACK_PACKAGE_VERSION_PATCH "${ORCA_VERSION_PATCH}")
set (CPACK_PACKAGE_FILE_NAME "OrcaSlicer_Windows_Installer_${SoftFever_VERSION}")
set (CPACK_PACKAGE_FILE_NAME "OrcaSlicer_Windows_Installer_V${SoftFever_VERSION}")
set (CPACK_PACKAGE_DESCRIPTION_SUMMARY "Orca Slicer is an open source slicer for FDM printers")
set (CPACK_PACKAGE_HOMEPAGE_URL "https://github.com/SoftFever/OrcaSlicer")
set (CPACK_PACKAGE_INSTALL_DIRECTORY ${CPACK_PACKAGE_NAME})
@@ -774,4 +799,4 @@ set (CPACK_RESOURCE_FILE_LICENSE ${CMAKE_SOURCE_DIR}/LICENSE.txt) # must also in
set(CPACK_WIX_UPGRADE_GUID "058245e8-20e0-4a95-9ab7-1acfe17ad511")
set(CPACK_GENERATOR NSIS)
include(CPack)
include(CPack)

View File

@@ -1,39 +1,48 @@
[![Build OrcaSlicer](https://github.com/SoftFever/OrcaSlicer/actions/workflows/build_orca.yml/badge.svg?branch=main)](https://github.com/SoftFever/OrcaSlicer/actions/workflows/build_orca.yml)
[![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.
You can download Orca Slicer here: [github releases page](https://github.com/SoftFever/OrcaSlicer/releases/).
![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)
# Main features
- Auto calibrations for all printers
- Sandwich(inner-outer-inner) mode - an improved version of the `External perimeters first` mode
- Precise wall
- [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/)
### Some background
OrcaSlicer is fork of 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)
# Download
### 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.
### 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.
# How to install
**Windows**:
1. Install and run
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/BambuStudio-SoftFever/releases/download/v1.0.10-sf2/MicrosoftEdgeWebView2RuntimeInstallerX64.exe)
- [vcredist2019_x64](https://github.com/SoftFever/BambuStudio-SoftFever/releases/download/v1.0.10-sf2/vcredist2019_x64.exe)
- [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 bellow*
3. *If you want to run a build from a PR, you also need following instructions below*
<details quarantine>
- Option 1 (You only need to do this once. After that the app can be oppened normally.):
- 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_
@@ -51,17 +60,31 @@ Orca Slicer's logo is designed by community member Justin Levine(@freejstnalxndr
**Linux(Ubuntu)**:
1. If you run into trouble to execute it, try this command in terminal:
`chmod +x /path_to_appimage/OrcaSlicer_ubu64.AppImage`
`chmod +x /path_to_appimage/OrcaSlicer_Linux.AppImage`
# How to compile
- Windows 64-bit
- Tools needed: Visual Studio 2019, Cmake, git, Strawberry Perl.
- 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
- 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
- Ubuntu
- 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'
@@ -109,6 +132,14 @@ Ko-fi supporters: [Backers list](https://github.com/SoftFever/OrcaSlicer/wiki/Or
Support me
[![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/G2G5IP3CP)
## Some background
OrcaSlicer is originaly 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)
# License
Orca Slicer is licensed under the GNU Affero General Public License, version 3. Orca Slicer is based on Bambu Studio by BambuLab.

32
SECURITY.md Normal file
View File

@@ -0,0 +1,32 @@
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.
Report security bugs by emailing the lead maintainer at softfeverever@gmail.com and include the word "SECURITY" in the subject line.
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.
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.
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.
Below are some recommendations for security disclosures:
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.
...SEE SOMETHING
...SAY SOMETHING
1)...SEE SOMETHING
We suggest you goto #2 if this happens.
Why? Through experience we have found it is best to goto #2 in this situation.

View File

@@ -1,26 +1,50 @@
set WP=%CD%
set debug=OFF
set debuginfo=OFF
if "%1"=="debug" set debug=ON
if "%2"=="debug" set debug=ON
if "%1"=="debuginfo" set debuginfo=ON
if "%2"=="debuginfo" set debuginfo=ON
if "%debug%"=="ON" (
set build_type=Debug
set build_dir=build-dbg
) else (
if "%debuginfo%"=="ON" (
set build_type=RelWithDebInfo
set build_dir=build-dbginfo
) else (
set build_type=Release
set build_dir=build
)
)
echo build type set to %build_type%
cd deps
mkdir build
cd build
mkdir %build_dir%
cd %build_dir%
set DEPS=%CD%/OrcaSlicer_dep
if "%1"=="slicer" (
GOTO :slicer
)
echo "building deps.."
cmake ../ -G "Visual Studio 16 2019" -DDESTDIR="%CD%/OrcaSlicer_dep" -DCMAKE_BUILD_TYPE=Release
cmake --build . --config Release --target deps -- -m
echo cmake ../ -G "Visual Studio 16 2019" -A x64 -DDESTDIR="%CD%/OrcaSlicer_dep" -DCMAKE_BUILD_TYPE=%build_type% -DDEP_DEBUG=%debug% -DORCA_INCLUDE_DEBUG_INFO=%debuginfo%
cmake ../ -G "Visual Studio 16 2019" -A x64 -DDESTDIR="%CD%/OrcaSlicer_dep" -DCMAKE_BUILD_TYPE=%build_type% -DDEP_DEBUG=%debug% -DORCA_INCLUDE_DEBUG_INFO=%debuginfo%
cmake --build . --config %build_type% --target deps -- -m
if "%1"=="deps" exit /b 0
:slicer
echo "building Orca Slicer..."
cd %WP%
mkdir build
cd build
mkdir %build_dir%
cd %build_dir%
cmake .. -G "Visual Studio 16 2019" -DBBL_RELEASE_TO_PUBLIC=1 -DCMAKE_PREFIX_PATH="%DEPS%/usr/local" -DCMAKE_INSTALL_PREFIX="./OrcaSlicer" -DCMAKE_BUILD_TYPE=Release -DWIN10SDK_PATH="C:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0"
cmake --build . --config Release --target ALL_BUILD -- -m
echo 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%
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
cd build
cmake --build . --target install --config Release
cd %build_dir%
cmake --build . --target install --config %build_type%

View File

@@ -1,7 +1,10 @@
#!/bin/sh
#!/bin/bash
while getopts ":a:sdphn" opt; do
case ${opt} in
set -e
set -o pipefail
while getopts ":dpa:snt:xbc:h" opt; do
case "${opt}" in
d )
export BUILD_TARGET="deps"
;;
@@ -17,87 +20,204 @@ while getopts ":a:sdphn" opt; do
n )
export NIGHTLY_BUILD="1"
;;
t )
export OSX_DEPLOYMENT_TARGET="$OPTARG"
;;
x )
export SLICER_CMAKE_GENERATOR="Ninja"
export SLICER_BUILD_TARGET="all"
export DEPS_CMAKE_GENERATOR="Ninja"
;;
b )
export BUILD_ONLY="1"
;;
c )
export BUILD_CONFIG="$OPTARG"
;;
h ) echo "Usage: ./build_release_macos.sh [-d]"
echo " -d: Build deps only"
echo " -a: Set ARCHITECTURE (arm64 or x86_64)"
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 " -b: Build without reconfiguring CMake"
echo " -c: Set CMake build configuration, default is Release"
exit 0
;;
* )
;;
esac
done
if [ -z "$ARCH" ]
then
export ARCH=$(uname -m)
# Set defaults
if [ -z "$ARCH" ]; then
ARCH="$(uname -m)"
export ARCH
fi
echo "Arch: $ARCH"
echo "BUILD_TARGET: $BUILD_TARGET"
if which -s brew; then
brew --prefix libiconv
brew --prefix zstd
export LIBRARY_PATH=$LIBRARY_PATH:$(brew --prefix zstd)/lib/
elif which -s port; then
port install libiconv
port install zstd
export LIBRARY_PATH=$LIBRARY_PATH:/opt/local/lib
else
echo "Need either brew or macports to successfully build deps"
exit 1
if [ -z "$BUILD_CONFIG" ]; then
export BUILD_CONFIG="Release"
fi
WD="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
cd $WD/deps
mkdir -p build_$ARCH
cd build_$ARCH
DEPS=$PWD/OrcaSlicer_dep_$ARCH
mkdir -p $DEPS
if [ "slicer." != $BUILD_TARGET. ];
then
echo "building deps..."
echo "cmake ../ -DDESTDIR=$DEPS -DOPENSSL_ARCH=darwin64-${ARCH}-cc -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES:STRING=${ARCH}"
cmake ../ -DDESTDIR="$DEPS" -DOPENSSL_ARCH="darwin64-${ARCH}-cc" -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES:STRING=${ARCH}
cmake --build . --config Release --target deps
if [ "1." == "$PACK_DEPS". ];
then
tar -zcvf OrcaSlicer_dep_mac_${ARCH}_$(date +"%Y%m%d").tar.gz OrcaSlicer_dep_$ARCH
fi
if [ -z "$BUILD_TARGET" ]; then
export BUILD_TARGET="all"
fi
if [ "deps." == "$BUILD_TARGET". ];
then
exit 0
if [ -z "$SLICER_CMAKE_GENERATOR" ]; then
export SLICER_CMAKE_GENERATOR="Xcode"
fi
cd $WD
mkdir -p build_$ARCH
cd build_$ARCH
echo "building slicer..."
cmake .. -GXcode -DBBL_RELEASE_TO_PUBLIC=1 -DCMAKE_PREFIX_PATH="$DEPS/usr/local" -DCMAKE_INSTALL_PREFIX="$PWD/OrcaSlicer" -DCMAKE_BUILD_TYPE=Release -DCMAKE_MACOSX_RPATH=ON -DCMAKE_INSTALL_RPATH="$DEPS/usr/local" -DCMAKE_MACOSX_BUNDLE=ON -DCMAKE_OSX_ARCHITECTURES=${ARCH}
cmake --build . --config Release --target ALL_BUILD
cd ..
./run_gettext.sh
cd build_$ARCH
mkdir -p OrcaSlicer
cd OrcaSlicer
rm -r ./OrcaSlicer.app
cp -pR ../src/Release/OrcaSlicer.app ./OrcaSlicer.app
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
# 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
if [ -z "$SLICER_BUILD_TARGET" ]; then
export SLICER_BUILD_TARGET="ALL_BUILD"
fi
if [ -z "$DEPS_CMAKE_GENERATOR" ]; then
export DEPS_CMAKE_GENERATOR="Unix Makefiles"
fi
if [ -z "$OSX_DEPLOYMENT_TARGET" ]; then
export OSX_DEPLOYMENT_TARGET="11.3"
fi
echo "Build params:"
echo " - ARCH: $ARCH"
echo " - BUILD_CONFIG: $BUILD_CONFIG"
echo " - BUILD_TARGET: $BUILD_TARGET"
echo " - CMAKE_GENERATOR: $SLICER_CMAKE_GENERATOR for Slicer, $DEPS_CMAKE_GENERATOR for deps"
echo " - OSX_DEPLOYMENT_TARGET: $OSX_DEPLOYMENT_TARGET"
echo
# if which -s brew; then
# brew --prefix libiconv
# brew --prefix zstd
# export LIBRARY_PATH=$LIBRARY_PATH:$(brew --prefix zstd)/lib/
# elif which -s port; then
# port install libiconv
# port install zstd
# export LIBRARY_PATH=$LIBRARY_PATH:/opt/local/lib
# else
# echo "Need either brew or macports to successfully build deps"
# exit 1
# fi
PROJECT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
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"
# zip -FSr OrcaSlicer${ver}_Mac_${ARCH}.zip OrcaSlicer.app
# 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
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}"
fi
cmake --build . --config "$BUILD_CONFIG" --target deps
)
}
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"
)
}
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"
)
echo "Verify localization with gettext..."
(
cd "$PROJECT_DIR"
./run_gettext.sh
)
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
)
# 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
}
case "${BUILD_TARGET}" in
all)
build_deps
build_slicer
;;
deps)
build_deps
;;
slicer)
build_slicer
;;
*)
echo "Unknown target: $BUILD_TARGET. Available targets: deps, slicer, all."
exit 1
;;
esac
if [ "1." == "$PACK_DEPS". ]; then
pack_deps
fi

View File

@@ -13,10 +13,30 @@ if "%1"=="pack" (
exit /b 0
)
set debug=OFF
set debuginfo=OFF
if "%1"=="debug" set debug=ON
if "%2"=="debug" set debug=ON
if "%1"=="debuginfo" set debuginfo=ON
if "%2"=="debuginfo" set debuginfo=ON
if "%debug%"=="ON" (
set build_type=Debug
set build_dir=build-dbg
) else (
if "%debuginfo%"=="ON" (
set build_type=RelWithDebInfo
set build_dir=build-dbginfo
) else (
set build_type=Release
set build_dir=build
)
)
echo build type set to %build_type%
setlocal DISABLEDELAYEDEXPANSION
cd deps
mkdir build
cd build
mkdir %build_dir%
cd %build_dir%
set DEPS=%CD%/OrcaSlicer_dep
if "%1"=="slicer" (
@@ -24,22 +44,22 @@ if "%1"=="slicer" (
)
echo "building deps.."
cmake ../ -G "Visual Studio 17 2022" -A x64 -DDESTDIR="%CD%/OrcaSlicer_dep" -DCMAKE_BUILD_TYPE=Release
cmake --build . --config Release --target deps -- -m
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%
cmake --build . --config %build_type% --target deps -- -m
if "%1"=="deps" exit /b 0
:slicer
echo "building Orca Slicer..."
cd %WP%
mkdir build
cd build
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=Release
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=Release -DWIN10SDK_PATH="C:/Program Files (x86)/Windows Kits/10/Include/10.0.22000.0"
cmake --build . --config Release --target ALL_BUILD -- -m
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"
cmake --build . --config %build_type% --target ALL_BUILD -- -m
cd ..
call run_gettext.bat
cd build
cmake --build . --target install --config Release
cd %build_dir%
cmake --build . --target install --config %build_type%

View File

@@ -64,16 +64,6 @@ This module defines the following variables:
include(FindPackageHandleStandardArgs)
find_package(GLEW CONFIG QUIET)
if(GLEW_FOUND)
find_package_handle_standard_args(GLEW DEFAULT_MSG GLEW_CONFIG)
return()
endif()
if(GLEW_VERBOSE)
message(STATUS "FindGLEW: did not find GLEW CMake config file. Searching for libraries.")
endif()
if(APPLE)
find_package(OpenGL QUIET)

View File

@@ -26,6 +26,17 @@
<string>????</string>
<key>CFBundleVersion</key>
<string>${MACOSX_BUNDLE_BUNDLE_VERSION}</string>
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLName</key>
<string>orcasliceropen url</string>
<key>CFBundleURLSchemes</key>
<array>
<string>orcasliceropen</string>
</array>
</dict>
</array>
<key>CFBundleDocumentTypes</key>
<array>
<dict>
@@ -35,7 +46,7 @@
<string>STL</string>
</array>
<key>CFBundleTypeIconFile</key>
<string>stl.icns</string>
<string>images/stl.icns</string>
<key>CFBundleTypeName</key>
<string>STL</string>
<key>CFBundleTypeRole</key>
@@ -52,7 +63,7 @@
<string>OBJ</string>
</array>
<key>CFBundleTypeIconFile</key>
<string>OrcaSlicer.icns</string>
<string>images/OrcaSlicer.icns</string>
<key>CFBundleTypeName</key>
<string>STL</string>
<key>CFBundleTypeRole</key>
@@ -69,7 +80,7 @@
<string>AMF</string>
</array>
<key>CFBundleTypeIconFile</key>
<string>OrcaSlicer.icns</string>
<string>images/OrcaSlicer.icns</string>
<key>CFBundleTypeName</key>
<string>AMF</string>
<key>CFBundleTypeRole</key>
@@ -86,7 +97,7 @@
<string>3MF</string>
</array>
<key>CFBundleTypeIconFile</key>
<string>OrcaSlicer.icns</string>
<string>images/OrcaSlicer.icns</string>
<key>CFBundleTypeName</key>
<string>3MF</string>
<key>CFBundleTypeRole</key>
@@ -103,7 +114,7 @@
<string>GCODE</string>
</array>
<key>CFBundleTypeIconFile</key>
<string>gcode.icns</string>
<string>images/gcode.icns</string>
<key>CFBundleTypeName</key>
<string>GCODE</string>
<key>CFBundleTypeRole</key>

216
deps/Boost/Boost.cmake vendored
View File

@@ -1,203 +1,25 @@
include(ExternalProject)
# Use boost 1.78 for Windows, to support VS2022
if (WIN32)
set(_boost_url "https://boostorg.jfrog.io/artifactory/main/release/1.78.0/source/boost_1_78_0.tar.gz")
set(_boost_hash 94CED8B72956591C4775AE2207A9763D3600B30D9D7446562C552F0A14A63BE7)
set(_bootstrap_cmd bootstrap.bat)
set(_build_cmd b2.exe)
else()
set(_boost_url "https://boostorg.jfrog.io/artifactory/main/release/1.75.0/source/boost_1_75_0.tar.gz")
set(_boost_hash AEB26F80E80945E82EE93E5939BAEBDCA47B9DEE80A07D3144BE1E1A6A66DD6A)
set(_bootstrap_cmd ./bootstrap.sh)
set(_build_cmd ./b2)
endif()
set(_patch_command ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_LIST_DIR}/common.jam ./tools/build/src/tools/common.jam)
if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
configure_file(${CMAKE_CURRENT_LIST_DIR}/user-config.jam boost-user-config.jam)
set(_boost_toolset gcc)
set(_patch_command ${_patch_command} && ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_BINARY_DIR}/boost-user-config.jam ./tools/build/src/tools/user-config.jam)
elseif (CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
# https://cmake.org/cmake/help/latest/variable/MSVC_VERSION.html
if (MSVC_VERSION EQUAL 1800)
# 1800 = VS 12.0 (v120 toolset)
set(_boost_toolset "msvc-12.0")
elseif (MSVC_VERSION EQUAL 1900)
# 1900 = VS 14.0 (v140 toolset)
set(_boost_toolset "msvc-14.0")
elseif (MSVC_VERSION LESS 1920)
# 1910-1919 = VS 15.0 (v141 toolset)
set(_boost_toolset "msvc-14.1")
elseif (MSVC_VERSION LESS 1930)
# 1920-1929 = VS 16.0 (v142 toolset)
set(_boost_toolset "msvc-14.2")
elseif (MSVC_VERSION LESS 1940)
# 1930-1939 = VS 17.0 (v143 toolset)
set(_boost_toolset "msvc-14.3")
else ()
message(FATAL_ERROR "Unsupported MSVC version")
set(_context_abi_line "")
set(_context_arch_line "")
if (APPLE AND CMAKE_OSX_ARCHITECTURES)
if (CMAKE_OSX_ARCHITECTURES MATCHES "x86")
set(_context_abi_line "-DBOOST_CONTEXT_ABI:STRING=sysv")
elseif (CMAKE_OSX_ARCHITECTURES MATCHES "arm")
set (_context_abi_line "-DBOOST_CONTEXT_ABI:STRING=aapcs")
endif ()
elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
if (WIN32)
set(_boost_toolset "clang-win")
else()
set(_boost_toolset "clang")
endif()
elseif (CMAKE_CXX_COMPILER_ID STREQUAL "Intel")
set(_boost_toolset "intel")
elseif (CMAKE_CXX_COMPILER_ID STREQUAL "AppleClang")
set(_boost_toolset "clang")
endif()
message(STATUS "Deduced boost toolset: ${_boost_toolset} based on ${CMAKE_CXX_COMPILER_ID} compiler")
set(_libs "")
foreach(_comp ${DEP_Boost_COMPONENTS})
list(APPEND _libs "--with-${_comp}")
endforeach()
if (BUILD_SHARED_LIBS)
set(_link shared)
else()
set(_link static)
endif()
set(_bits "")
if ("${CMAKE_SIZEOF_VOID_P}" STREQUAL "8")
set(_bits 64)
elseif ("${CMAKE_SIZEOF_VOID_P}" STREQUAL "4")
set(_bits 32)
set(_context_arch_line "-DBOOST_CONTEXT_ARCHITECTURE:STRING=${CMAKE_OSX_ARCHITECTURES}")
endif ()
include(ProcessorCount)
ProcessorCount(NPROC)
file(TO_NATIVE_PATH ${DESTDIR}/usr/local/ _prefix)
set(_boost_variants "")
if(CMAKE_BUILD_TYPE)
list(APPEND CMAKE_CONFIGURATION_TYPES ${CMAKE_BUILD_TYPE})
list(REMOVE_DUPLICATES CMAKE_CONFIGURATION_TYPES)
endif()
list(FIND CMAKE_CONFIGURATION_TYPES "Release" _cfg_rel)
list(FIND CMAKE_CONFIGURATION_TYPES "RelWithDebInfo" _cfg_relwdeb)
list(FIND CMAKE_CONFIGURATION_TYPES "MinSizeRel" _cfg_minsizerel)
list(FIND CMAKE_CONFIGURATION_TYPES "Debug" _cfg_deb)
if (_cfg_rel GREATER -1 OR _cfg_relwdeb GREATER -1 OR _cfg_minsizerel GREATER -1)
list(APPEND _boost_variants release)
endif()
if (MSVC AND ${DEP_DEBUG} )
list(APPEND _boost_variants debug)
endif()
if (NOT _boost_variants)
set(_boost_variants release)
endif()
if (IS_CROSS_COMPILE AND APPLE)
if (${CMAKE_OSX_ARCHITECTURES} MATCHES "arm")
message(STATUS "Compiling Boost for arm64.")
message(STATUS "Compiling Boost with toolset ${_boost_toolset}.")
message(STATUS "Compiling Boost with libs ${_libs}.")
message(STATUS "Compiling Boost with variant ${_boost_variants}.")
message(STATUS "Compiling Boost with _bootstrap_cmd ${_bootstrap_cmd}.")
message(STATUS "_boost_linkflags = ${_boost_linkflags}")
set(_arch_flags "-arch arm64")
set(_boost_linkflags "linkflags=${_arch_flags}")
message(STATUS "_cmake_args_osx_arch = '${_cmake_args_osx_arch}'")
elseif (${CMAKE_OSX_ARCHITECTURES} MATCHES "x86_64")
message(STATUS "Compiling Boost for x86_64.")
set(_arch_flags "-arch x86_64")
endif()
set(_boost_linkflags "linkflags=${_arch_flags}")
endif ()
set(_boost_flags "")
if(APPLE)
set(_boost_flags
"cflags=-fPIC ${_arch_flags} -mmacosx-version-min=${DEP_OSX_TARGET};"
"cxxflags=-fPIC ${_arch_flags} -mmacosx-version-min=${DEP_OSX_TARGET};"
"mflags=-fPIC ${_arch_flags} -mmacosx-version-min=${DEP_OSX_TARGET};"
"mmflags=-fPIC ${_arch_flags} -mmacosx-version-min=${DEP_OSX_TARGET}")
elseif (UNIX)
set(_boost_flags "cflags=-fPIC;cxxflags=-fPIC")
endif()
set(_build_cmd ${_build_cmd}
${_boost_flags}
${_boost_linkflags}
-j${NPROC}
${_libs}
--layout=versioned
--debug-configuration
toolset=${_boost_toolset}
address-model=${_bits}
link=${_link}
threading=multi
boost.locale.icu=off
--disable-icu
${_boost_variants}
stage)
set(_install_cmd ${_build_cmd} --prefix=${_prefix} install)
if (NOT IS_CROSS_COMPILE OR NOT APPLE OR BUILD_SHARED_LIBS)
message(STATUS "Standard boost build with bootstrap command '${_bootstrap_cmd}'")
message(STATUS "Standard boost build with patch command '${_patch_command}'")
message(STATUS "Standard boost build with build command '${_build_cmd}'")
message(STATUS "Standard boost build with install command '${_install_cmd}'")
ExternalProject_Add(
dep_Boost
URL ${_boost_url}
URL_HASH SHA256=${_boost_hash}
DOWNLOAD_DIR ${DEP_DOWNLOAD_DIR}/Boost
CONFIGURE_COMMAND "${_bootstrap_cmd}"
PATCH_COMMAND ${_patch_command}
BUILD_COMMAND "${_build_cmd}"
BUILD_IN_SOURCE ON
INSTALL_COMMAND "${_install_cmd}"
orcaslicer_add_cmake_project(Boost
URL "https://github.com/boostorg/boost/releases/download/boost-1.84.0/boost-1.84.0.tar.gz"
URL_HASH SHA256=4d27e9efed0f6f152dc28db6430b9d3dfb40c0345da7342eaa5a987dde57bd95
LIST_SEPARATOR |
CMAKE_ARGS
-DBOOST_EXCLUDE_LIBRARIES:STRING=contract|fiber|numpy|stacktrace|wave|test
-DBOOST_LOCALE_ENABLE_ICU:BOOL=OFF # do not link to libicu, breaks compatibility between distros
-DBUILD_TESTING:BOOL=OFF
"${_context_abi_line}"
"${_context_arch_line}"
)
else()
ExternalProject_Add(
dep_Boost
URL ${_boost_url}
URL_HASH SHA256=${_boost_hash}
DOWNLOAD_DIR ${DEP_DOWNLOAD_DIR}/Boost
CONFIGURE_COMMAND ./bootstrap.sh
--with-toolset=clang
--with-libraries=date_time,filesystem,iostreams,locale,log,regex,system,thread
"--prefix=${DESTDIR}/usr/local"
# PATCH_COMMAND ${_patch_command}
BUILD_COMMAND "${_build_cmd}"
BUILD_IN_SOURCE ON
INSTALL_COMMAND "${_install_cmd}"
)
endif()
if ("${CMAKE_SIZEOF_VOID_P}" STREQUAL "8")
message(STATUS "Patch the boost::polygon library with a custom one.")
# Patch the boost::polygon library with a custom one.
ExternalProject_Add(dep_boost_polygon
EXCLUDE_FROM_ALL ON
# GIT_REPOSITORY "https://github.com/prusa3d/polygon"
# GIT_TAG prusaslicer_gmp
URL https://github.com/prusa3d/polygon/archive/refs/heads/prusaslicer_gmp.zip
URL_HASH SHA256=abeb9710f0a7069fb9b22181ae5c56f6066002f125db210e7ffb27032aed6824
DOWNLOAD_DIR ${DEP_DOWNLOAD_DIR}/boost_polygon
DEPENDS dep_Boost
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
${_cmake_args_osx_arch}
INSTALL_COMMAND ${CMAKE_COMMAND} -E copy_directory
"${CMAKE_CURRENT_BINARY_DIR}/dep_boost_polygon-prefix/src/dep_boost_polygon/include/boost/polygon"
"${DESTDIR}/usr/local/include/boost/polygon"
)
# Only override boost::Polygon Voronoi implementation with Vojtech's GMP hacks on 64bit platforms.
list(APPEND _dep_list "dep_boost_polygon")
endif ()
set(DEP_Boost_DEPENDS ZLIB)

28
deps/CGAL/CGAL.cmake vendored
View File

@@ -1,31 +1,11 @@
orcaslicer_add_cmake_project(
CGAL
GIT_REPOSITORY https://github.com/CGAL/cgal.git
GIT_TAG caacd806dc55c61cc68adaad99f2240f00493b29 # releases/CGAL-5.3
# GIT_REPOSITORY https://github.com/CGAL/cgal.git
# GIT_TAG bec70a6d52d8aacb0b3d82a7b4edc3caa899184b # releases/CGAL-5.0
# For whatever reason, this keeps downloading forever (repeats downloads if finished)
#URL https://github.com/CGAL/cgal/archive/releases/CGAL-5.0.zip
#URL_HASH SHA256=c2b035bd078687b6d8c0fb6371a7443adcdb647856af9969532c4050cd5f48e5
URL https://github.com/CGAL/cgal/archive/refs/tags/v5.4.zip
URL_HASH SHA256=d7605e0a5a5ca17da7547592f6f6e4a59430a0bc861948974254d0de43eab4c0
DEPENDS dep_Boost dep_GMP dep_MPFR
)
include(GNUInstallDirs)
# CGAL, for whatever reason, makes itself non-relocatable by writing the build directory into
# CGALConfig-installation-dirs.cmake and including it in configure time.
# If this file is not present, it will not consider the stored absolute path
ExternalProject_Add_Step(dep_CGAL dep_CGAL_relocation_fix
DEPENDEES install
COMMAND ${CMAKE_COMMAND} -E remove CGALConfig-installation-dirs.cmake
WORKING_DIRECTORY "${DESTDIR}/usr/local/${CMAKE_INSTALL_LIBDIR}/cmake/CGAL"
)
# Again, for whatever reason, CGAL thinks that its version is not relevant if
# configured as a header only library. Fixing it by placing a cmake version file
# besides the installed config file.
ExternalProject_Add_Step(dep_CGAL dep_CGAL_version_fix
DEPENDEES install
COMMAND ${CMAKE_COMMAND} -E copy cgal/CGALConfigVersion.cmake "${DESTDIR}/usr/local/${CMAKE_INSTALL_LIBDIR}/cmake/CGAL/CGALConfigVersion.cmake"
WORKING_DIRECTORY "${CMAKE_CURRENT_LIST_DIR}"
)

30
deps/CMakeLists.txt vendored
View File

@@ -20,8 +20,17 @@
# therefore, unfortunatelly, the installation cannot be copied/moved elsewhere without re-installing wxWidgets.
#
project(OrcaSlicer-deps)
cmake_minimum_required(VERSION 3.2)
if (APPLE)
# if CMAKE_OSX_DEPLOYMENT_TARGET is not set, set it to 11.3
if (NOT CMAKE_OSX_DEPLOYMENT_TARGET)
set(CMAKE_OSX_DEPLOYMENT_TARGET "11.3" CACHE STRING "Minimum OS X deployment version" FORCE)
endif ()
message(STATUS "CMAKE_OSX_DEPLOYMENT_TARGET: ${CMAKE_OSX_DEPLOYMENT_TARGET}")
endif ()
project(OrcaSlicer-deps)
include(ExternalProject)
include(ProcessorCount)
@@ -32,9 +41,14 @@ if (NPROC EQUAL 0)
endif ()
set(DESTDIR "${CMAKE_CURRENT_BINARY_DIR}/destdir" CACHE PATH "Destination directory")
set(DEP_DOWNLOAD_DIR ${CMAKE_CURRENT_BINARY_DIR} CACHE PATH "Path for downloaded source packages.")
set(DEP_DOWNLOAD_DIR ${CMAKE_CURRENT_BINARY_DIR}/../DL_CACHE CACHE PATH "Path for downloaded source packages.")
option(DEP_DEBUG "Build debug variants (only applicable on Windows)" OFF)
get_property(_is_multi GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
if (_is_multi)
option(DEP_DEBUG "Build debug variants (only applicable on Windows)" OFF)
option(ORCA_INCLUDE_DEBUG_INFO "Includes debug information in a release build (like RelWithDebInfo) in a way that works with multi-configuration generators and incompatible dependencies. DEP_DEBUG option takes priority over this." OFF)
endif ()
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
option(DEP_WX_GTK3 "Build wxWidgets against GTK3" OFF)
@@ -78,8 +92,6 @@ find_package(Git REQUIRED)
# The default command line for patching. Only works for newer
set(PATCH_CMD ${GIT_EXECUTABLE} apply --verbose --ignore-space-change --whitespace=fix)
get_property(_is_multi GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
if (NOT _is_multi AND NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE Release)
message(STATUS "Forcing CMAKE_BUILD_TYPE to Release as it was not specified.")
@@ -90,7 +102,11 @@ function(orcaslicer_add_cmake_project projectname)
set(_configs_line -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE})
if (_is_multi OR MSVC)
set(_configs_line "")
if (ORCA_INCLUDE_DEBUG_INFO AND NOT DEP_DEBUG)
set(_configs_line "-DCMAKE_C_FLAGS_RELEASE:STRING=${CMAKE_C_FLAGS_RELWITHDEBINFO} -DCMAKE_CXX_FLAGS_RELEASE:STRING=${CMAKE_CXX_FLAGS_RELWITHDEBINFO}")
else ()
set(_configs_line "")
endif ()
endif ()
set(_gen "")
@@ -133,6 +149,7 @@ else()
${_gen}
CMAKE_ARGS
-DCMAKE_INSTALL_PREFIX:STRING=${DESTDIR}/usr/local
-DCMAKE_PREFIX_PATH:STRING=${DESTDIR}/usr/local
-DBUILD_SHARED_LIBS:BOOL=OFF
${_cmake_osx_arch}
"${_configs_line}"
@@ -162,7 +179,6 @@ if (MSVC)
endif ()
elseif (APPLE)
message("OS X SDK Path: ${CMAKE_OSX_SYSROOT}")
set(CMAKE_OSX_DEPLOYMENT_TARGET "11.3" CACHE STRING "Minimum OS X deployment version" FORCE)
if (CMAKE_OSX_DEPLOYMENT_TARGET)
set(DEP_OSX_TARGET "${CMAKE_OSX_DEPLOYMENT_TARGET}")
message("OS X Deployment Target: ${DEP_OSX_TARGET}")

View File

@@ -1,6 +1,12 @@
#/|/ Copyright (c) Prusa Research 2021 - 2022 Tomáš Mészáros @tamasmeszaros, Filip Sykala @Jony01
#/|/
#/|/ PrusaSlicer is released under the terms of the AGPLv3 or higher
#/|/
orcaslicer_add_cmake_project(Cereal
URL "https://github.com/USCiLab/cereal/archive/v1.2.2.tar.gz"
URL_HASH SHA256=1921f26d2e1daf9132da3c432e2fd02093ecaedf846e65d7679ddf868c7289c4
URL "https://github.com/USCiLab/cereal/archive/refs/tags/v1.3.0.zip"
URL_HASH SHA256=71642cb54658e98c8f07a0f0d08bf9766f1c3771496936f6014169d3726d9657
CMAKE_ARGS
-DJUST_INSTALL_CEREAL=on
-DJUST_INSTALL_CEREAL=ON
-DSKIP_PERFORMANCE_COMPARISON=ON
-DBUILD_TESTS=OFF
)

View File

@@ -12,8 +12,8 @@ if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
endif()
orcaslicer_add_cmake_project(JPEG
URL https://github.com/libjpeg-turbo/libjpeg-turbo/archive/refs/tags/2.0.6.zip
URL_HASH SHA256=017bdc33ff3a72e11301c0feb4657cb27719d7f97fa67a78ed506c594218bbf1
URL https://github.com/libjpeg-turbo/libjpeg-turbo/archive/refs/tags/3.0.1.zip
URL_HASH SHA256=d6d99e693366bc03897677650e8b2dfa76b5d6c54e2c9e70c03f0af821b0a52f
DEPENDS ${ZLIB_PKG}
CMAKE_ARGS
-DENABLE_SHARED=OFF

View File

@@ -26,11 +26,12 @@ else ()
endif ()
ExternalProject_Add(dep_MPFR
URL http://ftp.vim.org/ftp/gnu/mpfr/mpfr-3.1.6.tar.bz2 https://www.mpfr.org/mpfr-3.1.6/mpfr-3.1.6.tar.bz2 # mirrors are allowed
URL_HASH SHA256=cf4f4b2d80abb79e820e78c8077b6725bbbb4e8f41896783c899087be0e94068
URL https://www.mpfr.org/mpfr-current/mpfr-4.2.1.tar.bz2
URL_HASH SHA256=b9df93635b20e4089c29623b19420c4ac848a1b29df1cfd59f26cab0d2666aa0
DOWNLOAD_DIR ${DEP_DOWNLOAD_DIR}/MPFR
BUILD_IN_SOURCE ON
CONFIGURE_COMMAND env "CFLAGS=${_gmp_ccflags}" "CXXFLAGS=${_gmp_ccflags}" ./configure ${_cross_compile_arg} --prefix=${DESTDIR}/usr/local --enable-shared=no --enable-static=yes --with-gmp=${DESTDIR}/usr/local ${_gmp_build_tgt}
CONFIGURE_COMMAND autoreconf -f -i &&
env "CFLAGS=${_gmp_ccflags}" "CXXFLAGS=${_gmp_ccflags}" ./configure ${_cross_compile_arg} --prefix=${DESTDIR}/usr/local --enable-shared=no --enable-static=yes --with-gmp=${DESTDIR}/usr/local ${_gmp_build_tgt}
BUILD_COMMAND make -j
INSTALL_COMMAND make install
DEPENDS dep_GMP

10
deps/NanoSVG/NanoSVG.cmake vendored Normal file
View File

@@ -0,0 +1,10 @@
# In PrusaSlicer 2.6.0 we switched from https://github.com/memononen/nanosvg to its fork https://github.com/fltk/nanosvg
# because this last implements the new function nsvgRasterizeXY() which we now use in GLTexture::load_from_svg()
# for rasterizing svg files from their original size to a squared power of two texture on Windows systems using
# AMD Radeon graphics cards
orcaslicer_add_cmake_project(NanoSVG
DEPENDS dep_Boost
URL https://github.com/SoftFever/nanosvg/archive/863f6aa97ef62028126fa2c19bd4350394c2e15e.zip
URL_HASH SHA256=8d9c1624ad6518dd6dfa31e4f8dc7da9ec243d88bae595c7a037450617fec851
)

View File

@@ -19,7 +19,7 @@ if(WIN32)
set(_install_cmd nmake install_sw )
else()
if(APPLE)
set(_conf_cmd ./Configure )
set(_conf_cmd export MACOSX_DEPLOYMENT_TARGET=${CMAKE_OSX_DEPLOYMENT_TARGET} && ./Configure -mmacosx-version-min=${CMAKE_OSX_DEPLOYMENT_TARGET})
else()
set(_conf_cmd "./config")
endif()

View File

@@ -11,6 +11,7 @@ if (APPLE)
-Dwebp:BOOL=OFF
-Djbig:BOOL=OFF
-Dzstd:BOOL=OFF
-Dlibdeflate:BOOL=OFF
-Dpixarlog:BOOL=OFF
)
else()

View File

@@ -0,0 +1,683 @@
From f4fef135f0a58ca2916c45cd539923ab096935b6 Mon Sep 17 00:00:00 2001
From: Ocraftyone <Ocraftyone@users.noreply.github.com>
Date: Thu, 30 Nov 2023 03:25:54 -0500
Subject: [PATCH] patch v3.2.1 for OrcaSlicer
---
build/cmake/lib/webview/CMakeLists.txt | 4 +-
include/wx/fontutil.h | 15 +++++++-
include/wx/gdicmn.h | 3 ++
include/wx/generic/grid.h | 4 +-
include/wx/msw/font.h | 2 +-
include/wx/msw/tooltip.h | 4 +-
include/wx/osx/app.h | 2 +-
src/common/combocmn.cpp | 11 +++++-
src/common/datavcmn.cpp | 6 ++-
src/common/dcbufcmn.cpp | 6 +++
src/common/gdicmn.cpp | 14 +++++++
src/common/image.cpp | 6 +--
src/generic/grid.cpp | 50 ++++++++++++++++++++-----
src/msw/bmpcbox.cpp | 9 ++++-
src/msw/font.cpp | 14 +++----
src/msw/menuitem.cpp | 2 +
src/msw/window.cpp | 52 +++++++++++++++++---------
src/osx/cocoa/dataview.mm | 26 +++++++++++--
src/osx/cocoa/settings.mm | 6 +--
src/osx/cocoa/window.mm | 4 ++
20 files changed, 184 insertions(+), 56 deletions(-)
diff --git a/build/cmake/lib/webview/CMakeLists.txt b/build/cmake/lib/webview/CMakeLists.txt
index 085381d785..62146abc04 100644
--- a/build/cmake/lib/webview/CMakeLists.txt
+++ b/build/cmake/lib/webview/CMakeLists.txt
@@ -46,9 +46,9 @@ if(APPLE)
elseif(WXMSW)
if(wxUSE_WEBVIEW_EDGE)
# Update the following variables if updating WebView2 SDK
- set(WEBVIEW2_VERSION "1.0.705.50")
+ set(WEBVIEW2_VERSION "1.0.1418.22")
set(WEBVIEW2_URL "https://www.nuget.org/api/v2/package/Microsoft.Web.WebView2/${WEBVIEW2_VERSION}")
- set(WEBVIEW2_SHA256 "6a34bb553e18cfac7297b4031f3eac2558e439f8d16a45945c22945ac404105d")
+ set(WEBVIEW2_SHA256 "51d2ef56196e2a9d768a6843385bcb9c6baf9ed34b2603ddb074fb4995543a99")
set(WEBVIEW2_DEFAULT_PACKAGE_DIR "${CMAKE_BINARY_DIR}/packages/Microsoft.Web.WebView2.${WEBVIEW2_VERSION}")
diff --git a/include/wx/fontutil.h b/include/wx/fontutil.h
index 30529db8ce..e6a12366d5 100644
--- a/include/wx/fontutil.h
+++ b/include/wx/fontutil.h
@@ -294,7 +294,11 @@ public:
wxFontEncoding GetEncoding() const;
void SetPointSize(int pointsize);
- void SetFractionalPointSize(double pointsize);
+ void SetFractionalPointSize(double pointsize
+#if defined(__WXMSW__)
+ , const wxWindow *window = nullptr
+#endif
+ );
void SetPixelSize(const wxSize& pixelSize);
void SetStyle(wxFontStyle style);
void SetNumericWeight(int weight);
@@ -307,12 +311,19 @@ public:
// Helper used in many ports: use the normal font size if the input is
// negative, as we handle -1 as meaning this for compatibility.
- void SetSizeOrDefault(double size)
+ void SetSizeOrDefault(double size
+#if defined(__WXMSW__)
+ , const wxWindow *window = nullptr
+#endif
+ )
{
SetFractionalPointSize
(
size < 0 ? wxNORMAL_FONT->GetFractionalPointSize()
: size
+#if defined(__WXMSW__)
+ ,window
+#endif
);
}
diff --git a/include/wx/gdicmn.h b/include/wx/gdicmn.h
index 2f5f8ee99f..39e9317d40 100644
--- a/include/wx/gdicmn.h
+++ b/include/wx/gdicmn.h
@@ -38,6 +38,7 @@ class WXDLLIMPEXP_FWD_CORE wxRegion;
class WXDLLIMPEXP_FWD_BASE wxString;
class WXDLLIMPEXP_FWD_CORE wxIconBundle;
class WXDLLIMPEXP_FWD_CORE wxPoint;
+class WXDLLIMPEXP_FWD_CORE wxWindow;
// ---------------------------------------------------------------------------
// constants
@@ -1106,7 +1107,9 @@ extern int WXDLLIMPEXP_CORE wxDisplayDepth();
// get the display size
extern void WXDLLIMPEXP_CORE wxDisplaySize(int *width, int *height);
+extern void WXDLLIMPEXP_CORE wxDisplaySize(const wxWindow *window, int *width, int *height);
extern wxSize WXDLLIMPEXP_CORE wxGetDisplaySize();
+extern wxSize WXDLLIMPEXP_CORE wxGetDisplaySize(const wxWindow *window);
extern void WXDLLIMPEXP_CORE wxDisplaySizeMM(int *width, int *height);
extern wxSize WXDLLIMPEXP_CORE wxGetDisplaySizeMM();
extern wxSize WXDLLIMPEXP_CORE wxGetDisplayPPI();
diff --git a/include/wx/generic/grid.h b/include/wx/generic/grid.h
index 1bd58bbf04..903cb81319 100644
--- a/include/wx/generic/grid.h
+++ b/include/wx/generic/grid.h
@@ -3029,9 +3029,11 @@ private:
// Update the width/height of the column/row being drag-resized.
// Should be only called when m_dragRowOrCol != -1, i.e. dragging is
// actually in progress.
+ //BBS: add cursor mode for DoGridDragResize's paremeters
void DoGridDragResize(const wxPoint& position,
const wxGridOperations& oper,
- wxGridWindow* gridWindow);
+ wxGridWindow* gridWindow,
+ CursorMode mode);
// process different clicks on grid cells
void DoGridCellLeftDown(wxMouseEvent& event,
diff --git a/include/wx/msw/font.h b/include/wx/msw/font.h
index 0f9768b44e..094d774918 100644
--- a/include/wx/msw/font.h
+++ b/include/wx/msw/font.h
@@ -23,7 +23,7 @@ public:
// ctors and such
wxFont() { }
- wxFont(const wxFontInfo& info);
+ wxFont(const wxFontInfo& info, const wxWindow *window = nullptr);
wxFont(int size,
wxFontFamily family,
diff --git a/include/wx/msw/tooltip.h b/include/wx/msw/tooltip.h
index 4c3be08cec..96fb378d01 100644
--- a/include/wx/msw/tooltip.h
+++ b/include/wx/msw/tooltip.h
@@ -91,10 +91,10 @@ private:
// the one and only one tooltip control we use - never access it directly
// but use GetToolTipCtrl() which will create it when needed
static WXHWND ms_hwndTT;
-
+public:
// create the tooltip ctrl if it doesn't exist yet and return its HWND
static WXHWND GetToolTipCtrl();
-
+private:
// to be used in wxModule for deleting tooltip ctrl window when exiting mainloop
static void DeleteToolTipCtrl();
diff --git a/include/wx/osx/app.h b/include/wx/osx/app.h
index 317a0ca96f..58014ec1d4 100644
--- a/include/wx/osx/app.h
+++ b/include/wx/osx/app.h
@@ -161,7 +161,7 @@ private:
public:
bool OSXInitWasCalled() { return m_inited; }
- void OSXStoreOpenFiles(const wxArrayString &files ) { m_openFiles = files ; }
+ virtual void OSXStoreOpenFiles(const wxArrayString &files ) { m_openFiles = files ; }
void OSXStorePrintFiles(const wxArrayString &files ) { m_printFiles = files ; }
void OSXStoreOpenURL(const wxString &url ) { m_getURL = url ; }
#endif
diff --git a/src/common/combocmn.cpp b/src/common/combocmn.cpp
index 80408c6677..aa07caebdc 100644
--- a/src/common/combocmn.cpp
+++ b/src/common/combocmn.cpp
@@ -2061,6 +2061,9 @@ void wxComboCtrlBase::ShowPopup()
SetFocus();
+ //int displayIdx = wxDisplay::GetFromWindow(this);
+ //wxRect displayRect = wxDisplay(displayIdx != wxNOT_FOUND ? displayIdx : 0u).GetGeometry();
+
// Space above and below
int screenHeight;
wxPoint scrPos;
@@ -2183,9 +2186,13 @@ void wxComboCtrlBase::ShowPopup()
int showFlags = CanDeferShow;
- if ( spaceBelow < szp.y )
+ int anchorSideVertical = m_anchorSide & (wxUP | wxDOWN);
+ if (// Pop up as asked for by the library user.
+ (anchorSideVertical & wxUP) ||
+ // Automatic: Pop up if it does not fit down.
+ (anchorSideVertical == 0 && spaceBelow < szp.y ))
{
- popupY = scrPos.y - szp.y;
+ popupY = scrPos.y - szp.y + displayRect.GetTop();
showFlags |= ShowAbove;
}
diff --git a/src/common/datavcmn.cpp b/src/common/datavcmn.cpp
index 0a1e43ad51..6c492aedab 100644
--- a/src/common/datavcmn.cpp
+++ b/src/common/datavcmn.cpp
@@ -1334,7 +1334,11 @@ wxDataViewItem wxDataViewCtrlBase::GetSelection() const
wxDataViewItemArray selections;
GetSelections(selections);
- return selections[0];
+ // BBS
+ if (!selections.empty())
+ return selections[0];
+ else
+ return wxDataViewItem(0);
}
namespace
diff --git a/src/common/dcbufcmn.cpp b/src/common/dcbufcmn.cpp
index 9b1c1f3159..ef5865ed4b 100644
--- a/src/common/dcbufcmn.cpp
+++ b/src/common/dcbufcmn.cpp
@@ -83,9 +83,15 @@ private:
const double scale = dc ? dc->GetContentScaleFactor() : 1.0;
wxBitmap* const buffer = new wxBitmap;
+#if __WXMSW__
+ // we must always return a valid bitmap but creating a bitmap of
+ // size 0 would fail, so create a 1*1 bitmap in this case
+ buffer->Create(wxMax(w, 1), wxMax(h, 1), 24);
+#else
// we must always return a valid bitmap but creating a bitmap of
// size 0 would fail, so create a 1*1 bitmap in this case
buffer->CreateWithDIPSize(wxMax(w, 1), wxMax(h, 1), scale);
+#endif
return buffer;
}
diff --git a/src/common/gdicmn.cpp b/src/common/gdicmn.cpp
index db8a01f961..162c1ce2dc 100644
--- a/src/common/gdicmn.cpp
+++ b/src/common/gdicmn.cpp
@@ -863,11 +863,25 @@ void wxDisplaySize(int *width, int *height)
*height = size.y;
}
+void wxDisplaySize(const wxWindow *window, int *width, int *height)
+{
+ const wxSize size = wxGetDisplaySize(window);
+ if ( width )
+ *width = size.x;
+ if ( height )
+ *height = size.y;
+}
+
wxSize wxGetDisplaySize()
{
return wxDisplay().GetGeometry().GetSize();
}
+wxSize wxGetDisplaySize(const wxWindow *window)
+{
+ return window ? wxDisplay(window).GetGeometry().GetSize() : wxDisplay().GetGeometry().GetSize();
+}
+
void wxClientDisplayRect(int *x, int *y, int *width, int *height)
{
const wxRect rect = wxGetClientDisplayRect();
diff --git a/src/common/image.cpp b/src/common/image.cpp
index 19fe34ec91..a449b60930 100644
--- a/src/common/image.cpp
+++ b/src/common/image.cpp
@@ -390,11 +390,11 @@ wxImage wxImage::ShrinkBy( int xFactor , int yFactor ) const
unsigned char red = pixel[0] ;
unsigned char green = pixel[1] ;
unsigned char blue = pixel[2] ;
- unsigned char alpha = 255 ;
- if ( source_alpha )
- alpha = *(source_alpha + y_offset + x * xFactor + x1) ;
if ( !hasMask || red != maskRed || green != maskGreen || blue != maskBlue )
{
+ unsigned char alpha = 255 ;
+ if ( source_alpha )
+ alpha = *(source_alpha + y_offset + x * xFactor + x1) ;
if ( alpha > 0 )
{
avgRed += red ;
diff --git a/src/generic/grid.cpp b/src/generic/grid.cpp
index ed3d988994..d71cda122d 100644
--- a/src/generic/grid.cpp
+++ b/src/generic/grid.cpp
@@ -4068,7 +4068,8 @@ void wxGrid::ProcessRowColLabelMouseEvent( const wxGridOperations &oper, wxMouse
{
if ( m_cursorMode == oper.GetCursorModeResize() )
{
- DoGridDragResize(event.GetPosition(), oper, gridWindow);
+ //BBS: add cursor mode for DoGridDragResize's paremeters
+ DoGridDragResize(event.GetPosition(), oper, gridWindow, m_cursorMode);
}
else if ( m_cursorMode == oper.GetCursorModeSelect() && line >=0 )
{
@@ -4691,12 +4692,14 @@ bool wxGrid::DoGridDragEvent(wxMouseEvent& event,
case WXGRID_CURSOR_RESIZE_ROW:
if ( m_dragRowOrCol != -1 )
- DoGridDragResize(event.GetPosition(), wxGridRowOperations(), gridWindow);
+ //BBS: add cursor mode for DoGridDragResize's paremeters
+ DoGridDragResize(event.GetPosition(), wxGridRowOperations(), gridWindow, WXGRID_CURSOR_RESIZE_ROW);
break;
case WXGRID_CURSOR_RESIZE_COL:
if ( m_dragRowOrCol != -1 )
- DoGridDragResize(event.GetPosition(), wxGridColumnOperations(), gridWindow);
+ //BBS: add cursor mode for DoGridDragResize's paremeters
+ DoGridDragResize(event.GetPosition(), wxGridColumnOperations(), gridWindow, WXGRID_CURSOR_RESIZE_COL);
break;
default:
@@ -4791,6 +4794,8 @@ wxGrid::DoGridCellLeftDown(wxMouseEvent& event,
case wxGridSelectCells:
case wxGridSelectRowsOrColumns:
// nothing to do in these cases
+ //BBS: select this cell when first click
+ m_selection->SelectBlock(coords.GetRow(), coords.GetCol(), coords.GetRow(), coords.GetCol(), event);
break;
case wxGridSelectRows:
@@ -5049,9 +5054,11 @@ void wxGrid::ProcessGridCellMouseEvent(wxMouseEvent& event, wxGridWindow *eventG
}
}
+//BBS: add cursor mode for DoGridDragResize's paremeters
void wxGrid::DoGridDragResize(const wxPoint& position,
const wxGridOperations& oper,
- wxGridWindow* gridWindow)
+ wxGridWindow* gridWindow,
+ CursorMode mode)
{
wxCHECK_RET( m_dragRowOrCol != -1,
"shouldn't be called when not drag resizing" );
@@ -5064,10 +5071,28 @@ void wxGrid::DoGridDragResize(const wxPoint& position,
// orthogonal direction.
const int linePos = oper.Dual().Select(logicalPos);
- const int lineStart = oper.GetLineStartPos(this, m_dragRowOrCol);
- oper.SetLineSize(this, m_dragRowOrCol,
+ //BBS: add logic for resize multiplexed cols
+ if (mode == WXGRID_CURSOR_RESIZE_COL) {
+ int col_to_resize = m_dragRowOrCol;
+ int num_rows, num_cols;
+ this->GetCellSize(0, m_dragRowOrCol, &num_rows, &num_cols);
+ if (num_cols < 1)
+ col_to_resize = m_dragRowOrCol - 1;
+
+ const int lineEnd = oper.GetLineEndPos(this, m_dragRowOrCol);
+ const int lineSize = oper.GetLineSize(this, col_to_resize);
+ int size = linePos - lineEnd + lineSize;
+ oper.SetLineSize(this, col_to_resize,
+ wxMax(size,
+ oper.GetMinimalLineSize(this, col_to_resize)));
+ }
+ else {
+ const int lineStart = oper.GetLineStartPos(this, m_dragRowOrCol);
+
+ oper.SetLineSize(this, m_dragRowOrCol,
wxMax(linePos - lineStart,
oper.GetMinimalLineSize(this, m_dragRowOrCol)));
+ }
// TODO: generate RESIZING event, see #10754, if the size has changed.
}
@@ -5090,7 +5115,8 @@ wxPoint wxGrid::GetPositionForResizeEvent(int width) const
void wxGrid::DoEndDragResizeRow(const wxMouseEvent& event, wxGridWindow* gridWindow)
{
- DoGridDragResize(event.GetPosition(), wxGridRowOperations(), gridWindow);
+ //BBS: add cursor mode for DoGridDragResize's paremeters
+ DoGridDragResize(event.GetPosition(), wxGridRowOperations(), gridWindow, WXGRID_CURSOR_RESIZE_ROW);
SendGridSizeEvent(wxEVT_GRID_ROW_SIZE, m_dragRowOrCol, event);
@@ -5099,7 +5125,8 @@ void wxGrid::DoEndDragResizeRow(const wxMouseEvent& event, wxGridWindow* gridWin
void wxGrid::DoEndDragResizeCol(const wxMouseEvent& event, wxGridWindow* gridWindow)
{
- DoGridDragResize(event.GetPosition(), wxGridColumnOperations(), gridWindow);
+ //BBS: add cursor mode for DoGridDragResize's paremeters
+ DoGridDragResize(event.GetPosition(), wxGridColumnOperations(), gridWindow, WXGRID_CURSOR_RESIZE_COL);
SendGridSizeEvent(wxEVT_GRID_COL_SIZE, m_dragRowOrCol, event);
@@ -5113,9 +5140,10 @@ void wxGrid::DoHeaderStartDragResizeCol(int col)
void wxGrid::DoHeaderDragResizeCol(int width)
{
+ //BBS: add cursor mode for DoGridDragResize's paremeters
DoGridDragResize(GetPositionForResizeEvent(width),
wxGridColumnOperations(),
- m_gridWin);
+ m_gridWin, WXGRID_CURSOR_RESIZE_COL);
}
void wxGrid::DoHeaderEndDragResizeCol(int width)
@@ -6013,6 +6041,10 @@ void wxGrid::OnKeyDown( wxKeyEvent& event )
DisableCellEditControl();
MoveCursorDown( event.ShiftDown() );
+ //BBS: select this cell when first click
+ m_selection->SelectBlock(m_currentCellCoords.GetRow(), m_currentCellCoords.GetCol(),
+ m_currentCellCoords.GetRow(), m_currentCellCoords.GetCol(),
+ event);
}
break;
diff --git a/src/msw/bmpcbox.cpp b/src/msw/bmpcbox.cpp
index 011bd4f534..17e7f18740 100644
--- a/src/msw/bmpcbox.cpp
+++ b/src/msw/bmpcbox.cpp
@@ -156,13 +156,20 @@ void wxBitmapComboBox::RecreateControl()
wxComboBox::DoClear();
- HWND hwnd = GetHwnd();
+ WNDPROC wndproc_edit = nullptr;
+ WinStruct<COMBOBOXINFO> combobox_info;
+ HWND hwnd = GetHwnd();
+if (::GetComboBoxInfo(hwnd, &combobox_info))
+ wndproc_edit = (WNDPROC)wxGetWindowProc(combobox_info.hwndItem);
DissociateHandle();
::DestroyWindow(hwnd);
if ( !MSWCreateControl(wxT("COMBOBOX"), wxEmptyString, pos, size) )
return;
+if (::GetComboBoxInfo(GetHwnd(), &combobox_info))
+ wxSetWindowProc(combobox_info.hwndItem, wndproc_edit);
+
// initialize the controls contents
for ( i = 0; i < numItems; i++ )
{
diff --git a/src/msw/font.cpp b/src/msw/font.cpp
index 434876939c..91d4603018 100644
--- a/src/msw/font.cpp
+++ b/src/msw/font.cpp
@@ -54,7 +54,7 @@ static const int PITCH_MASK = FIXED_PITCH | VARIABLE_PITCH;
class WXDLLEXPORT wxFontRefData: public wxGDIRefData
{
public:
- wxFontRefData(const wxFontInfo& info = wxFontInfo());
+ wxFontRefData(const wxFontInfo& info = wxFontInfo(), const wxWindow* window = nullptr);
wxFontRefData(const wxNativeFontInfo& info, WXHFONT hFont = 0)
{
@@ -324,7 +324,7 @@ protected:
// wxFontRefData
// ----------------------------------------------------------------------------
-wxFontRefData::wxFontRefData(const wxFontInfo& info)
+wxFontRefData::wxFontRefData(const wxFontInfo& info, const wxWindow *window)
{
m_hFont = NULL;
@@ -335,7 +335,7 @@ wxFontRefData::wxFontRefData(const wxFontInfo& info)
}
else
{
- m_nativeFontInfo.SetSizeOrDefault(info.GetFractionalPointSize());
+ m_nativeFontInfo.SetSizeOrDefault(info.GetFractionalPointSize(), window);
}
SetStyle(info.GetStyle());
@@ -518,12 +518,12 @@ wxFontEncoding wxNativeFontInfo::GetEncoding() const
return wxGetFontEncFromCharSet(lf.lfCharSet);
}
-void wxNativeFontInfo::SetFractionalPointSize(double pointSizeNew)
+void wxNativeFontInfo::SetFractionalPointSize(double pointSizeNew, const wxWindow *window)
{
// We don't have the correct DPI to use here, so use that of the
// primary screen and rely on WXAdjustToPPI() changing it later if
// necessary.
- const int ppi = ::GetDeviceCaps(ScreenHDC(), LOGPIXELSY);
+ const int ppi = window ? window->GetDPI().GetY() : ::GetDeviceCaps(ScreenHDC(), LOGPIXELSY);
lf.lfHeight = GetLogFontHeightAtPPI(pointSizeNew, ppi);
pointSize = pointSizeNew;
@@ -812,9 +812,9 @@ wxFont::wxFont(const wxString& fontdesc)
(void)Create(info);
}
-wxFont::wxFont(const wxFontInfo& info)
+wxFont::wxFont(const wxFontInfo& info, const wxWindow *window)
{
- m_refData = new wxFontRefData(info);
+ m_refData = new wxFontRefData(info, window);
}
bool wxFont::Create(const wxNativeFontInfo& info, WXHFONT hFont)
diff --git a/src/msw/menuitem.cpp b/src/msw/menuitem.cpp
index 0bd017a36a..3b98bf1678 100644
--- a/src/msw/menuitem.cpp
+++ b/src/msw/menuitem.cpp
@@ -368,6 +368,8 @@ void MenuDrawData::Init(wxWindow const* window)
// native menu uses small top margin for separator
if ( SeparatorMargin.cyTopHeight >= 2 )
SeparatorMargin.cyTopHeight -= 2;
+
+ SeparatorSize.cy = 0;
}
else
#endif // wxUSE_UXTHEME
diff --git a/src/msw/window.cpp b/src/msw/window.cpp
index c529a4fa3b..7e547c64df 100644
--- a/src/msw/window.cpp
+++ b/src/msw/window.cpp
@@ -4809,33 +4809,49 @@ static wxSize GetWindowDPI(HWND hwnd)
}
/*extern*/
-int wxGetSystemMetrics(int nIndex, const wxWindow* window)
+int wxGetSystemMetrics(int nIndex, const wxWindow* win)
{
#if wxUSE_DYNLIB_CLASS
- if ( !window )
- window = wxApp::GetMainTopWindow();
+ const wxWindow* window = (!win && wxTheApp) ? wxTheApp->GetTopWindow() : win;
- if ( window )
+ if (window)
{
- typedef int (WINAPI * GetSystemMetricsForDpi_t)(int nIndex, UINT dpi);
- static GetSystemMetricsForDpi_t s_pfnGetSystemMetricsForDpi = NULL;
- static bool s_initDone = false;
-
- if ( !s_initDone )
- {
- wxLoadedDLL dllUser32("user32.dll");
- wxDL_INIT_FUNC(s_pfn, GetSystemMetricsForDpi, dllUser32);
- s_initDone = true;
+#if 1
+ if (window->GetHWND() && (nIndex == SM_CXSCREEN || nIndex == SM_CYSCREEN)) {
+ HDC hdc = GetDC(window->GetHWND());
+#if 0
+ double dim = GetDeviceCaps(hdc, nIndex == SM_CXSCREEN ? HORZRES : VERTRES);
+ ReleaseDC(window->GetHWND(), hdc);
+ wxSize dpi = window->GetDPI();
+ dim *= 96.0 / (nIndex == SM_CXSCREEN ? dpi.x : dpi.y);
+ return int(dim + 0.5);
+#else
+ return int(GetDeviceCaps(hdc, nIndex == SM_CXSCREEN ? HORZRES : VERTRES));
+#endif
}
-
- if ( s_pfnGetSystemMetricsForDpi )
+ else
+#endif
{
- const int dpi = window->GetDPI().y;
- return s_pfnGetSystemMetricsForDpi(nIndex, (UINT)dpi);
+ typedef int (WINAPI * GetSystemMetricsForDpi_t)(int nIndex, UINT dpi);
+ static GetSystemMetricsForDpi_t s_pfnGetSystemMetricsForDpi = NULL;
+ static bool s_initDone = false;
+
+ if ( !s_initDone )
+ {
+ wxLoadedDLL dllUser32("user32.dll");
+ wxDL_INIT_FUNC(s_pfn, GetSystemMetricsForDpi, dllUser32);
+ s_initDone = true;
+ }
+
+ if ( s_pfnGetSystemMetricsForDpi )
+ {
+ const int dpi = window->GetDPI().y;
+ return s_pfnGetSystemMetricsForDpi(nIndex, (UINT)dpi);
+ }
}
}
#else
- wxUnusedVar(window);
+ wxUnusedVar(win);
#endif // wxUSE_DYNLIB_CLASS
return ::GetSystemMetrics(nIndex);
diff --git a/src/osx/cocoa/dataview.mm b/src/osx/cocoa/dataview.mm
index f188e61089..7b867002d1 100644
--- a/src/osx/cocoa/dataview.mm
+++ b/src/osx/cocoa/dataview.mm
@@ -1604,6 +1604,15 @@ outlineView:(NSOutlineView*)outlineView
}
}
+//FIXME Vojtech: This is a workaround to get at least the "mouse move" events at the wxDataViewControl,
+// so we can show the tooltips. The "mouse move" events are being send only if the wxDataViewControl
+// has focus, which is a limitation of wxWidgets. We may grab focus on "mouse entry" though.
+- (void)mouseMoved:(NSEvent *)event
+{
+if (! implementation->DoHandleMouseEvent(event))
+ [super mouseMoved:event];
+}
+
//
// contextual menus
//
@@ -2006,7 +2015,8 @@ void wxCocoaDataViewControl::keyEvent(WX_NSEvent event, WXWidget slf, void *_cmd
if ( !dvc->GetEventHandler()->ProcessEvent(eventDV) )
wxWidgetCocoaImpl::keyEvent(event, slf, _cmd);
}
- else
+ //FIXME Vojtech's hack to get the accelerators assigned to the wxDataViewControl working.
+ else if (! DoHandleKeyEvent(event))
{
wxWidgetCocoaImpl::keyEvent(event, slf, _cmd); // all other keys
}
@@ -2540,12 +2550,22 @@ void wxCocoaDataViewControl::DoSetIndent(int indent)
void wxCocoaDataViewControl::HitTest(const wxPoint& point, wxDataViewItem& item, wxDataViewColumn*& columnPtr) const
{
- NSPoint const nativePoint = wxToNSPoint((NSScrollView*) GetWXWidget(),point);
+ NSTableHeaderView *headerView = [m_OutlineView headerView];
+ if (headerView && point.y < headerView.visibleRect.size.height) {
+ // The point is inside the header area.
+ columnPtr = NULL;
+ item = wxDataViewItem();
+ return;
+ }
+ // Convert from the window coordinates to the virtual scrolled view coordinates.
+ NSScrollView *scrollView = [m_OutlineView enclosingScrollView];
+ const NSRect &visibleRect = scrollView.contentView.visibleRect;
+ NSPoint const nativePoint = wxToNSPoint((NSScrollView*) GetWXWidget(),
+ wxPoint(point.x + visibleRect.origin.x, point.y + visibleRect.origin.y));
int indexColumn;
int indexRow;
-
indexColumn = [m_OutlineView columnAtPoint:nativePoint];
indexRow = [m_OutlineView rowAtPoint: nativePoint];
if ((indexColumn >= 0) && (indexRow >= 0))
diff --git a/src/osx/cocoa/settings.mm b/src/osx/cocoa/settings.mm
index c819deeb0c..dc3c3b0b53 100644
--- a/src/osx/cocoa/settings.mm
+++ b/src/osx/cocoa/settings.mm
@@ -222,7 +222,7 @@ wxFont wxSystemSettingsNative::GetFont(wxSystemFont index)
// ----------------------------------------------------------------------------
// Get a system metric, e.g. scrollbar size
-int wxSystemSettingsNative::GetMetric(wxSystemMetric index, const wxWindow* WXUNUSED(win))
+int wxSystemSettingsNative::GetMetric(wxSystemMetric index, const wxWindow* win)
{
int value;
@@ -257,11 +257,11 @@ int wxSystemSettingsNative::GetMetric(wxSystemMetric index, const wxWindow* WXUN
// TODO case wxSYS_WINDOWMIN_Y:
case wxSYS_SCREEN_X:
- wxDisplaySize(&value, NULL);
+ wxDisplaySize(win, &value, NULL);
return value;
case wxSYS_SCREEN_Y:
- wxDisplaySize(NULL, &value);
+ wxDisplaySize(win, NULL, &value);
return value;
// TODO case wxSYS_FRAMESIZE_X:
diff --git a/src/osx/cocoa/window.mm b/src/osx/cocoa/window.mm
index 635ea286d4..42ae67e27a 100644
--- a/src/osx/cocoa/window.mm
+++ b/src/osx/cocoa/window.mm
@@ -191,6 +191,9 @@ NSRect wxOSXGetFrameForControl( wxWindowMac* window , const wxPoint& pos , const
- (BOOL)isEnabled;
- (void)setEnabled:(BOOL)flag;
+- (BOOL)clipsToBounds;
+- (void)setClipsToBounds:(BOOL)clipsToBounds;
+
- (void)setImage:(NSImage *)image;
- (void)setControlSize:(NSControlSize)size;
@@ -2559,6 +2562,7 @@ wxWidgetImpl( peer, flags )
if ( m_osxView )
CFRetain(m_osxView);
[m_osxView release];
+ m_osxView.clipsToBounds = YES;
}
--
2.42.0.windows.2

View File

@@ -1,3 +1,33 @@
From 5e82980ed1762338794d06b3f9f22fa10e050622 Mon Sep 17 00:00:00 2001
From: SoftFever <softfeverever@gmail.com>
Date: Sat, 23 Dec 2023 20:08:41 +0800
Subject: [PATCH] wx 3.1.5 patch for Orca
---
build/cmake/init.cmake | 4 ++
build/cmake/lib/webview/CMakeLists.txt | 4 +-
include/wx/fontutil.h | 15 +++++++-
include/wx/gdicmn.h | 3 ++
include/wx/generic/grid.h | 4 +-
include/wx/msw/font.h | 2 +-
include/wx/msw/tooltip.h | 4 +-
include/wx/osx/app.h | 2 +-
src/common/combocmn.cpp | 13 +++++--
src/common/datavcmn.cpp | 6 ++-
src/common/dcbufcmn.cpp | 8 +++-
src/common/gdicmn.cpp | 14 +++++++
src/common/image.cpp | 6 +--
src/common/intl.cpp | 7 ++++
src/generic/grid.cpp | 53 +++++++++++++++++++++-----
src/msw/bmpcbox.cpp | 9 ++++-
src/msw/font.cpp | 14 +++----
src/msw/menuitem.cpp | 2 +
src/msw/window.cpp | 52 ++++++++++++++++---------
src/osx/cocoa/dataview.mm | 26 +++++++++++--
src/osx/cocoa/settings.mm | 6 +--
src/osx/cocoa/window.mm | 4 ++
22 files changed, 199 insertions(+), 59 deletions(-)
diff --git a/build/cmake/init.cmake b/build/cmake/init.cmake
index 0bc4f934b9..479431a69c 100644
--- a/build/cmake/init.cmake
@@ -15,10 +45,10 @@ index 0bc4f934b9..479431a69c 100644
if(WAYLANDEGL_FOUND AND wxHAVE_GDK_WAYLAND)
list(APPEND OPENGL_LIBRARIES ${WAYLANDEGL_LIBRARIES})
diff --git a/build/cmake/lib/webview/CMakeLists.txt b/build/cmake/lib/webview/CMakeLists.txt
index cc3298ff33..8adbeaea4f 100644
index cc3298ff33..aa103ae474 100644
--- a/build/cmake/lib/webview/CMakeLists.txt
+++ b/build/cmake/lib/webview/CMakeLists.txt
@@ -56,7 +56,7 @@ if(APPLE)
@@ -56,9 +56,9 @@ if(APPLE)
elseif(WXMSW)
if(wxUSE_WEBVIEW_EDGE)
# Update the following variables if updating WebView2 SDK
@@ -31,7 +61,7 @@ index cc3298ff33..8adbeaea4f 100644
set(WEBVIEW2_DEFAULT_PACKAGE_DIR "${CMAKE_BINARY_DIR}/packages/Microsoft.Web.WebView2.${WEBVIEW2_VERSION}")
diff --git a/include/wx/fontutil.h b/include/wx/fontutil.h
index 09ad8c8ef3..3c0c2d8f7e 100644
index 09ad8c8ef3..c228e167d7 100644
--- a/include/wx/fontutil.h
+++ b/include/wx/fontutil.h
@@ -294,7 +294,11 @@ public:
@@ -41,9 +71,9 @@ index 09ad8c8ef3..3c0c2d8f7e 100644
- void SetFractionalPointSize(double pointsize);
+ void SetFractionalPointSize(double pointsize
+#if defined(__WXMSW__)
+ , const wxWindow *window = nullptr
+ , const wxWindow *window = nullptr
+#endif
+ );
+ );
void SetPixelSize(const wxSize& pixelSize);
void SetStyle(wxFontStyle style);
void SetNumericWeight(int weight);
@@ -54,9 +84,9 @@ index 09ad8c8ef3..3c0c2d8f7e 100644
- void SetSizeOrDefault(double size)
+ void SetSizeOrDefault(double size
+#if defined(__WXMSW__)
+ , const wxWindow *window = nullptr
+ , const wxWindow *window = nullptr
+#endif
+ )
+ )
{
SetFractionalPointSize
(
@@ -151,7 +181,7 @@ index 317a0ca96f..58014ec1d4 100644
void OSXStoreOpenURL(const wxString &url ) { m_getURL = url ; }
#endif
diff --git a/src/common/combocmn.cpp b/src/common/combocmn.cpp
index b61aac35bf..d12b745e8c 100644
index b61aac35bf..7cfc97d2f8 100644
--- a/src/common/combocmn.cpp
+++ b/src/common/combocmn.cpp
@@ -2141,7 +2141,7 @@ void wxComboCtrlBase::CreatePopup()
@@ -180,7 +210,7 @@ index b61aac35bf..d12b745e8c 100644
- if ( spaceBelow < szp.y )
+ int anchorSideVertical = m_anchorSide & (wxUP | wxDOWN);
+ if (// Pop up as asked for by the library user.
+ (anchorSideVertical & wxUP) ||
+ (anchorSideVertical & wxUP) ||
+ // Automatic: Pop up if it does not fit down.
+ (anchorSideVertical == 0 && spaceBelow < szp.y ))
{
@@ -228,7 +258,7 @@ index 74958fce10..59844f4526 100644
return buffer;
}
diff --git a/src/common/gdicmn.cpp b/src/common/gdicmn.cpp
index 20442bbc73..9a24951ec7 100644
index 20442bbc73..bc2c35bee6 100644
--- a/src/common/gdicmn.cpp
+++ b/src/common/gdicmn.cpp
@@ -863,11 +863,25 @@ void wxDisplaySize(int *width, int *height)
@@ -241,7 +271,7 @@ index 20442bbc73..9a24951ec7 100644
+ if ( width )
+ *width = size.x;
+ if ( height )
+ *height = size.y;
+ *height = size.y;
+}
+
wxSize wxGetDisplaySize()
@@ -257,8 +287,27 @@ index 20442bbc73..9a24951ec7 100644
void wxClientDisplayRect(int *x, int *y, int *width, int *height)
{
const wxRect rect = wxGetClientDisplayRect();
diff --git a/src/common/image.cpp b/src/common/image.cpp
index 78fe5b82a3..46db8722ce 100644
--- a/src/common/image.cpp
+++ b/src/common/image.cpp
@@ -383,11 +383,11 @@ wxImage wxImage::ShrinkBy( int xFactor , int yFactor ) const
unsigned char red = pixel[0] ;
unsigned char green = pixel[1] ;
unsigned char blue = pixel[2] ;
- unsigned char alpha = 255 ;
- if ( source_alpha )
- alpha = *(source_alpha + y_offset + x * xFactor + x1) ;
if ( !hasMask || red != maskRed || green != maskGreen || blue != maskBlue )
{
+ unsigned char alpha = 255 ;
+ if ( source_alpha )
+ alpha = *(source_alpha + y_offset + x * xFactor + x1) ;
if ( alpha > 0 )
{
avgRed += red ;
diff --git a/src/common/intl.cpp b/src/common/intl.cpp
index 0b0d8798f4..7072fab18a 100644
index 0b0d8798f4..294f542b1f 100644
--- a/src/common/intl.cpp
+++ b/src/common/intl.cpp
@@ -1628,6 +1628,12 @@ GetInfoFromLCID(LCID lcid,
@@ -266,7 +315,7 @@ index 0b0d8798f4..7072fab18a 100644
str = buf;
+//FIXME Vojtech: We forcefully set the locales for a decimal point to "C", but this
+// is not possible for the Win32 locales, therefore there is a discrepancy.
+// is not possible for the Win32 locales, therefore there is a discrepancy.
+// It looks like we live with the discrepancy for at least half a year, so we will
+// suppress the assert until we fix Slic3r to properly switch to "C" locales just
+// for file import / export.
@@ -667,3 +716,28 @@ index de5f52860c..a9581174a4 100644
return value;
// TODO case wxSYS_FRAMESIZE_X:
diff --git a/src/osx/cocoa/window.mm b/src/osx/cocoa/window.mm
index b322e582c5..79de567333 100644
--- a/src/osx/cocoa/window.mm
+++ b/src/osx/cocoa/window.mm
@@ -190,6 +190,9 @@ NSRect wxOSXGetFrameForControl( wxWindowMac* window , const wxPoint& pos , const
- (BOOL)isEnabled;
- (void)setEnabled:(BOOL)flag;
+- (BOOL)clipsToBounds;
+- (void)setClipsToBounds:(BOOL)clipsToBounds;
+
- (void)setImage:(NSImage *)image;
- (void)setControlSize:(NSControlSize)size;
@@ -2505,6 +2508,7 @@ wxWidgetImpl( peer, flags )
if ( m_osxView )
CFRetain(m_osxView);
[m_osxView release];
+ m_osxView.clipsToBounds = YES;
}
--
2.41.0.windows.2

View File

@@ -1,12 +1,16 @@
set(_wx_git_tag v3.1.5)
set(_wx_version 3.1.5)
set(_wx_git_tag v${_wx_version})
set(_wx_toolkit "")
set(_wx_private_font "-DwxUSE_PRIVATE_FONTS=1")
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
set(_wx_private_font "-DwxUSE_PRIVATE_FONTS=1")
if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
set(_gtk_ver 2)
if (DEP_WX_GTK3)
set(_gtk_ver 3)
endif ()
set(_wx_toolkit "-DwxBUILD_TOOLKIT=gtk${_gtk_ver}")
endif()
@@ -16,20 +20,35 @@ else ()
set(_wx_edge "-DwxUSE_WEBVIEW_EDGE=OFF")
endif ()
set(_wx_orcaslicer_patch "${CMAKE_CURRENT_LIST_DIR}/0001-wx-3.1.5-patch-for-Orca.patch")
if (MSVC)
set(_patch_cmd if not exist WXWIDGETS_PATCHED ( "${GIT_EXECUTABLE}" apply --verbose --ignore-space-change --whitespace=fix ${CMAKE_CURRENT_LIST_DIR}/0001-wxWidget-fix.patch && type nul > WXWIDGETS_PATCHED ) )
set(_patch_cmd if not exist WXWIDGETS_PATCHED ( "${GIT_EXECUTABLE}" apply --verbose --ignore-space-change --whitespace=fix ${_wx_orcaslicer_patch} && type nul > WXWIDGETS_PATCHED ) )
else ()
set(_patch_cmd test -f WXWIDGETS_PATCHED || ${PATCH_CMD} ${CMAKE_CURRENT_LIST_DIR}/0001-wxWidget-fix.patch && touch WXWIDGETS_PATCHED)
set(_patch_cmd test -f WXWIDGETS_PATCHED || ${PATCH_CMD} ${_wx_orcaslicer_patch} && touch WXWIDGETS_PATCHED)
endif ()
if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
set(_patch_cmd ${PATCH_CMD} ${CMAKE_CURRENT_LIST_DIR}/0001-wxWidget-fix.patch)
set(_patch_cmd ${PATCH_CMD} ${_wx_orcaslicer_patch})
endif ()
# Note: for anybody wanting to switch to tarball fetching - this won't just work as
# git apply expects a git repo. Either git init empty repo, or change patching method.
# if (WIN32)
# # Windows requires a different tarball because of configured line endings as stated in docs.
# set(_wx_tarball_url https://github.com/wxWidgets/wxWidgets/releases/download/${_wx_git_tag}/wxWidgets-${_wx_version}.7z)
# set(_wx_tarball_hash 99f5382312e4a4aea444ada07341a72c5d4a69b58d8e76586d4b94ede7f5ef4d)
# else()
# set(_wx_tarball_url https://github.com/wxWidgets/wxWidgets/releases/download/${_wx_git_tag}/wxWidgets-${_wx_version}.tar.bz2)
# set(_wx_tarball_hash d7b3666de33aa5c10ea41bb9405c40326e1aeb74ee725bb88f90f1d50270a224)
# endif()
orcaslicer_add_cmake_project(
wxWidgets
GIT_REPOSITORY "https://github.com/wxWidgets/wxWidgets"
GIT_TAG ${_wx_git_tag}
GIT_SHALLOW ON
# URL ${_wx_tarball_url}
# URL_HASH SHA256=${_wx_tarball_hash}
PATCH_COMMAND ${_patch_cmd}
DEPENDS ${PNG_PKG} ${ZLIB_PKG} ${EXPAT_PKG} dep_TIFF dep_JPEG
CMAKE_ARGS

View File

@@ -1 +1,35 @@
WIP
OrcaSlicer use `M106 P2` command to control auxiliary cooling fan.
If you are using Klipper, you can define a `M106` macro to control the both normal part cooling fan and auxiliary fan and exhaust fan.
Below is a reference configuration for Klipper.
*Note: Don't forget to change the pin name to the actual pin name you are using in the configuration*
```
# instead of using [fan], we define the default part cooling fan with [fan_generic] here
# this is the default part cooling fan
[fan_generic fan0]
pin: PA7
cycle_time: 0.01
hardware_pwm: false
# this is the auxiliary fan
# comment out it if you don't have auxiliary fan
[fan_generic fan2]
pin: PA8
cycle_time: 0.01
hardware_pwm: false
# this is the exhaust fan
# comment out it if you don't have exhaust fan
[fan_generic fan3]
pin: PA9
cycle_time: 0.01
hardware_pwm: false
[gcode_macro M106]
gcode:
{% set fan = 'fan' + (params.P|int if params.P is defined else 0)|string %}
{% set speed = (params.S|float / 255 if params.S is defined else 1.0) %}
SET_FAN_SPEED FAN={fan} SPEED={speed}
```

View File

@@ -10,12 +10,13 @@
1. [Max Volumetric speed](#Max-Volumetric-speed)
2. [VFA]
**NOTE**: After completing the calibration process, remember to create a new project in order to exit the calibration mode.
**NOTE**: After completing the calibration process, remember to create a new project in order to exit the calibration mode.
**NOTE2**: @ItsDeidara has made a webpage to help with the calculation. Check it out if those equations give you a headache [here](https://orcalibrate.com/).
# Flow rate
##### *NOTE: For Bambulab X1/X1C users, make sure you do not select the 'Flow calibration' option.*
![uncheck](https://user-images.githubusercontent.com/103989404/221345187-3c317a46-4d85-4221-99b9-adb5c7f48026.jpeg)
----------------------------------------
![flowrate](https://user-images.githubusercontent.com/103989404/210137579-3fd141ad-f2da-4542-a1fd-fc4b4d673908.gif)
![flowrate](./images/flow-calibration.gif)
Calibrating the flow rate involves a two-step process.
Steps
1. Select the printer, filament, and process you would like to use for the test.
@@ -29,8 +30,8 @@ Steps
6. Perform the `Pass 2` calibration. This process is similar to `Pass 1`, but a new project with ten blocks will be generated. The flow rate modifiers for this project will range from `-9 to 0`.
7. Repeat steps 4 and 5. In this case, if your previous flow ratio was 1.029 and you selected the block with a flow rate modifier of -6, the new value should be calculated as follows: `1.029x(100-6)/100 = 0.96726`. ** Remember ** to save the filament profile.
![pass2](https://user-images.githubusercontent.com/103989404/210139072-f2fa91a6-4e3b-4d2a-81f2-c50155e1ff6d.jpg)
![-6](https://user-images.githubusercontent.com/103989404/210139131-ee224146-b242-4c1c-ac96-35ef0ca591f1.jpg)
![image](https://user-images.githubusercontent.com/103989404/210139721-919be130-fbba-4e3a-aa58-8a563e8c7792.png)
![-6](https://user-images.githubusercontent.com/103989404/210139131-ee224146-b242-4c1c-ac96-35ef0ca591f1.jpg)
![image](./images/flowcalibration_update_flowrate.jpg)
# Pressure Advance

View File

@@ -1 +1,52 @@
WIP...
OrcaSlicer use `M141/M191` command to control active chamber heater.
If `Activate temperature control` is checked, OrcaSlicer will insert `M191` command at the beginning of the gcode(before `Machine G-code`).
![image](./images/activate_chamber_heater.jpg)
*Note: If the machine is equipped with an auxiliary fan, OrcaSlicer will automatically activate the fan during the heating period to help circulate air in the chamber.*
There are two chamber temperature variables available that we can use in `Machine G-code` to control the chamber temperature, if you prefer:
To access the chamber temperature set in the first filament, use:
`M191 S{chamber_temperature[0]}`
To use the overall chamber temperature, which is the highest chamber temperature set across all filaments, use:
`M191 S{overall_chamber_temperature}`
--------------------------Klipper--------------------------
If you are using Klipper, you can define these macros to control the active chamber heater.
Bellow is a reference configuration for Klipper.
*Note: Don't forget to change the pin name/values to the actual values you are using in the configuration*
```
[heater_generic chamber_heater]
heater_pin:PB10
max_power:1.0
# Orca note: here the temperature sensor should be the sensor you are using for chamber temperature, not the PTC sensor
sensor_type:NTC 100K MGB18-104F39050L32
sensor_pin:PA1
control = pid
pid_Kp = 63.418
pid_ki = 0.960
pid_kd = 1244.716
min_temp:0
max_temp:70
[gcode_macro M141]
gcode:
SET_HEATER_TEMPERATURE HEATER=chamber_heater TARGET={params.S|default(0)}
[gcode_macro M191]
gcode:
{% set s = params.S|float %}
{% if s == 0 %}
# If target temperature is 0, do nothing
M117 Chamber heating cancelled
{% else %}
SET_HEATER_TEMPERATURE HEATER=chamber_heater TARGET={s}
# Orca: uncomment the following line if you want to use heat bed to assist chamber heating
# M140 S100
TEMPERATURE_WAIT SENSOR="heater_generic chamber_heater" MINIMUM={s-1} MAXIMUM={s+1}
M117 Chamber at target temperature
{% endif %}
```

View File

@@ -0,0 +1,181 @@
<h1>Extrusion rate smoothing</h1>
Extrusion rate smoothing (ERS), also known as pressure equalizer in Prusa Slicer, aims to **limit the rate of extrusion volume change to be below a user set threshold (the ERS value).** It aims to assist the printer firmware internal motion planners, pressure advance in achieving the desired nozzle flow and reducing deviations against the ideal flow.
This happens by reducing the stresses put on the extrusion system as well as reducing the absolute deviations from the ideal extrusion flow caused by pressure advance smooth time.
This feature is especially helpful when printing at high accelerations and large flow rates as the deviations are larger in these cases.
![Screenshot 2023-09-18 at 22 44 26](https://github.com/SoftFever/OrcaSlicer/assets/59056762/281b9c78-9f5c-428e-86b9-509de099a3e7)
<h2>Theory</h2>
Enabling this feature creates a small **speed "ramp"** by slowing down and ramping up print speeds prior to and after the features causing a sudden change in extrusion flow rate needs, such as overhangs and overhang perimeters.
This works by breaking down the printed line segments into smaller "chunks", proportional to the ERS segment length, and reduces the print speed of these segments so that the **requested extrusion volumetric flow rate change is less than or equal to the ERS threshold**.
In summary, **it takes the "edge" off rapid extrusion changes caused by acceleration/deceleration as these are now spread over a longer distance and time.** Therefore, it can reduce wall artefacts that show when the print speeds change suddenly. These artefacts are occuring because the extruder and firmware cannot perfectly adhere to the requested by the slicer flow rates, especially when the extrusion rate is changing rapidly.
**The example below shows the artefact that is mitigated by ERS.**
![ERS Disabled](https://github.com/SoftFever/OrcaSlicer/assets/59056762/31fdbf91-2067-4286-8bc1-4f7de4a628b6)
The bulging visible above is due to the extruder not being able to respond fast enough against the required speed change when printing with high accelerations and high speeds and requested to slow down for an overhang.
In the above scenario, the printer (Bambu Lab X1 Carbon) was requested to slow down from a 200mm/sec print speed to 40mm/sec at an acceleration of 5k/sec2. **The extruder could not keep up with the pressure change, resulting in a slight bump ahead at the point of speed change.**
This parameter interacts with the below printer kinematic settings and physical limits:
**1. The limits of the extruder system** - how fast can it change pressure in the nozzle
**2. The configured pressure advance values** - that also affect pressure changes in the nozzle
**3. The acceleration profile of the printer** - higher accelerations mean higher pressure changes
**4. The pressure advance smooth time (klipper)** - higher smooth time means higher deviation from ideal extrusion, hence more opportunity for this feature to be useful.
<h3>Acceleration vs. Extrusion rate smoothing</h3>
A printer's motion system does not exactly follow the speed changes seen in the gcode preview screen of Orca slicer.
When a speed change is requested, the firmware look ahead planner calculates the slow down needed to achieve the target speed. The rate of slowdown is limited by the move's acceleration value.
**Lets consider an example.** Assume printing an overhang wall with **2k external wall acceleration**, were the printer is called to slow down from **200mm/sec to 40mm/sec**.
This deceleration move would happen over approximately 9.6mm. This is derived from the following equation:
![image](https://github.com/igiannakas/OrcaSlicer/assets/59056762/4ba0356b-49ab-428c-ab10-f2c88bcc1bcb)
![image](https://github.com/igiannakas/OrcaSlicer/assets/59056762/3958deb5-fbc3-4d07-8903-4575033717fd)
The time taken to decelerate to this new speed would be approx. 0.08 seconds, derived from the following equation:
![image](https://github.com/igiannakas/OrcaSlicer/assets/59056762/ea9f19b4-defe-4656-9ecc-a6576c87d8e0)
A printer printing at 200mm/sec with a 0.42 line width and 0.16 layer height would be extruding plastic at approx. 12.16mm3/sec, as can also be seen from the below visual.
![image](https://github.com/igiannakas/OrcaSlicer/assets/59056762/83242b26-7174-4da1-b815-d9fcec767bcd)
When the printer is extruding at 40mm/sec with the same line width and layer height as above, the flow rate is 2.43mm3/sec.
So what we are asking the extruder to do in this example is **slow down from 12.16mm3/sec flow to 2.43mm3/sec flow in 0.08 seconds** or an extrusion change rate of 121mm3/sec2.
**This value is proportional to the acceleration of the printer. At 4k this value doubles, at 1k it is half and is independent of the speed of movement or starting and ending speeds.**
**This value is also proportional to the line width - double the line width will result in double the extrusion rate change and vice versa. Same for layer height.**
So, continuing with the worked example, a 2k acceleration produces an extrusion rate change ramp of 121mm3/sec2. **Therefore, setting a value higher than this would not bring any benefit to the print quality as the motion system would slow down less aggressively based on its acceleration settings.**
**Therefore, the acceleration values act as a meaningfull upper limit to this setting.** An indicative set of values has been provided later in this page.
<h3>Pressure advance vs extrusion rate smoothing</h3>
Then we need to consider pressure advance and smooth time as factors that influence extrusion rate.
**Pressure Advance** adjusts the extruder's speed to account for the pressure changes inside the hot ends melt zone. When the print head moves and extrudes filament, there's a delay between the movement of the extruder gear and the plastic being extruded due to the compressibility of the molten plastic in the hot end. This delay can cause too much plastic to be extruded when the print head starts moving or not enough plastic when the print head stops, leading to issues like blobbing or under-extrusion.
**Pressure Advance Smooth time** helps to mitigate potential negative effects on print quality due to the rapid changes in extruder flow rate, which are controlled by the Pressure Advance algorithm. This parameter essentially adds a smoothing effect to the adjustments made by Pressure Advance, aiming to prevent sharp or sudden changes in the extrusion rate.
When Pressure Advance adjusts the extruder speed to compensate for the pressure build-up or reduction in the hot end, it can lead to abrupt changes in the flow rate. These abrupt changes can potentially cause issues like:
1. Extruder motor skipping,
2. Increased wear on the extruder gear and filament,
3. Visible artifacts on the print surface due to non-uniform extrusion.
The smooth time setting introduces a controlled delay over which the Pressure Advance adjustments are spread out. This results in a more gradual application or reduction of extrusion pressure, leading to smoother transitions in filament flow.
The trade-off is extrusion accuracy. There is a deviation between the requested extrusion amount and the actual extrusion amount due to this smoothing.
**1. Increasing Smooth Time:** Leads to more gradual changes in extrusion pressure. While this can reduce artifacts and stress on the extruder system, setting it too high may diminish the effectiveness of Pressure Advance, as the compensation becomes too delayed to counteract the pressure dynamics accurately.
**2. Decreasing Smooth Time:** Makes the Pressure Advance adjustments more immediate, which can improve the responsiveness of pressure compensation but may also reintroduce abrupt changes in flow rate, potentially leading to the issues mentioned above.
In essence, p**ressure advance smooth time creates an intentional deviation from the ideal extruder rotation** and, therefore, extrusion amount, to allow the printer's extruder to perform within its mechanical limits. Typically, this value is set to 0.04sec, which means that when Pressure Advance adjusts the extruder's flow rate to compensate for changes in pressure within the hot end, these adjustments are spread out over a period of 0.04 seconds.
There is a great example of pressure advance smooth time induced deviations [here](https://klipper.discourse.group/t/pressure-advance-smooth-time-skews-pressure-advance/13451) that is worth a read to get more insight in this trade-off.
In the worked example above, **we need to set an Extrusion Rate smoothing value enough to decrease the error introduced by pressure advance smooth time against the produced output flow.** The lower the extrusion rate smoothing value, the lower the changes in flow over time hence the lower the absolute deviation from the ideal extrusion caused by the smooth time algorithm. However, going too low will result in a material decrease in overall print speed, as the print speed will be materially reduced to achieve low extrusion deviations between features, for no real benefit after a point.
**The best way to find what the lower beneficial limit is through experimentation.** Print an object with sharp overhangs that are slowed down because off the overhang print speed settings and observe for extrusion inconsistencies.
<h2>Finding the ideal Extrusion Rate smoothing value</h2>
**Firstly, this value needs to be lower than the extrusion rate changes resulting from the acceleration profile of the printer.** As, generally, the greatest impact is in external wall finish, use your external perimeter acceleration as a point of reference.
**Below are some approximate ERS values for 0.42 line width and 0.16 layer height.**
1. 30mm3/sec for 0.5k acceleration
2. 60.5mm3/sec for 1k acceleration
3. 121mm3/sec2 for 2k acceleration
4. 242mm3/sec2 for 4k acceleration
**Below are some approximate ERS values for 0.42 line width and 0.20 layer height.**
1. 38mm3/sec for 0.5k acceleration
2. 76mm3/sec for 1k acceleration
3. 150mm3/sec2 for 2k acceleration
4. 300mm3/sec2 for 4k acceleration
**Below are some approximate ERS values for 0.45 line width and 0.16 layer height.**
1. 32mm3/sec for 0.5k acceleration
2. 65mm3/sec for 1k acceleration
3. 129mm3/sec2 for 2k acceleration
4. 260mm3/sec2 for 4k acceleration
**So, your tuning starting point needs to be an ERS value that is less than this.** A good point experiment with test prints would be **a value of 60-80%** of the above maximum values. This will give some meaningful assistance to pressure advance, reducing the deviation introduced by pressure advance smooth time. The greater the smooth time, the greater the quality benefit will be.
Therefore, for a **0.42 line width and 0.16 layer height**, the below are a recommended set of starting ERS values
1. 18-25mm3/sec for 0.5k acceleration
2. 35-50mm3/sec for 1k acceleration
3. 70-100mm3/sec2 for 2k acceleration
4. 145-200mm3/sec2 for 4k acceleration
If you are printing with a 0.2 layer height, you can increase these values by 25% and similarly reduce if printing with lower.
**The second factor is your extruder's mechanical abilities.** Direct drive extruders with a good grip on the filament typically are more responsive to extrusion rate changes. Similarly with stiff filaments. So, a Bowden printer or when printing softer material like TPU or soft PLAs like polyterra there is more opportunity for the extruder to slip or deviate from the desired extrusion amount due to mechanical grip or material deformation or just delay in propagating the pressure changes (in a Bowden setup).
**The final factor is the deviation introduced by pressure advance smooth time**, or equivalents in closed source firmware. The higher this value the larger the extrusion deviation from ideal. If you are using a direct drive extruder, reduce this value to 0.02 in your klipper firmware before tuning ERS, as a lower value results in lower deviations to mitigate. Then proceed to experimentaly tune ERS.
**So where does that leave us?**
Perform a test print with the above ERS settings as a starting point and adjust to your liking! If you notice budging on sharp overhangs where speed changes, like the hull of the benchy, reduce this value by 10% and try again.
If you're not noticing any artefacts, increase by 10%, but dont go over the maximum values recommended above because then this feature would have no effect in your print.
<h2>A note for Bowden printers using marlin without pressure advance. </h2>
If your printer is not equipped with pressure advance and, especially, if you are using a Bowden setup, you dont have the benefit of pressure advance dynamically adjusting your flow.
In this special case, ERS will be doing all the heavy lifting that pressure advance would typically perform. In this scenario a low value of 8-10mm3/sec is usually recommended, irrespective of your acceleration settings, to smooth out pressure changes in the extrusion system as much as possible without impacting print speed too much.
<h2>A note on ERS Segment length </h2>
Ideally you want this value set to 1 to allow for the largest number of steps between each speed transition. However, this may result in a too large of a gcode, with too many commands sent to your MCU per second and it may not be able to keep up. It will also slow down the Orca slicer front end as the sliced model is more complex to render.
For Klipper printers, a segment length of 1 works OK as the RPI or similar have enough computational power to handle the gcode command volume.
Similarly, for a Bambu lab printer, a segment length of 1 works well. **However, if you do notice your printer stuttering or stalling** (which may be the case with the lower powered P1 series printers) **or getting "Timer too close" errors** in Klipper, **increase this value to 2 or 3**. This would reduce the effectiveness of the setting but will present a more manageable load to your printer.
<h2>Limitations</h2>
**This feature can only work where speed changes are induced by the slicer** - for example when transitioning from fast to slow print moves when printing overhangs, bridges and from printing internal features to external features and vice versa.
However, it will not affect extruder behaviour when the printer is slowing down due to firmware commands - for example when turning around corners.
In this case, the printer slows down and then accelerates independently of what the slicer has requested. In this case, the slicer is commanding a consistent speed; however, the printer is adjusting this to operate within its printer kinematic limits (SCV/Jerk) and accelerations. As the slicer is not aware of this slow down, it cannot apply pre-emptive extrusion rate smoothing to the feature and instead, the changes are governed by the printer firmware exclusively.
<h2>Credits</h2>
**Original feature authors and creators:** The Prusa Slicer team, including [@bubnikv](https://github.com/bubnikv), [@hejllukas](https://github.com/hejllukas)
**Enhanced by:** [@MGunlogson](https://github.com/MGunlogson), introducing the feature to external perimeters, enhancing it by taking into account travel, retraction and implementing near-contiguous extrusions pressure equalizer adjustments.
**Ported to Orca:** [@igiannakas](https://github.com/igiannakas)
**Enhanced by:** [@noisyfox](https://github.com/Noisyfox), per object pressure equalization and fixing calculation logic bugs
**Wiki page:** [@igiannakas](https://github.com/igiannakas)
**Overall Orca owner and assurance:** [@softfever](https://github.com/SoftFever)
**Community testing and feedback:** [@HakunMatat4](https://github.com/HakunMatat4), [@psiberfunk](https://github.com/psiberfunk), [@u3dreal](https://github.com/u3dreal) and more

13
doc/Precise-wall.md Normal file
View File

@@ -0,0 +1,13 @@
The 'Precise Wall' is a distinctive feature introduced by OrcaSlicer, aimed at improving the dimensional accuracy of prints and minimizing layer inconsistencies by slightly increasing the spacing between the outer wall and the inner wall.
Below is a technical explanation of how this feature works.
First, it's important to understand some basic concepts like flow, extrusion width, and space. Slic3r has an excellent document that covers these topics in detail. You can refer to this article: [link to article](https://manual.slic3r.org/advanced/flow-math).
Now, let's dive into the specifics. Slic3r and its forks, such as PrusaSlicer, SuperSlicer, and OrcaSlicer, assume that the extrusion path has an oval shape, which accounts for the overlaps. For example, if we set the wall width to 0.4mm and the layer height to 0.2mm, the combined thickness of two walls laid side by side is 0.714mm instead of 0.8mm due to the overlapping.
![image](./images/precise_wall.png)
This approach enhances the strength of 3D-printed parts. However, it does have some side effects. For instance, when the inner-outer wall order is used, the outer wall can be pushed outside, leading to potential size inaccuracy and more layer inconsistency.
It's important to keep in mind that this approach to handling flow is specific to Slic3r and it's forks. Other slicing software, such as Cura, assumes that the extrusion path is rectangular and, therefore, does not include overlapping. Two 0.4 mm walls will result in a 0.8 mm shell thickness in Cura
OrcaSlicer adheres to Slic3r's approach to handling flow. To address the downsides mentioned earlier, OrcaSlicer introduced the 'Precise Wall' feature. When this feature is enabled in OrcaSlicer, the overlap between the outer wall and its adjacent inner wall is set to zero. This ensures that the overall strength of the printed part is unaffected, while the size accuracy and layer consistency are improved.

View File

@@ -4,4 +4,5 @@ Print settings:
* [Axiliary fan](auxiliary-fan)
* [Chamber temperature](chamber-temperature)
* [Air filtration/Exhaust fan](air-filtration)
* [Single Extruder Multimaterial](semm)
* [Single Extruder Multimaterial](semm)
* [Precise wall](Precise-wall)

View File

@@ -1,5 +1,8 @@
WIP...
### Scarf joint seam
WIP...
### Seam gap
![image](https://user-images.githubusercontent.com/103989404/215331359-236874c9-ca91-4dd4-b969-3cefc70ebe1b.png)

42
doc/adaptive-bed-mesh.md Normal file
View File

@@ -0,0 +1,42 @@
# Adaptive Bed Mesh Support
Orca Slicer introduces comprehensive support for adaptive bed meshing across a variety of firmware, including Marlin, Klipper, and RepRapFirmware (RRF).
This feature allows users to seamlessly integrate adaptive bed mesh commands within the Machine Start G-code.
The implementation is designed to be straightforward, requiring no additional plugins or alterations to firmware settings, thereby enhancing user experience and print quality directly from Orca Slicer.
![Screenshot 2024-02-24 104601](https://github.com/SoftFever/OrcaSlicer/assets/103989404/8ab1f26f-987d-4419-942f-b1384270a164)
## Settings in Orca Slicer:
`Bed mesh min`: This option sets the min point for the allowed bed mesh area. Due to the probe's XY offset, most printers are unable to probe the entire bed. To ensure the probe point does not go outside the bed area, the minimum and maximum points of the bed mesh should be set appropriately. OrcaSlicer ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not exceed these min/max points. This information can usually be obtained from your printer manufacturer. The default setting is (-99999, -99999), which means there are no limits, thus allowing probing across the entire bed.
`Bed mesh max`: This option sets the max point for the allowed bed mesh area. Due to the probe's XY offset, most printers are unable to probe the entire bed. To ensure the probe point does not go outside the bed area, the minimum and maximum points of the bed mesh should be set appropriately. OrcaSlicer ensures that adaptive_bed_mesh_min/adaptive_bed_mesh_max values do not exceed these min/max points. This information can usually be obtained from your printer manufacturer. The default setting is (99999, 99999), which means there are no limits, thus allowing probing across the entire bed.
`Probe point distance`: This option sets the preferred distance between probe points (grid size) for the X and Y directions, with the default being 50mm for both X and Y.
`Mesh margin`: This option determines the additional distance by which the adaptive bed mesh area should be expanded in the XY directions. Note for Klipper users: Orca Slicer will adjust adaptive bed mesh area according to the margin. It is recommended to set the margin to 0 in Klipper config or pass 0 when calling BED_MESH_CALIBRATE command(please refer to the example below).
## Available g-code variables for Adaptive Bed Mesh Command
`bed_mesh_probe_count`: Represents the probe count in the X and Y directions. This value is calculated based on the size of the adaptive bed mesh area and the distance between probe points.
`adaptive_bed_mesh_min`: Specifies the minimum coordinates of the adaptive bed mesh area, defining the starting point of the mesh.
`adaptive_bed_mesh_max`: Determines the maximum coordinates of the adaptive bed mesh area, indicating the endpoint of the mesh.
`ALGORITHM`: Identifies the algorithm used for adaptive bed mesh interpolation. This variable is useful for Klipper users. If bed_mesh_probe_count is less than 4, the algorithm is set to `lagrange`. Otherwise, it is set to `bicubic`.
## Example of Adaptive Bed Mesh usage in Orca Slicer:
### Marlin:
```
G29 X{bed_mesh_probe_count[0]} Y{bed_mesh_probe_count[1]} L{adaptive_bed_mesh_min[0]} R{adaptive_bed_mesh_max[0]} F{adaptive_bed_mesh_min[1]} B{adaptive_bed_mesh_max[1]} T V4
```
### Klipper:
```
; Always pass `ADAPTIVE_MARGIN=0` because Orca has already handled `adaptive_bed_mesh_margin` internally
BED_MESH_CALIBRATE mesh_min={adaptive_bed_mesh_min[0]},{adaptive_bed_mesh_min[1]} mesh_max={adaptive_bed_mesh_max[0]},{adaptive_bed_mesh_max[1]} ALGORITHM=[bed_mesh_algo] PROBE_COUNT={bed_mesh_probe_count[0]},{bed_mesh_probe_count[1]} ADAPTIVE=1 ADAPTIVE_MARGIN=0
```
### RRF:
```
M557 X{adaptive_bed_mesh_min[0]}:{adaptive_bed_mesh_max[0]} Y{adaptive_bed_mesh_min[1]}:{adaptive_bed_mesh_max[1]} P{bed_mesh_probe_count[0]}:{bed_mesh_probe_count[1]}
```
![Screenshot 2024-02-24 104759](https://github.com/SoftFever/OrcaSlicer/assets/103989404/ad4a8020-bec6-4361-abb9-4017ca77471f)

View File

@@ -1 +1,35 @@
WIP
OrcaSlicer use `M106 P3` command to control air-filtration/exhaust fan.
If you are using Klipper, you can define a `M106` macro to control the both normal part cooling fan and auxiliary fan and exhaust fan.
Below is a reference configuration for Klipper.
*Note: Don't forget to change the pin name to the actual pin name you are using in the configuration*
```
# instead of using [fan], we define the default part cooling fan with [fan_generic] here
# this is the default part cooling fan
[fan_generic fan0]
pin: PA7
cycle_time: 0.01
hardware_pwm: false
# this is the auxiliary fan
# comment out it if you don't have auxiliary fan
[fan_generic fan2]
pin: PA8
cycle_time: 0.01
hardware_pwm: false
# this is the exhaust fan
# comment out it if you don't have exhaust fan
[fan_generic fan3]
pin: PA9
cycle_time: 0.01
hardware_pwm: false
[gcode_macro M106]
gcode:
{% set fan = 'fan' + (params.P|int if params.P is defined else 0)|string %}
{% set speed = (params.S|float / 255 if params.S is defined else 1.0) %}
SET_FAN_SPEED FAN={fan} SPEED={speed}
```

Binary file not shown.

After

Width:  |  Height:  |  Size: 773 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

BIN
doc/images/ERS/intro.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 783 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

BIN
doc/images/precise_wall.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

View File

@@ -39,6 +39,11 @@
"pattern": "localization/i18n/hu/OrcaSlicer_hu.po",
"lang": "hu"
},
{
"type": "po",
"pattern": "localization/i18n/ja/OrcaSlicer_hu.po",
"lang": "it"
},
{
"type": "po",
"pattern": "localization/i18n/ja/OrcaSlicer_ja.po",
@@ -63,6 +68,11 @@
"type": "po",
"pattern": "localization/i18n/tr/OrcaSlicer_tr.po",
"lang": "tr"
},
{
"type": "po",
"pattern": "localization/i18n/tr/OrcaSlicer_pl.po",
"lang": "pl"
}
]
},

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -7,13 +7,16 @@ src/slic3r/GUI/Gizmos/GLGizmoScale.cpp
src/slic3r/GUI/Gizmos/GLGizmosManager.cpp
src/slic3r/GUI/Gizmos/GLGizmoPainterBase.cpp
src/slic3r/GUI/Gizmos/GizmoObjectManipulation.cpp
src/slic3r/GUI/Gizmos/GLGizmoAdvancedCut.cpp
src/slic3r/GUI/Gizmos/GLGizmoCut.cpp
src/slic3r/GUI/Gizmos/GLGizmoSimplify.cpp
src/slic3r/GUI/Gizmos/GLGizmoFaceDetector.cpp
src/slic3r/GUI/Gizmos/GLGizmoSeam.cpp
src/slic3r/GUI/Gizmos/GLGizmoSeam.hpp
src/slic3r/GUI/Gizmos/GLGizmoText.cpp
src/slic3r/GUI/Gizmos/GLGizmoText.hpp
src/slic3r/GUI/Gizmos/GLGizmoEmboss.cpp
src/slic3r/GUI/Gizmos/GLGizmoSVG.cpp
src/slic3r/GUI/Gizmos/GLGizmoMeasure.cpp
src/slic3r/GUI/GUI.cpp
src/slic3r/GUI/GUI_App.cpp
src/slic3r/GUI/GUI_AuxiliaryList.cpp
@@ -35,8 +38,6 @@ src/slic3r/GUI/ImGuiWrapper.cpp
src/slic3r/GUI/Jobs/ArrangeJob.cpp
src/slic3r/GUI/Jobs/OrientJob.cpp
src/slic3r/GUI/Jobs/FillBedJob.cpp
src/slic3r/GUI/Jobs/Job.cpp
src/slic3r/GUI/Jobs/PlaterJob.cpp
src/slic3r/GUI/Jobs/RotoptimizeJob.cpp
src/slic3r/GUI/Jobs/BindJob.cpp
src/slic3r/GUI/Jobs/PrintJob.cpp
@@ -57,6 +58,7 @@ src/slic3r/GUI/BedShapeDialog.hpp
src/slic3r/GUI/ConfigManipulation.cpp
src/slic3r/GUI/DeviceManager.cpp
src/slic3r/GUI/ExtraRenderers.cpp
src/slic3r/GUI/EditGCodeDialog.cpp
src/slic3r/GUI/Field.cpp
src/slic3r/GUI/GCodeViewer.cpp
src/slic3r/GUI/GLCanvas3D.cpp
@@ -95,12 +97,14 @@ src/slic3r/GUI/Selection.cpp
src/slic3r/GUI/SelectMachine.cpp
src/slic3r/GUI/SendSystemInfoDialog.cpp
src/slic3r/GUI/SendToPrinter.cpp
src/slic3r/GUI/SlicingProgressNotification.cpp
src/slic3r/GUI/BindDialog.cpp
src/slic3r/GUI/Tab.cpp
src/slic3r/GUI/Tab.hpp
src/slic3r/GUI/UnsavedChangesDialog.cpp
src/slic3r/GUI/Auxiliary.cpp
src/slic3r/GUI/UpdateDialogs.cpp
src/slic3r/GUI/UnsavedChangesDialog.cpp
src/slic3r/GUI/WipeTowerDialog.cpp
src/slic3r/GUI/wxExtensions.cpp
src/slic3r/GUI/WebUserLoginDialog.cpp
@@ -141,8 +145,17 @@ src/slic3r/GUI/CalibrationWizardPresetPage.cpp
src/slic3r/GUI/CalibrationWizardCaliPage.cpp
src/slic3r/GUI/CaliHistoryDialog.cpp
src/slic3r/GUI/BonjourDialog.cpp
src/slic3r/GUI/Gizmos/GLGizmoMeshBoolean.cpp
src/slic3r/GUI/PrintHostDialogs.cpp
src/slic3r/GUI/calib_dlg.cpp
src/slic3r/GUI/PrintHostDialogs.cpp
src/slic3r/GUI/Gizmos/GLGizmoMeshBoolean.cpp
src/slic3r/GUI/NetworkTestDialog.cpp
src/slic3r/GUI/CreatePresetsDialog.cpp
src/slic3r/GUI/DailyTips.cpp
src/slic3r/Utils/CalibUtils.cpp
src/slic3r/GUI/PhysicalPrinterDialog.cpp
src/slic3r/Utils/CalibUtils.cpp
src/slic3r/Utils/AstroBox.cpp
src/slic3r/Utils/Duet.cpp
src/slic3r/Utils/FlashAir.cpp
src/slic3r/Utils/MKS.cpp
src/slic3r/Utils/OctoPrint.cpp
src/slic3r/Utils/Repetier.cpp

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,131 +0,0 @@
{
"printers": [
{
"display_name": "Bambu Lab P1P",
"func": {
"FUNC_CHAMBER_TEMP": false,
"FUNC_FIRSTLAYER_INSPECT": false,
"FUNC_AI_MONITORING": true,
"FUNC_LIDAR_CALIBRATION": false,
"FUNC_BUILDPLATE_MARKER_DETECT": false,
"FUNC_FLOW_CALIBRATION": false,
"FUNC_MONITORING": false,
"FUNC_MEDIA_FILE": false,
"FUNC_VIRTUAL_CAMERA": false,
"FUNC_PRINT_WITHOUT_SD": false,
"FUNC_ALTER_RESOLUTION": false,
"FUNC_PRINT_ALL": false,
"FUNC_EXTRUSION_CALI": true,
"FUNC_MOTOR_NOISE_CALI": false,
"FUNC_PROMPT_SOUND": false,
"FUNC_VIRTUAL_TYAY": true
},
"camera_resolution": [ "720p" ],
"bed_temperature_limit": 100,
"model_id": "C11",
"printer_type": "C11",
"compatible_machine": [ "BL-P001", "BL-P002", "C12", "C13"],
"ftp_folder": "sdcard/",
"printer_thumbnail_image": "printer_thumbnail_p1p"
},
{
"display_name": "Bambu Lab P1S",
"func": {
"FUNC_CHAMBER_TEMP": false,
"FUNC_FIRSTLAYER_INSPECT": false,
"FUNC_AI_MONITORING": true,
"FUNC_LIDAR_CALIBRATION": false,
"FUNC_BUILDPLATE_MARKER_DETECT": false,
"FUNC_FLOW_CALIBRATION": false,
"FUNC_MONITORING": false,
"FUNC_MEDIA_FILE": false,
"FUNC_VIRTUAL_CAMERA": false,
"FUNC_PRINT_WITHOUT_SD": false,
"FUNC_ALTER_RESOLUTION": false,
"FUNC_PRINT_ALL": false,
"FUNC_MOTOR_NOISE_CALI": false,
"FUNC_PROMPT_SOUND": false,
"FUNC_VIRTUAL_TYAY": true
},
"camera_resolution": [ "720p" ],
"bed_temperature_limit": 100,
"model_id": "C12",
"compatible_machine":["BL-P001", "BL-P002", "C11", "C13"],
"printer_type": "C12",
"ftp_folder" : "sdcard/",
"printer_thumbnail_image": "printer_thumbnail_p1p"
},
{
"display_name": "Bambu Lab A1 mini",
"func": {
"FUNC_CHAMBER_TEMP": false,
"FUNC_FIRSTLAYER_INSPECT": false,
"FUNC_AI_MONITORING": false,
"FUNC_BUILDPLATE_MARKER_DETECT": false,
"FUNC_FLOW_CALIBRATION": true,
"FUNC_MONITORING": false,
"FUNC_MEDIA_FILE": false,
"FUNC_VIRTUAL_CAMERA": false,
"FUNC_PRINT_WITHOUT_SD": false,
"FUNC_ALTER_RESOLUTION": true,
"FUNC_CHAMBER_FAN": false,
"FUNC_AUX_FAN": false,
"FUNC_UPDATE_REMAIN": false,
"FUNC_EXTRUSION_CALI": false,
"FUNC_AUTO_LEVELING": true
},
"printer_arch" : "i3",
"camera_resolution": [ "720p" ],
"bed_temperature_limit": 100,
"model_id": "N1",
"compatible_machine":[],
"printer_type": "N1",
"ftp_folder" : "sdcard/",
"printer_thumbnail_image": "printer_thumbnail_n1"
},
{
"display_name": "Bambu Lab X1",
"func": {
"FUNC_CHAMBER_TEMP": false,
"FUNC_VIRTUAL_TYAY": true,
"FUNC_EXTRUSION_CALI": false,
"FUNC_MOTOR_NOISE_CALI": false,
"FUNC_PROMPT_SOUND": false
},
"model_id": "BL-P002",
"compatible_machine": [ "BL-P001", "C11", "C12", "C13"],
"camera_resolution": [ "720p", "1080p" ],
"printer_type": "3DPrinter-X1",
"printer_thumbnail_image": "printer_thumbnail"
},
{
"display_name": "Bambu Lab X1E",
"func": {
"FUNC_MOTOR_NOISE_CALI": false,
"FUNC_PROMPT_SOUND": false
},
"camera_resolution": [ "720p", "1080p" ],
"nozzle_max_temperature": 330,
"model_id": "C13",
"compatible_machine": [ "BL-P001", "BL-P002", "C11", "C12"],
"printer_type": "C13",
"printer_thumbnail_image": "printer_thumbnail"
},
{
"display_name": "Bambu Lab X1 Carbon",
"func": {
"FUNC_CHAMBER_TEMP": false,
"FUNC_VIRTUAL_TYAY": true,
"FUNC_EXTRUSION_CALI": false,
"FUNC_LOCAL_TUNNEL": false,
"FUNC_MOTOR_NOISE_CALI": false,
"FUNC_PROMPT_SOUND": false
},
"model_id": "BL-P001",
"compatible_machine": [ "BL-P002", "C11", "C12", "C13"],
"camera_resolution": [ "720p", "1080p" ],
"printer_type": "3DPrinter-X1-Carbon",
"printer_thumbnail_image": "printer_thumbnail"
}
]
}

View File

@@ -62,111 +62,121 @@
# Weight must be larger or equal to 1. Default weight is 1.
# Weight defines probability as weight : sum_of_all_weights.
[hint:3D Scene Operations]
text = 3D Scene Operations\nDid you know how to control view and object/part selection with mouse and touchpanel in the 3D scene?
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/3d-scene-operations
[hint:Precise wall]
text = Precise wall\nDid you know that turning on precise wall can improve precision and layer consistency?
documentation_link = https://github.com/SoftFever/OrcaSlicer/wiki/Precise-wall
[hint:Sandwich mode]
text = Sandwich mode\nDid you know that you can use sandwich mode (inner-outer-inner) to improve precision and layer consistency if your model doesn't have very steep overhangs?
[hint:Chamber temperature]
text = Chamber temperature\nDid you know that OrcaSlicer supports chamber temperature?
documentation_link = https://github.com/SoftFever/OrcaSlicer/wiki/Chamber-temperature
[hint:Calibration]
text = Calibration\nDid you know that calibrating your printer can do wonders? Check out our beloved calibration solution in OrcaSlicer.
documentation_link = https://github.com/SoftFever/OrcaSlicer/wiki/Calibration
[hint:Auxiliary fan]
text = Auxiliary fan\nDid you know that OrcaSlicer supports Auxiliary part cooling fan?
documentation_link = https://github.com/SoftFever/OrcaSlicer/wiki/Auxiliary-fan
[hint:Air filtration]
text = Air filtration/Exhaust Fan\nDid you know that OrcaSlicer can support Air filtration/Exhaust Fan?
documentation_link = https://github.com/SoftFever/OrcaSlicer/wiki/air-filtration
[hint:G-code window]
text = G-code window\nYou can turn on/off the G-code window by pressing the <b>C</b> key.
[hint:Switch workspaces]
text = Switch workspaces\nYou can switch between <b>Prepare</b> and <b>Preview</b> workspaces by pressing the <b>Tab</b> key.
[hint:How to use keyboard shortcuts]
text = How to use keyboard shortcuts\nDid you know that Orca Slicer offers a wide range of keyboard shortcuts and 3D scene operations.
[hint:Reverse on odd]
text = Reverse on odd\nDid you know that <b>Reverse on odd</b> feature can significantly improve the surface quality of your overhangs?
[hint:Cut Tool]
text = Cut Tool\nDid you know that you can cut a model at any angle and position with the cutting tool?
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/cut-tool
[hint:Fix Model]
text = Fix Model\nDid you know that you can fix a corrupted 3D model to avoid a lot of slicing problems?
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/fix-model
text = Fix Model\nDid you know that you can fix a corrupted 3D model to avoid a lot of slicing problems on the Windows system?
[hint:Timelapse]
text = Timelapse\nDid you know that you can generate a timelapse video during each print?
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/Timelapse
[hint:Auto-Arrange]
text = Auto-Arrange\nDid you know that you can auto-arrange all objects in your project?
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/auto-arranging
[hint:Auto-Orient]
text = Auto-Orient\nDid you know that you can rotate objects to an optimal orientation for printing by a simple click?
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/auto-orientation
[hint:Lay on Face]
text = Lay on Face\nDid you know that you can quickly orient a model so that one of its faces sits on the print bed? Select the \"Place on face\" function or press the <b>F</b> key.
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/lay-on-face
[hint:Object List]
text = Object List\nDid you know that you can view all objects/parts in a list and change settings for each object/part?
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/object-list
#[hint:Search Functionality]
#text = Search Functionality\nDid you know that you use the Search tool to quickly find a specific Orca Slicer setting? Or use the familiar shortcut <b>Ctrl+F</b>.
[hint:Search Functionality]
text = Search Functionality\nDid you know that you use the Search tool to quickly find a specific Orca Slicer setting?
[hint:Simplify Model]
text = Simplify Model\nDid you know that you can reduce the number of triangles in a mesh using the Simplify mesh feature? Right-click the model and select Simplify model. Read more in the documentation.
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/simplify-model
text = Simplify Model\nDid you know that you can reduce the number of triangles in a mesh using the Simplify mesh feature? Right-click the model and select Simplify model.
[hint:Slicing Parameter Table]
text = Slicing Parameter Table\nDid you know that you can view all objects/parts on a table and change settings for each object/part?
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/parameter-table
[hint:Split to Objects/Parts]
text = Split to Objects/Parts\nDid you know that you can split a big object into small ones for easy colorizing or printing?
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/split-to-objects-parts
[hint:Subtract a Part]
text = Subtract a Part\nDid you know that you can subtract one mesh from another using the Negative part modifier? That way you can, for example, create easily resizable holes directly in Orca Slicer. Read more in the documentation.
documentation_link = https://wiki.bambulab.com/en/software/bambu-studio/subtract-a-part
text = Subtract a Part\nDid you know that you can subtract one mesh from another using the Negative part modifier? That way you can, for example, create easily resizable holes directly in Orca Slicer.
[hint:STEP]
text = STEP\nDid you know that you can improve your print quality by slicing a STEP file instead of an STL?\nOrca Slicer supports slicing STEP files, providing smoother results than a lower resolution STL. Give it a try!
documentation_link= https://wiki.bambulab.com/en/software/bambu-studio/step
[hint:Z seam location]
text = Z seam location\nDid you know that you can customize the location of the Z seam, and even paint it on your print, to have it in a less visible location? This improves the overall look of your model. Check it out!
documentation_link= https://wiki.bambulab.com/en/software/bambu-studio/Seam
[hint:Fine-tuning for flow rate]
text = Fine-tuning for flow rate\nDid you know that flow rate can be fine-tuned for even better-looking prints? Depending on the material, you can improve the overall finish of the printed model by doing some fine-tuning.
documentation_link= https://wiki.bambulab.com/en/x1/manual/manual-flow-rate-tuning
[hint:Split your prints into plates]
text = Split your prints into plates\nDid you know that you can split a model that has a lot of parts into individual plates ready to print? This will simplify the process of keeping track of all the parts.
documentation_link= https://wiki.bambulab.com/en/software/bambu-studio/plates_management
[hint:Speed up your print with Adaptive Layer Height]
text = Speed up your print with Adaptive Layer Height\nDid you know that you can print a model even faster, by using the Adaptive Layer Height option? Check it out!
documentation_link= https://wiki.bambulab.com/en/software/bambu-studio/adaptive-layer-height
[hint:Support painting]
text = Support painting\nDid you know that you can paint the location of your supports? This feature makes it easy to place the support material only on the sections of the model that actually need it.
documentation_link= https://wiki.bambulab.com/en/software/bambu-studio/support-painting
[hint:Different types of supports]
text = Different types of supports\nDid you know that you can choose from multiple types of supports? Tree supports work great for organic models, while saving filament and improving print speed. Check them out!
documentation_link= https://wiki.bambulab.com/en/software/bambu-studio/support
[hint:Printing Silk Filament]
text = Printing Silk Filament\nDid you know that Silk filament needs special consideration to print it successfully? Higher temperature and lower speed are always recommended for the best results.
documentation_link= https://wiki.bambulab.com/en/x1/manual/printing-with-silk-filaments
[hint:Brim for better adhesion]
text = Brim for better adhesion\nDid you know that when printing models have a small contact interface with the printing surface, it's recommended to use a brim?
documentation_link= https://wiki.bambulab.com/en/software/bambu-studio/auto-brim
[hint:Set parameters for multiple objects]
text = Set parameters for multiple objects\nDid you know that you can set slicing parameters for all selected objects at one time?
documentation_link= https://wiki.bambulab.com/en/software/bambu-studio/set-parameters-for-selected-objects
[hint:Stack objects]
text = Stack objects\nDid you know that you can stack objects as a whole one?
documentation_link= https://wiki.bambulab.com/en/software/bambu-studio/stacking-objects
[hint:Flush into support/objects/infill]
text = Flush into support/objects/infill\nDid you know that you can save the wasted filament by flushing them into support/objects/infill during filament change?
documentation_link= https://wiki.bambulab.com/en/software/bambu-studio/reduce-wasting-during-filament-change
[hint:Improve strength]
text = Improve strength\nDid you know that you can use more wall loops and higher sparse infill density to improve the strength of the model?
[hint:When need to print with the printer door opened]
text = When need to print with the printer door opened\nOpening the printer door can reduce the probability of extruder/hotend clogging when printing lower temperature filament with a higher enclosure temperature. More info about this in the Wiki.
documentation_link= https://wiki.bambulab.com/en/filament-acc/filament/heat-creep
text = When need to print with the printer door opened\nDid you know that opening the printer door can reduce the probability of extruder/hotend clogging when printing lower temperature filament with a higher enclosure temperature. More info about this in the Wiki.
[hint:Avoid warping]
text = Avoid warping\nDid you know that when printing materials that are prone to warping such as ABS, appropriately increasing the heatbed temperature can reduce the probability of warping.
#[hint:]
#text =

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.

Before

Width:  |  Height:  |  Size: 7.2 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.8 KiB

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.2 KiB

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.2 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.5 KiB

After

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.2 KiB

After

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

After

Width:  |  Height:  |  Size: 2.6 KiB

Some files were not shown because too many files have changed in this diff Show More