Commit Graph

369 Commits

Author SHA1 Message Date
9a81a5b882 ENH: aligned the z-seam
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I60e1a046fb236d588a5e83b602fabd39580228fb
2023-01-10 19:08:26 +08:00
31e87c6497 ENH: avoid overhang area when set the seam position
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I58eb8c091b68b8c64f44d21db88d2f9155e42e42
2023-01-10 19:08:26 +08:00
06e10e4f59 ENH: [tree support] use layer_nr_next for calculate_avoidance
Previously we used layer_nr-1 as the next support layer below layer_nr,
which was not right when we used independent support layer heights.
And this would make it difficult for the tree branche to avoid the object.

Change-Id: Ic705fbd093e4bd555470646044380703ca259904
(cherry picked from commit 245e1cf4fd071b1f1fea4c5d616ff87432a76911)
2023-01-10 19:08:26 +08:00
6b0160abaf ENH: add layer progress into gcode file
As title

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I7b083e15e0f9030d7822494c4d6fc9cc72335ec2
2023-01-10 19:08:26 +08:00
20b3358772 refactor and improve layer time display 2023-01-10 19:08:26 +08:00
caebafecf4 Add Layer Time/Layer time(Log).
Main logic is ported from SuperSlicer

Signed-off-by: SoftFever <103989404+SoftFever@users.noreply.github.com>
2023-01-10 19:08:26 +08:00
542c0417dd ENH: optimize the copy description format
remove "\n" from _L macro

Change-Id: If1beda4a77f1c2b42945657b7386e155b8bc7a20
Signed-off-by: Stone Li <stone.li@bambulab.com>
2023-01-10 19:08:26 +08:00
aaf2f1efdc ENH: disable slow down for overhang when fuzzy skin is used
When fuzzy skin is used, it's unmeaning to calculate
the overhang degree of extrusion line, because there
are a lot of random fuzzy point which change the line.

Disable in this case. This can also speed slicing up
when fuzzy skin is used.

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ia65e20e24fd7a5cd224635fd69a272387135ba12
2023-01-10 19:08:26 +08:00
87b540ec03 FIX: brim croping in mulit-plate case
Brim will be croped to ensure it does not exceed the bed area. However,
plate offsets are not considered and thus the croping does not work in
multi-plate cases. This can be fixed by this patch.

Change-Id: Iffcce6cba23a82de1fdd9fffe8c48c4e303e9e15
(cherry picked from commit 9c53fb12153cc8a31448ae4a670171c495243dae)
2023-01-10 19:08:26 +08:00
be30af440c ENH: fix z hop error issue
This is fix for z hop issue that z hop of
layer change is always spiral list even when set
to normal lift

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I7b235a640b0538bedfe4cef61ca24108c1ba7246
2023-01-10 19:08:26 +08:00
ec20f0fbc7 ENH: use spiral lift only when it is needed
If a travel path goes through an overhang expolygons, and their distance
is shorter than threshold, lift type will be set to SpiralLift.

Signed-off-by: yifan.wu <yifan.wu@bambulab.com>
Change-Id: I345788711755dd8611ecf385818e6052cd8abe9e
2023-01-10 19:08:26 +08:00
b0210d7312 NEW: add build time in about dialog
Change-Id: Ibb27223568f19f39ec57c01af23376c325d3972b
Signed-off-by: Stone Li <stone.li@bambulab.com>
2023-01-10 19:08:26 +08:00
1793402dc1 ENH: allow generate wipe tower when print ByObject
allow generate wipe tower when print ByObject if there is only one object

Change-Id: I199e9cab7bd7c963edf58e829c663bb91c12f4f8
(cherry picked from commit 7153c30800022f3afb9811c67f88ba28c9b25d20)
2023-01-10 19:08:26 +08:00
c4ef6a0d23 ENH: support text modify
Change-Id: Ide5a3c7df5f3ea4395821a65807d79b459f3e46e
(cherry picked from commit 55de44d4c80c545de14466aa039a7b0ac144f395)
2023-01-10 19:08:26 +08:00
ec60876940 FIX: repair: fix the state not correct issue after repair
Change-Id: Ic4aaeaeeee921294e0a5ab6d82517dc28f8822c8
2023-01-10 19:08:26 +08:00
84816f4db4 FIX: add plate offset of placeholder
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Id16559e112b6db2759b95f97465d49ab85206e83
2023-01-10 19:08:26 +08:00
34b6881e7b ENH: merge tree support layers to support layers
Will greately reduce repeated codes.

Change-Id: I506a97a907b5b393fe41e13ae53e2f7c9247c4c5
2023-01-10 19:08:26 +08:00
f296194fa2 ENH: put the seam on invisible line of modifier
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ib16de93b26e96902ce2e0d844b78d0cc680638a4
2023-01-10 19:08:26 +08:00
8aedc53fe2 FIX: a part with new color change to negative part
even though there is only one color, the wipe tower is still exist

Change-Id: I5c68a4ca7239cfc74aba452a6588d74f6d622f47
(cherry picked from commit 032c2e6718c65aa4c5b18eecd0ccce27f3f489bb)
2023-01-10 19:08:26 +08:00
f7dd2f5d82 ENH: improve sharp tail detection
1. When sharp tail region suddenly grows a lot, it means it connects to
   a well supported region and is no longer a sharp tail.
   Jira: STUDIO-1862
2. First layer of sharp tail can not be reducible (must have extrusion,
   i.e. won't disappear after slicing), otherwise thin spikes at the
   top of the object are also treated as sharp tails.
   Model: knight_seadra
3. Increase sharp_tail_max_support_height to 16mm
   Model: Crane_reversed

Jira: STUDIO-1859 (for this issue I don't what is the exact cause,
   but adding these three improvements solves the problem)

Change-Id: I3cd57b184d78dba8862ab3c214057ae78fe49d1f
(cherry picked from commit 9242c6a6d1f23f11ebc43a9049ce10229a15c60e)
2023-01-10 19:08:26 +08:00
66a0c5b913 ENH: generate wipe tower when custom change gcode filament
Change-Id: Ia0c81453f09457a9d1d56fbcdce79112953c0208
2023-01-10 19:08:26 +08:00
8c8c2bbe4b ENH: optimize area of top surface
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ia3d1be6ad3b9f55ee1acda14d0be955055f6dfcb
(cherry picked from commit 448fd3043950613a4d91df256fa9ee52a57fcaca)
2023-01-10 19:08:26 +08:00
6cc7535082 ENH: don't generate detour travel when position is unclear
Detour travel is wrong in multi color printing when
current position is unclear.

Don't generate detour travel in this case to avoid
colour mixture.

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I2d24b04d99b8a0b34a46c9f88e522e97cb0fe354
2023-01-10 19:08:26 +08:00
4c0dd0892f ENH: improve generate_contact_points tree support
1. Previously we used integer Point type to detect corner, which was wrong.
2. Delete duplicate points more aggressively to prevent too many points
   around curved overhangs.
3. Do not generate roof_1st_layers if there is no interface at all.

Change-Id: I1167ac04c533ec8f29dc9e656ba7072d1b54197f
(cherry picked from commit 1329347c4bf9c8207cf21e591a6ad113bb565673)
2022-12-26 05:31:54 -05:00
ccff6165e6 FIX: tree hybrid may hang duing lightning infill
auto select grid infill for tree hybrid, and set default wall count to
1.

Change-Id: Icbecd540d06f353da2e63533f8f7cf7d7f20fbdb
(cherry picked from commit 246335cc195c88a4101dddd1eeda42d9ca16589f)
2022-12-26 05:31:54 -05:00
d07cae477f FIX: fix typos
Change-Id: Iba3727626d9102aa6c87d336ee1d49bbfbb7c479
(cherry picked from commit bf58651fffb94f9aeb4e85ff6c8a7b9feb3cab83)
2022-12-26 05:31:54 -05:00
b2db6903eb FIX: empty layers and dangling hybrid support
1. fix possible empty layers (caused by continues walls)
2. fix normal node may be absorbed in drop_nodes in "tree hybrid"
3. popup message to ask the user to select best parameters for tree strong
   and tree hybrid.
4. auto select lightning infill for tree hybrid.

Change-Id: I7d172887a9b0e4f268267684e83fc02dc7ec6a0c
(cherry picked from commit bc6d130e86c252d7fc1f84c4df7da95050dd5d51)
2022-12-26 05:31:54 -05:00
6913736f8c ENH: change base pattern "None" to "Hollow"
1. change base pattern "None" to "Hollow", and add an icon image
2. fix a bug of not initializing m_highest_overhang_layer
3. fix a bug where normal(auto) with Tree* styles won't generate any
   supports.
4. add popup message when selecting support material for interface.
5. draw connected loops when wall count is larger than 1

Change-Id: I7ea211d2971b25c65724bb10d0f6cf6e0b68c6a1
(cherry picked from commit 4c1ae7f937239fc3e1397ec2cb3b290d886bb0f0)
2022-12-26 05:31:54 -05:00
9813f50c8c ENH: [Tree Support] smooth_nodes and draw ellipse works
1. smooth nodes' positions
2. draw ellipse along movement direction
3. fix a bug of radius not smooth
4. fix a bug of Tree Strong having too large radius
5. fix a bug in plan_layer_heights: when wipe tower is
   enabled, independent_support_layer_height is false, and all support
   layers should be exactly the same as the object.
   Jira: STUDIO-1785
6. move support style popup message to on_value_change, so only show the
   popup when the user changes support type or style.

Change-Id: Ibced7a28f436d96000ee35a7194b68bb5a20a32d
(cherry picked from commit 0d814b07e433533c8de1b7a04bf52b577de0778d)
2022-12-26 05:31:54 -05:00
6a74e76745 ENH: improve auto arranging and by-object printing
1. In auto arranging bed temp can be higher than vitrify temp by no more than 15 degrees.
2. In by-object printing we use max radius for clearance
3. Add P1P max radius

Change-Id: If595f3e19fd74f6f36d2f394edbb835c413cc800
(cherry picked from commit 2af42420ad3770f0728adb583082600544519a58)
2022-12-26 05:31:54 -05:00
c95fff9363 NEW: add new tree support style "Tree Slim"
1. Add a new style "Tree Slim". If enabled, tree
support branches are merged more aggressively, and the support volume
is minimized.
2. Enable support style, add back Snug for normal support.
3. Remove hybrid(auto) type and use "Tree Hybrid" style to represent it.
4. Fix a bug in plan_layer_heights that may generate empty layers when
   layer height is set to 0.3mm.
5. Fix a bug where no raft is generated if there is no overhang.
6. Fix the bug where no bottom interface or bottom gap is generated when
   tree slim is selected.
7. Use physical distance to calc radius

Change-Id: Iacd57018ae5496cdc9acd28551c44d1c88c53fe0
2022-12-26 05:31:54 -05:00
825a13db3a FIX: Solve cracked layers of tree support under adaptive slicing
fix bug of empty layers when meeting similar large layer height of tree support

TODO: hybrid(auto) still has dangling layers at the botttom.

Github#826

Change-Id: I6d5dfa9a610403e51ea82c1d86444f8645dc3210
(cherry picked from commit ea38988f0b5ba22c5b7c3b212d510f649dd23301)
2022-12-17 03:21:09 -05:00
b0a7f97e6c ENH: Optimize TreeSupport
New function plan_layer_heights added for pre-planning maximum layer heights

Previous adjust_layer_heights function has been commentted out.

Change-Id: I8ec5bb7b7e700ed7655d18a17d0b15de5f026592
(cherry picked from commit 55995c138e0375b8055f31768eea1392cd64168d)
2022-12-17 03:21:09 -05:00
01182279c7 FIX: sync with master on TreeSupport.hpp
Change-Id: I5a7eab9fcf1d46ac4a3748c66eb163fb5cc289da
2022-12-17 03:21:09 -05:00
f6fbc75287 TreeSupport: Fix UTF-8 errors
Let's just translate the comments into English while we are at it.
2022-12-16 22:51:07 -05:00
bbda8da594 3mf: Correctly include expat.h 2022-12-16 22:51:07 -05:00
60a7c297bc GCodeProcessor: Add missing mutex include 2022-12-16 22:51:07 -05:00
79aaec18bf Add missing includes for boost::filesystem::load_string_file
Deprecated in Boost 1.79.0 and no longer included by
filesystem.hpp.
2022-12-16 22:51:07 -05:00
135931b939 Use fstream from boost::nowide
Fixes build on Boost 1.79.0.
2022-12-16 22:51:07 -05:00
de1992391d FIX: add support type normal and tree in handle_legacy
If don't do this, laoding old 3mf generated by version 1.3 or lower will
have problem, e.g. normal support will be replaced with normal(auto).

Change-Id: Iaa8e1f8badaacc74479d99a6e4153d8850945279
2022-12-15 04:49:14 -05:00
99af58c6ce FIX: dont arrange when bed temp is greater than object's vitrify temp
Add large cost when bed temp is greater than object's vitrify temp
STUDIO-1623
Change-Id: Ib73d312fce7b80999f11d1f6c172a9c1575937b4
(cherry picked from commit aed896d44776c9cd2fd55202420a3811bc117896)
2022-12-15 04:38:15 -05:00
82c5f83990 ENH: remove bbs namespace in 3mf
Signed-off-by: yifan.wu <yifan.wu@bambulab.com>
Change-Id: Ib9db7bbfb8ebb9c1b29b50f5743c927250f58bef
(cherry picked from commit d7a131b97c72c01b8fc256e179309cfde4f1f8b4)
2022-12-15 04:38:15 -05:00
dbf51204f3 ENH: sync the different codes
especially for the translation files

Change-Id: I940578ff6e22b0939d42eeed2209bfeddb0eb191
2022-12-15 04:38:15 -05:00
b6f639b202 FIX: update po/mo
Change-Id: Ib2234356f9a17eec4f26791327151dde64f4e4bb
2022-12-15 04:38:15 -05:00
f90bc1f784 ENH: font preview
Change-Id: I8151036cedcba9c57183414a9d134741bb2166a5
Signed-off-by: Stone Li <stone.li@bambulab.com>
2022-12-15 04:38:15 -05:00
86934a5ea7 FIX: Fix the benchy orientation bug
[STUDIO-1717]:
1. Add area filter during finding the orientation vectors.
The vector with largest area will be selected.
2. Area_accumulation function return the accurate normals.

Change-Id: I917e29a0def4904a82d30cf0a92524bbb0da14c1
(cherry picked from commit a79cf2fa89c7247cab37ebd36974529df79f0990)
2022-12-15 04:38:15 -05:00
ac3e5bd987 ENH: remove 'repair' from cli which is not supported
Change-Id: I9ef1ef2e9971643ce9367e5ebf4417eb5c599c80
2022-12-15 04:38:15 -05:00
e1e5a402b7 ENH: refine the tips of support filament
Signed-off-by: yifan.wu <yifan.wu@bambulab.com>
Change-Id: Ieaf17127612d7186590f52dbf060b3eefe3b09e3
2022-12-15 04:38:15 -05:00
f9bc5c0db9 FIX: The flat plate orientation bug
[STUDIO-1676]:Auto-orientation not OK but manually OK.
When accumulating overhang, the bottom condition should select 0.5* layer
height rather than previous 1 * layer height.

Change-Id: Ide96817b8f98827388b7cb73ca33518b3ff25235
(cherry picked from commit 9f90151236340d3a10790112be65c816dcc3ae30)
2022-12-15 04:38:15 -05:00
183059d89f ENH: control local extrusiuon order of tree support
As title

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I82a17cd8f82a87a898f933b5437836667136d834
(cherry picked from commit aedfffc4565113f186a55efa0e89366880a22fc6)
2022-12-15 04:38:15 -05:00