Commit Graph

1574 Commits

Author SHA1 Message Date
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