Commit Graph

2019 Commits

Author SHA1 Message Date
336ec55ba4 Enhance GCode handling for Z-axis movements (#10803)
* Enhance GCode handling for Z-axis movements

- Updated `travel_to_z` method to include a `force` parameter, allowing forced Z movements.
- Modified GCode generation logic to ensure Z position is restored after unknown last positions.
- Enforce z restoreation after tool changer

* Improve filament_multitool_ramming logic

* fix indent
2025-09-21 22:03:54 +08:00
3f25b460d9 Fixes 999 CMake Warnings (#10729)
* fixes: 999 CMake Warnings at src/dev-utils/CMakeLists.txt:39 (add_custom_command)

* cmake clenup: adds PUBLIC/PRIVATE to libslic3r; attempt to reduce warnigns from eigen
2025-09-19 23:52:41 +08:00
caecaa13cd Fixes 50 Compiler Warnings: Add SYSTEM toCMakeLists.txt (#10653)
* src/*/CMakeLists.txt: adds SYSTEM to arget_include_directories()

* src/*/CMakeLists.txt: removes duplicate sources from lisbslic3r_sources and SLIC3R_GUI_SOURCES"

* .gititnore: adds CMakeLists.txt.user and CMakeLists.txt.autosave

* deps_src/*/CMakeLists.txt: adds SYSTEM to arget_include_directories()

* removes #pragma once from .cpp file
2025-09-19 23:45:03 +08:00
6658f10764 Fix variable name comment and message (#10302)
As you can see, it's checkin the local variable
`custom_gcode_placeholders` which comes from
`custom_gcode_specific_placeholders()` which is:

```
const std::map<t_custom_gcode_key, t_config_option_keys>& custom_gcode_specific_placeholders()
{
    return s_CustomGcodeSpecificPlaceholders;
}
```

not s_CustomGcodeSpecificOptions
2025-09-19 22:41:25 +08:00
493128d7ca Fix logic for precise_outer_wall condition in PerimeterGenerator to only apply when wall_sequence is set to InnerOuter. 2025-09-12 00:24:17 +08:00
fc7b446483 fix typo and tweak precise_outer_wall message 2025-09-11 21:07:46 +08:00
a5fdeac6a6 Ignore the precise outer wall option when the wall sequence is not set to InnerOuter. (#10687) 2025-09-11 20:10:51 +08:00
d6a7d3e3c8 Enable Precise wall by default 2025-09-10 23:21:45 +08:00
0220747098 update locale and Simp Chinese translation 2025-09-10 21:08:58 +08:00
96d1f10fc2 [DOC] Fix typo "rotatation" (#10592)
init
2025-09-09 11:22:21 +08:00
7107668307 [OPTIMIZATION] Update Fill3DHoneycomb.hpp - remove bridge flow (#10453)
Update Fill3DHoneycomb.hpp

Bridge flow isn't necessary; the pattern is fully supported on the lines that matter for structural stability.
2025-09-09 11:08:17 +08:00
3af998a7b3 Fisher koch Infill optimization (#10428)
* Fisher koch optimization
2025-09-09 11:02:45 +08:00
9962672cf2 Fix the bug where FillRectilinear generates an unoptimized toolpath. Ensure that fill_surface_by_lines is used when multiline is 1, as it provides optimized traversal. 2025-09-08 00:17:53 +08:00
b7efcdb787 [Feature] Add a new feature that allow user to insert extra solid infills (#10611)
* refactor Infill rotation template

* clean up comments

* set default solid_infill_rotate_template to empty

* Fix an issue that infill_direction solid_infill_direction not working as expected

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

* fix doc error

* fix image name

* support "#K" for Explicit Layer List

* update wiki
2025-09-03 22:16:31 +08:00
d7b9e65da0 Refactor infill rotation (#10587)
* refactor Infill rotation template

* clean up comments

* set default solid_infill_rotate_template to empty

* Fix an issue that infill_direction solid_infill_direction not working as expected

* update based on feedback
2025-09-02 22:53:56 +08:00
e2a056a09f Fix misc issues with the translated strings (#10400)
* Spell check "part selectiont" and "printetrs"

* Remove translation of "°"

* Fix the abbreviation of Watts

* Fix capitalization issues

* Fix punctuation issues

* Fix spacing issues

* Adding more missing periods
2025-08-26 22:39:14 +08:00
9e5dbf1252 Feature/re enable tests (#10503)
* re-enable tests

* Add comprehensive testing guide for OrcaSlicer in CLAUDE.md

* fix build errors on Win

* fix appimage errors
2025-08-24 20:58:18 +08:00
27db9cbe26 Add stl, step, etc. to recent list (#9481)
* Add stl, step, etc. to recent list

* Make configurable

* Merge branch 'main' into recent-files-pr
2025-08-24 00:24:30 +08:00
4031b7db11 Refactor folder (#10475)
Move many third-party components' source codes from the src folder to a new folder called deps_src. The goal is to make the code structure clearer and easier to navigate.
2025-08-22 20:02:26 +08:00
ceaaf2e3e1 rename 2DHoneycomb and 2DLattice to LateralHoneycomb and LateralLattice (#10423)
* rename 2DHoneycomb and 2DLattice to LateralHoneycomb and LateralLattice

* more renaming
2025-08-17 23:49:06 +08:00
621759a8ec Don't overwrite config if the new one was not successfully written (#10284)
* Don't overwrite config if the new one was not successfully written

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

Fixes #10283
2025-08-11 09:59:01 +08:00
e1955a5e1e TPMS-FK Infill ( Triply Periodic Minimal Surface Fischer Koch S) (#10360)
* seteo inicial

* version inicial

* Update FillTpmsFK.cpp

* marching squares

* Multiline support

* density adjusted

* tuning

cleaning

* symplify points

* optimization

* smoothing

* center offset contour

* icon

* bugfix 1

* reverse tbb scalar field bug fix

* safety

* Update Icon

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

* Update FillTpmsFK.cpp

* delete allptpos

---------

Co-authored-by: yw4z <28517890+yw4z@users.noreply.github.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-08-10 23:10:35 +08:00
53bcfc4a48 Fix inconsistencies on new translated strings (#10310)
* Unmark string that don't need to be translated

* Spellcheck

* Fix calibration strings consistency
2025-08-09 23:52:48 +08:00
6c2a8c985c Allow default_bed_type to be defined in machine profile
update some profiles
2025-08-09 10:51:00 +08:00
4fb035de37 Remap filament for pre-colored models (#10303)
* Add a new feature to allow users to remap filament for a pre-painted model.

* Fix the color issues to support the theme

* clean up code

* Fix broken freetype-2.12.1.tar.gz link
2025-08-03 13:28:03 +08:00
c30a851acc Fix Ironing/Support patterns (#10278)
NoisyGoat

Co-authored-by: Rodrigo <162915171+RF47@users.noreply.github.com>
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-08-02 10:59:01 +08:00
74010a7cec Revert "Stagger concentric infill seams. (#6184)"
This reverts commit 0286c36f42.
2025-07-30 23:33:35 +08:00
60440cacde Revert "Refactor stagger concentric seams (#6432)"
This reverts commit bd8c2ffaeb.
2025-07-30 23:33:21 +08:00
a54773f9c8 Avoid cross perimeter improvements ported from BBS (#10220)
* FIX: fix avoid crossing perimeters not work[github issue #6597]

jira: STUDIO-11682

github: #6597

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

* FIX: optimize avoid crossing wall

jira: STUDIO-11682

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

* Sync with latest BBS code

---------

Co-authored-by: huicong.li <huicong.li@bambulab.com>
2025-07-30 21:42:39 +08:00
4fc286ad81 Fix a bug where the maximum line width limit is inconsistent across different checks.
Fixes #10188
2025-07-30 21:22:40 +08:00
c1cab71215 Introduce a new seam alignment option: Aligned back (#10255)
* Introduce a new seam alignment option: spAlignedBack.
2025-07-29 21:11:35 +08:00
3148c5aa20 Bug fix: avoid crossing perimeters (#10185)
* avoid crossing perimeters

avoid crossing perimeters

Timelapse issue

Update GCode.cpp

Update GCode.cpp

Update GCode.cpp

Update GCode.cpp

* Update GCode.cpp

* Update GCode.cpp

Update GCode.cpp

* Update GCode.cpp

Update GCode.cpp

* Replace tab with space

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-07-27 16:13:36 +08:00
1fac1a1681 Add template metalanguage support for infill rotation template (#9996)
* Add some new non-overlapping functions for rotation surfaces/infills

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

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

* Update PrintConfig.cpp

* Update PrintConfig.cpp

* Update PrintConfig.cpp

* Add height limitation

* Both sparse and solid. +one-time instructions

* implementation v3

need for clean code in future

* + Multiply Instructions

* Add solid layers into sparse infill

* Update Layer.hpp

* Update PrintObject.cpp

* Update Tab.cpp

* Remove some bugs and increase quality

* rename apply_model_direction to align_infill_direction_to_model

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

* remove top_surface_direction and bottom surface_direction options

* clean code

---------

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

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

* Add auto switch to Arachne mode

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

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-07-25 15:36:18 +08:00
74ae03b864 Fix build issue caused by renamed fill pattern (#10197)
Fix issue caused by renamed fill pattern
2025-07-22 16:44:09 +08:00
993ffccfa6 New Fill & Patterns Order (#10055)
* New Fill Order

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

* Reorder Wiki

* Support infills grouped

* Update old rectilinear profiles into new ZigZag algorithm.

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

* Renaming compatibility fix + Rename Wiki

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

---------

Co-authored-by: Rodrigo <162915171+RF47@users.noreply.github.com>
Co-authored-by: dewi-ny-je <2866139+dewi-ny-je@users.noreply.github.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-07-21 23:08:43 +08:00
b495c013ed Update 3mf key for fuzzy skin painting to match BBS (#10169) 2025-07-18 16:09:34 +08:00
afb7387b90 Add fuzzy skin painting (#9979)
* SPE-2486: Refactor function apply_mm_segmentation() to prepare support for fuzzy skin painting.

(cherry picked from commit 2c06c81159f7aadd6ac20c7a7583c8f4959a5601)

* SPE-2585: Fix empty layers when multi-material painting and modifiers are used.

(cherry picked from commit 4b3da02ec26d43bfad91897cb34779fb21419e3e)

* Update project structure to match Prusa

* SPE-2486: Add a new gizmo for fuzzy skin painting.

(cherry picked from commit 886faac74ebe6978b828f51be62d26176e2900e5)

* Fix render

* Remove duplicated painting gizmo `render_triangles` code

* SPE-2486: Extend multi-material segmentation to allow segmentation of any painted faces.

(cherry picked from commit 519f5eea8e3be0d7c2cd5d030323ff264727e3d0)

---------

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

* SPE-2486: Implement segmentation of layers based on fuzzy skin painting.

(cherry picked from commit 800b742b950438c5ed8323693074b6171300131c)

* SPE-2486: Separate fuzzy skin implementation into the separate file.

(cherry picked from commit efd95c1c66dc09fca7695fb82405056c687c2291)

* Move more fuzzy code to separate file

* Don't hide fuzzy skin option, so it can be applied to paint on fuzzy

* Fix build

* Add option group for fuzzy skin

* Update icon color

* Fix reset painting

* Update UI style

* Store fuzzy painting in bbs_3mf

* Add missing fuzzy paint code

* SPE-2486: Limit the depth of the painted fuzzy skin regions to make regions cover just external perimeters.

This reduces the possibility of artifacts that could happen during regions merging.

(cherry picked from commit fa2663f02647f80b239da4f45d92ef66f5ce048a)

* Update icons

---------

Co-authored-by: yw4z <ywsyildiz@gmail.com>

* Make the region compatible check a separate function

* Only warn about multi-material if it's truly multi-perimeters

* Improve gizmo UI & tooltips

---------

Co-authored-by: Lukáš Hejl <hejl.lukas@gmail.com>
Co-authored-by: yw4z <ywsyildiz@gmail.com>
2025-07-18 16:01:25 +08:00
865c215fb9 Add ironing fan speed control (#9944)
* Internal bridge fan speed should be applied only if overhang bridge fan control is enabled

* Reduce duplicate code

* Add ironing fan speed control
2025-07-18 16:01:15 +08:00
b4d52b6743 add user name placeholder (#10109)
* Add user name placeholder

* non-ASCII character support

* fix: Explicitly include <boost/nowide/cstdlib.hpp>
2025-07-18 15:43:46 +08:00
f54c73e2a1 Standard units don't need translation, part 2 (#9974)
* Revert unit change made by mistake, and fix some unit translations

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

---------

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

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

* Remove boolean

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

* Tab fix

* bool has_top_shell

* Fix some missing toggle lines

* Update Fill.cpp

* unnecessary check.

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

---------

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

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

* Torus

Delete torus.stl

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

* traingle count tunning

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

* Update TriangleMesh.hpp

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

* adjusting disk diameter

---------

Co-authored-by: Ian Bassi <12130714+ianalexis@users.noreply.github.com>
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2025-07-13 22:07:55 +08:00
47d9a6e8d2 Merge branch 'main' into dev/bbl-network-upd 2025-07-05 19:02:11 +08:00
2bfe6a8ea9 Multiline infill support for 2D lattice and 2DHoneycomb patterns (#10060)
* 2d Laticce multiline

Update FillRectilinear.cpp

* Optimize remove overlapp

* 2D Honeycomb multiline

* Calculate distance at midpoint
2025-07-05 18:42:28 +08:00
d0cb5cbea2 Small improvement of tpmsd infill (#10049)
* smooth tpmsd

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

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

* Modular Offset Function

* Lightning multiline

* Crosshatch Multiline

ipCrosshatch

* cleaning

Cleaning

clean2

* 3d Honeycomb

cut poliline ends

* Fill Tpmsd Multiline

Fill Tpmsd Multiline

* Update Multiline function

multiline funcion simplify

* Update FillTpmsD

* FillHoneycomb

* Update src/libslic3r/PrintConfig.cpp

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

* Fix Honeycomb Multiline

Simplify polylines in honeycomb infill generation

* Improve multiline infill support and pattern simplification

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

minimum changes

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

* Increase multiline fill spacing in honeycomb infill

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

* Refine fill_multiline tooltip and pattern support logic

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

* better management of non supported infill patterns

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
Co-authored-by: Ian Bassi <12130714+ianalexis@users.noreply.github.com>
2025-06-30 23:07:33 +08:00
8db73f75ba Fix an issue that Orca rebuilds every time. (#10033)
remove SLIC3R_BUILD_TIME as it cause rebuild everytime
2025-06-30 23:05:53 +08:00
52c56527f6 fix: Set the default value for the skeleton infill width to 0 fork sk… (#9995)
* fix: Set the default value for the skeleton infill width to 0 fork skipping the min check

* fix: Update default value for skeleton infill line width to 100%
2025-06-28 10:49:29 +08:00