Commit graph

512 commits

Author SHA1 Message Date
Noisyfox
cdec42e361 Fix crash due to not reading the extruder_type option from preset files 2025-09-06 19:45:43 +08:00
lane.wei
b849426125 FIX: config: fix some potential crash when load gcode.3mf
jira: STUDIO-9131
reason: sometimes the popup window causes Print::Apply using invalid configs
Change-Id: I1764050f7177a65625f4668b2e1f86c80a4d4e5a
(cherry picked from commit 5a32ce3599883b9976e32ef2c864967efd52fbc2)
(cherry picked from commit e16da5da85bc8b758e79223581c21fdd98a89a25)
2025-09-05 17:43:57 +08:00
chunmao.guo
660d2ee686 FIX: object params variant crash
Change-Id: Ia67b98c29a0cc97f8479911ffdefb942cb6c751f
Jira: none
(cherry picked from commit 8bf65c0963d1ee39bba12f67f33177d4ac6d6a60)
2025-08-28 15:18:42 +08:00
Stone Li
01052c9c15 NEW: add more info for multi-nozzles printers
JIRA: STUDIO-9111

Change-Id: I5ed619d57b6857f5d4a1e38662d2fe03640222a3
Signed-off-by: Stone Li <stone.li@bambulab.com>
(cherry picked from commit 993228d3e99e7976a3839b29453b53023ec18b71)
2025-08-28 15:01:52 +08:00
xun.zhang
07148d2dfd ENH: set filament retract params even if nil
1.Always set filament retract params to filament_num size.In
gcode export module, we can always use filament idx to get
retract params

2. add logic in update_filament_maps_to_config to update the
   retraction related params which can be overiden by filament

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ia45dd1401aa3565d062d5da1c9f4a2ba8966f693
(cherry picked from commit 4b083d8d8220b8f65a1b804688cb2d6e238eb4e6)
2025-08-28 11:09:05 +08:00
xun.zhang
b215169f25 FIX: wrong default value for ext printable height
The length of default value for extruder printable height
should be same with extruder printable area

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I01bf5e2a9ddb2faadbbe0a01f4ff2c5582b8ac45
(cherry picked from commit 01bb0c6d661f1d72448782523fb612b2aabfec00)
2025-08-26 10:11:47 +08:00
lane.wei
1297857f66 ENH: config: process object config values after printer switch
jira: no-jira
Change-Id: I01532c42c20aa63b1b9621e175a98cad06bdf577
(cherry picked from commit cc86a62d408cb40942c49277a7f239144d7a5567)
2025-08-26 10:11:43 +08:00
zhimin.zeng
b8f8151340 FIX: fix the extruder_type error
jira: none
Change-Id: Iff97613b5dd0c76f9883c031ab396cd27a27b20d
(cherry picked from commit 10d9c12202219a9accbb5bd8b1e9841def9b8c61)
2025-08-24 23:18:30 +08:00
zhimin.zeng
6cb1ffdbf5 FIX: handle DirectDrive of old file
jira: none
Change-Id: I5acb1689dc1628709631f02b110c7626d93762c8
(cherry picked from commit c17b4b78f3c2a02508e10bd0c7b9b4f624eda0c3)
2025-08-24 23:18:30 +08:00
zhimin.zeng
34ebd54680 ENH: add print_outer_first for wipe tower
and modify the min_depth_per_height
jira: none

Change-Id: I4860df661b4dd1f66677112d14e60560bc4a73be
(cherry picked from commit 00810d685d01a91b5373f3315413aaef1fe49cbc)
2025-08-24 23:18:29 +08:00
zhimin.zeng
5935b75fe5 ENH: Add extruder_printable_height
to support different printable height of multi_extruder
jira:none

Change-Id: I265c65e15fc8f598c3456556557bb6977b5de820
(cherry picked from commit 933adbaaf0eaf361e39f131dd5536dca91214d43)
2025-08-24 23:18:29 +08:00
zhimin.zeng
37ff918ea9 FIX: modify the name of high flow
jira: none
Change-Id: Icd1a0ac91e957fc38a6f072b1bb3af0c97be398e
(cherry picked from commit ea0691f092755d7e68db3ecf8b46b0e86a8fadb2)
2025-08-24 23:18:28 +08:00
xun.zhang
f382ee98db ENH: add map for logic ext to physical ext
jira: NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I0d250de87b3c3d6c9ceb4efd3099c82104e5fc1b
(cherry picked from commit b45d2f53801abc209cb98670c0960efc21ab120e)
2025-08-24 23:18:26 +08:00
lane.wei
db0f3e484a ENH: CLI: support multi-extruder slicing
1. add slicing errors for gcode in unprintable area, also for filament mapping
2. use common area for auto arrange
3. support filament_map/filament_map_mode related params
4. add logic to check the filament maps before slicing
5. uptodate support multi-extruder
6. switch new machine/filament support multi-extruder
7. process config params support transfer between mult-extruder and
   single-extruder
8. improve machine-limit logic support multi-extruder
9. flush-volume support multi-extruder
10. add default params to support auto mapping slicing

jira: no-jira
Change-Id: Ice39a365841322ddb586d39c56ff923626822528
(cherry picked from commit f518d6804a9de69deef81c20cd22005a4bbd0cd4)
2025-08-24 23:18:25 +08:00
xun.zhang
a6dc8c27a8 FIX: invalid pop up when changing machine profile
1. Machine with multi extruder should set length of extruder offset
to extruder num
2. Register retract_restart_extra

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ic3eb324cb91dc70b091c8922936d2709c361cc38
(cherry picked from commit 13df1ee7bab2bf13c9f5ffca6ad1228ff48e885e)
2025-08-24 23:18:20 +08:00
xun.zhang
e1ebe832dd ENH: refine filament group algorithm
1.Use max flow network to handle limit
2.Support setting master extruder id
3.Fix the issue in the KMedoids algorithm where data is overwritten
after each retry.

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Idd2bedf39f61e7a65eb4199852f60b8fbebe0a7d
(cherry picked from commit 3cfb49a1b9dc2c76066ec441f1028f99a4bf99c4)
2025-08-24 23:18:19 +08:00
lane.wei
082c213dcf ENH: config: add extrudrer variant check logic
when load config from 3mf

Change-Id: I946ba777853e479418fcd1b49209f75ed41f33f3
(cherry picked from commit 5defd2b7c315d658be52caf8eb97e80b41458f31)
2025-08-24 23:18:17 +08:00
zhimin.zeng
72d758c3b0 FIX: modify unprintable_filament_ids should regroup
jira: none
Change-Id: Ifb8105f6e301aaed9ca4e62a37b9d3a1616e755b
(cherry picked from commit fec7129437fc781b918ae1819c280440ea3fb54b)
2025-08-24 23:18:16 +08:00
lane.wei
9142654795 ENH: config: add default_nozzle_volume_type in printer
1. also remove original nozzle_volume_type from printer
and move into project config
2. support save nozzle_volume_type into appconfig
and load from it at beginning or printer switch

jira: no-jira

Change-Id: I01fc82d142fc633fc59a238796a71b9f8d180efb
(cherry picked from commit fe8b904e7551cde83b1ead75922e9b60278b50ad)
2025-08-24 23:18:16 +08:00
zhimin.zeng
8eb0a59723 FIX: fix flow ratio calib bug for single extruder printer
2. modify the filament_flow_ratio to nullable
jira:none

Change-Id: I3f0569ee643cfe9473c6029ca0e04f4b80c8332e
(cherry picked from commit ed61d1d31bdc79f064567deacf35e05bd123880d)
2025-08-24 23:18:13 +08:00
xun.zhang
e433e49e2f ENH: add some params for multi extruder
1. Nozzle Volume and Nozzle Type support multi extruder now

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ie171b5105bd3830db3a992cadd365b785008c47a
(cherry picked from commit 2ebd14667e43dc745556f5e7bcbb7c2ccad4a007)
2025-08-24 23:18:12 +08:00
xun.zhang
297292ccf3 ENH: extruder printable area default to be empty
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: If4aad7329cd97141eaec3e438dee165e86536c66
(cherry picked from commit 68ed20dd096d6fcd74f7dfa606548a6f640ec688)
2025-08-24 23:18:12 +08:00
xun.zhang
4f42d6bd8e ENH: add ConfigOptionPointsGroups
1.Add extruder printable area

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I753344917a67e3d8ac361c15c3d374b5ef951d21
(cherry picked from commit 92fa0ff010f9ee8dee24f4c00b5217f92ecb04f6)
2025-08-24 23:18:12 +08:00
zhimin.zeng
955bb4dea8 ENH: wipe tower support nozzle change
jira: none
Change-Id: I398a508cbc8d02644b60e504405392254329ef10
(cherry picked from commit 8b2a94ed5f8b757ccc4919b9182f3d8edaf767fd)
2025-08-24 23:18:10 +08:00
xun.zhang
f021235ceb FIX: mistake in profiles
1.Spelling mistake in long retraction
2.Some params length change to 4

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I8952df7a1bbf060471e24a19eaeddde017d17d82
(cherry picked from commit 7ce2bb70df1b4f45f27e8e91293e1dbf4456956c)
2025-08-24 23:18:08 +08:00
xun.zhang
cc4c03d76f ENH: add grab length
1.During the filament change, the extruder will extrude an extra length
of grap_length for the corresponding detection, so the purge volume can
reduce this length.

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I14f55a3200c1dd48b1603e50280d0c29e1319ebe
(cherry picked from commit 16cadec565f987e6baae97428d5392c1f8e7ad39)
2025-08-24 23:18:07 +08:00
xun.zhang
78e7821041 ENH: enable long retraction for multi_extruder
jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I41daa7a5f1eabf0a805a86d72d00544c8f4edb4a
(cherry picked from commit 887ca8f45f9b66ea24ca82dc7b84f411f6fe7b59)
2025-08-24 23:18:07 +08:00
zhimin.zeng
a9bec75ea2 ENH: add extruder_ams_count behavior
1. save to appconfig and project setting
2. use it to group
jira: none

Change-Id: Id4048fc1b47f6904b2e9c0154aaa3a2b03590437
(cherry picked from commit da32b878b3d7ca95ae5c4786102848c1e8a5ab2d)
2025-08-24 23:18:07 +08:00
lane.wei
f52dd41b23 ENH: config: remove unused custome_defined logic
also improve project_embedded
1. remove unused is_custom_defined
2. improve project_embedded to support multi-extruder diff

jira: no-jira

Change-Id: I1db28c3cfd59ccc31c6855af30305396c71c4e9a
(cherry picked from commit 0434853bf32b063f7850fd4e0c9c3a6045375225)
2025-08-24 23:18:06 +08:00
xun.zhang
aee14d307a FIX: wrong flush logic
1.Fix flush calc logic
2.Rename m_extruder in GCodeWriter

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I38f023fbad983305632ca62cbfb3909759013c25
(cherry picked from commit f1b0805ed13eb94d6eb61e12330db3d628c0241b)
2025-08-24 23:18:05 +08:00
lane.wei
22ce2ebc9a ENH: config: add the extruder variant apply logic in Print::Apply()
we need to keep the original values and update after pre-slice
jira: no-jira

Change-Id: I232d3c43340b4a23bc42121bd05380746e736f20
(cherry picked from commit 7b7ebf1b959ba5c967baff30fb226c808a2e7d44)
2025-08-24 23:18:05 +08:00
xun.zhang
c376677537 ENH: enable params with silent mode
jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Id46fa5de3a58e0fd3c3b0aa28524a03ca9a38f1a
(cherry picked from commit 3c32b2c5a6587a3fd65d235475faa2e3c4c4726a)
2025-08-24 23:18:05 +08:00
zhimin.zeng
8db3e3cd54 FIX: backend get the extruder id based on filament_map
Change-Id: Ib7679c0fc67336e462467dab9f5b4d4684d6eb19
(cherry picked from commit dcd9fd501354da33baea2adc0f645fabe8880cf1)
2025-08-24 23:18:02 +08:00
zhimin.zeng
fab6b21e4d FIX: parameters modify of printer preset
Ensure correct behavior when modifying parameters of printer preset

Change-Id: Ic627a8e202bf4224b742336cc43ac611ddc5c997
(cherry picked from commit 366a14d8f715cbeca3d0f70a4727d91b6f0ca82e)
2025-08-24 23:18:02 +08:00
lane.wei
018f0c0353 ENH: add stride in get_index_for_extruder
JIRA: no-jira
Change-Id: If529296bf6d35edc35aee3ff497184dce70332d1
(cherry picked from commit e770043c4d7a3e96acfb27f306853cc339da7529)
2025-08-24 23:18:02 +08:00
lane.wei
aba8c12d07 ENH: add check logic of filament_map when Print::Apply
Change-Id: Ibab353c4b16183611d63d75bcdf5f370cb578f21
(cherry picked from commit bbc4d701bf0f492566fb0ebefbf286630ae2136d)
2025-08-24 23:18:02 +08:00
lane.wei
f0e1a7d5c9 ENH: filament: delete filament_extruder_id related logic
jira: no jira
Change-Id: Ie0d8e31a6a3eef0400b3ba6238f817bad4daca24
(cherry picked from commit e9081ba8d4013874c972f401b3633942028621b8)
2025-08-24 23:18:02 +08:00
zhimin.zeng
69d0d88da1 ENH: Display and modification of printer presets
Change-Id: I6a38704864fd4994a845686a299bec67f1b9b9b3
(cherry picked from commit 5b0d5259571d2b1c629ba7d88101134ec4548708)
2025-08-24 23:18:02 +08:00
lane.wei
141af16fa2 ENH: config: add filament_maps in partplate
Change-Id: I1183830788e703f1d33a8a4b620b58b822283dd4
(cherry picked from commit b0e3ab037e3f5af0851539af5ac15b8f96daf548)
2025-08-24 23:18:01 +08:00
zhimin.zeng
84dc2d8835 ENH: flush_volume support multi_extruder and fix bug
Change-Id: Id6b041f71ee6e55e68a6937f24ce791caac8e708
(cherry picked from commit 6fbad9ed33b2868a2fffbebdc3a98926431a1093)
2025-08-24 23:18:01 +08:00
zhimin.zeng
57916c7452 FIX: Use the same api to get the extruder id
jira: none
Change-Id: I05b3040b176374deee3e95bc52364fe7b33bb257
(cherry picked from commit 8b2544df41456377b09719de15460b19b7c71e09)
2025-08-24 23:18:01 +08:00
lane.wei
d9efd47c90 NEW: config: add logic in config system to support multiple extruder
1. add nozzle_volume_type
2. add extruder_variant_list
3. add printer_extruder_variant,print_extruder_variant, filament_extruder_variant
4. construct backend fullprintconfig

Change-Id: I50659634e2cde363112ff5ded6c199d7548c6f2f
(cherry picked from commit 03058ba29dd358acd9726d1c58561e16409e8d04)
2025-08-24 23:18:01 +08:00
SoftFever
6ae89f7d9b
rename 2DHoneycomb and 2DLattice to LateralHoneycomb and LateralLattice (#10423)
Some checks failed
Build all / Build All (push) Has been cancelled
Build all / Flatpak (push) Has been cancelled
* rename 2DHoneycomb and 2DLattice to LateralHoneycomb and LateralLattice

* more renaming
2025-08-17 23:49:06 +08:00
Rodrigo
202875a4bb
TPMS-FK Infill ( Triply Periodic Minimal Surface Fischer Koch S) (#10360)
Some checks are pending
Build all / Build All (push) Waiting to run
Build all / Flatpak (push) Waiting to run
* 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
Alexandre Folle de Menezes
4cab501f14
Fix inconsistencies on new translated strings (#10310)
* Unmark string that don't need to be translated

* Spellcheck

* Fix calibration strings consistency
2025-08-09 23:52:48 +08:00
SoftFever
aacbcab468 Allow default_bed_type to be defined in machine profile
update some profiles
2025-08-09 10:51:00 +08:00
Ian Bassi
b16d3a2f4a
Fix Ironing/Support patterns (#10278)
Some checks failed
Build all / Build All (push) Waiting to run
Build all / Flatpak (push) Waiting to run
Publish docs to Wiki / Publish docs to Wiki (push) Has been cancelled
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
SoftFever
c86eb27675 Fix a bug where the maximum line width limit is inconsistent across different checks.
Fixes #10188
2025-07-30 21:22:40 +08:00
SoftFever
8f3ed9bc7b
Introduce a new seam alignment option: Aligned back (#10255)
Some checks are pending
Build all / Build All (push) Waiting to run
Build all / Flatpak (push) Waiting to run
* Introduce a new seam alignment option: spAlignedBack.
2025-07-29 21:11:35 +08:00
π²
1ef427f661
Add template metalanguage support for infill rotation template (#9996)
Some checks failed
Build all / Build All (push) Waiting to run
Build all / Flatpak (push) Waiting to run
Publish docs to Wiki / Publish docs to Wiki (push) Has been cancelled
* 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