Commit Graph

1940 Commits

Author SHA1 Message Date
fe4a72ec94 Upgrade clipper & improve multi-thread performance (#7177)
* Clipper: Verify range of int32 coordinates on input.

Cherry-picked from prusa3d/PrusaSlicer@fa7debf49d

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>

* ClipperLib: Optimized PointInPolygon() to calculate cross products
 with int64s instead of doubles.

Cherry-picked from prusa3d/PrusaSlicer@9dca8403fe

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>

* Reworked the ClipperLib / Polygon types to use
the tbb::scallable_allocator to better scale on multiple threads.

Cherry-picked from prusa3d/PrusaSlicer@9cde96993e

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>

* use tbb::scallable_allocator for Polygons and ExPolygon::holes
to better scale on multiple threads

Cherry-picked from prusa3d/PrusaSlicer@b67ad6434d

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>

* Fixed compilation on GCC and CLang

Cherry-picked from prusa3d/PrusaSlicer@b3b44681a9

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>

* Remove clipper2 which is not used

* Removed shiny profiler from clipperlib

Cherry-picked from prusa3d/PrusaSlicer@7e77048593

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>

* ClipperLib: Further optimization of memory allocation using scalable_allocator.
ClipperLib: SimplifyPolygon() - changed default winding number to positive,
      added strictly_simple parameter.
ClipperUtlis simplify_polygons() - removed "remove_collinear" parameter

Cherry-picked from prusa3d/PrusaSlicer@a7e17df25f

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>

* ClipperLib: emplace_back() instead of push_back().

Cherry-picked from prusa3d/PrusaSlicer@2e150795b1

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>

* Fixed issue in a 32bit clipper, where IntersectPoint() checked for
the Y coordinate of the calculated intersection point for validity,
but the Y coordinate was already rounded to 32bits, thus an overflow
may have in rare cases masked invalidity of the result.

Cherry-picked from prusa3d/PrusaSlicer@b39c33414f

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>

* Fixed Vojtech's out of boundary assert in Clipper library.

Cherry-picked from prusa3d/PrusaSlicer@0a202dcff3

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>

* Update clipper to 6.4.2.

Cherry-picked from prusa3d/PrusaSlicer@b8b3cccb40

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

* Try fix cmake opencv

---------

Co-authored-by: Vojtech Bubnik <bubnikv@gmail.com>
Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
2025-06-18 17:50:44 +08:00
0010dc6bb4 Add 2D honeycomb infill pattern (#9483)
* Add 2D honeycomb infill pattern

* Reverted change of 2D lattice infill void area estimation

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-06-18 08:48:48 +08:00
1aee8a0783 Don't split tiny cracks on first layer (#9917)
Don't split tiny cracks on first layer to get an uninterrupted bottom surface
2025-06-17 19:22:16 +08:00
3a81a8f358 Adds resonance avoidance ported from qidi slicer (#9403)
* Update tab.cpp for resonance avoidance

* update files for resonance avoidance

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

* Update README.md

* Update README.md

* Update Tab.cpp

* Update Preset.cpp

Updating code comments

* Update PrintConfig.cpp

* Update PrintConfig.hpp

* Update .gitattributes

* Remove carriage return

* Update doc

* Move resonance avoidance settings to printer settings

* Disable resonance avoidance by default

* Update options

---------

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

* Refactor

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-06-15 20:50:34 +08:00
1471276580 TPMS-D Infill ( Triply Periodic Minimal Surface D) (#9613)
* Fill TPMS-D

limpieza

* delete unused function

* cleaning

* Icon update

* fix missing header

* density Adjusted

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

* Improve Precision +  refactoring

clean tpms.hpp

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

---------

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

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

* Add periods after error messages

* Add punctuation to all tooltips

* Add missing periods on the pt-BR translation
2025-06-15 16:12:03 +08:00
ecfe53e488 The multi-color printing wipe tower now includes the Bambu RIB wall feature (#9881)
* Add new Bambu RIB wall feature, including only the rib wall generation algorithm.

* Fix Linux compilation errors.

* Attempt to fix flatpak build

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-06-15 14:53:35 +08:00
3ecca6116d fixes compiler warnings (#9619)
* compiler warnings: adds SYSTEM to [target_]include_directories to skip warnings originating from dependencies

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

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

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

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

* compiler warnings: ? as lower precedence than <<

* compiler warnings: unused variable

* compiler warnings: unused result

* compiler warnings: undefined/unused variable

* compiler warnings: uninitialized variable
2025-06-14 21:05:25 +08:00
25785abfe0 Generate GCode for skirt prior wipe tower. (#9885) 2025-06-13 14:24:26 +08:00
b2ed8ff53e Remove sensitive data in 3mf files (#9825)
* Do not store BBL user id in 3mf file

* Do not store creation & modification date in 3mf file
2025-06-08 17:55:15 +08:00
b8c5ddd0ee Fix the spelling/grammar on the original english strings (#9487)
* Fix the spelling/grammar on english strings

* Fix the spelling/grammar on english strings, part 2
2025-06-01 19:32:36 +08:00
6423d521cd Fix Line Infill with no anchor (#9768)
* Fix Line Fill with no anchor

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

* Disable anchor option for Line Infill

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

---------

Co-authored-by: Rodrigo <162915171+RF47@users.noreply.github.com>
Co-authored-by: Henk <40023052+elektrohenk@users.noreply.github.com>
2025-06-01 13:34:44 +08:00
4ae4634976 Fix tree support bed exclusion area calculation (#9633)
Fix tree support bed exclusion area calculation (SoftFever/OrcaSlicer#9624)
2025-06-01 13:18:03 +08:00
57a6f61349 Fix the spacing on the original english strings (#9596)
* Remove extra spaces between words

* Remove extra spaces after punctuation

* Remove extra spaces before punctuation

* Always needs a space after punctuation

* Always needs a space before parens

* Remove trailing spaces before newline
2025-05-16 16:31:58 +08:00
ff9ce434a2 Fix preview gcode misalignment caused by placeholder postprocess (#9529)
* Fix layer number placeholder process

* Fix gcode move id misalignment when M73 is disabled

* Fix gcode move id misalignment when M73 is enabled
2025-05-16 09:28:30 +08:00
a008014ab0 Improvements for Default color button in filament settings (#9581)
* init

* fix colors on theme switch

* update

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-05-11 20:11:09 +08:00
3e48390cee Remove markers from strings that don't need to be translated (#8842)
Remove markers from text that does not need to be translated
2025-05-11 15:04:48 +08:00
41ff632d28 Improve UI of profile dependencies tab (#9553)
* init

* Update Tab.cpp

* update labels

* Update Tab.hpp

* Fix checkbox label

* Update Tab.cpp

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-05-10 13:49:52 +08:00
9b18c82bfb Fix crash when start_extruder_id is empty (#9584)
Fix crash when `start_extruder_id` is empty (SoftFever/OrcaSlicer#9580)
2025-05-09 22:47:18 +08:00
f0384e7bc3 Color & shape improvements for Axes (#9495)
init
2025-05-08 16:00:48 +08:00
be2d193117 Fix floating brim (#9393)
* FIX: brim should be extruded only on first layer

github: github.com/bambulab/BambuStudio/issues/4678

Change-Id: Ib00795dfba2e6d869c30ac906385f170088bbfd6
(cherry picked from commit b51ff1721ddc2080c4f7e487f67c4f1a722bf091)

* Fix compile
2025-05-05 11:27:42 +08:00
86f4c3a014 PA calib: Don't decrease speed too much for the speed trick line (#9358)
* Don't decrease speed too much for the speed trick line (SoftFever/OrcaSlicer#9354)

* Make sure no negative accel/speed
2025-05-03 19:26:37 +08:00
a4f35e0291 Ensure bed shape is in correct orientation (#9350)
Fix #9345

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

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


Also fix rendering of exclusion area that are defined in clockwise:
![image](https://github.com/user-attachments/assets/0949c1c3-6304-4ece-85c7-f3162249bf90)
2025-05-01 17:28:10 +08:00
940800b059 Merge tiny cracks that is part of a large bottom surface into bottom surface (#9332)
* Merge tiny cracks that is part of a large bottom surface into bottom surface (SoftFever/OrcaSlicer#9329)

* Revert bottom offset

* Top surfaces will have perimeters around, which need to be removed from bottom surfaces so bridges not extended to visible areas
2025-04-29 22:19:30 +08:00
7d72db562f Add translation markers on more unstranslated strings (#9134) 2025-04-26 23:11:36 +08:00
d37f1b6a81 Fix english strings consistency (#8881)
* "non zero" -> "non-zero"

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

* "works" -> "is working"

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

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

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

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

* "toolchange" -> "tool change"

* "colour" -> "color"

* "cancelled" -> "canceled"

* "can not" -> "cannot"

* "gcode" -> "G-code"
2025-04-26 19:59:49 +08:00
e787666605 Remove empty string initializations (#9131)
* Remove empty string initializations
2025-04-26 18:00:09 +08:00
6938d2da7f Merge branch 'main' into bugfox/bed-shape-orientation 2025-04-26 12:35:23 +08:00
672c115c61 Fix infill anchor missing for FillPlanePath (#9462)
Fix infill anchor missing for archimedian chords, hilbert curve and octagram spiral infill pattern
2025-04-24 11:03:28 +08:00
e2b16f527a Improve gcode preview flow rate scale (#9319)
* Ignore very tiny extrusions in flow rate scale (SoftFever/OrcaSlicer#9190)

* Don't show flow rate if it's not extrusion

* Merge branch 'main' into bugfox/gcode-viewer-flow-scale
2025-04-23 23:37:08 +08:00
66cab434b8 Fix infill anchor missing (#9407)
* Fix infill anchor missing

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

* Fix infill anchor missing for several other infill patterns

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

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-04-23 21:17:19 +08:00
ee7ebda584 Fixed an issue where the Max Volumetric Speed doesn't consider the Filament Flow Ratio (#9218)
* Rework extrusion-per-mm and speed-cap logic to enforce max vol speed

* Fix _mm3_per_mm typo
2025-04-21 00:00:10 +08:00
bfe0778421 Merge branch 'main' into bugfox/bed-shape-orientation 2025-04-20 18:21:31 +08:00
cd2077ebaf Fix prime tower wipe volume calculation (#9235)
* Revert "Fixed an bug that filament_minimal_purge_on_wipe_tower option doesn't work for soluable filament (#8397)"

This reverts commit fcc5489911.

* Fixed an bug that filament_minimal_purge_on_wipe_tower option doesn't work for soluable filament (#8397)

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-04-20 13:36:11 +08:00
d9c27f3dee Fix #6839 with final tool preheating on multitool machines causing in… (#7405)
Fix #6839 with final tool preheating on multitool machines causing in appropriate temp settings

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

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

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

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-04-20 13:24:49 +08:00
1bce6a24d2 Small area semicolon description. (#8995) 2025-04-15 23:06:39 +08:00
8cdc9c02df Junction Deviation Machine Limit (#9234)
* Junction Deviation Machine Limit

jd 3

JD menu 2

JD operativo

limpieza

final

* default JD print menu without warnings

* to fix multiple instances

* Only at first layer

* Calibs upgrade

* Shown on Marlin2

Shown on Marlin2
CodeCleaning

* Update Calibration.md

* set on writer

---------

Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
2025-04-15 21:49:17 +08:00
228b50f858 Ensure bed shape is in correct orientation (SoftFever/OrcaSlicer#9345) 2025-04-15 12:51:01 +08:00
c90b3a2cce Attempt to speed up outside bed detection (#8869)
* Don't check intersection if points below bed is also inside the bed, when the bed is convex

* Skip intersection check if bbox not overlapping

* Remove duplicated out of bed check

* Faster (but less accurate) bbox test

* Merge branch 'main' into dev/faster-outside-check

# Conflicts:
#	src/libslic3r/Model.cpp
2025-04-14 23:23:08 +08:00
b795708852 Fix/improve Prusa XL & XL 5T profiles (#8833)
* First set of fixes

* Add FLEX filament to PrintConfig.cpp

* Add new FLEX filament profiles to main Prusa json

* Comment out M104.1 code

* Revert "Comment out M104.1 code"

This reverts commit 831414adb75fa98b3d6aadda38a5936f04d6530c.
2025-04-14 15:39:03 +08:00
e2e06e5e89 Fix skirt start angle per object (#7374) 2025-04-14 15:24:12 +08:00
8e38ac234f Fix rare crash when calculating bridge expansion (#9287)
* Fix #12469 - crash caused by bridge expansion.

Handle a very rare case in which the algorithm picks a wrong
polygon for expansion seed.

(cherry picked from commit 5f843cc93470c96483abcbd47cf8ee5fe38dffe2)

* SPE-2698: Fix crash during regions expansion.

(cherry picked from commit a3f75133c8baead6f8d7bb01722a6bfcdc2e9038)

---------

Co-authored-by: Martin Šach <martin.sachin@gmail.com>
Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
2025-04-13 17:39:28 +08:00
97ec03692c Fix wipe tower initial movement when switching extruder offsets (#9222)
Fix wipe tower initial movement when switching extruder offsets (SoftFever/OrcaSlicer#9214)
2025-04-13 17:38:29 +08:00
443034553b Fix M486 still presented even with obj exclusion disabled (#9202)
Make sure `m_enable_exclude_object` is initialized correctly from user config (SoftFever/OrcaSlicer#7775)
2025-04-13 17:38:13 +08:00
2f8fa3fec2 Avoid unnecessary travel in scarf seam (#9197)
* Avoid unnecessary travel in scarf seam (SoftFever/OrcaSlicer#9139)

* Fix typo
2025-04-13 17:37:40 +08:00
74df3a450b Fix wrong travel before printing first skirt point (#9179)
Fix wrong travel before printing first skirt point (SoftFever/OrcaSlicer#9109)

don't modify `last_pos`, otherwise it could move out of plate/to wrong places and cause issue
2025-04-13 17:36:36 +08:00
abcd6e7847 Don't apply adaptive PA in PA calibration (#9149)
Don't apply adaptive PA in PA calibration (SoftFever/OrcaSlicer#9140)
2025-04-13 17:35:57 +08:00
d54c139cdb Fix PA calib crash when default line width is set to 0 (#9146)
Fix PA calib crash when default line width is set to 0 (SoftFever/OrcaSlicer#9144)
2025-04-13 17:31:54 +08:00
822de5ce29 Input shaping & JunctionDeviatio wiki + improvements (#9256)
* VFA-Calibs Wiki images

* Calib Code Fixes

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

Fixes

* IS JD Wiki

* Updated with 9234

* IS Verbose
2025-04-13 15:17:24 +08:00