Commit Graph

9612 Commits

Author SHA1 Message Date
dab6fa4db2 Fix Compile Warnings (#5963)
* Fix calls to depreciated wxPen constructor

* Fix use of wxTimerEvent

* Fix unrecognized character escape sequence

* Fix signed/unsigned mismatch

At least as much as possible without significantly altering parts of the application

* Clean unreferenced variables

* fix mistyped namespace selector

* Update deprecated calls

* Fix preprocessor statement

* Remove empty switch statements

* Change int vector used as bool to bool vector

* Remove empty control statements and related unused code

* Change multi character constant to string constant

* Fix discarded return value

json::parse was being called on the object, rather than statically like it should be. Also, the value was not being captured.

* Rename ICON_SIZE def used by MultiMachine

By having the definition in the header, it causes issues when other files define ICON_SIZE. By renaming it to MM_ICON_SIZE, this lessens the issue. It would probably be ideal to have the definitions in the respective .cpp that use them, but it would make it less convenient to update the values if needed in the future.

* Remove unused includes

* Fix linux/macOS compilation

* Hide unused-function errors on non-Windows systems

* Disable signed/unsigned comparison mismatch error

* Remove/Disable more unused variables

Still TODO: check double for loop in Print.cpp

* Remove unused variable that was missed

* Remove unused variables in libraries in the src folder

* Apply temporary fix for subobject linkage error

* Remove/Disable last set of unused variables reported by GCC

* remove redundant for loop

* fix misspelled ifdef check

* Update message on dialog

* Fix hard-coded platform specific modifier keys

* Remove duplicate for loop

* Disable -Wmisleading-indentation warning

* disable -Wswitch warning

* Remove unused local typedefs

* Fix -Wunused-value

* Fix pragma error on Windows from subobject linkage fix

* Fix -Waddress

* Fix null conversions (-Wconversion-null)

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-07-29 21:00:26 +08:00
65195eb765 Limit variable layer height displaying precision to 3 digits (#5795)
* Limit variable layer height calculation and displaying precision to three digits.

* Remove calculation rounding.
2024-07-29 19:13:50 +08:00
b2b9c0c25a Fix Preferences dialog sizing on multi monitor setups (#5820) 2024-07-29 00:15:16 +08:00
080d06858d Enhancement: Adaptive Pressure advance (#5609)
* Adaptive Pressure advance options setup

* Dynamic PA - PCHIP interpolator code and tests

* Integrate dynamic PA with slicing code - emit new PA values per speed change

* Link adaptive PA to role change instead of speed change

* Adaptive PA - Alpha 2

Reduce the frequency of requested PA changes by introducing a "state" variable.
Implement user toggle for adapting PA for external walls for overhangs

* Hide adaptive PA for overhangs

* Convert Adaptive PA to use volumetric flow model and start preparing for converting to Gcode post processor

* Converted Dynamic PA to a post processing filter. Reverted changes in GCode cpp and created tagging mechanism to allow filter to apply PA changes.

* Removed adaptive PA for overhangs

* Foundations for two dimensional adaptive PA based on acceleration and volumetric flow speed

* Minor code cleanup and updating of tooltips

* Renaming files for better clarity and generate classes documentation

* Update src/libslic3r/PrintConfig.cpp

Co-authored-by: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com>

* Update src/libslic3r/PrintConfig.cpp

Co-authored-by: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com>

* Update src/libslic3r/PrintConfig.cpp

Co-authored-by: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com>

* Introduce average mm3_mm over the length of a multipath for adaptive PA

* Updates for multipath handling part 2

* Introduce average mm3_mm over the length of a multipath for adaptive PA

* Trigger PA evaluation more frequently to catch edge cases where speed changes across islands of the same feature type.

* Updates for multipath handling part 2

* Adaptive PA: Implement average flow estimation on loops

* Code formatting

* Fix adaptive PA not adapting for small disconnected external wall line segments.

* Updated to take max print speed of upcoming feature to calculate new PA value.

This is to resolve issue of incorrect PA value used when starting a new feature at an overhang.

* Code clean up

* Performance tuning

* Further performance tuning by reducing use of regex commands in the nested loops and fix bug preventing gcode line output

* Further performance tuning and tweaks to stop searching for max speed after the first travel move.

* Reduce debug information

* Updated debug info

* Fix an issue on seams on specific models when wipe before external perimeter was enabled. Also cleanup documentation and add new to-do's

* Prepare for adaptive PA for overhangs, fix wipe bug & clean up code and comments

* Initial commit for adapting PA when extruding fully overhanging perimeters

* Ignore wipe command when identifying current print speed

* Option to evaluate adaptive PA on overhang regions in preparation for Klipper experimental option testing

* Update to issue PA changes for varying flow conditions within the same feature

* Fix bug where adaptive PA was enabled erroneously for role changes and ignoring user's preference.

* Refactored some code

* More refactoring

* Some bug fixes and enabled comments only when verbose g-code is enabled

* Introduced dedicated PA option for bridges

* Code refactoring to optimise initialisation of PA processor (making it faster). Fix a bug where PA was not always set after a toolchange. Improve general error handling and robustness.

* Updates to adaptive PA tooltips

* Bridging PA check with Epsilon instead of 0.

* Adaptive PA: addressing comments

---------

Co-authored-by: ElectricalBoy <15651807+ElectricalBoy@users.noreply.github.com>
2024-07-28 22:52:08 +08:00
a46a05b538 Added Styrene Butadiene Styrene (SBS) to filament_types (#6217)
Co-authored-by: Duan Gauche <duan.gauche@pdsvision.com>
2024-07-25 22:40:17 +08:00
Azi
d58289c3c4 Fixing high GPU usage when color scheme is set to "Filament" or "Speed" (#6223)
removed imgui.set_requires_extra_frame(), this line causes Slic3r::GUI::GLCanvas3D::render() to be called repeatedly when 'Filament' or 'Speed' is selected for preview panel
2024-07-25 22:38:05 +08:00
bdbb502ee6 Color fixes (#5712)
* Flushing volumes button background color for active state

* Sliced plates bar > Use different colors on plate numbers for light / dark theme

* Remove 3D navigator background

* Device & Project Tab > Sidebar > Selected tab background color

* Merge branch 'SoftFever:main' into color-fixes-3

* Correct sidebar button color for light mode for bbl monitor / calibration and project page

* Homepage fixes

* Fix parameters group title color too bright on dark theme

* Search popup hovered item background color

* Sidebar > Search box > match border color with other input/combo boxes

* fix indents

* Add descriptions to statecolors

* Paint gizmos > remove background of non active Tool / Brush buttons on dark mode

* Merge branch 'SoftFever:main' into color-fixes-3

* Top bar / Main tab bar button hover background

* Fix broken color change from last merges

* Gizmos selected text background

* Keyboard shortcuts window selected tab bg color

* About page link color

* Project page fixes

* match disabled text color on combo boxes with input boxes

* Use better background color for disabled elements on dark mode

* match all colors for disabled elements

* BBL > Monitor tab > Add printer text and icon not visible on dark theme

* even darker bg color for homepage thumbnails

* Sidebar arrow not visible

* Better bg color for row highlighting

* match style of gizmo combo box

* Merge branch 'SoftFever:main' into color-fixes-3

* Revert changes for main tab bar background color of button while hover
2024-07-23 18:00:21 +08:00
156bdd12aa Auto arrange plate after cloning (#6009)
* Auto arrange plate after cloning
2024-07-11 23:54:42 +08:00
39e8421566 Fix some utf-8 related issues in Cut gizmo (#6050)
* Fix some utf-8 related issues in Cut gizmo
2024-07-11 23:48:51 +08:00
e5b455fac6 Fix typos (#5998)
* Fix typos

* Update translation files appropriately

* Fix more 'fond's with 'found's

* Fix typos

* Fix duplicate message error
2024-07-11 00:04:47 +08:00
86250ab85e Link WIKI 2024-07-02 21:49:24 +08:00
af4741afc8 Port of Cura's multi-material interlocking (#5775)
* Init port of Cura's MM interlocking

* Refactor a bit

* Fix crash when bottom surface is multi-color

* Fix crash when boundary avoidance is 0

* Add config

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-06-30 23:25:15 +08:00
a78dc3307e Adding pellet printer suppor to OrcaSlicer (#4836)
* creating settings for printer and some UI changes work

* related filament diameter and pellet flow changes to each other

* UI name change to turn Filament to Material

* updated the flow coefficient to filament diameter formula

* updated the preset for the configuration wizard

* configuration changes for the final release

* config changes and preset bundle sync removed

* start gcode change for ginger machines

* added explanation of relationship between pellet_flow_coefficient and filament_diameter

* Added tooltip. Fixed Ginger machine configuration, Added docs
2024-06-29 22:45:06 +08:00
47a6d14453 Mark unsaved project title with * (#5910)
* Mark unsaved project title with *
2024-06-29 22:13:57 +08:00
4abcb858cc Add travel_slope option (#5873)
* Add travel_slope option

* Merge branch 'main' into travel-slope-pr
2024-06-29 17:33:22 +08:00
186c7032c5 Restore nozzle override fix (#5900)
* Restore nozzle override fix
2024-06-28 18:31:47 +08:00
1bbfe53587 Tweak profile loading rules 2024-06-26 20:23:34 +08:00
30f73bb2b0 Update Web Link Association in Preferences (#5791)
* Fix check_url_association return value

* Update Web Link Association Preferences

Uses a checkbox in place of button to show if the current instance is registered at a quick look
New function is added to build the link association item
Current association line shows "None" for no app associated, "Current Instance" if the current instance is associated, and the formatted path to the registered app (Removes quotes and other extra chars)

* Update to use localization

* Fix Linux Build

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-06-21 21:06:12 +08:00
c62b29e8e5 Various improvements to SimplyPrint integration (#4831)
* Allow using BBL's device tab when 3rd party print host is used

* Add option to open SimplyPrint panel in device tab after uploading

* Fix default print host for prusa connect

* Do not set api key in device view when SimplyPrint is used

* Sending 3mf file to SimplyPrint when using BBL printers

* Fix file extension when uploading 3mf

* Prepare for large file uploading

* Implement chunk upload

* Fix file uploading exceeding content size

* Fix wrong field type

* Add `temp=true` to all chunk upload calls

* Add macro to enable test api

* Merge branch 'main' into dev/simplyprint-improve

* Fix another missing `temp=true`

* Add delete token

* Try fixing build error on *nix systems

* Merge branch 'main' into dev/simplyprint-improve

* Merge branch 'main' into dev/simplyprint-improve

* Merge remote-tracking branch 'remote/main' into dev/simplyprint-improve

# Conflicts:
#	src/slic3r/GUI/BackgroundSlicingProcess.cpp

* Move the `bbl_use_print_host_webui` option to print host dialog. Also make it a derived option of `print_host_webui` instead.

* Merge branch 'main' into dev/simplyprint-improve

# Conflicts:
#	src/slic3r/GUI/MainFrame.cpp
#	src/slic3r/GUI/Plater.cpp

* Merge branch 'main' into dev/simplyprint-improve

# Conflicts:
#	src/slic3r/GUI/Plater.cpp

* Use a more generic option instead of SimplyPrint specific

* Merge branch 'main' into dev/simplyprint-improve

* Merge branch 'main' into dev/simplyprint-improve
2024-06-21 19:48:00 +08:00
16c8860a10 Pick updates from BS 1.9.3
sync bbl profiles
FIX: [#4320] crash when edit project preset

github: #4320

Change-Id: I81eb5f0d461565d63a32100a5bebb4569cfb0b1b
ENH: add pctg type

Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ie01fcd4bef0d3ebec5bbd7185a87a1740068bdba
(cherry picked from commit c6276932dd92bc4283600954415eedeac6d351ce)
ENH: CLI: add logic to save metadata into 3mf from CLI

JIRA: no jira
Change-Id: I7f96c2ab9671ec1c0115e90f6d64230b8170eb38
(cherry picked from commit 3d2d6e23ba318a2b331a62e320f8ca199168f1f5)
2024-06-21 18:21:21 +08:00
907b93cbb6 Tweak the color of viewcube a bit so that it's not too intrusive. 2024-06-16 22:56:52 +08:00
762ec5838c Enhancement: Do not slow down external perimeters to meet minimum layer time (#5148)
* POC - Do not slow down external perimeters to meet minimum layer time

* POC - Do not slow down external perimeters to meet minimum layer time - rework

* Revert "POC - Do not slow down external perimeters to meet minimum layer time"

This reverts commit d84ff93f901c6773c246926f6fd34f22e14b7131.

* Dont slow down external perimeters to meet layer time target v2

* Reverted previous implementation

* UI fixes for dont slow down for layer cooling

* Update dont slow down outer walls naming convention

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-06-16 22:38:13 +08:00
d4e2c56f20 Take brim width into consideration when placing wipe tower 2024-06-16 18:48:26 +08:00
8db93403c7 Mdel preview renders the actual colors of the filaments based on the filaments currently loaded in the AMS
Ported from BambuStudio
2024-06-16 17:15:51 +08:00
9cf7202c5c Revert "Tab improvements (#5210)"
Causing regression bugs in high DPI

This reverts commit 872f729d75.
2024-06-16 10:07:05 +08:00
1adf04678e misc updates 2024-06-16 02:06:36 +08:00
8cbc754800 FIX: tunnel_mqtt not turn on by key_field_only
Change-Id: I87446cd709e6e324ea36962182e7fae1e977b0f5
2024-06-16 01:44:32 +08:00
1d9f4de20b ENH:get sound support through homeflag
jira:[for sound]

Change-Id: I92b176d0c6708eb69e1318f244382e72b679ec39
2024-06-16 01:44:31 +08:00
ea5d993610 ENH: avoid crash when switching to cloud mode
JIRA: STUDIO-7083

Change-Id: Ic30025049e14d61726b189bd222ae600ea419243
Signed-off-by: Stone Li <stone.li@bambulab.com>
2024-06-16 01:44:30 +08:00
d110dd569b FIX: P series with old fireware modify the limit k value to 1
jira: 7215
Change-Id: I1b0d1a5931487f0fa2b7d66a4c224e33d3710c73
2024-06-16 01:44:30 +08:00
c74de6d2e4 FIX: modify the limit value of k to 1
jira: none
Change-Id: Ibb829c0d820ef63ec767e4591815d234d0c0ddc0
2024-06-16 01:44:29 +08:00
d703d2b754 Add back control pool 2024-06-16 01:44:29 +08:00
72b8bf26ef FIX: X1C should not litmit the k value size
github: 4168
Change-Id: Iaf0a5a2334debda3de41192b4ea17ebd0c0a3e09
2024-06-16 01:44:29 +08:00
8e73326de6 FIX:roload obj for disk
jira: STUDIO-7202
Change-Id: I6726a21176dfc9f545b58c5fe9f2ebf623b012d6
2024-06-16 01:44:29 +08:00
b583853990 FIX: cannot slice when set object extruder is 0
jira: none
Change-Id: Idb6e01acc8ac7801331c3b6b4b0e64a23cc02208
2024-06-15 20:31:46 +08:00
545e42de38 ENH:SD card printing using cloud service
jira:[for sdcard print]

Change-Id: I9b3f3cc5db1b5c1c63d4e9e016cdd81db6893b65
2024-06-15 20:29:50 +08:00
aa3e0c5473 FIX: crash when generating text with thickness <= 0
github: 4122
Change-Id: I0fae6ea234ddb92ef2c2bec6e0f8f7555709ec4f
2024-06-15 20:29:37 +08:00
040c3d5aaf Removed the copyright and credits in the header of each file. This information is outdated and hard to update. Orca Slicer maintains the autoher info in git history so this is not necessary. 2024-06-15 14:56:44 +08:00
b8dad4e346 Better 3D navigator (#5620)
* Initial working impl of face labels

* Improve color

* Remove background
2024-06-15 12:17:57 +08:00
a5304b973c Add support for Prusa XL Input Shaper (only one head will print) & add PC-CF, PA11-CF, & PVB filament types (#5511)
* Add Prusa XL & speed profile

* Wrong name

* Fix cover image sizing

* Change infill pattern & density to whats in PrusaSlicer

* Fix filament start G-Code & Add additional info in printer notes

* Add PETG profile

* Link PETG profile

* Add ABS & add bed temps

* Add Prusament PLA & attempt at removing ramming limits

* Allow user to change ramming time & volume

* Revert changing identifier

* Remove invalid ramming variables

* Add Prusament PETG

* Try this

* Revert "Try this"

This reverts commit c6228950fb5f72baa64fa6e63ae8b25ffe4538ec.

* Revert ramming changes

* Add rPLA, PLA+, PC-CF, PA11-CF, and PVB

* Add PVB profile and other minor improvements

* Add image formats

* Add rPLA profile & remove rPLA & PLA+ from printConfig

* Add Prusament PC-CF & small bug fixes

* Add Prusament ASA, PA-CF, PC, & pa11cf common file

* Minor improvements to common and speed profiles

* Add 0.20mm Quality profile

* Add .3mm Draft process & link .2mm Quality

* Add 0.15mm Quality process

* Add 0.10mm Detail process

* Add 0.07mm UltraDetail profile

* Add 0.5mm nozzle size & related processes

* Set default print profile

* Fix incorrect bridge flow ratio

* Fix incorrect support z distance

* Correct skirt values if enabled

* Add 0.6 & 0.8 nozzles & respective profiles as well as some fixes

* Set default profile for 0.8

* Add 0.25, 0.3, & respective profiles

This also adds all the nozzle sizes to the filament profiles

* Adapt filename format

* Remove unneeded values

* Add Input Shaper

* Fix raft contact distance

* Add Input Shaper profiles to filaments

* List default profiles

* Add printer variant variable

* Change cover sizes & optimize svg

* Fix small filament bug

* Add comment for symmetry

* Add Prusa before XL & XLIS

* Fix failing check

* Fix failing check part 2

* Some small changes

* I've been overthinking this haven't I?

* Could it be this?

* Revert this change

* Try one last thing

* Change naming for XLIS & covers

* Try removing non-IS profiles

* Change IS models

* Remove remnants of non-IS profiles

* Change naming for better consistency
2024-06-08 17:36:00 +08:00
7c81ae8ca8 Fixed a minor bug where the maximum volumetric speed cap was slightly… (#5629)
Fixed a minor bug where the maximum volumetric speed cap was slightly off for the PA pattern calibration.
2024-06-08 10:55:32 +08:00
e639f443e7 Allow Cmd-Shift-M to bring up 3dConnexion Spacemouse Dialog (EXCEPT on "Home" sub-screen) (#5598)
* Prevent Cmd-Shift-M from minimizing on Mac EXCEPT on "Home" sub-screen

The problem is that hitting "Cmd-Shift-M" on mac always minimizes the app, even though it should only minimize on "Cmd-M", and not on "Cmd-Shift-M".

The code that minimizes (using the WXWidgets "Iconize()" call) happens in MainFrame.cpp keyboard event loop.  The code that's checking, looks for "Cmd-M" but does not check for any other keyboard modifiers, so I added a check to ignore the event if Shift is pressed along with "Cmd-M".

There's a secondary issue that isn't really relevant to this bug in that the app will still minimize when pressing "Cmd-Shift-M", but ONLY on the "Home" sub-screen. (all other sub-screens work as they should).

I'm not sure why, but when the "Home" sub-screen is selected, the keyboard event loop (MainFrame.cpp, line 609), is called TWICE when "Cmd-Shift-<any key>" is pressed:

* Once where the event's wxKeyModifier (retrieved via `evt.GetModifiers()` is set to `wxMOD_CONTROL`  AND `wxMOD_SHIFT`.  (this is correct)
* Once where the event's wxKeyModifier  is **ONLY** set to `wxMOD_CONTROL` (this is wrong).

Again, this double-event (with the wrong modifiers) only happens when the user is on the "Home" sub-screen.  For the context of this bug the 3DConnexion preferences dialog isn't needed on the "Home" sub-screen so this secondary bug doesn't matter.  But it does make the UX odd where Cmd-Shift-M will minimize the app when the user is viewing the "Home" sub-screen, but not minimize the app when the user is viewing any other sub-screen.

* Merge branch 'main' into spacemouse_dialog
2024-06-07 22:14:41 +08:00
f4540db03e Fixed an bug that plate name was not used in some cases
Fixed #5556
2024-06-06 22:28:57 +08:00
5330991c3a Fix an issue that Bambu printer camera is not prompted to register due to the Bambu's registry path changes
Fix #5554
2024-06-05 23:21:40 +08:00
7c71912e93 fix a regression that thumbnail was not rendered properly for delta printers
Fixes #5525
2024-06-04 20:30:18 +08:00
972f73c07c fix url protocol integration under linux (#5535) 2024-06-04 18:32:49 +08:00
7c10cbadbc Update string SendMultiMachinePage.cpp (#5538) 2024-06-03 21:42:24 +08:00
eac6a015ed Thumbnails feature revamp. (#5555)
* Thumbnails feature revamp.
Support generating different size/format combinations
* misc fix

Co-authored-by: Lukas Matena <lukasmatena@seznam.cz>
2024-06-03 21:30:38 +08:00
97aed0c571 Parameter box improvements (#5119)
* Parameter improvements

• Added "Layers" side text for
	Bottom shell layers
	Number of slow layers
	Top shell layers
• Added "Layer" side text for
	Full fan speed at layer
• Added "x" side text for ratios. This one looks nice imo
	Internal bridge flow ratio
	Bridge flow ratio
	Top surface flow ratio
	Bottom surface flow ratio
	Flow ratio
	Scarf joint flow ratio
• Added "mm" side text for
	Mesh margin
	Minimum wall length
• Added "°C" side text for
	Softening temperature
• Converted these to spin boxes. Currently it combines combo box and input box and it has weird usage. Using spin boxes better because other layer related input boxes uses this too
	Top interface layers
	Bottom interface layers

* Fix for combo boxes without arrows

* Add icon files for Point input boxes

* Add side text for Point controls

* Update width of point controls

* Use TextInput for PointCtrl

* Use TextInput for PointCtrl

* Update style of Point Control

* Better Background color for Disabled elements on dark mode

* Use same color for disabled text on combo boxes

* Use Slightly darker text color for disabled text elements

* Revert changes for Top / Bottom interface layers parameter boxes

* fix build error

* update point control icons

* Remove "x" side text from flow ratio related parameters

* revert color related fixes

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-05-29 23:02:17 +08:00
a0f7770a2f change handy models to 3mf fileformat 2024-05-29 20:42:50 +08:00