Commit Graph

1912 Commits

Author SHA1 Message Date
xun.zhang 6cf0e2451e FIX: support pre heating without wipetower
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ibcd3aacb9eede8bc054669f8fff98ea25f8e5d09
2025-03-22 21:35:24 +08:00
xun.zhang f625202c2b FIX: remove file exception
1.Use boost::nowide::remove instead of std::remove

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ic674ea0791342d77418d1a0de3289d6027f967b1
2025-03-22 21:35:24 +08:00
qing.zhang 419ce01698 ENH: match first filaments with physical extruder
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I3907476c4644e2b0c2c097edf2bbf93e3a92cf90
2025-03-22 21:35:24 +08:00
qing.zhang 361d748992 FIX: set initial one to initial no support extruder
Jira: none

while there is no non support filament
set first print filament to initial_no_support_extruder

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: If2fee560772c9a7cfa1855efc85116fb7df04760
2025-03-22 21:35:24 +08:00
qing.zhang 666e49e299 ENH: get first filaments & non support filament
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I9370e48b634f21a2d3fd11d437f699b5cdb5ce43
2025-03-22 21:32:41 +08:00
qing.zhang e0508a9e51 ENH: get most used extruder id
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I9c498cefb07b3bdf89a17bfd75a3075c2294c934
2025-03-22 21:22:25 +08:00
xun.zhang b104e138dd ENH: pre cooling and heating
1.Rely on nozzle change tag instead of T command to detect
extruder free range
2.Support enhance cooling for TPU filaments
3.Fix a negative temperature issue
4.M104 commands add params to specify that command is generated
by slicer

jira: NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I2d157e5a84da75e656d3281cf38eea8697bd897a
2025-03-22 21:12:54 +08:00
zhimin.zeng 17edbd8cd5 FIX: the nums of nozzle_volume_type is incorrect
when save MW 3mf file as multi-extruder
jira:none

Change-Id: I848e348277fb047c2c3569508d2adbe940e40255
2025-03-22 21:11:23 +08:00
xun.zhang 01bb0c6d66 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
2025-03-22 21:11:22 +08:00
lane.wei cc86a62d40 ENH: config: process object config values after printer switch
jira: no-jira
Change-Id: I01532c42c20aa63b1b9621e175a98cad06bdf577
2025-03-22 21:11:22 +08:00
zhimin.zeng 10d9c12202 FIX: fix the extruder_type error
jira: none
Change-Id: Iff97613b5dd0c76f9883c031ab396cd27a27b20d
2025-03-22 21:11:22 +08:00
zhimin.zeng c17b4b78f3 FIX: handle DirectDrive of old file
jira: none
Change-Id: I5acb1689dc1628709631f02b110c7626d93762c8
2025-03-22 21:11:22 +08:00
zhimin.zeng 78eea0a36f FIX: the wipe tower is not correct for tpu
jira: none
Change-Id: I79ed204638602013d73525e23a2b74af2c0efff2
2025-03-22 21:11:22 +08:00
lane.wei 43773d7701 ENH: buildvolume: add logic to support extruder_printable_height
jira: no-jira
Change-Id: I962c4aed8c536c0fd8b89ae090cd0463c5d645db
2025-03-22 21:11:22 +08:00
zhimin.zeng 00810d685d ENH: add print_outer_first for wipe tower
and modify the min_depth_per_height
jira: none

Change-Id: I4860df661b4dd1f66677112d14e60560bc4a73be
2025-03-22 21:10:13 +08:00
zhimin.zeng bde01dc181 FIX: the gcode.3mf cannot display correctly
because the empty value of unprintable_filament_map
jira: none

Change-Id: I223fde51e31c2206b81512737058c7015cb10816
2025-03-22 21:10:13 +08:00
xun.zhang 7b5818fe6c ENH: seperate reorder from toolorder construct
1.Only do reorder if requseted.In by object mode,we only need
to collect the filaments in the object for filament grouping

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Id88f2449c6d3c5d45b9ff87513308d997fa72da1
2025-03-22 21:10:13 +08:00
zhimin.zeng 933adbaaf0 ENH: Add extruder_printable_height
to support different printable height of multi_extruder
jira:none

Change-Id: I265c65e15fc8f598c3456556557bb6977b5de820
2025-03-22 21:09:55 +08:00
xun.zhang 242554557b FIX: filament group crash in cli mode
1.Always do filament group to get correct filament map

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ie4e61c310f6c0cfeacb2a49c4f065f9674b6a35f
2025-03-22 21:09:55 +08:00
zhimin.zeng 02c2fb6f6c FIX: fix crash of slice
jira: none
Change-Id: I68b1557d5a361d175abdff99a0542ca105b76f7f
2025-03-22 21:09:55 +08:00
zhimin.zeng ea0691f092 FIX: modify the name of high flow
jira: none
Change-Id: Icd1a0ac91e957fc38a6f072b1bb3af0c97be398e
2025-03-22 21:09:54 +08:00
zhimin.zeng 6bf3969051 FIX: modify for get pa cali result
jira: none
Change-Id: I3c57ccaac3b7e73e0b2eb0e26678635478480298
2025-03-22 21:09:54 +08:00
lane.wei d050aa4d36 FIX: config: fix some loading issue with filament_self_index
1. generate filament_self_index for old files in cli
2. set filament_self_index to default for old files using single extruder
jira: no-jira

Change-Id: I6e3f520723ee7f3a75634121604023ba319ff97a
2025-03-22 21:09:54 +08:00
zhimin.zeng b495bfd4e9 FIX: fix crash when loading 3mf file
jira: none
Change-Id: Ice2a518518994871d23a6f478145edd36f0343a2
2025-03-22 21:09:54 +08:00
zhimin.zeng 695b3c78e4 FIX: Painting displays incorrectly when removing color
jira: STUDIO-8657
Change-Id: I0fdfac500716d83f45c73dc07feab032e793e7a5
2025-03-22 21:09:54 +08:00
zhimin.zeng 4e387d4ace ENH: support auto pa cali for multi_extruder printer
jira: none
Change-Id: I835a0e20de81f9af7c40983e00bdb37ea6c95a68
2025-03-22 21:09:20 +08:00
zhimin.zeng 50b3d0097e ENH: enhance for wipe tower
1. modify the start position of wall
2. modify the overlap of wall and infill
3. print wall first
jira:none

Change-Id: I1b3f4a8cb198f84b81aba638cc722dedf84a164c
2025-03-22 21:09:20 +08:00
tao wang db8ae4ccb3 NEW:support new nozzle and extder data
jira:[new nozzle data]

Change-Id: Ief37b42794ce1469163fcd8227431ec77957508e
2025-03-22 21:09:20 +08:00
xun.zhang 8616784886 ENH: use physical extruder map to get ext id
jira: NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ibfaacfc31863404153a80289bd5cb47d72418060
2025-03-22 21:09:19 +08:00
xun.zhang b45d2f5380 ENH: add map for logic ext to physical ext
jira: NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I0d250de87b3c3d6c9ceb4efd3099c82104e5fc1b
2025-03-22 21:09:19 +08:00
zhimin.zeng 83681128e0 FIX: slice crash with incorrect filament_map of single printer
jira: none
Change-Id: I49bdcf03fc8abb24e41e0545e2d9cd3c55941df4
2025-03-22 21:09:19 +08:00
xun.zhang d3c1c36a68 ENH: preheat extruder before filament change
1. Pre cooling extruder after the extruder used
2. Pre heating before the extruder used
3. Refine the structure of finalize function

jira: NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I98c92763c006fc9564db45a4a5d542b891ea1aa2
2025-03-22 21:09:15 +08:00
zhimin.zeng 28046fbc23 ENH:add layer_filament_list.json record used filaments for each layer
jira: none
Change-Id: Ib293ff9fdd284fef9e6de93260e2ba7cc3d66daa
2025-03-22 20:59:25 +08:00
zhimin.zeng f7a0e66e0d FIX: modify the filament id for painting color
jira: none
Change-Id: I25dcab95f1499783afd892c790f1e18232ea4f72
2025-03-22 20:59:25 +08:00
zhimin.zeng 60cdf3b655 ENH: add tpu check before slicing
jira: none
Change-Id: I7d4f053e67f4a4aa22ef990d597d28cb894c4195
2025-03-22 20:59:25 +08:00
lane.wei f518d6804a 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
2025-03-22 20:59:21 +08:00
xun.zhang 563e4ca8cf FIX: wrong flush statistics in sequence mode
jira: NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iec3557900fce7b3c70e05705f9ea0e987fdff3cd
2025-03-22 20:58:37 +08:00
xun.zhang a289370b19 ENH: save filament sequences in gcode result
jira: NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I79c2eb4002c72568d487df417c914ab0b8a14a67
2025-03-22 20:58:37 +08:00
xun.zhang c6ddd329e3 FIX: disable unprintable logic for single ext
1.Disable unprintable logic for single extruder printers

jira: NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iecb4cc80455288925d3acb5688b81aa9ef1c3a8a
2025-03-22 20:58:36 +08:00
zhimin.zeng acd6016fc8 FIX: add object id for gcode check
and display plater limit error individually
jira: none

Change-Id: Ie6105642667530901be494b344ce853e728ae5fa
2025-03-22 20:58:36 +08:00
zhimin.zeng 2a028aa010 FIX: crash when third flow and PA calibration
jira: 8484
Change-Id: Ib4f1d4e38bd0d4af5a43777e2f077381b3887581
2025-03-22 20:58:36 +08:00
zhimin.zeng 1d721f27ec FIX: modify for interlocking
jira: none
Change-Id: I8d68df871f6fffa7b66f27344f3676f90a19e102
2025-03-22 20:58:36 +08:00
Noisyfox a21779dd30 NEW: 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: zhimin.zeng <zhimin.zeng@bambulab.com>
jira: none
Change-Id: I81cacddf46ad5921a7a2a23fff07cc17addceb6f
2025-03-22 20:58:36 +08:00
xun.zhang e3f4496adf ENH: modify filament group strategy
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iac837beeb7a5c4684aea38c3e3925a67cd916fe8
2025-03-22 20:58:14 +08:00
xun.zhang 21379e1336 ENH: do not consider empty filament
1. Do not consider empty filament when selecting group for ams
2. Function "collect_filaments_in_groups" is frequently called,
optimize memory allocation to speed up.

jira: NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iad8c9a257bc2dd832c77e650f8c052fb9d8379a0
2025-03-22 20:58:13 +08:00
xun.zhang 13df1ee7ba 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
2025-03-22 20:58:13 +08:00
zhimin.zeng 6b5a0c2d17 FIX: modify the limit of max_volumetric_speed to 200
jira: none
Change-Id: Id84707471d4b34ebda9ff56766e3b058ee6a5021
2025-03-22 20:58:13 +08:00
xun.zhang 48023e4c15 FIX: empty filament map
1.Caused by uninitialized filament map in mapping for AMS

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I71ce6001fc6f2e72eb9303fcaba0bac16ad70dc9
2025-03-22 20:58:13 +08:00
xun.zhang 1379b83846 ENH: Select group that best fit filaments in AMS
1.Only consider groups with a distance within the threshold

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I91526a796a0f7f1ed3e77c41076c1f85620dd944
2025-03-22 20:58:13 +08:00
zhimin.zeng b17c5e7e01 FIX: flush_volume_matrix and flush_multiplier is incorrect
jira: none
Change-Id: Ie2d73b90b9ac7f5a6945b2bac859b76d2132f55a
2025-03-22 20:58:13 +08:00
xun.zhang 3cfb49a1b9 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
2025-03-22 20:58:12 +08:00
zhimin.zeng d715353fa6 FIX: fix the crash bug when slicing
jira: none
Change-Id: Ieaec4fda4c653e6595322356bd16226640d2e932
2025-03-22 20:54:17 +08:00
zhimin.zeng 20837717d4 FIX: When the printer is inconsistent with the current preset
when the ams is 0/0, should not consider the print connect status
jira:none

Change-Id: I2288ff15894d5c734a98b830df6678cab2bd12fc
2025-03-22 20:54:17 +08:00
xun.zhang d9ea1a4b24 FIX: performance issue caused by copy LayerResult
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I5f1bda598ef096999a0eda2fa68d2a24c97c22ca
2025-03-22 20:54:17 +08:00
xun.zhang b34395358b ENH: support virtual G1
1.We need virtual G1 command for statistics

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I0db0f7f0f0c2d61e43582154e0bd76bd0097c8da
2025-03-22 20:54:16 +08:00
xun.zhang b4d8566332 FIX: crash when ams filament list is empty
1.Set the default size of ams filament to 2

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ie985ecfa44cb9fcaf21406303e32bb56e731f351
2025-03-22 20:54:16 +08:00
xun.zhang 2f11ca8a03 ENH: remove a useless assert
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ief29b7cc8adc16218f1b3608a35448bd95e54c80
2025-03-22 20:54:16 +08:00
xun.zhang 0b95bdd9d9 ENH: do another map for ams filaments
1.If the group result differs little in flush,we will choose the one
that best fits the ams filaments

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Icd147b406e3494c841ef13564ad1b1231ad798fd
2025-03-22 20:54:16 +08:00
xun.zhang 8472e3011c ENH: add wall vol speed when filament change
1.Add placeholder for outer wall volumetric speed when changing
filament

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ib1d5608f95bc12777db5d848f6b037c27ea0fd03
2025-03-22 20:54:16 +08:00
xun.zhang 8c88fabe8f FIX: missing filament start gcode with 1 color
1. Caused by setting the current filament to filaments used
in machine start gcode

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: If6789b1e02aadc6d03610b7b7cc4c829ae767a7d
2025-03-22 20:54:16 +08:00
zhimin.zeng 51de6253ce NEW: Add "change filament to"
jira: none
Change-Id: Ic5550ed257e03033681de91ebca521390f902f66
2025-03-22 20:54:16 +08:00
lane.wei 913bace1eb FIX: config: fix the 3mf export invalid issue when using single filament
JIRA: no-jira
Change-Id: I1faf1fd7ac2b3dfd99594856e3c84da12d805627
2025-03-22 20:53:56 +08:00
lane.wei 2636e44dc0 ENH: config: add exception when load old invalid 3mf
some param has been changed for the multi-extruder
currently we popup an exception
JIRA: no-jira

Change-Id: I1e892203d34c569a580694c1c28a1c7d695c1c64
2025-03-22 20:53:56 +08:00
xun.zhang 994e4f4840 ENH: enhance accuracy of weight calculation
1.Use float to store the weight copmputed in the procedure.Avoid the
issue where filament weight remains at 0 after changing filaments

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iff0cfc6e22f34affbc232dbfe196f27ee06d2d9e
2025-03-22 20:53:56 +08:00
zhimin.zeng fec7129437 FIX: modify unprintable_filament_ids should regroup
jira: none
Change-Id: Ifb8105f6e301aaed9ca4e62a37b9d3a1616e755b
2025-03-22 20:53:56 +08:00
zhimin.zeng d56bf872cf ENH: some fix of previous commit
fix to I0c853de6b1938c7e2addbaab5a45b35daf5a32fa

Change-Id: I307f99b301709fd00090dc234c054dacfda2e76a
2025-03-22 20:53:56 +08:00
zhimin.zeng 3b988f6b77 FIX: incorrect print sequence of support filament on first layer
jira: none
Change-Id: I893fc773849a5557c138de3f9bd1c3ec1e1978df
2025-03-22 20:53:55 +08:00
zhimin.zeng 85ebb46995 ENH: Add limited filament maps to slice info
jira: none
Change-Id: I7b08943ba5f4e7fa9be18ba3f64caee182888d45
2025-03-22 20:53:55 +08:00
xun.zhang a16ec053b4 FIX: get abs value for small perimeter speed
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I686b22f072ad0f87e50ef2321b92daaa3cb0154f
2025-03-22 20:53:55 +08:00
zhimin.zeng b620a4122e ENH: Pass ams information for slicing
jira: none
Change-Id: I3fe12189b6e8246fd553dcd8659bf7f98e622767
2025-03-22 20:53:55 +08:00
xun.zhang f39eabfd9f ENH: add tpu check when printing by object
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I366aa8387dfc8d1c94fe836ee4898424d04737c3
2025-03-22 20:53:55 +08:00
zhimin.zeng 885e96d8db FIX: fix build error 2025-03-22 20:53:55 +08:00
zhimin.zeng 5aecc67874 ENH: some fix of previous commit
fix to If495a343efdb1be6f46d11dd20f6ec7934266e87

Change-Id: I9a0afee5c78a23e92c9c76bceff7937bb983918e
2025-03-22 20:53:54 +08:00
zhimin.zeng c75c10e312 ENH: Add gcode check for multi_extruder
jira: none
Change-Id: Iebc43e608c4509eb62b280af2d401fa9e0e089ba
2025-03-22 20:53:54 +08:00
xun.zhang c53a35856d ENH: add filament cluster algorithm
1.Add new KMediods algorithm
2.Consider physical and geometric printables
3.Refine code structure

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I1412835c3c6380f9cedb44ff6914004365bba889
2025-03-22 20:53:54 +08:00
zhimin.zeng ed61d1d31b FIX: fix flow ratio calib bug for single extruder printer
2. modify the filament_flow_ratio to nullable
jira:none

Change-Id: I3f0569ee643cfe9473c6029ca0e04f4b80c8332e
2025-03-22 20:53:54 +08:00
zhimin.zeng 38b3c32b6a ENH: flow_ratio cali support multi_extuder
jira: none
Change-Id: I03399040a772043d3d20116b0588fd04e0725be1
2025-03-22 20:53:54 +08:00
qing.zhang 276c797faf FIX: remove extra filament change
Jira: none

if the fist print filement as same as the filament be set on start gcode
not insert filment change

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I0114f287fff9be276a90772537d1910df18dec61
2025-03-22 20:53:54 +08:00
zhimin.zeng ede9f90a79 ENH: support tpu for multi_extruder
jira: none
Change-Id: I556804aadac00406e7214b86f7925170a90c55ce
2025-03-22 20:53:54 +08:00
lane.wei 22feef013c FIX: model: fix the bbox computing issue when update_instances_print_volume_state
JIRA: STUDIO-7498
Change-Id: I80fac3253d1bd6fcc49a4eb08dd68fe2e458c148
2025-03-22 20:53:54 +08:00
lane.wei 62b1d00d1f ENH: 3dbed: support rendering extruder area with different color
JIRA: STUDIO-7494
Change-Id: I717999e8b7ab1d7d350299b412a3a270c6ba7a9e
2025-03-22 20:53:53 +08:00
lane.wei 2d791aea17 ENH: config: set default 'extruder_printable_area' to empty
JIRA: no-jira
Change-Id: I5d574a12684281faabbd1cf96e68e9b9ad593edc
2025-03-22 20:53:53 +08:00
lane.wei e5be69dedd ENH: dual_extruder: add logic to process extruder_printable_area
JIRA: STUDIO-7498
Change-Id: I1cf53db93acf41b06cb1b9569a0679487c9f1e41
2025-03-22 20:53:19 +08:00
xun.zhang 2ebd14667e 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
2025-03-22 20:53:19 +08:00
xun.zhang 68ed20dd09 ENH: extruder printable area default to be empty
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: If4aad7329cd97141eaec3e438dee165e86536c66
2025-03-22 20:53:19 +08:00
zhimin.zeng 8cf72ab46c FIX: move the lift gcode from change_filament_gcode to GCode.cpp
and delete ;nozzle_change_gcode of change_filament_gcode
jira:none

Change-Id: I79c2896afe15b59ba3932240edcb6330e230470f
2025-03-22 20:53:19 +08:00
zhimin.zeng c1dec339dd FIX: modify the filament_change_gcode
and set 1/4 max_volumetic_speed for TPU
jira: none

Change-Id: I492ce178a88fb702fc051f8a0abec6a4b5706d00
2025-03-22 20:53:19 +08:00
xun.zhang 92fa0ff010 ENH: add ConfigOptionPointsGroups
1.Add extruder printable area

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I753344917a67e3d8ac361c15c3d374b5ef951d21
2025-03-22 20:53:18 +08:00
zhimin.zeng e5d2ea3909 FIX: slice status error when print by object
jira: none
Change-Id: Iaa8453cbf79a38984cdae085418165287fee21b1
2025-03-22 20:53:18 +08:00
zhimin.zeng 11f61abefa ENH: calib support multi_extruder(UI part)
jira: none
Change-Id: I3009c2f8b601dc078cfed787dc3531fc1d4848d6
2025-03-22 20:53:18 +08:00
xun.zhang c6251b4d64 FIX: compile warings caused by 64bit shift
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ibce8e160a922c266bfb9b6a52fad01466fee8bef
2025-03-22 20:53:17 +08:00
xun.zhang 1525c3c3ac ENH: support custom layer sequence
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I73f030f2009b66aef20e3492f742d85970081e8a
2025-03-22 20:53:17 +08:00
xun.zhang 7d4d5f2c9b ENH: change some params to nullable
jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ifd91da26d089c78e2d5036e145b7f4404535b7a5
2025-03-22 20:52:56 +08:00
xun.zhang ab81baee92 FIX: wrong placeholder data when filament change
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: If6f6db1a2086c17541c7984c2db33d7bbcf21801
2025-03-22 20:52:56 +08:00
zhimin.zeng 706c79f4f4 FIX: G1 F0 in gcode
jira: 7631
Change-Id: I247e47756f1382d77f104a6ba97883e01d9d0187
2025-03-22 20:52:55 +08:00
xun.zhang 18894bd803 FIX: mistake use of extruder id
Should use filament id instead of extruder id

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I669092da6902158ad5f89d4814c78eabdfb2e7c7
2025-03-22 20:52:55 +08:00
zhimin.zeng 9ee85bef34 FIX: enhance filament_map auto manual behavior
1. auto mode dragdrop is not allowed
2. not display filament_map when there is no result in auto mode

jira:none

Change-Id: I0800e0d832e27fe459a17bb1aa829b5e72d0ee8f
2025-03-22 20:52:55 +08:00
xun.zhang 0716b8518e ENH: add tool order function
1.Use min cost max flow to solve the tool order

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I909845039b67c7fe3ddd42580ad3f1d71d52262d
2025-03-22 20:52:55 +08:00
xun.zhang 0f70c81a7d ENH: optmize code structure of tool order
1.Put reorder functions in ToolOrderUtils

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I49c7b447ba1f41f3747ba3127d842c4e3957b5ff
2025-03-22 20:52:55 +08:00
lane.wei fe8b904e75 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
2025-03-22 20:52:24 +08:00
zhimin.zeng 8b2a94ed5f ENH: wipe tower support nozzle change
jira: none
Change-Id: I398a508cbc8d02644b60e504405392254329ef10
2025-03-22 20:52:23 +08:00
xun.zhang b49d4ca153 ENH: save multi extruder state in gcode processor
1.Save multi extruder state in gcode processor
2.Add machine exturder change time
3.Fix some naming issues

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I9785331290515eeb908ff0ff01aad5aac44212d9
2025-03-22 20:51:44 +08:00
chunmao.guo 5f30ee389e ENH: config apply_only vector at index
Change-Id: I7bf5a44b2d3db2e21207696b6ef7e41a499da078
Jira: STUDIO-7747
2025-03-22 20:41:57 +08:00
xun.zhang 2dbc5c9396 ENH: add manual grouping mode stats
1.In auto mode,display the statistics of auto mode and single
extruder
2.In manual mode,display the statistics of manual mode and auto mode
3.Support by object mode

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: If54c4db79f33d5278c0f18d01ab0518e8660f9c7
2025-03-22 20:40:26 +08:00
xun.zhang 0756b51eb2 FIX: wrong filament map in layer filament
1.Should calculate cost if filament used in that layer is 1,because
we should consider the last filament used in previous layer

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I5838af77f1d73bfa07c65bd6ee12ae352dc3b571
2025-03-22 20:40:26 +08:00
xun.zhang c49c0c8f72 ENH: modify forcast limit number
1.Use forcast when filament num in current layer and next layer both
smaller than limit number

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ia21bb22ce353f0c74eeaf748c6d9f9c4b315ec18
2025-03-22 20:40:25 +08:00
zhimin.zeng 0917202733 FIX: crash when opening makerworld model
jira: none
Change-Id: Ib0b04584748181cce8b23dc44b247f2ade225a26
2025-03-22 20:40:25 +08:00
xun.zhang ad65cdb909 ENH: add filament saved by multi extruder
1.Add filament flush,filament change count reduced by multi
extruder

NTOE: cases when printing by object haven't been handled

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iaaea5f8ffae2345df5a6f1dc605342d835974d48
2025-03-22 20:40:25 +08:00
lane.wei 3a55a3a1ee FIX: context: fix the .gcode.3mf not shown issue
filament_self_index difference caused

JIRA: no-jira

Change-Id: Ia70fe8a8095b8067fe13bbfc9e5c39d9f3ee05d3
2025-03-22 20:40:25 +08:00
xun.zhang 3167e34e60 ENH: add greedy algorithm for filament reorder
1.When n becomes large,the original algorithm to get best filament
sequence will cost too much time and memory.Use a greedy algorithm
instead.Always select the next filament with fewest flush

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Iabc924e1bdb0a07af0a6ef0bbdd62e54ce54f052
2025-03-22 20:32:28 +08:00
xun.zhang adf208dbb9 FIX: multi extruder percent param
jira: NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I98d2f1df419bbf815efa5a2f0f48656a71ef15ab
2025-03-22 20:32:28 +08:00
lane.wei f122c4f4ef ENH: config: refine some small logic
1. always resize filament count when not matched in full_fff_print
2. remove no-use codes in Preset::normalize

jira: no-jira
Change-Id: Ie15a5977d28f28e0f63ba84f27f98f77d16665c0
2025-03-22 20:32:28 +08:00
xun.zhang 7ce2bb70df 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
2025-03-22 20:32:28 +08:00
chunmao.guo 1745657e22 FIX: filament variant index & override nil value
Change-Id: I828fff09df39a60d59af516c969466d9b09e503f
Jira: none
2025-03-22 20:32:28 +08:00
xun.zhang e95179427f FIX: unable to custom first layer filament order
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I0107ebf6a85ea0deba93ff558835138981365670
2025-03-22 20:32:28 +08:00
xun.zhang 16cadec565 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
2025-03-22 20:32:27 +08:00
xun.zhang 887ca8f45f ENH: enable long retraction for multi_extruder
jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I41daa7a5f1eabf0a805a86d72d00544c8f4edb4a
2025-03-22 20:32:27 +08:00
zhimin.zeng da32b878b3 ENH: add extruder_ams_count behavior
1. save to appconfig and project setting
2. use it to group
jira: none

Change-Id: Id4048fc1b47f6904b2e9c0154aaa3a2b03590437
2025-03-22 20:32:27 +08:00
zhimin.zeng 67f67d7688 NEW: Add FilamentMapDialog
support drag drop to modify the filament map
jira: none

Change-Id: I0ed3180a0fa8e95e7c871bb039eb844faccd1344
2025-03-22 20:32:27 +08:00
xun.zhang cffb4a8564 ENH: optimize filament group algorithm
1.When filament <10, do the reorder with next layer.This can reduce
10% flush in some cases
2.Support custom filament seq
3.Use caches to speed the algorithm

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ie1af9841f7165802d350eae962efe8febafbb357
2025-03-22 20:32:27 +08:00
xun.zhang cddf8cae27 ENH: add filament group strategy
1.When capacity is greater than the num of filaments, always choose the
map result that can be accommodated
2.In BestFit strategy,always try to fill up the existing capacity
3.In BestCost strategy, just try the group with fewest flush

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ifd6d64b77774039e57ffff26cf2243a4d3f89054
2025-03-22 20:32:26 +08:00
zhimin.zeng 8232a716e6 FIX: fix bug when delete filament
update filament of HeightRange
jira: none

Change-Id: I62cb21a65ecdfc36e8bc7d0915a85ecba578e49f
2025-03-22 20:32:26 +08:00
zhimin.zeng ed98163973 FIX: save filament_maps to slice_info
and fix bug when switching printer preset between single-nozzle and double-nozzle, prompt the modification of extruder_count
jira:none

Change-Id: I1d5f0b2f002493378d2f482d08cfd5a72b35b99f
2025-03-22 20:32:26 +08:00
lane.wei 3179fd416e ENH: config: add logic to apply params to object/region config with multi-extruder
JIRA: no-jira
Change-Id: Ieab98cd8d031e5ca82a3aad2d0b89d8ae4a794f1
2025-03-22 20:32:26 +08:00
xun.zhang cc81e57ac9 FIX: compatible with one extruder reorder
jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I7e350ba8728ac4b3dd34093ff4e9647d0a2ba671
2025-03-22 20:32:26 +08:00
xun.zhang 7128e2925a FIX: logic error in filament change
jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I7e2b1333d4b82e4495375fcf4daec3aea08be445
2025-03-22 20:32:26 +08:00
lane.wei 0434853bf3 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
2025-03-22 20:32:26 +08:00
zhimin.zeng ad03fae1eb FIX: Clean up the code
1. Refactor recommended code for print by object
2. Calibration adaptation sends print command

jira: none

Change-Id: I24fd92d6aca07a7067e09bb200854e5bec72a324
2025-03-22 20:32:26 +08:00
xun.zhang 1ab2964ee3 ENH: alternate multi-head printing sequence
jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I739438e8c411b638571d5291f3e5ad3d54650a73
2025-03-22 20:32:26 +08:00
xun.zhang f1b0805ed1 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
2025-03-22 20:32:25 +08:00
xun.zhang 9ec276d3d7 ENH: new filament group algorithm
1.When n<10, calc all case cost
2.When n>10, first k-medoids algorithm first
3.Enable setting group size

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I625f47e0235c70e440c6d489b052a156fbffca3f
2025-03-22 20:32:25 +08:00
zhimin.zeng 326d7d28b4 FIX: fix build error
jira: none
Change-Id: I97df69b728fc3871b7c33e1fd3ba068e741d51c7
2025-03-22 20:32:25 +08:00
zhimin.zeng 21e6271e59 ENH: calib support multi_extruder
1. backend support multi_extrude data structure
2. Compatible with third-party calibration
3. fix bug when get extruder in gocde export process

Change-Id: I5dac9abdd9907a521a1ba9b480f9e05640591bc1
2025-03-22 20:32:25 +08:00
lane.wei 7b7ebf1b95 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
2025-03-22 20:32:25 +08:00
lane.wei 4086ec60c2 ENH: config: add some miss codes
previous commit 'ENH: config: add nill load/save logic for user config' jira: no-jira

Change-Id: I91ab326e533d54846518d11b457db0b0afe4d499
2025-03-22 20:31:45 +08:00
lane.wei 603f93d97f ENH: config: add nill load/save logic for user config
Change-Id: I8da6c5b345cc088862f2c720aeb742b9617ff3e7
2025-03-22 20:31:45 +08:00
xun.zhang 3c32b2c5a6 ENH: enable params with silent mode
jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Id46fa5de3a58e0fd3c3b0aa28524a03ca9a38f1a
2025-03-22 20:31:45 +08:00
chunmao.guo 7e7e872366 FIX: config deep compare & plate config extruder switch
Change-Id: Iae1716e6511e252f131ab4355f9521d7611d7133
2025-03-22 20:31:45 +08:00
chunmao.guo 582b2d470f ENH: edit object config variant value
Change-Id: I97490f555a8a2848ccea78f74d79f71b0e93b36d
2025-03-22 20:31:44 +08:00
zhimin.zeng b42d94e1d0 ENH: support recommended filament map when print by object
1. support recommended filament map when print by object
2. placeholder_parser support function filament_change
3. extruder_id of filament_map is start from 1

Change-Id: Ide8019cd4a165a25972f22706ff685c3005aa031
2025-03-22 20:31:44 +08:00
lane.wei 5defd2b7c3 ENH: config: add extrudrer variant check logic
when load config from 3mf

Change-Id: I946ba777853e479418fcd1b49209f75ed41f33f3
2025-03-22 20:31:44 +08:00
zhimin.zeng dcd9fd5013 FIX: backend get the extruder id based on filament_map
Change-Id: Ib7679c0fc67336e462467dab9f5b4d4684d6eb19
2025-03-22 20:31:44 +08:00
zhimin.zeng 366a14d8f7 FIX: parameters modify of printer preset
Ensure correct behavior when modifying parameters of printer preset

Change-Id: Ic627a8e202bf4224b742336cc43ac611ddc5c997
2025-03-22 20:31:43 +08:00
zhimin.zeng 8c8c9a967b ENH: Add recommend filament maps method
Change-Id: I3945a8b9f0a57e10a1d230003f21c9877cc5f342
2025-03-22 20:31:43 +08:00
lane.wei e770043c4d ENH: add stride in get_index_for_extruder
JIRA: no-jira
Change-Id: If529296bf6d35edc35aee3ff497184dce70332d1
2025-03-22 20:31:43 +08:00
lane.wei bbc4d701bf ENH: add check logic of filament_map when Print::Apply
Change-Id: Ibab353c4b16183611d63d75bcdf5f370cb578f21
2025-03-22 20:31:43 +08:00
lane.wei e9081ba8d4 ENH: filament: delete filament_extruder_id related logic
jira: no jira
Change-Id: Ie0d8e31a6a3eef0400b3ba6238f817bad4daca24
2025-03-22 20:31:43 +08:00
zhimin.zeng 5b0d525957 ENH: Display and modification of printer presets
Change-Id: I6a38704864fd4994a845686a299bec67f1b9b9b3
2025-03-22 20:31:43 +08:00
lane.wei b0e3ab037e ENH: config: add filament_maps in partplate
Change-Id: I1183830788e703f1d33a8a4b620b58b822283dd4
2025-03-22 20:31:43 +08:00
zhimin.zeng f3d67a98ac ENH: support delete any filament id
Change-Id: I71bcd54985b3f9e19a19d04327d00b402ec22380
2025-03-22 20:31:42 +08:00
zhimin.zeng 6fbad9ed33 ENH: flush_volume support multi_extruder and fix bug
Change-Id: Id6b041f71ee6e55e68a6937f24ce791caac8e708
2025-03-22 20:31:42 +08:00
zhimin.zeng 8b2544df41 FIX: Use the same api to get the extruder id
jira: none
Change-Id: I05b3040b176374deee3e95bc52364fe7b33bb257
2025-03-22 20:31:42 +08:00
qing.zhang 8af6f6d13b ENH: implement mult extruder params
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I906b106aa4c73272a418528db0e964d9130b0dd7
2025-03-22 20:31:42 +08:00
lane.wei 03058ba29d 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
2025-03-22 20:31:42 +08:00
zhimin.zeng e1d1d3e8ca FIX: support more than 16 extruders
jira: none

Change-Id: I169f672b99088b0a0a0132265d958e3239051744
2025-03-22 20:30:23 +08:00
zhimin.zeng 6b09cfee71 FIX: modify parameter type of process preset
jira: none
Change-Id: I5c973a29e5b983e3f480d55aeeb2b14d13e950ee
2025-03-22 20:30:22 +08:00
qing.zhang 7da565f058 ENH: remove the appended T cmd after change filament
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Id5da64626b7343a71dcb38c06f5b5caf43ec40e2
2025-03-22 20:28:08 +08:00
tao wang 0848c26da9 ENH:support new amsmapping data
jira:[for 2 extruder]

Change-Id: Ie03eae17d600bc68451511a0179f20d1919ff6ea
2025-03-22 20:27:35 +08:00
zhou.xu 48c1710acf NEW:add "camera navigation" function
jira:none
code is from OrcaSlicer, thanks for OrcaSlicer and Noisyfox
commit bf4d59a6764ddadd23ae566bf178f98e06bc3b5c
Author: Noisyfox <timemanager.rick@gmail.com>
Date:   Tue Feb 27 21:57:31 2024 +0800

    QoL: 3D navigator (#4181)

Change-Id: I19f83d6dd7244c4daaa9c9993378cbd90333c3b9
(cherry picked from commit 74903968fdc8bd25ab48a722f893c38c801417d3)
2025-03-22 20:21:52 +08:00
zhou.xu c74a769c14 NEW:add "extruder_only_area" textures for
double extruder machine
jira:none

Change-Id: Iaf4118fb00641537838dae7cc5fdaaf07ccc9851
(cherry picked from commit a8d6c9fe8976dbcb79c1f89efb7107073cb17856)
2025-03-22 20:21:52 +08:00
zhou.xu 8541f5e893 FIX:use flip_triangles when mesh volume < 0
jira: none
Change-Id: I682c737398f347a3243b6202132aae65d5415bdf
2025-03-22 20:21:24 +08:00
qing.zhang cd3f05b3fe FIX: crash while the first layer is empty
Github: 5376

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I64a0612ec4bf1ead099029db5f8e9f59e0b704af
2025-03-22 20:18:26 +08:00
Mack abb8e6ed11 FIX:No brim ears generated if brim width is set to 0
GITHUB: #5431
Change-Id: Ia5911b1e24f09e385a66c3a0cdb3fe83fb090f57
(cherry picked from commit 1f419489f76209e47babe6b378c436178fcb3264)
2025-03-22 20:18:04 +08:00
Arthur b952006e4d FIX: prevent dead loop of conflict checker
jira: STUDIO-10282
Change-Id: I5722e9967cdd83cde5ef59aee37b0f7019e53d89
2025-02-25 11:48:03 +08:00
qing.zhang 2eace660e8 ENH: add limit for smooth_coefficient
Jira: 10274

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I9e288de79b38af6baf93263ccbb452c8996430ba
2025-02-18 17:19:01 +08:00
jiaxi.chen da8474882b FIX: no infill in raft layers
jira: STUDIO-10175
Change-Id: I96cd7b0ae5a5f030cda3e3ea71c7c56b1752357a
(cherry picked from commit efa4114715f162c8e6714fbe2804620da7aaa1bd)
2025-02-18 17:19:01 +08:00
xun.zhang 7020256f59 ENH: seperate flush time from other types
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I4cfeaec770de678b8dac405617b32738a3f68b3d
2025-02-18 17:19:01 +08:00
Bastien Nocera 626f1390b2 libslic3r: Fix BOOST_LOG_TRIVIAL declaration
In file included from /run/build/BambuStudio/src/slic3r/GUI/Gizmos/GLGizmoMeshBoolean.cpp:5:
/run/build/BambuStudio/src/libslic3r/CSGMesh/PerformCSGMeshBooleans.hpp: In lambda function:
/run/build/BambuStudio/src/libslic3r/CSGMesh/PerformCSGMeshBooleans.hpp:281:35: error: ‘info’ was not declared in this scope; did you mean ‘tbb::v1::info’?
  281 |                 BOOST_LOG_TRIVIAL(info) << "check_csgmesh_booleans fails! mesh " << i << "/" << csgrange.size() << " is empty, cannot do boolean!";
      |                                   ^~~~
      |                                   tbb::v1::info
/run/build/BambuStudio/src/libslic3r/CSGMesh/PerformCSGMeshBooleans.hpp:295:35: error: ‘info’ was not declared in this scope; did you mean ‘tbb::v1::info’?
  295 |                 BOOST_LOG_TRIVIAL(info) << "check_csgmesh_booleans fails! mesh " << i << "/" << csgrange.size() << " does_self_intersect is true, cannot do boolean!";
      |                                   ^~~~
      |                                   tbb::v1::info
2025-01-13 10:22:01 +08:00
xun.zhang db1bbc967a FIX: export 3mf fail in creality machine
1. Add place holder support

github:#5557,#5614,#5471

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I65e1d116b7af64ab15c3338f713fc3329b3e877d
2025-01-09 19:32:26 +08:00
Stone Li def9223e6e ENH: optimize one message
JIRA: STUDIO-9527

Change-Id: I789e04a1727b16a8de8eac975ef6a3fea5c59d56
Signed-off-by: Stone Li <stone.li@bambulab.com>
2025-01-09 19:32:26 +08:00
Arthur 97de4e87cf ENH: reduce organic tree support log level
jira: none
Change-Id: I17b876d88974e632c592bd36f3fea700a51f86be
2025-01-09 19:32:26 +08:00
jiaxi.chen 0d1bdab97d FIX: fix the bug of missing layers in SlimTree and HybridTree
jira: STUDIO-8756
Change-Id: I12c09ec2e3c1a2ee138472ff7c63675d0ee26ba0
(cherry picked from commit 36d80e7b24a4bdcce2d3957e0fd3ea61c8dc6bdc)
2025-01-09 19:32:26 +08:00
Arthur 849d41576c FIX: top z distance disappears in some cases
jira: STUDIO-8883
github: #5334
Change-Id: Ie70f6dada19cc17cd74fa6aa116d1ca4fb4a07d7
2025-01-09 19:32:26 +08:00
Arthur 7665aeb69c FIX: sharp tail miss detection
jira: STUDIO-7973
Change-Id: I76b0dc56fe6cf44bacad4c35874695efee29c2f9
(cherry picked from commit 3fe1728f40e2a09340b061681895e4691bd1a8f7)
2025-01-09 19:32:26 +08:00
Arthur c331b61cab FIX: merge support interfaces into a continuous large one
jira: STUDIO-8611
github: #5132
Change-Id: I12ee4a9f88a78304a98f354bfaa92e2a05f19ec2
(cherry picked from commit b7c8c7e8feb199b01f52e1fbfbba4469657db3b7)
2025-01-09 19:32:26 +08:00
Arthur ca3a372630 FIX: gizmo boolean crashes due to self-intersection
Check if boolean operation is possible first, just like in context menu.

jira: STUDIO-6471
Change-Id: I9c201010dad90bbfa615178aa835c7e371755cd2
(cherry picked from commit db8a02e8328b5529123fb83c0373eb01cb925f0a)
2025-01-09 19:32:26 +08:00
Arthur f774fda6e6 FIX: inconsistent infill in hybrid tree support
jira: STUDIO-9058
Change-Id: I62f6225d33708e8a161600930c6e0dff229f5995
2025-01-09 19:32:26 +08:00
Arthur 5e476a1385 FIX: apply xy_expansion after support blocker
jira: STUDIO-9040
Change-Id: I30e09a67047f651a547082bff737524aba940f19
2025-01-09 19:32:26 +08:00
Mack a0669137ec NEW:step mesh add 'Split compound and compsolid'
Optimize getting STEP node names.
Fix load_same_type_files()

GITHUB: #5214
Change-Id: I7d1035c122f21e3b08305509489bce415634ae80
(cherry picked from commit 76a401bfca1897994795cb37ffa9cbcbdaca8b6c)
2025-01-09 19:32:26 +08:00
zhou.xu 837c962dfb NEW:reeedit text and keep old pose
jira: none
Change-Id: If0051293d23f4f4f57c5ed28688e97220521df90
(cherry picked from commit 37bb124eb45cb3d94404ce3e3789e82c8d01207c)
2025-01-09 19:32:26 +08:00
zhou.xu 496d69f9d1 FIX:add "absolute rotation" in rotate gizmo
jira: STUDIO-8726
Change-Id: I23deb4ab11cf24ca4f0f0c5a35a74268c34f60f6
(cherry picked from commit d26b8f9fcadf8f7709a302991e43be711560e84e)
2025-01-09 19:32:26 +08:00
zhou.xu 0e84f6acc7 FIX:import single_svg and split it(default)
jira: none
Change-Id: I1d59a41fa7392fa3659ceae36c81a92d5f9dd5c6
2025-01-09 19:32:26 +08:00
zhou.xu c1179de25a FIX:"split to parts" should consider scale_det
jira: STUDIO-8789
Change-Id: Id1b224f9e5dc2666fc4364fccde0cd79eb164f05
2025-01-09 19:32:26 +08:00
zhou.xu 8e52c9a86f FIX:delete xmlns:BambuStudio in model_settings.config
jira: none
Change-Id: I050d75236c1085d296e2be0779c8bf7d46307d80
2025-01-09 19:32:26 +08:00
zhou.xu 5ca85c6fc6 FIX:add xmlns:BambuStudio in model_settings.config
jira: none
Change-Id: I703b8cef7fc591fc84496e4c383cac4a4d543bda
2025-01-09 19:32:26 +08:00
zhou.xu fd4184fa48 NEW:save FACE_COUNT in 3mf
jira: STUDIO-8913
Change-Id: I0eeae470a292f68863f829121610bacf9fc0d3e0
2025-01-09 19:32:26 +08:00
lane.wei 710935293b FIX: config: remove src/libslic3r/PrintConfig.cpp in ignore list
jira: no-jira
Change-Id: I03c37f33fc6ae0f4d7fdb9c18d52c501d0f7fad6
2025-01-09 19:32:26 +08:00
jiaxi.chen d4bc450af6 FIX: protect when support_style doesnt match type
jira: STUDIO-8800
Change-Id: I7d42f95ba43b4b3a47a83ae59afaaf9bc94baa5d
2025-01-09 19:32:26 +08:00
Shane Qi ba07c4e5d7 Fixed tooltip for cool plate initial layer temp. 2024-11-19 15:44:18 +08:00
James Stanley bf59a28361 Fix typo: wip action -> wipe action 2024-11-18 08:32:51 +08:00
xun.zhang 2308e2038e FIX: wrong use of reverse iter
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I914f082f378b3cd195b1e69e166409d7302791d2
2024-11-15 19:17:32 +08:00
xun.zhang 95f24a906e FIX: pause layer not working
1.The stored layer height differs too much from the generated layer
height.Use a more direct way to locate the layer

github:5253,5275

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ie2428e700c72386349a4f2d64076c940ac4eea71
2024-11-15 19:17:32 +08:00
zhou.xu 6caacd170f FIX:add "enable_opengl_multi_instance" option
jira: none
Change-Id: I424a1914811cc8eb1a7a717a4117453a69111e8b
2024-11-15 19:17:32 +08:00
qing.zhang 7e96406ee9 ENH: adjust scarf seam angle check threshold
Jira: 8724

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Id27767d07cc5ac6dcade6f9dccfea46cbcda2dbc
2024-11-15 19:17:32 +08:00
zhou.xu 2caffbc573 FIX:add "split mesh and save relationship" api
jira: none
Change-Id: Ib4c225b7fb75a27bd74f1a60b8842cbc4880e4f6
2024-11-15 19:17:32 +08:00
Mack a680c3ee1f FIX:The linear and angle parameters in the config
file are incorrectly initialized

jira: STUDIO-8679
Change-Id: If592f7ab96d897afa22ef0b039b1541dfb29ecfc
2024-11-12 15:35:32 +08:00
Mack 0cce6619ce ENH:Add 'Don't show again' to the step mesh
jira: STUDIO-8606
Change-Id: I2382b9052e2c994a458ad36ca61eb94c517927c6
2024-11-12 15:35:32 +08:00
zhou.xu 54bbd63891 FIX:mesh volume should be positive
jira: none
Change-Id: I37cc0afbb1791208b6f6c0829014f44da1c1701e
2024-11-12 15:35:32 +08:00
qing.zhang ff02a5e2ac ENH: update param name
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ibb2cc4316fd4ff9b7b1d071544567971d0ad9004
2024-11-12 15:35:32 +08:00
Arthur 68807ca3ee ENH: correct tooltip of distance to rod
jira: none

Change-Id: Iad8fc7168e1f19883ab8fe793e8025f1b81da205
2024-11-12 15:35:32 +08:00
qing.zhang dee9538ee4 FIX: last layer height error on gcodeviewer
Jira: STUDIO-8627

On scarf seam mode or spiral vase mode
if the last layer is empty,layer height would be wrong
need to move extra data, and update layer range

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I802ec266f4cebc8079fac2444061f362fd620381
(cherry picked from commit 7311dda480cb0deb1feba8ed2b29c36113a93a16)
2024-11-12 15:35:32 +08:00
Arthur 4655ec449b FIX: normal support missing base interface layers
jira: STUDIO-8642
Change-Id: Ib104fdb195f8766d452138eb85d8b86cbac96981
2024-11-12 15:35:32 +08:00
qing.zhang 4d4883953d FIX: adjust plate type eume
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: If5bab050cc4d243d1ac414b91d1b6e10fa95dad2
2024-11-12 15:35:32 +08:00
Arthur 65ff77a627 FIX: avoid by-object printing collision
jira: STUDIO-8137
github: #4804
Change-Id: I7769822b0f7c74f861c1c5f555895ae38f2f3cd7
2024-11-12 15:35:32 +08:00
Arthur 1656cf084b FIX: simple way to avoid collision of seq printing
A simple way to avoid collision of seq printing by object of A1 series
printers, at the cost of reduced area of sequential printing.
Add new option extruder_clearance_dist_to_rod.

jira: STUDIO-8137
Change-Id: I033220e090b071c76f5c5be0d0b471e428d807ec
2024-11-12 15:35:32 +08:00
lane.wei 56f6922b73 ENH: core: refine some text
JIRA: no-jira
Change-Id: I0624f5f0e3f5e7602e3bb8bb1822b5b6b6547074
(cherry picked from commit 196c12511786dbd384fe1931e3a2d8d3a94e900d)
2024-11-12 15:35:32 +08:00
lane.wei 06cd7e012a ENH: gcode: refine the text when has error in custom gcode
JIRA: STUDIO-8529
Change-Id: I0047fd6b750c4761de77eae59c401935df583d25
2024-11-12 15:35:32 +08:00
Arthur 82c72b19bd FIX: enable circle fitting of tree support with larger threshold
jira: STUDIO-8588
Change-Id: Ia566fa14f7f786ff905fc3484885634811a6d686
2024-11-12 15:35:32 +08:00
tao wang 05877729ff NEW:support show print history
jira:[histroy]

Change-Id: Ibf3df10b0620aeab3731e248569f7d8381011c56
2024-11-12 15:35:32 +08:00
lane.wei d65d61a586 ENH: CLI: support filament unprintable check
JIRA: no-jira
Change-Id: Iffb400f5cf6df062179e8d8426aa0dca05a7500c
2024-11-12 15:35:32 +08:00
qing.zhang 67039a6f4d ENH: check wethether filaments print on first layer
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I1cc7cd9e9bbbcdf72112c0949196c09ef414cf91
2024-11-12 15:35:32 +08:00
qing.zhang 5ae2f68d7b FIX: tighten the scarf angle detection strategy
Jira: none

BBS: get scarf seam angle detection from OrcaSlicer, thanks SoftFever

original msg:
Scarf joint seam enhancement: conditional scarf joint and slowdown for
scarf joint only

allow apply scarf joint seams to perimeters without sharp corners only

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I07f8083ad07b5eb55901ab76824b12549dbac2ee
(cherry picked from commit 3a032d9aefb936ba757105c4183cd2f8aeaeadd6)
2024-11-12 15:35:32 +08:00
Arthur 12ed0626a3 FIX: auto orient may not work with specific angle
jira: STUDIO-8579, STUDIO-8575
github: #5092

Change-Id: I89ec76661e82364b3fcc8ba799027debc02c503c
2024-11-12 15:35:32 +08:00
Arthur 4d219266a1 FIX: 0 top z distance of hybrid tree support not working
1. fix the issue that setting top z distance=0 not working
2. remove too small extrusions of tree support

jira: STUDIO-8578
Change-Id: I8c3face9d6a756698a6fab876fdb1acc0686647c
2024-11-12 15:35:32 +08:00
Mack 89be3166e2 FIX:Replace non-UTF8 characters in STEP model names with IDs on import
jira: STUDIO-8055
Change-Id: I9255a7a871ebc9920ec683d1a2a80cd53ada0f10
2024-11-12 15:35:32 +08:00
Bastien Nocera a63070bd4c libslic3r: Fix BOOST_LOG_TRIVIAL declaration
/run/build/BambuStudio/src/libslic3r/Support/SupportParameters.hpp: In constructor ‘Slic3r::SupportParameters::SupportParameters(const Slic3r::PrintObject&)’:
/run/build/BambuStudio/src/libslic3r/Support/SupportParameters.hpp:172:39: error: ‘warning’ was not declared in this scope
  172 |                     BOOST_LOG_TRIVIAL(warning) << "tree support default to organic support";
      |                                       ^~~~~~~
/run/build/BambuStudio/src/libslic3r/Support/SupportParameters.hpp:172:21: error: ‘BOOST_LOG_TRIVIAL’ was not declared in this scope
  172 |                     BOOST_LOG_TRIVIAL(warning) << "tree support default to organic support";
      |                     ^~~~~~~~~~~~~~~~~
/run/build/BambuStudio/src/libslic3r/Support/SupportParameters.hpp:175:39: error: ‘warning’ was not declared in this scope
  175 |                     BOOST_LOG_TRIVIAL(warning) << "tree support default to hybrid tree due to adaptive layer height";
      |                                       ^~~~~~~
/run/build/BambuStudio/src/libslic3r/Support/SupportParameters.hpp:175:21: error: ‘BOOST_LOG_TRIVIAL’ was not declared in this scope
  175 |                     BOOST_LOG_TRIVIAL(warning) << "tree support default to hybrid tree due to adaptive layer height";
      |                     ^~~~~~~~~~~~~~~~~
2024-10-30 14:43:27 +08:00
Arthur 64ab78298b FIX: hybrid tree support may crash due to empty extrusion entities
jira: none
Change-Id: I521e27e7a4d12189efc77768d10d264d0d6db111
2024-10-28 20:51:35 +08:00
zhou.xu 6360fb80be FIX:mtl name use utf-8 encoding
jira: none
Change-Id: I9a90344ac97f44445d3330c6734fac1372a1350e
2024-10-28 20:51:35 +08:00
Arthur e773e3a5ef FIX: normal support crash
jira: STUDIO-8531
Change-Id: Ic4b13b253b8e2647f3bec78b5e9c698a18519285
2024-10-28 20:51:35 +08:00
qing.zhang 6201da0a6d ENH: protect for accuracy issue
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ief104b8ea449e1292db5bd3847ecea779bccff39
2024-10-28 20:51:35 +08:00
Arthur 7697eb3dc8 ENH: improve tree supports
1. speedup organic tree support by using parallel for intersection of bed area
jira: STUDIO-8451
2. add extra wall for hybrid tree support's tall branches
3. disable circle fitting for tree support. This feature produces inconsistent
   circles for tree supports.
4. expose the option tree_support_branch_diameter_angle. Tree supports'
   strength can be improved by increasing this value.

Change-Id: If3688ca895df98a77f6ca538077daf8fe94e53f1
2024-10-28 20:51:35 +08:00
zhimin.zeng 10d576a301 FIX: crash when slicing(15%, generate perimeter)
github: 5037 and jira: 8182
Change-Id: I6719dc0cb4e5de808da14f9911cec19d4db9be3f
2024-10-28 20:51:35 +08:00
qing.zhang beb3241c96 FIX: seam render missing for path split
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I7109d38e3f7f858836cfa199c2871dc583e42eca
2024-10-28 20:51:35 +08:00
qing.zhang 63be8a61fb ENH: filamet shrinkage
Github: 2769

This feature ported from superslicer

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ic92d248aa90222e6f74530f01876cc14944f2444
2024-10-28 20:51:35 +08:00
Arthur d5b14e5c09 FIX: solve tree support crash
jira: STUDIO-8509
Change-Id: I8658538d7919136efbbf0d48cbf3d366e0621ded
2024-10-28 20:51:35 +08:00
zhimin.zeng 4829d22f8c FIX: crash when slice model
Due to accuracy issues, some points are not within the boundingbox.
github: 4615 associated with 3749

Change-Id: Ic2fb359d9779191c8c98660e13275147b0cc09cd
2024-10-28 20:51:35 +08:00
lane.wei ef3d25eb68 ENH: CLI: remove some warnings
JIRA: no jira
Change-Id: I41fa9248cd619494a9f6bf8db26988330a7fbbdd
(cherry picked from commit fae0b29f52fa1da6a18c7691329274609d043364)
2024-10-28 20:51:35 +08:00
maosheng.wei dc019db185 FIX: create custom printer crash
Jira: XXXX

Change-Id: I1ff6598d1518e6a96f55677c04ae8bfbabb2f9dd
2024-10-28 20:51:35 +08:00
zhimin.zeng 2263f3d627 FIX: Object skip incorrectly skipped color change
github: 4940
Change-Id: Ia7b48638ff2f7a7cddf9b033b5831b6f3fa5d1e7
2024-10-28 20:51:35 +08:00
Arthur a250110cdb FIX: remove signed/unsigned compare warning
jira: none
Change-Id: I58d4503d5d12b35f3974e58252d81a935db3733b
(cherry picked from commit 01ed70a8b058ceab2c862317c52ed41ef1c950b0)
2024-10-28 20:51:35 +08:00
qing.zhang 8b60428ecd FIX: not add speed smooth area
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ifadbbc52a718b345d3ed0f3bd678abc269a46424
2024-10-28 20:51:35 +08:00
zhou.xu 5925b220d5 FIX:Maintain good perspective effect
Non user versions can view debugging information through shortcut keys
jira: none

Change-Id: I251a6189e8909f4c52752827e359a7287bd15f7f
2024-10-28 20:51:35 +08:00
Filipe Laíns 8860fadaeb Fix build with CGAL 5.6
Signed-off-by: Filipe Laíns <lains@riseup.net>
Co-authored-by: Andreas Rammhold <andreas@rammhold.de>
2024-10-28 08:52:34 +08:00
Bastien Nocera 9562692bc6 libslic3r: Fix Model declaration
src/libslic3r/Format/STEP.hpp:39:41: error: ‘Model’ has not been declared
   39 | extern bool load_step(const char *path, Model *model,
      |                                         ^~~~~
2024-10-28 08:33:48 +08:00
Bastien Nocera c64ab8c08a libslic3r: Fix format calls
src/libslic3r/Support/TreeSupport.cpp:3204:41: error: ‘format’ was not declared in this scope; did you mean ‘boost::format’?
 3204 |             BOOST_LOG_TRIVIAL(trace) << format("plan_layer_heights0 (%.2f,%.2f)->(%.2f,%.2f): ", z1, h1, z2, h2);
      |                                         ^~~~~~
      |                                         boost::format
2024-10-28 08:33:48 +08:00
Bastien Nocera 126dfea027 libslic3r: Fix declaration in FlushVolPredictor.hpp
In file included from src/libslic3r/FlushVolPredictor.cpp:1:
src/libslic3r/FlushVolPredictor.hpp:44:34: error: ‘string’ in namespace ‘std’ does not name a type
   44 |     FlushVolPredictor(const std::string& data_file);
      |                                  ^~~~~~

src/libslic3r/FlushVolPredictor.hpp:49:5: error: ‘uint64_t’ does not name a type
   49 |     uint64_t generate_hash_key(const RGB& from, const RGB& to);
      |     ^~~~~~~~

In file included from src/libslic3r/FlushVolPredictor.cpp:1:
src/libslic3r/FlushVolPredictor.hpp:44:34: error: ‘string’ in namespace ‘std’ does not name a type
   44 |     FlushVolPredictor(const std::string& data_file);
      |                                  ^~~~~~
2024-10-28 08:33:48 +08:00
Bastien Nocera 6b025c3fa2 libslic3r: Add missing include for tbb::spin_mutex
src/libslic3r/Brim.cpp: In function ‘Slic3r::ExPolygons Slic3r::outer_inner_brim_area(const Print&, float, std::map<ObjectID, std::vector<ExPolygon> >&, std::map<ObjectID, std::vector<ExPolygon> >&, std::vector<std::pair<ObjectID, unsigned int> >&, std::vector<unsigned int>&)’:
src/libslic3r/Brim.cpp:1084:18: error: ‘spin_mutex’ is not a member of ‘tbb’
 1084 |             tbb::spin_mutex brimMutex;
      |                  ^~~~~~~~~~
2024-10-28 08:33:48 +08:00
wintergua a60d6ba8ac FIX: typos in speeding up brim generation
1) exploys in brimMap are not modified
2) the overlap judgment is processed in paralleling

jira: STUDIO-8443

Change-Id: I8638071cfc06776975034f39aa994fc4dc7ae1be
2024-10-15 21:24:07 +08:00
maosheng.wei f4b00d1d34 ENH: Optimization finish time display
Jira: 8369

Change-Id: I33e5efbb5af2a35cd20ba009c14441c5bc2ccf48
2024-10-15 15:50:26 +08:00
Arthur 20784d845f ENH: speedup brim generation
Use support_islands for all types of suports to avoid gaps between
support regions of the first layer.

jira: STUDIO-8443
Change-Id: Ic65b47640d8352d406bb11eeff7390532631712b
2024-10-15 15:50:26 +08:00
xun.zhang 7907894c8d FIX: mistake spelling in tooltip
jira:8371

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: If51ecd6cb6299bcb42ffbcea1f8b2f2bfc511460
2024-10-15 15:50:26 +08:00
Mack fe5ebf0614 FIX: brim gizmo closes the program without prompting dialog
jira: STUDIO-8383
Change-Id: I7e83d19768be754ef79f0063d76624358bba5102
2024-10-15 15:50:26 +08:00
Arthur 05174d0706 ENH: improve shar tail detection of tree support
The expansion was too large and may miss sharp tails near the object.

jira: STUDIO-8400
Change-Id: Iee5bd15cc7c23f16d30365d5f1c9fbcc0a632c19
2024-10-15 15:50:26 +08:00
xun.zhang e835122054 FIX: Support ABS recognized as ABS
jira: 7685,8151,8323

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I0a4cce12663ee8f62309f0828521364874a7638d
2024-10-15 15:50:26 +08:00
Mack 754198cd03 ENH:brim ears prompt to set manual type [STUDIO-8407]
[STUDIO-8401]slicer failed

[STUDIO-8402]unable to save modified brim data

jira: details
Change-Id: I354bbf2c55bad41e09a1558cb6bddf49fc87f7c7
2024-10-15 15:50:26 +08:00
xun.zhang 4fc54affdf FIX: fail to use tbb
1.this cause slice become very slow

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ied3ffe74533c1f822780fdc3a20af4ff657c1853
2024-10-15 15:50:26 +08:00
qing.zhang 83b6a9ab92 ENH: set scarf angle threshold to 155
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I8e8f74761a42c0f110116628f63b3ca813c18638
2024-10-15 15:50:26 +08:00
zhimin.zeng 8efb9fbb6e FIX: G1 empty command
jira: none
Change-Id: I399aa2d8bb820d5a6547025b66bd0dc3eeaa37c3
2024-10-15 15:50:26 +08:00
Mack 34fb47a618 FIX:fix brim ear bugs
1.[STUDIO-8385] Fix switch to split tool crash;

2.[STUDIO-8406]brim ears only works in manual mode;

2.[STUDIO-8410] Disable brim width modification when brim type is manual;

3.[STUDIO-8382] Warning message not cleared;

4.[STUDIO-8239] Translation issues;

5.[STUDIO-8380]Disable brim ears for non-part models

6.[STUDIO-8285]Clicking the delete brim button did not recalculate;

jira: details
Change-Id: Id333179236d6b6f23de5081bd9b8d94b08c7dd62
2024-10-15 15:50:26 +08:00
qing.zhang 3614033fdc ENH: crash on clipper while open fuzziy skin
Jira: 8412

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I27d06f07baf91dd0f5947ebc2925df59f219a0c6
(cherry picked from commit a0a40462acdc52f22a1e49104e40b303a59b2f32)
2024-10-15 15:50:26 +08:00
qing.zhang 29753be317 ENH: add supertcak plate code for plate checking
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I16d98f5400a26a3fdc01501e4c68160c63ce1868
(cherry picked from commit 6aa6843a73d3281e746ae3c3d7e7566488bf93e8)
2024-10-15 15:50:26 +08:00
lane.wei b6f40aed38 FIX: seq_print: use extruder_clearance_max_radius for all the cases
github issue: https://github.com/bambulab/BambuStudio/issues/4804

Change-Id: Ia9d14e795057c8dc8ec009cdd55892483388885b
2024-10-15 15:50:26 +08:00
zhimin.zeng 4db196b11f ENH: modify the start pos of wall for wipe tower
and modify the overlap of wall and infill for wipe tower
jira:none

Change-Id: I0d1355c718e2bd1efea6d898f793f5869476ab12
2024-10-15 15:50:26 +08:00
xun.zhang 14eb79ab9a ENH: add some missing filament types
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I6d5b8f7a3c2eb26950bf39694023903ddbc47088
2024-10-15 15:50:26 +08:00
xun.zhang e3c8496a62 FIX: add to incorrect layer when adding pause
1. Caused by floating-point precision.

github:#1937,#4250

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: If7a5dc71a898c1208289b6b89eafef9d4126f17c
2024-10-15 15:50:26 +08:00
zhou.xu af7b21549f FIX:upgrade cut code from PrusaSlicer
jira:none
code is from PrusaSlicer,thanks for PrusaSlicer and YuSanka
Author: YuSanka <yusanka@gmail.com>
Date:   Tue Mar 5 15:13:31 2024 +0100

    Fix for #12206 - Dowel connector hole often disappears after one of the resultant objects is cut with a dovetail cut

Change-Id: Ib21be385f6df3b4ed41c2eb91dc33dd43132f276
2024-10-15 15:50:26 +08:00
Arthur 35bf682f79 FIX: hybrid tree support crash in some case
jira: STUDIO-8313
Change-Id: Ide03d8f666232f457305f3dd298bf8151ba9c57b
2024-10-15 15:50:26 +08:00
qing.zhang 658c0a5452 FIX: missing EXTRUDE_END
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I62bd19a58d04653b3a471aca5edf1aa78f8d2a27
2024-10-15 15:50:26 +08:00
qing.zhang 9e313d5d48 ENH: add tool tips for filament scarf seam params
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ic5c5ae94725d994562a9efbaf5da924204e3b955
2024-10-15 15:50:26 +08:00
zhou.xu 63256fc9f7 FIX:modify strategy of setting cut part transformation
jira: none
Change-Id: I2647eeb7de34accd5675e27b45bc42471afd30bd
2024-10-15 15:50:26 +08:00
qing.zhang f1d774f6c0 ENH: apply filament scarf seam
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ia565da8d280c0f7e51097f1d601240376c1e380e
2024-10-15 15:50:26 +08:00
xun.zhang 1e214c08a3 ENH: readd M220 command
1.Backup and restore extrusion speed when tool change

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I0c00391f0169dde69dab0d5120d03238aafa0862
(cherry picked from commit 2d96a9078f41764cbd5b7f5be1285025fc69f8fa)
2024-10-15 15:50:26 +08:00
xun.zhang 72bc6f44cf ENH: consider colors with de < 5 as the same
1. Use cie de2000 as color distance
2.Consider colors with de < 5 as the same color  when calculating
flush

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I4b451910a21c9db3471c63c270f1f120e3c5d160
2024-10-15 15:50:26 +08:00
chunmao.guo 0c03a6b361 FIX: support config editing of type FloatsOrPercents
Change-Id: If0821dc357b14f1b72aa1c89b3b0378947e80a5c
Jira: none
(cherry picked from commit 115fb9ce072273acf8df558a33fe48cf71f8e35b)
2024-10-15 15:50:26 +08:00
chunmao.guo 0b92ffee35 FIX: serialize ConfigOptionFloatsOrPercentsNullable
Change-Id: I32cf705e6e040f25012a741e6ee20a311a66a7e3
Jira: STUDIO-8040
(cherry picked from commit ef480670ac8da77135d342e7e4dc74c838b5d713)
2024-10-15 15:50:26 +08:00
qing.zhang 872978d61b ENH: Revert z smoothing function
Jira: none

Change-Id: I067033c3beb4b29b8da11ff0c9f12b126bcf61dc
2024-10-15 15:50:26 +08:00
qing.zhang 6008a584aa FIX: error overhang detect for short line
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: If2e60a9f049bd3437d5bb2f6c7ed8af382f352d8
2024-10-15 15:50:26 +08:00
qing.zhang be413220df ENH: replace clipper by clipper2
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I0a0d8981ba9f9e9757408cb346ef3a99201cb072
2024-10-15 15:50:26 +08:00
xun.zhang e81c3a735d ENH: enable to edit extruder offset
1.enable to edit extruder offset in developer mode

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: If1a9cf0884effd1efa6cbef413efa9f65b798174
2024-10-15 15:50:26 +08:00
xun.zhang 475e9b34ff ENH: add module flush vol predictor
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ie1b0d4c443df4a26ff1b010e73d589162a0fbff7
2024-10-15 15:50:26 +08:00
Arthur 00e5e84bbd FIX: tree support crashes when it's too short
jira: STUDIO-8277
Change-Id: I327d9fb7beb6cc2822131ca4954066217b1a5c9b
2024-10-15 15:50:26 +08:00
qing.zhang 28fee5f65a ENH: not apply z speed smooth on arachne
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I6821d79bad47326a46d3cfa265184c6114493f74
2024-10-15 15:50:26 +08:00
zhou.xu 060daf2428 NEW:add "show_shells_in_preview" item in preferences
jira: none
Change-Id: I5cd0816b811608138c28f568cc5977966126baf6
2024-10-15 15:50:26 +08:00
Mack ed7ab6b505 ENH: step mesh operation adjustment
1.Put commctrl.h into pch precompilation(OCCT conflicts)

2.Replace input wxWidgets to support loss focus verification(STUDIO-8101)

3.Optimize slider interaction and trigger mesh when push up slider(STUDIO-8099)

4.Optimize step loading method, separate import of step and mesh

5.Fix dialog cancel button logic;

6.mesh tasks into sub-threads to prevent blocking the UI;

JIRA: STUDIO-8101 STUDIO-8099
Change-Id: I50bbb43953a5128f358c6880032d20693531333b
2024-10-15 15:50:26 +08:00
maosheng.wei e5dab14871 ENH: Optimize the number of function calls during information parsing
During the printer connection cycle, each Filament and slot is only judged once
When deleting custom filaments or modifying the temperature of custom filaments, re evaluate

Jira: XXXX

Change-Id: If495a343efdb1be6f46d11dd20f6ec7934266e87
2024-10-15 15:50:26 +08:00
zhimin.zeng 63d59f0104 FIX: the slicing result is incorrect in multi-color case
jira: udesk: https://bblcs.s5.udesk.cn/entry/ticket/show/7173936
Change-Id: I183a45448b6cc5cff094c2d0567797e7220485f5
2024-10-15 15:50:26 +08:00
qing.zhang 78572cbff8 ENH: add supertrack plate
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I89017c9933597ee035aa20ba3852db6f629f5e20
2024-10-15 15:50:26 +08:00
Arthur 647bd4213c FIX: fix hybrid tree support may go outside plate
1. fix hybrid tree support may go outside plate
github: #4769
2. fix false alarm of empty layer warning
jira: STUDIO-8178

Change-Id: I7bcc3959b06184901cbec946e8840c7a94bc1cab
2024-10-15 15:50:26 +08:00
zhou.xu 9b69440ae0 ENH:support multiple svg import
jira: none
Change-Id: I1afe671aec6c75cebcc77902b172557ee967475f
2024-10-15 15:50:26 +08:00
maosheng.wei 96c23f743c ENH: Limit the size of uploaded cloud files
Jira: no-jira

Change-Id: Id8890f4194e56e3c6172fe1c6a065e3a7a7469b9
2024-10-15 15:50:26 +08:00
maosheng.wei 039ac0d69b FIX: check path exist before create directories
Jira: XXXX

Change-Id: Id79329a97e51944a339421aaf3594deb03211fb1
2024-10-15 15:50:26 +08:00
Mack 38c5c25cdd ENH:add brim ear invalid warning
1.fix dragging causes wrong orientation

2.clean up useless include

jira:nojira

Change-Id: Ia723da626ac5434a1675e4a1b781579057f1403a
(cherry picked from commit 252ff6f0247546761ac9660e04ecf1bb2951d80e)
2024-10-15 15:50:26 +08:00
Arthur a557bbe758 ENH: precise tree support wall count
Change the behavior of "tree support wall count" option, let it control precisely.
0 means auto.

jira: STUDIO-8068
github: 4780
Change-Id: I6d1a64cff9b121f5c0a3e910c5ddbfe6db198687
2024-10-15 15:50:26 +08:00
zhimin.zeng 3a3e5e3844 FIX: the heightrange part of the object disappears after slicing
jira: none
Change-Id: I826c6eedda199b0ab81e8dbf9a6c25d2c063bdd6
2024-10-15 15:50:26 +08:00
tao wang 2483257cfb NEW:support makerlab info tracking
jira:[makerlab info]

Change-Id: I9b35df5357cd5b00028a7e5ac65b1ca4fe7d6959
2024-10-15 15:50:26 +08:00
Arthur 2c6a6ae5f4 ENH: clip the organic supports outside bed
1. Clip the organic supports outside bed.
jira: STUDIO-7061, STUDIO-7211, STUDIO-8076,
github: #4175, #4769
2. Move raft_first_layer_density outside raft section. raft_first_layer_density controls both raft and support first layer density.
jira: STUDIO-8083
github: #4773

Change-Id: I6a1300787cef917a9c1395707ef50aaf6dad66e5
2024-10-15 15:50:26 +08:00
Mack a45a2eec54 ENH:brim ears are saved in 3MF
1.The default diameter setting is 16 times the init layer line width

2.Fixed the slice button was not reset after data changed

3.Fixed normal is initialized to the wrong value

4.Fixed delete button crash

jira: nojira
Change-Id: I3b331d81e762aa02f92edf0fd5067b97857f2f8e
2024-10-15 15:50:26 +08:00
Arthur 038b92a536 ENH: improve hybrid tree support
1. keep all polygon nodes in drop_nodes
2. prevent generating too small polygon nodes

jira: STUDIO-8107
Change-Id: I1311158ab15097eb10727a8d6884b0bcd8136ef1
2024-10-15 15:50:26 +08:00
zhou.xu 9541e2d05e NEW:add interactive function after importing SVG
jira:STUDIO-7406

most of code is from PrusaSlicer and OrcaSlicer,thanks for  Filip Sykala - NTB T15p(PrusaSlicer) and Noisyfox(OrcaSlicer)
 Port Emboss & SVG gizmo from PrusaSlicer (#2819)
* Rework UI jobs to make them more understandable and flexible.

Change-Id: I765c7658b0881869754bdb161d720e4cbb180c92
(cherry picked from commit 3cef4611793899fa0ac39cb4d3a3abed7270a8e9)
2024-10-15 15:50:26 +08:00
zhou.xu 4091f3e042 ENH:fix text coordinate system calculation
jira: STUDIO-6449
Change-Id: I36214c14c348e8f52b96501cd027205819b0dabc
(cherry picked from commit 44287812a0cb212f1bf6fe70e32e1075f532886d)
2024-10-15 15:50:26 +08:00
Mack 92c85a13d0 NEW: add brim ear gizmo
jira: STUDIO-7378
Change-Id: Ib6b5dbd3b113981612b05e01e59f62054ff0b654
(cherry picked from commit 37120830a2f958f464719db1f5d0180882bc4095)
2024-10-15 15:50:26 +08:00
Mack 84e7063c54 NEW:add step mesh parameters
jira: STUDIO-7415
Change-Id: I5e09a1eb1ad31063ad56d08d5738907a804dc112
(cherry picked from commit ccbe9630076b754ab440e98977c4164afff96250)
2024-10-15 15:50:26 +08:00
maosheng.wei 15ec81745f FIX: finish time not show info of day
Change-Id: I0c92b1405be46e93989816a1df95899c947dfe59
2024-10-15 15:50:26 +08:00
wintergua e3f1efbb36 FIX: can not get speed when generating brim gcodes
jira: none

Change-Id: I0680406c2cd727ca23be4bf356fa18f628f1a7d1
2024-10-15 15:50:26 +08:00
wintergua b51ff1721d FIX: brim should be extruded only on first layer
github: github.com/bambulab/BambuStudio/issues/4678

Change-Id: Ib00795dfba2e6d869c30ac906385f170088bbfd6
2024-10-15 15:50:26 +08:00
qing.zhang f82b599bd4 FIX: z speed smoothing crash while by object print
Jira: none

and add protect for calculating loop connection

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ie74280403d8afc55e699a30f3d1e69afdc41a86d
2024-10-15 15:50:26 +08:00
qing.zhang b52a9de509 ENH: smooth z dir speed and layer time
Jira: none

generate continuitious outer wall speed in z dir
generate continuitious layer time in z dir

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I0ade543d2f9ee40f5cd65c533eb261d85e5eaa34
2024-10-15 15:50:26 +08:00
qing.zhang 4ed1cd9cb9 FIX: regular vertical texture on fuzzy skin outlook
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I27a7596290ecdb741f2ede084093b6eee1ac49c5
2024-10-15 15:50:26 +08:00
Arthur e42aabebb1 FIX: chain_and_reorder_extrusion_entities crashes
this function crashes if there are empty elements in entities.

jira: STUDIO-7975
Change-Id: I0dbeb6b1151dd089be7617ebc3271691f64ac61e
(cherry picked from commit df30728617a89891c68e36cce771fb6380355b82)
2024-10-15 15:50:26 +08:00
Arthur 04756bf447 FIX: support wall count doesn't work
jira: STUDIO-7975
Change-Id: Ic580d298568fc6eab8b1a2c017fa182869b432bf
(cherry picked from commit 82bcb099e139065cc00c133f507e955d9955b2f4)
2024-10-15 15:50:26 +08:00
Arthur 499b39b133 FIX: auto arranging gets collision with occlusion areas
jira: STUDIO-6645
Change-Id: I57e62b824e3faadf9fae1294ef329456055893d0
(cherry picked from commit a678094ffa3d6b8b7900f3e3cac0d3f18fed9f30)
2024-10-15 15:50:26 +08:00
zhou.xu 53d7c755a7 NEW: add "render non_manifold_edges" function
jira: none
Change-Id: I620e095740c60a8c9d4ceb33d6b3a44ab3d17f05
(cherry picked from commit f71b0fdeee18e3fb1482fa3e5f1121d33724b1a7)
2024-10-15 15:50:26 +08:00
Arthur 68625a6e60 ENH: add vertical support enforcer
Previously painting support enforces on vertical faces doesn't work, as projecting the facets downwards will give empty polygons.
Now we use a different mechanism to enable vertical paint-on enforces, by directly adding contact nodes.
Note: this feature only works with tree support as only tree support has contact nodes.

jira: none
Change-Id: Id171b1665566d142a6427285baccb40c0aa00949
(cherry picked from commit 9c882f61eb37350a4486df58de48f0ae489f2d15)
2024-10-15 15:50:26 +08:00
zhou.xu bb53c4b517 NEW:Use instance rendering by opengl for plate
jira: none
Change-Id: I3d5888480ad033953a597a6f74b0b9c8ac47795e
(cherry picked from commit 7fa3cb3d6224bab6ef6d8ad75446ed1b460afd4e)
2024-10-15 15:50:26 +08:00
zhimin.zeng a1c3a99011 FIX: crash when top_shell_layer = 0 and is sinking
github: 4673
Change-Id: I260b48e833f47383c582f813d979a4fdc2926dd2
2024-10-15 15:50:26 +08:00
Arthur f2fc996652 ENH: improve hybrid tree support
1. do not add interface for small overhangs so supports are easier to
   remove
2. calculate avoidance more accurately using real layer height
  jira: STUDIO-6285
3. hybrid nodes won't collide with lower layers
4. calculate max move more accurately
5. do not increase radius if next layer has collision
  jira: STUDIO-2296, STUDIO-7883
6. rewrite plan_layer_heights to prevent support layers overlap.
  Now the tree support layers are completely independent to object layers.
6. increase collision areas for interface. The top layers may be too
close to interface with adaptive layer heights and very small overhang angle

Change-Id: I052c3f66e68afb7663e2d70c846dd09ed7086071
(cherry picked from commit aca511caebfdeec270d4fc0ec6bbbadde77cddc9)
2024-10-15 15:50:26 +08:00
Arthur 69cf816b94 ENH: add rectilinear interface pattern for organic support
1. add rectilinear interface pattern for organic support
    jira: STUDIO-7181
2. add tree support optgroup

Change-Id: I94882bc34a61c6adc06b8ecbc9f2323f9b039aac
(cherry picked from commit a8142ab3f37e0bd140a31a7e635b8475f471d7e3)
2024-10-15 15:50:26 +08:00
maosheng.wei 050f51fe15 NEW: add finish time in status panel
Change-Id: I3048cbe2aa20a7f2b78b5ca5fb9b40c3bb796689
2024-10-15 15:50:26 +08:00
xun.zhang 9267bd65aa FIX: wrong prepare time with chamber temp
1.Caused by missing break of switch case

jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ie667eda4069f3e2487ed87081580e2540ae4da7b
2024-10-15 15:50:26 +08:00
zhimin.zeng c24cf8ef60 FIX: G1 F0 in gcode
jira: 7631
Change-Id: I5060efef30f3e9250188b0dc4ee1d9ee6058af69
2024-10-15 15:50:26 +08:00
zhou.xu 10e41fbd07 FIX:calculate frustum of ortho view
jira: none
Change-Id: Ia0c30ebd9366ae1dfc5cdd555aa9f89a9dd878f1
2024-10-15 15:50:26 +08:00
zhou.xu b7ab08e65b FIX:need to clarify eigen data type in linux
jira: none

Change-Id: Ibb1d0015912641d1ba16355f5842f1693c72f391
2024-10-15 15:50:26 +08:00
maosheng.wei ddbecb4f5e FIX: preset without compatible_printer cannot be exported
github: #4290

Change-Id: I42dff3380a698ff86dba6409e61442357759a7c4
2024-10-15 15:50:26 +08:00
zhou.xu 438d9201fc FIX:mesh's volume <0.01mm^3,should ignore
jira: STUDIO-7808
Change-Id: Ie6d1b60314cc2303c96f2f29a08eedc6ee66b06c
2024-10-15 15:50:26 +08:00
zhou.xu 4bf4e1bb91 ENH:enhance render performance
jira: none
Change-Id: I23ba97d0a00752a131b719436bd062cd0b79e9d2
2024-10-15 15:50:26 +08:00
Arthur 98e9be4eb8 ENH: better way to rotate items in auto arranging
This helps stabilize "auto rotate" and "align to Y axis" functions.

jira: STUDIO-7775, STUDIO-7036
Change-Id: I3c35fa1d6c5e033915584213cdf79f3aac4dc099
2024-10-15 15:50:26 +08:00
xun.zhang 8be37b1a73 ENH: profile description support inherits
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I8c49101cbc38b5d9364f28c6a0b82acdb47a2a80
2024-10-15 15:50:26 +08:00
qing.zhang 94d1d62340 FIX: no overhang wall on bridge
while on the one top wall mode, extra overhang wall loop may produced
on bridge. this commit fix that.

Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I469ffae57016db523a1b42442adf156dfbd82d45
2024-10-15 15:50:26 +08:00
Arthur 4542c8eaff FIX: skirt distance was incorrect in auto arranging
Can't use plater->config(),have to use full_config instead.

jira: STUDIO-7588
Change-Id: I1677ff615a7ed99ad439c6bfe3fac9bdf1e3434b
2024-10-15 15:50:26 +08:00
lane.wei 0cfa60b657 FIX: config: fix a endless loop issue when replace string
jira: STUDIO-7545
Change-Id: I7ea06556142242f44b183599d9d23d063ad509f9
(cherry picked from commit 842e238d6265abb34f33614c255d1292c3345c34)
2024-10-15 15:50:26 +08:00
qing.zhang 47139ad690 ENH: add tpu-ams type
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I98c1c8a1e214b2fcb6b51857e6da3716b7aa04f8
2024-10-15 15:50:26 +08:00
zhou.xu 85aa6fddfc FIX:very small face can't be selected in assembly gizmo
jira: STUDIO-7594
Change-Id: Ibc2f0e80b9d5ef20de6997527b0dde09aee8d32b
2024-10-15 15:50:26 +08:00
qing.zhang 379238772e FIX: crash for ironing spacing out of range
Jira: 7570

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ic2b07f7e1cb2534cbe356a294d450d05f8b31cbe
2024-10-15 15:50:26 +08:00
qing.zhang 4b23b42b22 ENH: ironing inset
Jira: 7391

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I2233b267ad7e3eb22ed9c232a89b7679173c7b34
2024-10-15 15:50:26 +08:00
qing.zhang af7f87c238 ENH: add option to decide if overhang join cooling
Jira: 7414

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I223c8b72d025947652a1f36c31c1a0adc3c9d180
2024-10-15 15:50:26 +08:00
qing.zhang 04beaae9e3 ENH: imprve scarf seam
Jira: none

fix missing wipe while avoid acrossing wall on

set wipe speeed base on previou path
first implement by orca

add slope gap params

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I45655f087f5a165b52b1007ef5afe0b20d0b13a4
2024-10-15 15:50:26 +08:00
zhou.xu c0536c09b4 NEW:add "world coordinates" scale for scale gizmo
upgrade Transformation class
jira:none
about 75% code is from PrusaSlicer,thanks for PrusaSlicer and enricoturri1966
commit b32e9366606dce7d4f8de8db84fd902113bdbe28
Author: enricoturri1966 <enricoturri@seznam.cz>
Date:   Tue Mar 7 14:32:18 2023 +0100

    Rework of constrained scaling

Change-Id: I1248ea586e6b8f2fb6cdf3aa901ed7f525c3f111
(cherry picked from commit e10381aad1412b0c47afa340b634faa3af9d1a1f)
2024-10-15 15:50:26 +08:00
Arthur 319b3e2247 FIX: enforcers may not work with contour expansion
To fix this we have to expand the enforcer areas just like organic support.

jira: STUDIO-7538
Change-Id: I8e4e3fd18b0e77db9beb57347d8da895fc83f4b0
2024-10-15 15:50:26 +08:00
Arthur c262a7ea13 FIX: top z distance inaccurate if it's too large
The top z gap should be split if it's too large.
Also we use same logic for both synced and independent support layer.

jira: STUDIO-7232
github: #4191
Change-Id: Idca792e8fa51a83c2a09441ecac64d40b91d6390
2024-10-15 15:50:26 +08:00
zhou.xu 604437ba19 NEW:split part or objects keep color
jira: STUDIO-7386
Change-Id: Ic2d6ea1139de0dcca0140600fcb97ebea3efbd99
2024-10-15 15:50:26 +08:00
zhou.xu 56f628dac1 NEW:add "set grabber size" imgui
jira: STUDIO-7395
Change-Id: I87aeb683cf29e004d6b285810c5135f2b45ae4b9
2024-10-15 15:50:26 +08:00
zhou.xu 01e2a2032b ENH:import obj by right menu set new assembly pos
jira: STUDIO-7409
Change-Id: I089aea9333cf0f894dbfa67b09fbb8019c6f6023
(cherry picked from commit ab249fa3b4ec9f5e2965c7cffdbbe1f3f2d14332)
2024-10-15 15:50:26 +08:00
zhou.xu 8400e162a7 ENH:add a cross mark for object cs
jira: STUDIO-6947
Change-Id: Iaaab4f072045756ac3ba12c3f65e1c7f04ba65b8
(cherry picked from commit a2a2f49b4d94f257d36c9d17b4ec952e5dc9f0eb)
2024-10-15 15:50:26 +08:00
zhou.xu 2822ac102b FIX:move text should update text info
jira: STUDIO-7038
Change-Id: Ibd760c3655e6ff3f7c0a5604ef66e001f7cdc1fb
(cherry picked from commit aef92cd8eb9bae95939fdc1e8dfadec4ca529a3e)
2024-10-15 15:50:26 +08:00
qing.zhang 61481700a4 FIX: can not set 0 wall on arachne mode
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Iaf84d5bd6cb58dbcdfe30ad81aeda33c19a89421
2024-10-15 15:50:26 +08:00
qing.zhang 3d1f1ef858 FIX: limit the speed of wipetower skirt
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I9d4cbb8e6a83fe654ceb99c27fb2ba294fbe55d1
2024-10-15 15:50:26 +08:00
qing.zhang 9845767295 FIX: wrong wall order
Github: 4139

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ibc2c433b3de5a0c5e7cd2edcd4f9e91956645e88
(cherry picked from commit d4282d26cbbfbbfacf7352c5e45c078eb3ef14f8)
2024-10-15 15:50:26 +08:00
qing.zhang 773e79d9f4 FIX: error toppest layer height on scarf seam
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Iac47613c8e161059c420f04f2c34febfb630cd45
2024-10-15 15:50:26 +08:00
Mack 90f325792d FIX: step model split COMPOUND and COMPOUNSOLID type
JIRA:STUDIO-5632

GITHUB: #3153
Change-Id: I1b9b49321cc0da8bdd79e2beb4009283cfada287
(cherry picked from commit 6191a66441549b1cee8be8d7f740c2d466557691)
2024-10-15 15:50:26 +08:00
xun.zhang 791abec8e1 FIX: wrong bridge area
1.Caused by removing the hole stored in polygon

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I36c776dd6466b09ae8627eea59a93656f14d297d
2024-10-15 15:50:26 +08:00
Arthur 65a87ed03b FIX: bottom surface type was incorrect with soluable support
jira: STUDIO-6200
github: #3507
Change-Id: Ia5aee1a0a9e54674588b949428e993d1c0c5efac
2024-10-15 15:50:26 +08:00
jianjia.ma ee57873081 FIX: crosshatch height shift error since orca commit
jira 6984

Fix the layer shift cauculating error while reducing wrapping after importing the improvement from orca.

Change-Id: I1af1b29a6578836e5715685a4478a5b1d29f4ecf
2024-10-15 15:50:26 +08:00
lane.wei 8c155da07c Revert "ENH: support spiral lift with timelapse gcode"
This reverts commit f701afb34de3487e8d3560dd1e2051a21790e6ae.

found regressions

JIRA: https://www.reddit.com/r/BambuLabA1/comments/1fkuw4v/bambu_studio_v01090750_issues_with_multi_colour/
https://www.reddit.com/r/BambuLab/comments/1fkxabt/bumping_noise_on_a1_at_color_change_since_bambu/
2024-09-20 15:48:34 +08:00
SIMPLE MARK c7cb968e6d ENH:Add filament usage stats to GCode files
1.Add accurate filament usage stats to gcode after processing gcode

github:#3090

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I8eb20c0cf1b9c70f540d4549e2d65b8c79908952
2024-09-18 21:27:27 +08:00
chunmao.guo 06bbd235b8 ENH: auto stop liveview when print idle
Change-Id: I06dcc2a6ae469df8c39c1dc6c8626f66bc778f81
Jira: none
2024-09-18 21:27:27 +08:00
xun.zhang 2e243b3e76 FIX: missing flush for small purge length
1.Caused by round(), if purge volume is small, flush count may be 0 due
to round()

Github:#4738

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I382ab3021761c2fcc84d3537a18bd619637985b8
2024-09-18 21:27:27 +08:00
xun.zhang 43e4569f55 FIX: can't merge paths with different attributes
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I0c853de6b1938c7e2addbaab5a45b35daf5a32fa
2024-09-18 21:27:27 +08:00
xun.zhang 95d9d846c6 FIX: remove white space in line end
jira:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I833c2e84ba58919de5eb8f20c7f93919b180dadc
2024-09-10 08:18:43 +08:00
ziehmon ce669e421d ENH: support spiral lift with timelapse gcode
The existing implementation did only read the new Z position from the injected timelapse_gcode and flagged the position as unsafe because of this.

This change reads X, Y and Z pos from the timelapgse_gcode and will keep the position state correct to enable safety checks required for using spiral Z hop.

Because of this, spiral Z hop can be used everyhwere now. The same pattern is also applied for layer_change/toolhead gcode injection.

The set_current_position_clear method is unused but will be kept in implementation for future scenarios.
2024-09-09 19:31:19 +08:00
Bastien Nocera 07fbb1f7f5 Fix missing BOOST_LOG_TRIVIAL declaration
/run/build/BambuStudio/src/libslic3r/Flow.cpp: In static member function ‘static float Slic3r::Flow::rounded_rectangle_extrusion_spacing(float, float)’:
/run/build/BambuStudio/src/libslic3r/Flow.cpp:194:27: error: ‘error’ was not declared in this scope; did you mean ‘nlohmann::detail::cbor_tag_handler_t::error’?
  194 |         BOOST_LOG_TRIVIAL(error)<< __FUNCTION__ << boost::format("negative extrusion : width %1%   height %2%") % width % height;
      |                           ^~~~~
      |                           nlohmann::detail::cbor_tag_handler_t::error
2024-09-06 15:08:20 +08:00
Bastien Nocera 93e2d68412 Fix missing std::thread declaration
/run/build/BambuStudio/src/libslic3r/PerimeterGenerator.cpp: In function ‘double Slic3r::random_value()’:
/run/build/BambuStudio/src/libslic3r/PerimeterGenerator.cpp:31:76: error: ‘thread’ is not a member of ‘std’
   31 |     thread_local std::mt19937 gen(rd.entropy() > 0 ? rd() : std::hash<std:🧵:id>()(std::this_thread::get_id()));
      |                                                                            ^~~~~~
/run/build/BambuStudio/src/libslic3r/PerimeterGenerator.cpp:15:1: note: ‘std::thread’ is defined in header ‘<thread>’; did you forget to ‘#include <thread>’?
   14 | #include "libslic3r/AABBTreeLines.hpp"
  +++ |+#include <thread>
   15 | static const int overhang_sampling_number = 6;
2024-09-06 15:08:20 +08:00
qing.zhang 819de9ccad FIX: SSDA cause arachne print fail
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ibf75f66db1edaad7cb1b45f999751143442869fc
2024-08-28 21:38:54 +08:00
qing.zhang 85ba19f4f9 FIX: not set too short line speed and not apply error wall
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I7b92833d789731b1f30d1ec82f8e7e74036f6bd7
2024-08-26 17:23:33 +08:00
tao wang a3a8db76e3 ENH:Update some translations
Change-Id: Ia320aa8dc1a13ffa95010a05afb0b7c45075b47e
2024-08-26 17:23:33 +08:00
qing.zhang 1f37581b28 FIX: exit will apply speed params
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I0222356a93097ed0e4e2abbcbc2458617609e666
2024-08-26 17:23:33 +08:00
qing.zhang 0efa2db823 ENH: imprve overhang quality
Jira: none

add speed transition between discontinuity speed
detect bridge-wall and only use bride speed on bridge wall
fix the bug that not use overhang speed while support z
distance is 0 on arachne mode

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I72a1504544fe1ed7bd184ca073bd1b52cd2dcd75
2024-08-26 17:23:33 +08:00
xun.zhang 18eeba6e7a FIX: negative width in spacing function
JIRA:NONE

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ie84ff1b6ca3faac733c004def484401872c707ff
(cherry picked from commit b1bd0738f78c4e253fd34d39fa32e0dcf959f418)
2024-08-26 17:23:33 +08:00
SeaRyanC 70a0f0a447 ENH: C++11 random number generator for fuzzy skin
Github: 4253

Change-Id: Ib58022485c131b6c28f4bd1e78a3bf6e1188cf23
(cherry picked from commit 6dd9ceb6065aa6eb664acf7ba3d1510f31407258)
2024-08-26 17:23:33 +08:00
Arthur 4bebe9eb6a ENH: remove tree_support_brim_width
This option is duplicated with raft_first_layer_expansion. Now we
use raft_first_layer_expansion for all support types. Note: the name starts with raft, but it actually controls first layer expansion of both raft and support.

jira: none
Change-Id: I3d2bfc86d36c87d75f0bc1d077c6855f668b19b6
(cherry picked from commit 241a77bd6371330aff58b92b63d066054d4920ce)
2024-08-26 17:23:33 +08:00
Arthur da7f1439ce FIX: missing support layers at raft gap
jira: none
Change-Id: I9a7f34c148ee0e228cf2e8e18c85136253f354ad
(cherry picked from commit 615751538a65cdaeb8e398dcc941971c98ec11b8)
2024-08-26 17:23:33 +08:00
Arthur 6a130a19ef FIX: do not break bridges in tree support
jira: STUDIO-7424
github: #4318
Change-Id: Icccf56b129c4910f3b0a49d69871b8df1375a6d9
(cherry picked from commit 99211cde5f2114fd64e2724069540577793f889a)
2024-08-26 17:23:33 +08:00
Arthur d2daa4bd16 FIX: do not use organic tree with height ranger modifier
jira: STUDIO-7351
github: #4313
Change-Id: I5a99f88883ec68ab424613fd8b5fdd0d09ef829b
(cherry picked from commit 0b0c3fcd5bec5ee7f4519d936b31f3fb2926919c)
2024-08-26 17:23:33 +08:00
lane.wei bc04672f50 ENH: 3mf: don't add object unprintable into skip list
JIRA: no-jira
Change-Id: I1f7f55265ed9aedde3cf626d088477a89a67a208
(cherry picked from commit 2b121b468cb8c1abecf4d2ebf2a80ff34260647f)
(cherry picked from commit 9635928d255b4dded919006f26123c56bdd79d3b)
2024-08-26 17:23:33 +08:00
lane.wei ba99ca275a ENH: 3mf: limit the identify_id's hight bits to 0
JIRA: no jira
Change-Id: Id57be2e53c411a1397e26dda3cb3b31721cb0df2
(cherry picked from commit e5341c39f2cfe8a4aabd366f4a55115a42b9cc2c)
2024-08-26 17:23:33 +08:00
lane.wei fa2caa8bc8 ENH: config: add version different check logic
jira: STUDIO-7361
Change-Id: I0541d2cdd3bcef059f50ad3accf92bf4bdeaa670
2024-08-26 17:23:33 +08:00
zhou.xu b97d44dae4 NEW:active "import obj color" in command line
jira: none
Change-Id: I8bc5d4a1eea116305037b8194ff1d2e8aab83ce9
(cherry picked from commit 7df9f9d27d174b30a54ed27756d4a4a157557019)
2024-08-26 17:23:33 +08:00
BBL\chuan.he f9bc421651 feat:add more slice time details to json file
Change-Id: I6c29658a051144dda772b42603db6585ea58816b
jira: none
(cherry picked from commit d1e4b98db6ed0f8e1e29d7e8bdcdda96948d10dd)
(cherry picked from commit 76e3e210e0d22592172e236609f83fcbebea65ea)
2024-08-26 17:23:33 +08:00
BBL\chuan.he 55ccb97719 feat:change cli slicer time from second to millisecond
Change-Id: Ieed001d73859878e0723c4d0114ae792ea9b739a
jira:none
(cherry picked from commit bc2db297fb4e27a881e998fd0831b32ffe73b85c)
(cherry picked from commit 907c24c94c02fd7fde070a6abec691d6c861fd39)
2024-08-26 17:23:33 +08:00
Alok Meshram e170819ea2 Put -std=gnu++17 under gcc version >=14.1 to avoid compile-time error from earlier implementation of __int28 2024-07-13 12:11:23 +08:00
Alok Meshram 9d58b5e8c6 Explicitly specified C++17 for libslic3r and libslic3r_cgal in cmake . Also excluded template-id-cdtor from Werror. These changes fix compilation issues on Fedora 40. 2024-07-13 12:11:23 +08:00
tao wang d652deda1d NEW:online printing add a field for desginID
jira:[desgin ID]

Change-Id: Idc482f961a95d753b570bdda129b62b76bb6eaf8
2024-06-21 09:15:34 +08:00
qing.zhang bcdcea2bfe FIX: lower overhang speed to get better cooling
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I79235fac75d6601da13d55ddc7d8602f88b1a462
2024-06-21 09:15:34 +08:00
qing.zhang 758d087f15 ENH: add pctg type
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ie01fcd4bef0d3ebec5bbd7185a87a1740068bdba
(cherry picked from commit c6276932dd92bc4283600954415eedeac6d351ce)
2024-06-21 09:15:34 +08:00
Mack c8378296fa ci: using the flatpak patch
JIRA: STUDIO-6329
Change-Id: I6625659017ca84113a3bba8656abea87cc0bebd8
2024-06-18 14:55:27 +08:00
lane.wei 179acd12d1 ENH: CLI: add logic to save metadata into 3mf from CLI
JIRA: no jira
Change-Id: I7f96c2ab9671ec1c0115e90f6d64230b8170eb38
(cherry picked from commit 3d2d6e23ba318a2b331a62e320f8ca199168f1f5)
2024-06-18 14:55:27 +08:00
qing.zhang 2c143c0aef ENH: support object exclude for octoprinter
Github: 4199

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I0c6828ab2e23fda305bafee37d32eff7e99561eb
2024-06-11 18:17:08 +08:00
jianjia.ma 5c438dfb92 ENH: Reduce warpping effect on CrossHatch
jira: 6984

Change-Id: If8df59b952bc7c9fb26076d3d38c2cdcd15c0ebe
2024-06-11 18:17:08 +08:00
SoftFever b7726d7a1c ENH: optimize cross hatch infill
Optimize the cross-hatch infill pattern to improve strength when low infill density is used.
 (#5495)

Change-Id: I90a2d1e9861f55f97c948f897a2e8783625c1daf
2024-06-11 18:17:08 +08:00
zhimin.zeng bce7bc9a97 FIX: modify top_shell_layer should reslice
jira: none
Change-Id: Ied85b87ea4e036a60024977c50ac926c7293a5e1
2024-06-11 18:17:08 +08:00
qing.zhang 1fa62efb66 FIX: error layer height on gui while open scarf seam
Github: 4132

Thanks orca, this fix merged from orca

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ic2361299532b3cc4667e7744f23aedd4414d8a08
2024-06-11 18:17:08 +08:00
zhimin.zeng 0b0e03df1f FIX: Multicolor slicing error when contours self-intersect
github: 4138
Change-Id: I08375e2cf66d4fa4c7322f5aa1b8e86a7c49bf2d
(cherry picked from commit b2a1f816605615cbd2e47c62a00d3b87998e3213)
2024-06-11 18:17:08 +08:00
Arthur f13144d6a9 FIX: empty first layer of tree support
The raft gap layer should only exist if there are raft layers.

jira: STUDIO-7184

Change-Id: Ia4d2a5b7ddf873fb4ef16c7087648214e6bde806
2024-06-11 18:17:08 +08:00
maosheng.wei 3b2b9e5893 FIX: [7085] crash when connected printer
Jira: STUDIO-7085

Change-Id: I8509a4261885b255dac2e4423f6e641f942f762c
2024-06-11 18:17:08 +08:00
Arthur 461af9e8f6 FIX: top z distance incorrect with adaptive layer height
This bug causes supports difficult to remove.

Rule to remmeber:
    never decrease the top z distance, you can only increase it SLIGHTLY.

jira: STUDIO-7103, STUDIO-7001
Change-Id: I24f71cd67d182d4e2c0902f244a8ca8f4c3ee982
2024-06-11 18:17:08 +08:00
lane.wei f9bd783f8b ENH: CLI: support parse downward_settings from default internal path
JIRA: no jira
Change-Id: I99e2b40954c125f6b260f2498374ade66f246d2a
(cherry picked from commit db98aa9a905d62f034cb3f9960f094804b8801be)
2024-06-11 18:17:08 +08:00
lane.wei 9b19dc9edd ENH: CLI: add logic for backward compatible check
1. add logic for backward compatible check
2. add export_stls

JIRA: no-jira
Change-Id: If96ab225b9689e588fae7443e81a73d0872f7eb4
(cherry picked from commit db12cca05c8f60fdc717387253215e361ab29851)
2024-06-11 18:17:08 +08:00
lane.wei ebe5392932 ENH: CLI: add no light thumbnail logic for CLI
previously lots of logic are missed
JIRA: no jira

Change-Id: I3beadbb78127049594614212e8f9a60633e73b56
(cherry picked from commit 8fe9b854fa58c302c56b4f84bd0db9c5d1a4b571)
2024-06-11 18:17:08 +08:00
zhou.xu 47c442a61e NEW:add no light thumbnail
Jira: none
Change-Id: I3c0510dd4d7e444f1a6326b7a59a0ebd5e7aa410
(cherry picked from commit a3d8c36783716e24f39803a8c146a43b1014c092)
2024-06-11 18:17:08 +08:00
zhimin.zeng 922e533fdf FIX: interlocking_depth does not take effect
jira: none
Change-Id: I5298c3fd9ca20273f7e84262d35a59f6aa6e5f41
2024-06-11 18:17:08 +08:00
zhimin.zeng bef4655f7e FIX: crash when generating text with thickness <= 0
github: 4122
Change-Id: I0fae6ea234ddb92ef2c2bec6e0f8f7555709ec4f
2024-06-11 18:17:08 +08:00
zhimin.zeng 0c10af38ad FIX: Unwanted skirts when printing By Object
github: 4002
Change-Id: Id2df01bb0d296c5fea2bf53947b57abbb8eb0786
2024-06-11 18:17:08 +08:00
xun.zhang 4cf4e640ce FIX: unassigned initial extruder ignored
jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I97dbfac705c890d1c2b16c2b685f31d05e82a292
(cherry picked from commit a5a2909c795c6c99ff7d6c6bbe5741491a2b63e0)
2024-06-11 18:17:08 +08:00
lane.wei 6fa6a1742c ENH: general: reduce log level of some detailed logs
jira: no-jira
Change-Id: I8b074812bf21d982b829f9bdcc65af3996b42eb2
(cherry picked from commit a300bb47e73a25d6851e04efdc7b7a4401b1cda6)
2024-05-13 09:20:46 +08:00
xun.zhang eb76a8eb28 FIX: bridge not correctly anchored
1. Fix external bridge anchor problem

This commit is cherry-picked from Prusa.Thanks prusa
Original commit: 81d9724,74a38ed,4d0bae1

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: If8e3b5902341d1777a156b2da8c8f21713683d31
2024-05-13 09:20:46 +08:00
zhimin.zeng 96365a517b FIX: the height range is not valid in assemble object
github: 3876
Change-Id: Id38672bbf0c01bc9b9f0a3e2bf1052d945b45131
2024-05-13 09:20:46 +08:00
zhou.xu 7fcf5aaaf1 FIX:upgrade cluster algorithm to remove duplicate labels
jira: none
Change-Id: I4d68d8cd8e080932c7c308bc8f69e27546ffe309
2024-05-13 09:20:46 +08:00
xun.zhang dab3f24553 FIX: surfaces wrong detection
1. Top surfaces are detected as internal bridge. Can be seen in FDMTest
2. Fix bridge line overlap wall line

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I73c47e8b3aba862f46c8438fc69e3fcc382d16cc
2024-05-13 09:20:46 +08:00
zhimin.zeng 11d54be379 FIX: slice crash with height_range
github: 3917
Change-Id: Icdf83013213b47935b7a795ed75cc3d49057665d
2024-05-13 09:20:46 +08:00
Arthur afd647d764 ENH: improve auto arranging of multi-color and multi-heights objects
1. Compute score_all_plates correctly. Previously we only compute the
   first j plates which was wrong.
2. Compute height score correctly. Use average height difference instead of sum.
3. Compute color change score in a different way. If adding the current item
   increases extruder number, then adds up the score by 1.

jira: STUDIO-7013
Change-Id: I921c181bd4b32080627514d3834f4b74ccd00adb
(cherry picked from commit 4f6ae81be98109fe61d55203e306686e0d294ec4)
2024-05-13 09:20:46 +08:00
Kunlong Ma dbff3729a4 FIX: Incorrect multiplier, when the multiplier is set to below 1
github: #3987 #3805
1. In some languages that use commas as decimal points, setting multiplier below 1 will resolve to 0
2. Unable to save multiplier correctly

Change-Id: I62bc55e270929ebb5e910eb79c6f97106e842b93
2024-05-13 09:20:46 +08:00