Commit Graph

1243 Commits

Author SHA1 Message Date
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
maosheng.wei 6497184248 FIX: some translation
github: #3961

Change-Id: I71f90e799c8c3512902118777d813789c38c3eae
2024-05-13 09:20:46 +08:00
zhou.xu c69b94af5c ENH:delete no use code
jira: none
Change-Id: I40e7ffa7ea47bb3cd4039eef9f6c28c604eb3abc
2024-05-13 09:20:46 +08:00
Arthur 96e2147394 FIX: handle exception of dividing by zero in arranging
jira: none
Change-Id: I0d20464dbe81a80293539100f06d72dee456a27b
(cherry picked from commit 94746ae9bf7f467243849570450567b4fdc78e3a)
2024-05-13 09:20:46 +08:00
Arthur d175c3d3c9 ENH: pack objects with similar heights together in auto arranging
1. improve sorting logic by packing higher objects first, so objects with similar heights can be packed together.
2. remove the logic of arranging around wipe tower.
This logic is no longer useful, and it makes auto arranging density low.

jira: none

Change-Id: I3458ad8702cece29c6853f990497dbcc45365537
(cherry picked from commit bbb72c833324a8cddaab1891693c5c9e1cdedc9b)
2024-05-13 09:20:46 +08:00
zhou.xu 06be80bcd0 ENH:set the warning text to yellow in gizmos
jira: none
Change-Id: Iaf71528f5f877452dee579ce1c827f5eaa93e4c4
2024-05-13 09:20:46 +08:00
zhou.xu 38f6d5b4f5 FIX:Relax restrictions on importing obj files
jira: none
Change-Id: I61a0156a8424a5f59922956918d37d38e2c3306a
2024-05-13 09:20:46 +08:00
Arthur c413945186 FIX: tree support defaults to hybrid style with adaptive layer height
Organic support doesn't work with adaptive layer height.

jira: STUDIO-6971
Change-Id: I1fa6418bbc49914b3e5887e465861a0dacd42228
(cherry picked from commit dfe1cecb234d86bfbcba741ca3b46725fee43ea8)
2024-05-13 09:20:46 +08:00
Momin Al-Ghosien 7b52c24d60 Removed unused method 2024-05-06 14:38:59 +08:00
Momin Al-Ghosien 59c3bc2cbe Remove accidentally added whitespace 2024-05-06 14:38:59 +08:00
Momin Al-Ghosien da29408504 Updated to fix the handling of the capacity change, and removed the code I previously added to reserve upfront since it is not really needed 2024-05-06 14:38:59 +08:00
Momin Al-Ghosien 306b09b4f5 Fix use after free bug in LinesBucketQueue::emplace_back_bucket
I found a use after free bug in LinesBucketQueue::emplace_back_bucket. This was found by enabling address sanitizer.
The LinesBucketQueue class has two related members:
std::vector<LinesBucket> line_buckets;
std::priority_queue<LinesBucket *, std::vector<LinesBucket *>, LinesBucketPtrComp> line_bucket_ptr_queue;
line_bucket_ptr_queue holds pointers into line_buckets. However, since items are inserted into line_buckets one at a time, existing pointers that were stored inside line_bucket_ptr_queue become invalid. Specifically:
void LinesBucketQueue::emplace_back_bucket(ExtrusionLayers &&els, const void *objPtr, Point offset)
{
    auto oldSize = line_buckets.capacity();
    line_buckets.emplace_back(std::move(els), objPtr, offset); <--- Causes a reallocation, making previous pointers invalid
    line_bucket_ptr_queue.push(&line_buckets.back()); <-- priority queue compares against old, now invalid pointers
    ...

The proposed fix is to calculate the required number of entries in ConflictChecker::find_inter_of_lines_in_diff_objs, and then calling line_buckets.reserve(count). This ensures that sufficient buffer is allocated up front and the pointers are stable as items are added.
2024-05-06 14:38:59 +08:00
zhou.xu 3fa678d42e FIX:cancel obj import restrictions
jira: none
Change-Id: Iaf3e799ca982ad6aeb3ec76e9a416c4c8e4d100c
2024-04-23 21:22:42 +08:00
Arthur 0d57da5530 FIX: organic support may crash with some model
bad function call when calling empty function throw_on_cancel.

jira: STUDIO-6927
Change-Id: Ib37530b5cf155973d4e21d088e07d3110c2d36e4
(cherry picked from commit 53f27f5968a481bab1666fe0053f9753d585f0da)
2024-04-23 20:07:49 +08:00
zhou.xu b6154d4014 FIX:fix bugs of algo and read quad in obj file
Jira: STUDIO-6805
Change-Id: I6c33e8197225f27dccdfa0681e64d76d1df14f61
2024-04-23 20:07:49 +08:00
zhou.xu 21de7a9b22 FIX:change the strategy of merge_ka_kd
Upgrade ui, users can directly ok to proceed to the next step
jira: STUDIO-6805

Change-Id: Ia81019c2eacb503666680c0b8583d026baa0134c
(cherry picked from commit 38a2434753c8e3b422267283b16c75f6ad195b14)
2024-04-23 20:07:49 +08:00
zhou.xu e3407b3c17 NEW:import vertex and mtl color from obj file
Jira: STUDIO-6805

Change-Id: Iaacb13ee2451effdb83e5aba4b7fe1637b7fc95f
2024-04-23 20:07:49 +08:00
Stone Li 7104d2ff60 ENH: modify the default config for multi-device
JIRA: STUDIO-6072

Change-Id: If6e7582a8274eb5e685b8b8545f6eab5d17de3f5
Signed-off-by: Stone Li <stone.li@bambulab.com>
2024-04-23 20:07:49 +08:00
jianjia.ma 6540855ff7 ENH: Improve CrossHatch transation layers
jira: 6701

Change name from Flippingline to CrossHatch.

Reduce noise, improve speed by 6.5%. Improve transation layers by
gradually increasing rotation angle and overshoot the transation
layer while direction changed.

Change-Id: I17fcc45b409074d121bf5bb5702e15553d925b51
2024-04-23 20:07:49 +08:00
Kunlong Ma d7db83812f NEW: support hms error code
Change-Id: Ic256a83cf501fb05bb9d3203f3d24cb1d1290fa4
2024-04-23 20:07:49 +08:00
Kunlong Ma a8e7c63113 ENH: refine ui for multi machine
JIRA: STUDIO-6819 STUDIO-6824
1. Shrink the Send Print dialog box
2. add input box for flipping panel

Change-Id: I4174c79ecd239c374ee11478951e12be399c57ce
2024-04-23 20:07:49 +08:00
xun.zhang 2ff0581cdd ENH: add filament id in slice info
jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ic5fe4632bca8acacc9ffd072ee2ed207c1da37aa
2024-04-23 20:07:49 +08:00
xun.zhang 3006b163d0 FIX: always have 0th filament in ams mapping
1. Only set the filament id in map when flush length is not 0

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I6e0aeaf010f6e6dcbdc3bca5c0034aa60750bb67
2024-04-23 20:07:49 +08:00
Stone Li e4288407b9 NEW: support multi device
JIRA: STUDIO-6072

Change-Id: Ic514c4097767b0a728368c9ea48ee103c031fbb0
Signed-off-by: Stone Li <stone.li@bambulab.com>
2024-04-23 20:07:49 +08:00
xun.zhang 95106f3523 FIX: wrong chain sequence caused by narrow bridge
1.Add filtration for bridge area

github:#3873

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I03f7c1ef5bfb86aafdc15065008f0eedfb1a0036
2024-04-23 20:07:49 +08:00
xun.zhang cf146f4fed FIX: can't use support filament in gcode.3mf
1. Add total_filament_volumes, directly access it to get used filaments

github:#3865

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I4fae4f1947b4ebd16e394e0f3cf5fb0e9f979717
2024-04-23 20:07:49 +08:00
zhimin.zeng ffd292a62c FIX: Error "Voronoi cell doesn't contain a sourcepoint"
github: 3859
Change-Id: Idca84992bcba5380bfe05e63ac9a5e40419dcfdf
2024-04-23 20:07:49 +08:00
jianjia.ma 427deda14e FIX: Top surface bridging fail on 3DHC & FL infill
Add 45 degree angle offset when processing the bridge.
Need to raise infill_direction to invalidate posPrepareInfill

jira: 6774
Change-Id: I5e6bef3aa814b01c5f30398ac745937a67e3ef4c
(cherry picked from commit 7b12cab10b88f432a11414f8caa1c6427777a1ba)
2024-04-23 20:07:49 +08:00
Arthur cd9305e3e0 FIX: blockers not working for sharp tails of tree support
also change default style to tree organic

jira: STUDIO-6801
Change-Id: Iab1d8c6117139c9a7a4c1fa71de0a13bcb356dd5
(cherry picked from commit d2c4efad58f16b23bef49bd47d3b70bf322d6f55)
2024-04-23 20:07:49 +08:00
jianjia.ma 1389862ad8 NEW: FlipLines infill
jira:6701

New infill pattern that combine block lines infill and switching layers for smooth transition.

Change-Id: I2608a2d39b14efcdfe9d39a9437280da350b94c0
(cherry picked from commit 8d0a09c8b763dfc924cbba9913c241e6afadbc7f)
2024-04-23 20:07:49 +08:00
Arthur a14a8d9c8f FIX: auto-arranging incorrect with rotation enabled
auto-arranging incorrect with rotation enabled and the objects already have been rotated.

jira: STUDIO-6022
Change-Id: I349d663efb1fc71367c8a77aa8ed5047a0bf2017
(cherry picked from commit 75fe40257a274ed83886e1ee20ce8dedd0de48f6)
2024-04-23 20:07:49 +08:00
xun.zhang 0e1eafecbe FIX: redo prepare_infill when change infill dir
As title

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I1f59ea5ab44835ea14e690d836e76b5c1ef7340e
2024-04-23 20:07:49 +08:00
Arthur ea838d3cc1 FIX: auto-orient unstable due to numerical accuracy
jira: STUDIO-6464
Change-Id: I644bba2eea8cba6c73d2997c9399718b12eab9f2
(cherry picked from commit cccf57c75c3c348f918ededfbabb1eede5ac2ebd)
2024-04-10 20:03:44 +08:00
xun.zhang 7ee6e62ec4 FIX: unable to map if filament not used in model
1.Fix filament can not map if it's not used in model body

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ibd2685ffd198b2e17dbf44289d0144b5b7c25788
2024-04-10 20:03:44 +08:00
qing.zhang b40cf28a83 FIX: seam and unretarct pos error on smooth vase
Jira: none

casused by invalid path of smooth vase mode

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ib597e8c05760886aae2c42e42e8d46e82b844578
2024-04-10 20:03:44 +08:00
andrewboktor 449cb0b27c ENH: Full re-write of spiral vase
Github: 2744

* Practically full re-write of spiral vase
- Adds transition out to prevent sharp edge at the top of spiral vase.
- Adds XY interpolation
- Adds option to turn XY interpolation on/off

* - Increasing E to 5 decimal digits (I observed uneven flow with less than that)
- Excluding all travel moves (I saw a bug where somehow we ended up with travel moves within the print so excluding all travel moves)

* - max_xy_smoothing is now configurable, default is 200% of nozzle_diameter
- fixed no-op travel moves in the middle of spiral that now show up as defects when Smooth Spiral is enabled!

* - Avoiding namespace pollution
- Fixing dist_XY == 0 bug

---------

Co-authored-by: Andrew Boktor <aboktor@microsoft.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
Change-Id: I4e982b6192f730037ff497389454313af3905e82
2024-04-10 20:03:44 +08:00
qing.zhang 88db3a9124 FIX: has E0 on extrude cmd
Jira: 5789

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I866eb0f09053094cd2bd54902a06d8cac709a605
2024-04-10 20:03:44 +08:00
tao wang 30ee6b0d31 ENH: remove long retraction warning
jira:NEW

Signed-off-by: tao wang <tao.wang@bambulab.com>
Change-Id: If60236b3282991a2d94df7d125427cff86899536
2024-04-08 21:16:06 +08:00
xun.zhang 385e7ffe3e FIX: crash when change infill pattern
1. Fix crash when change infill pattern. Now change infill pattern will
influence prepare infill
2. Remove with loop param, no longer use now

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ibee8808e462bd418d83b7e5781dd2bc5cc772eb1
2024-04-08 19:50:03 +08:00
xun.zhang e447ef5256 ENH: add tooltip for uncommon profiles
1. Add profile description for uncommon profiles
2. Add some translations

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ib1d40d0ffe55adde74e66d9e696861463429e49d
2024-04-08 19:50:03 +08:00
xun.zhang 609a133336 ENH: disable internal_bridge_support_thickness
1.In the new algorithm,we no longer use this param

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ie7660c0f9744cb1f33bce4fa1ccbfef06b3df712
2024-04-08 19:50:03 +08:00
xun.zhang 7116c5a7c5 ENH: add default params for long retraction
1. Only auto calculate flush when enabled
2. Add default params for long retraction
3. Disable filament override for unsupport machines

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ib5d51505b58101839527e944f9a237483951f9fe
2024-04-08 19:50:03 +08:00
xun.zhang 081ac40f38 ENH: readd ensure vertical thickness option
1.The new algorithm still generate unnessary infill some time.
So we readd the option

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I65fdd58e19db85582d89facb5038adf8e87f299a
2024-04-08 19:50:03 +08:00
jianjia.ma 712b724d2a ENH: Add rotation support for 3D Honeycomb, improve stability
jira: 6701
Change-Id: I0552f7a7f59d1476f081044411557c96036a2c70
(cherry picked from commit 646fa84d42b926fe9e127a60da9c395baf39fac1)
2024-04-08 19:50:03 +08:00
zhou.xu d02f9561a8 FIX:not need deal SINKING logic in assembly view
jira: STUDIO-6730
Change-Id: Idca375293377ec219f79873d29e963b50cafa8df
2024-04-08 19:50:03 +08:00
qing.zhang 60bc535e59 FIX: scarf angle only check seam point angle
Jira: 6681

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I2d7a3e76c2a307bef8d6816814e7fef4bb6909ff
2024-04-08 19:50:03 +08:00
xun.zhang 3564daaef1 FIX: invalid support weight per extruder
jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I0e4b857c9c758ab7c54ef13aee1bf596f975640b
2024-04-08 19:50:03 +08:00
XunZhangBambu 74702b2c6c ENH: seperate support weight from model
jira:NEW

Signed-off-by: XunZhangBambu <xun.zhang@bambulab.com>
Change-Id: I86bb34941269bf1aa29436a94ebbdff675497e85
2024-04-08 19:50:03 +08:00
Arthur eb50f3ee58 FIX: auto arranging gets wrong object height
obj->bounding_box().size() is not the real object size if the object has been rotated.

jira: STUDIO-5999
Change-Id: I6553d4c990696efd674e3e57063802127d5d5282
(cherry picked from commit 479ea9fb02f55d24f27c94633f3d852bd5c62c83)
2024-04-08 19:50:03 +08:00
zhou.xu 4cb8bac4e2 FIX:allow some case to modify distance
Code fallback:reload scene
in 3D view  GLVolume::explosion_ratio  = 1.0
hide "Edit to scale" icon
Jira:STUDIO-6727

Change-Id: Ib7079077f5b39930891869af618b93861f3aa178
2024-04-08 19:50:03 +08:00
zhou.xu 9eade7a3ad FIX:use error feature and so on
Jira: STUDIO-6717 STUDIO-6712 STUDIO-6717
Change-Id: I1c44c5ba44f591a89e6862015ca3ae4d6ed9218d
2024-04-08 19:50:03 +08:00
David Eccles (gringer) 0f986b4ffe ENH: 3D Honeycomb
Cherry-picks new 3D Honeycomb from Orca Slicer by David Eccles (gringer).
jira: 6697

Orignal commit message:
3D Honeycomb - switch direction at smallest bridge point, rather than every layer (#4425)

Co-authored-by: SoftFever <softfeverever@gmail.com>
Change-Id: Ida2e5b76a7b906be21045e053200519af1bd9489
(cherry picked from commit a9f521c37e04a0cf404184848aa738b8a6043f87)
2024-04-08 19:50:03 +08:00
xun.zhang abb2356e6e ENH: refine long retraction ui
1. associate button display logic
2. Add valid range tip
3. seperate the printer into three types

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ie14c8746eb20456dacd5c129a5449c1e7c7db372
2024-04-08 19:50:03 +08:00
qing.zhang 41c71a6aac ENH: limit slope start height range
Jira: 6654

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I9dd45022e1350ace220901e70822d27773817221
2024-04-08 19:50:03 +08:00
Arthur 39839e3732 FIX: overhang interface may overlap with object
jira: STUDIO-6710
Change-Id: Ie13ec81e07326a2572d698607c03aeb793f119c8
(cherry picked from commit cc49c82793a877c2c4187e6254e4092de9285010)
2024-04-08 19:50:03 +08:00
qing.zhang 480489b29b FIX: infill speed not work on region level
Jira: none

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ie3d17c5e3cbf91a8854e3b4cd80babeb2b1bd121
2024-04-08 19:50:03 +08:00
Lukas Matena 551ba96205 ENH: modify the multi-material segmentation and voronoi
This patch is cherry pick from Prusa, thanks to Prusa

Rework multi-material segmentation to work directly on the Voronoi diagram without creating a copy of it.

Previous algorithms assume that they can get an invalid Voronoi diagram. Because of that, during the multi-material segmentation, a copy of the Voronoi diagram was created, and there were several attempts to fix missing vertices and edges. But as it shows, this wasn't a good enough approach and sometimes led to several issues like bleeding layers.

After generalization, our approach for detection and repairs of invalid Voronoi diagrams from Arachne, we could assume that multi-material segmentation gets non-invalid Voronoi diagrams.
With this assumption, we reimplement multi-materials segmentation to work directly on the Voronoi diagram. That should make multi-material segmentation more stable.

So, this should fix several issues like bleeding layers. Also, memory consumption should decrease by a lot. Also, there should be some speedup of multi-materials segmentation.

Jira: none
Change-Id: I72aa6e1f9634d9ee8759aa469a0b39a36ace62f5
2024-04-08 19:50:03 +08:00
zhimin.zeng 309010fff2 ENH: add precise_z_height
jira: none
Change-Id: Idb9fcf0063e773f1531a49961478460b91ded10f
2024-04-08 19:50:03 +08:00
xun.zhang 5b834000f6 ENH: refine retraction before cut
1. Add filament retraction before cut control

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: Ifcb087c9791c0461b793ef811b21ebd4c007d880
2024-04-08 19:50:03 +08:00
xun.zhang 3d75210ad1 ENH: port of new infill algorithm from prusa
1. initial port of new ensure vertical thickness algorithm from prusa
2. initial port of new internal bridge algorithm from prusa
3. readd interface shell

Based on prusa commit 11c0e567a68979e96085b3763a76464cb793ea12
and commit f8e7d1b01c114b4d45f9e221c6b5bb935065d650
Thanks prusa.

original author:
PavelMikus <pavel.mikus.mail@seznam.cz>
Vojtech Bubnik <bubnikv@gmail.com>

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I0d36be065a29cf87315918d720f726975a43ef9f
2024-04-08 19:50:03 +08:00
Arthur 734a70b493 FIX: tree supports may generate flying nodes
Previous parallelization has a bug where two adjacent nodes may be deleted at the same time.

jira: none
Change-Id: I99a29dae9f72aa74ed2721eea4421b15eec10732
(cherry picked from commit 91efe67d723652d3f7e4484dd3cdf31638f769a4)
2024-04-08 19:50:03 +08:00
Arthur 507345deb1 ENH: improve supporting sharp tails of tree support
1. sharp tails are supported by a sparse set of contact points which are
easier to remove than previously dense surrounding support.
   Organic tree support also has this feature, including all other smart
overhang detection techniques (small overhang and cantilever detection),
with the cost of slightly longer time to detect overhangs.
2. improve supporting overhang contours by adding contact points along
   contours.
  jira: STUDIO-3876
2. remove some redundant data structure.

Change-Id: If7f595348506a14aba2d0132d23f97d3539c1e1f
(cherry picked from commit e3cce09b9db12ced2841045ffd337b1f35494e6c)
2024-04-08 19:50:03 +08:00
zhimin.zeng 92d125c41f FIX: Slicer creates invalid color pattern
github: 3749
Change-Id: I3fd74a9ca59b75873fcbca4437e4858c749ee853
2024-04-08 19:50:03 +08:00
zhou.xu fa53be3736 NEW:add measure gizmo in assemble view
Jira: STUDIO-6545
Change-Id: I83b85f26305754c99088abb81fe568619151d32f
2024-04-08 19:50:03 +08:00
zhou.xu 8c95aca226 NEW:add "face and face assembly" function
Jira: STUDIO-6545
Change-Id: I1091b8a4f27a54b26761cd369462813fb0055572
2024-04-08 19:50:03 +08:00
xun.zhang 023bd51532 ENH: add some new filaments
1.Add Bambu ABS-GF,Bambu ASA-Aero,Bambu Support for PLA/PETG

jira:NEW

Signed-off-by: xun.zhang <xun.zhang@bambulab.com>
Change-Id: I347c953b7bf2b0be79ca3f4b6eeaf7fa9cc31b62
2024-04-08 19:50:03 +08:00
enricoturri1966 818c7a345a ENH: Rotate around the center of the bounding box
jira:none

code is from PrusaSlicer,thanks for enricoturri1966 and PrusaSlicer
commit dcec7a8ad40eaad72789f6dba15cafc94664119f
Author: enricoturri1966 <enricoturri@seznam.cz>
Date:   Tue Feb 28 08:08:56 2023 +0100
    Fixed Rotate Gizmo orientation for mirrored objects + ensure that instances and volumes always rotate as rigid body

Change-Id: I359d15814a6411bbd6bcb753661388bb5e6fb513
2024-04-08 19:50:03 +08:00
zhou.xu d9e47bd9a9 NEW:add move and rotate gizmo in assemble view
Jira: STUDIO-6545
Change-Id: I30ab8155f5288953b36cd9a301ce3596d6edc0c6
2024-04-08 19:50:03 +08:00
Bastien Nocera c680128141 libslic3r: Fix missing BOOST_LOG_TRIVIAL declaration
FAILED: src/libslic3r/CMakeFiles/libslic3r.dir/Support/TreeSupport.cpp.o
/usr/bin/c++ -DBOOST_ATOMIC_NO_LIB -DBOOST_CHRONO_NO_LIB -DBOOST_DATE_TIME_NO_LIB -DBOOST_FILESYSTEM_NO_LIB -DBOOST_IOSTREAMS_NO_LIB -DBOOST_LOCALE_NO_LIB -DBOOST_LOG_NO_LIB -DBOOST_REGEX_NO_LIB -DBOOST_SYSTEM_NO_LIB -DBOOST_THREAD_NO_LIB -DHAVE_FREETYPE -DHAVE_OPENGL_EXT -DHAVE_XLIB -DLIBNEST2D_GEOMETRIES_libslic3r -DLIBNEST2D_OPTIMIZER_nlopt -DLIBNEST2D_STATIC -DLIBNEST2D_THREADING_tbb -DOCC_CONVERT_SIGNALS -DOPENVDB_OPENEXR_STATICLIB -DOPENVDB_STATICLIB -DSLIC3R_GUI -DTBB_USE_CAPTURED_EXCEPTION=0 -DUNICODE -DUSE_TBB -DWXINTL_NO_GETTEXT_MACRO -D_UNICODE -DwxNO_UNSAFE_WXSTRING_CONV -DwxUSE_UNICODE -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/run/build/BambuStudio/src -I/run/build/BambuStudio/build/src/platform -I/run/build/BambuStudio/src/libslic3r -I/run/build/BambuStudio/build/src/libslic3r -I/run/build/BambuStudio/deps/build/destdir/usr/local/include/opencascade -I/run/build/BambuStudio/src/libnest2d/include -I/run/build/BambuStudio/src/miniz -I/run/build/BambuStudio/src/glu-libtess/include -I/run/build/BambuStudio/src/clipper2/Clipper2Lib/include -isystem /run/build/BambuStudio/src/eigen -isystem /run/build/BambuStudio/src/libigl -isystem /run/build/BambuStudio/deps/build/destdir/usr/local/include -isystem /run/build/BambuStudio/deps/build/destdir/usr/local/include/OpenEXR -std=gnu++20 -fext-numeric-literals -Wall -Wno-reorder -O3 -DNDEBUG -std=gnu++17 -fPIC -fsigned-char -Werror=return-type -Wno-ignored-attributes -Wno-unknown-pragmas -DOPENVDB_ABI_VERSION_NUMBER=8 -MD -MT src/libslic3r/CMakeFiles/libslic3r.dir/Support/TreeSupport.cpp.o -MF src/libslic3r/CMakeFiles/libslic3r.dir/Support/TreeSupport.cpp.o.d -o src/libslic3r/CMakeFiles/libslic3r.dir/Support/TreeSupport.cpp.o -c /run/build/BambuStudio/src/libslic3r/Support/TreeSupport.cpp
/run/build/BambuStudio/src/libslic3r/Support/TreeSupport.cpp:832:39: error: ‘info’ was not declared in this scope; did you mean ‘tbb::v1::info’?
  832 |                     BOOST_LOG_TRIVIAL(info) << "detect_overhangs takes more than 30 secs, skip cantilever and sharp tails detection: layer_nr=" << layer_nr << " duration=" << duration;
      |                                       ^~~~
      |                                       tbb::v1::info
In file included from /run/build/BambuStudio/deps/build/destdir/usr/local/include/oneapi/tbb/task_arena.h:31,
                 from /run/build/BambuStudio/deps/build/destdir/usr/local/include/oneapi/tbb/partitioner.h:48,
                 from /run/build/BambuStudio/deps/build/destdir/usr/local/include/oneapi/tbb/parallel_for.h:27,
                 from /run/build/BambuStudio/deps/build/destdir/usr/local/include/tbb/parallel_for.h:17,
                 from /run/build/BambuStudio/src/libslic3r/Support/TreeSupport.cpp:25:
/run/build/BambuStudio/deps/build/destdir/usr/local/include/oneapi/tbb/info.h:125:11: note: ‘tbb::v1::info’ declared here
  125 | namespace info {
      |           ^~~~
/run/build/BambuStudio/src/libslic3r/Support/TreeSupport.cpp:832:21: error: ‘BOOST_LOG_TRIVIAL’ was not declared in this scope
  832 |                     BOOST_LOG_TRIVIAL(info) << "detect_overhangs takes more than 30 secs, skip cantilever and sharp tails detection: layer_nr=" << layer_nr << " duration=" << duration;
      |                     ^~~~~~~~~~~~~~~~~
/run/build/BambuStudio/src/libslic3r/Support/TreeSupport.cpp:884:43: error: ‘debug’ was not declared in this scope
  884 |                         BOOST_LOG_TRIVIAL(debug) << "found a cantilever cluster. layer_nr=" << layer_nr << dist_max;
      |                                           ^~~~~
2024-04-01 08:54:23 +08:00
Bastien Nocera 55addc7af6 libslic3r: Fix missing assert() definition
FAILED: src/libslic3r/CMakeFiles/libslic3r.dir/ParameterUtils.cpp.o
/usr/bin/c++ -DBOOST_ATOMIC_NO_LIB -DBOOST_CHRONO_NO_LIB -DBOOST_DATE_TIME_NO_LIB -DBOOST_FILESYSTEM_NO_LIB -DBOOST_IOSTREAMS_NO_LIB -DBOOST_LOCALE_NO_LIB -DBOOST_LOG_NO_LIB -DBOOST_REGEX_NO_LIB -DBOOST_SYSTEM_NO_LIB -DBOOST_THREAD_NO_LIB -DHAVE_FREETYPE -DHAVE_OPENGL_EXT -DHAVE_XLIB -DLIBNEST2D_GEOMETRIES_libslic3r -DLIBNEST2D_OPTIMIZER_nlopt -DLIBNEST2D_STATIC -DLIBNEST2D_THREADING_tbb -DOCC_CONVERT_SIGNALS -DOPENVDB_OPENEXR_STATICLIB -DOPENVDB_STATICLIB -DSLIC3R_GUI -DTBB_USE_CAPTURED_EXCEPTION=0 -DUNICODE -DUSE_TBB -DWXINTL_NO_GETTEXT_MACRO -D_UNICODE -DwxNO_UNSAFE_WXSTRING_CONV -DwxUSE_UNICODE -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/run/build/BambuStudio/src -I/run/build/BambuStudio/build/src/platform -I/run/build/BambuStudio/src/libslic3r -I/run/build/BambuStudio/build/src/libslic3r -I/run/build/BambuStudio/deps/build/destdir/usr/local/include/opencascade -I/run/build/BambuStudio/src/libnest2d/include -I/run/build/BambuStudio/src/miniz -I/run/build/BambuStudio/src/glu-libtess/include -I/run/build/BambuStudio/src/clipper2/Clipper2Lib/include -isystem /run/build/BambuStudio/src/eigen -isystem /run/build/BambuStudio/src/libigl -isystem /run/build/BambuStudio/deps/build/destdir/usr/local/include -isystem /run/build/BambuStudio/deps/build/destdir/usr/local/include/OpenEXR -std=gnu++20 -fext-numeric-literals -Wall -Wno-reorder -O3 -DNDEBUG -std=gnu++17 -fPIC -fsigned-char -Werror=return-type -Wno-ignored-attributes -Wno-unknown-pragmas -DOPENVDB_ABI_VERSION_NUMBER=8 -MD -MT src/libslic3r/CMakeFiles/libslic3r.dir/ParameterUtils.cpp.o -MF src/libslic3r/CMakeFiles/libslic3r.dir/ParameterUtils.cpp.o.d -o src/libslic3r/CMakeFiles/libslic3r.dir/ParameterUtils.cpp.o -c /run/build/BambuStudio/src/libslic3r/ParameterUtils.cpp
/run/build/BambuStudio/src/libslic3r/ParameterUtils.cpp: In function ‘std::vector<std::pair<std::pair<int, int>, std::vector<int> > > Slic3r::get_other_layers_print_sequence(int, const std::vector<int>&)’:
/run/build/BambuStudio/src/libslic3r/ParameterUtils.cpp:11:5: error: ‘assert’ was not declared in this scope
   11 |     assert(sequence.size() % sequence_nums == 0);
      |     ^~~~~~
/run/build/BambuStudio/src/libslic3r/ParameterUtils.cpp:2:1: note: ‘assert’ is defined in header ‘<cassert>’; did you forget to ‘#include <cassert>’?
    1 | #include "ParameterUtils.hpp"
  +++ |+#include <cassert>
    2 |
2024-04-01 08:54:23 +08:00