Commit Graph

471 Commits

Author SHA1 Message Date
lane.wei 9dceb42ba3 ENH: validate the config from 3mf and give some hints when there are errors
Change-Id: Ic25e5426e4e85a35a6a2413109f47b653955ec78
2023-02-22 20:09:17 +08:00
qing.zhang 0b0a1a3d48 FIX: fix adjust of cooling time
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I5eae0ed7e53fddb18c99f510373ba5a687fd2c8e
2023-02-22 20:09:17 +08:00
qing.zhang 4b86b978d1 ENH: STUDIO-2221 adjust cooling time for each layer
sub filament change time from layer time to adjust
layer speed

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I2f1c41a36946765b74ecad58ce102abe98e00dac
2023-02-22 20:09:17 +08:00
salt.wei 209c50f50d ENH: fix for collision when print by object of multi color
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I3d8b285dedb13ecbb5df38d46293680d9a0c1a61
2023-02-22 20:09:17 +08:00
qing.zhang e69c0ed7f6 ENH: STUDIO-2113 fix spiral lift in crossing wall mode
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I73f0d7fd6679d4e9645de4e7212e1b364cb7ea31
2023-02-22 20:09:17 +08:00
wintergua 4536ed9ae2 FIX: brim generation error in XY compensation and first layer fixing
now, when XY compensation with negative value is assigned, the brim can be
generated correctly (Studio-2222). In addition, one can add brim to a model whose
first layer is empty while second layer is not empty (studio-1286).

Change-Id: I28443dc6e28bc6fff8c92d3cc35ab7a416d43138
(cherry picked from commit cb62afcfd295ca93962d99350d1dfaf3441c4759)
2023-02-22 20:09:17 +08:00
chunmao.guo cbb84d2fb6 ENH: support filament_z_hop_types
Support override z top type in filament

This is handling for STUDIO-2082

Change-Id: I885d1d5e44d626e28b260ff569d0359e462a5f8d
2023-02-22 20:09:17 +08:00
Arthur 5cbea66058 ENH: add translation macro to "No layers"
Jira: STUDIO-1876

Change-Id: I7a6fdf64b27d2eb40346a0025fd9afe5944dd7b7
(cherry picked from commit 71f580b34434d1a6582a20429c38ea3f6d1875fd)
2023-02-22 20:09:17 +08:00
liz.li b3c4447191 FIX: spiral vase mode layer number
Change-Id: Iac96f790e4030d2eac5666517d37919926cd85c3
2023-02-22 20:09:17 +08:00
qing.zhang a726628657 ENH: cut travel before wipe
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I3b5dfc19c601e0cd72a4fd7fe320791f1d10c87b
2023-02-22 20:09:17 +08:00
salt.wei df84229adb ENH: promote the precision when transfer step to mesh
Previous precision is not enough, and some mesh is not
of good quality.

This is handling for github issue #825

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I68901b41c1a3279c61678dbbcc93c887020f18a7
2023-02-22 20:09:17 +08:00
Arthur 088668994c FIX: bottom bridge was not correctly detected
A bottome surface is detected as stBottom only if:
 1. has support, top z distance=0 (soluble material), auto support
 2. for normal(auto), bridge_no_support is off
 3. for tree(auto), interface top layers=0, max bridge length=0, support_critical_regions_only=false (only in this way the bridge is fully supported)

 Note:
 Since now the surface type depends on more parameters, changing them will trigger re-slicing and making the whole process slower.

github issues: 1253

Change-Id: I0fe719e0dbf7147206008c8726dd9c7be2b19226
(cherry picked from commit d4490afa6b9e4fbb583033a125bbebb50dc5f0bb)
2023-02-22 20:09:17 +08:00
chunmao.guo d0f2f0b28d FIX: [STUDIO-2183] presets/filaments unorderd in BambuStudio.conf
Change-Id: I3a286c356cc23f970462e6f24d99b4b038e321e7
2023-02-22 20:09:17 +08:00
chunmao.guo 881e25e2a2 FIX: [STUDIO-2150] not save remain configs on no-to-all
Change-Id: I7174a0639599919e43c9110016911db179178d7c
2023-02-22 20:09:17 +08:00
chunmao.guo b3a4384aec ENH: save ams list to compare with last sync
Change-Id: I44db0b0a61cf366929aed6ab703407e5d9b170b7
2023-02-22 20:09:17 +08:00
qing.zhang 8e50744d2a ENH: add ANYCUIC profile which based on SoftFever
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I85fc64a25dbb761377c63574b3d3ec10fda9dfd6
2023-02-22 20:09:17 +08:00
Arthur 59f7c4595c FIX: arranging multi-color objects not correct
Arranging multi-color objects with disabled
multi_materials_on_same_plate option was not currect.

Previously we only consider the first extruder id for multi-color
objects. Now we consider all extruders.

Jira: STUDIO-2164
Change-Id: If64ff4f88f0fe4f6c31ebf657b3449b19bf063f0
(cherry picked from commit f4f6bdd00a0c3d3e13406b69be9b5b0468b27d44)
2023-02-22 20:09:17 +08:00
Arthur 63222d50de FIX: unsupported cantilever was not warned
1. fix unsupported cantilever was not warned. We need to set support
  type to stTreeAuto in is_support_necessary() to fully utilize the
  power of feature detection.
2. fix tree support not generated on non-first plate.

Change-Id: I5b8aa827c9d62df0119db4e8e9212f33ce75ddaa
(cherry picked from commit 60f21b6fcb45fe56f7fc867a7fcad433282bc055)
2023-02-02 16:53:45 +08:00
zhimin.zeng 8887bc3af9 FIX: Incorrect results for multi-color object slicing
Change-Id: Ia2f96d3afb128faa72b6872bcbe2914ddcbe71fe
2023-02-02 12:14:41 +08:00
zhimin.zeng 217234c8d3 FIX: Support Filament is being "Flush into objects' infill"
When using "Flush into objects' infill" with support filament, it also get's flushed into the object's infill which shouldn't be happening.

Change-Id: I0f1cb3d5ee3cf5489ccab957989c6c24336f8845
(cherry picked from commit f83e63feb3ad5a14b0f4304e2e6fb1c5828270ec)
2023-02-02 12:14:41 +08:00
zhimin.zeng c0ee8d4f0f FIX: remove duplicate flush_volumes
Change-Id: I86e3cc1ccd997e5c61915052e70c426bead289b1
(cherry picked from commit 1a615790fe0ac39d9ce0776079c34cf7f2c6217b)
2023-02-02 12:14:41 +08:00
Joshua Wise 040af5fa98 slic3r: address sanitizer cleanup in TreeSupport::generate_contact_points
In generate_contact_points, the rotated_dims don't actually generate a
Point, but generate an abstract expression that holds a reference to
bounding_box_size.  Unfortunately, this goes wrong because bounding_box_size
ages out instantly; GCC's Address Sanitizer complains that this is a
"stack-use-after-scope" issue.

Interestingly, the Eigen documentation says that this is a known problem
with using C++11 "auto" to generate matrices (which a Point is)!  It is
buried here: https://eigen.tuxfamily.org/dox/TopicPitfalls.html

This is probably an extremely theoretical correctness improvement, and also
an extremely theoretical performance improvement.  But it is an improvement
nonetheless, and, more importantly, it enables me to continue to run the
slicer with Address Sanitizer turned on to find other potential issues.
2023-02-01 16:24:44 +08:00
lane.wei 64173b3fa3 FIX: fix the duplicate model issue after open recent project in some corner cases
github issue-1185

Change-Id: I3be5be473cfe7328c4781b1533093cd860e64387
2023-02-01 16:24:44 +08:00
lane.wei 7102a1e235 FIX: fix the slicing result different issue
when move volume in objects copied from other object
the result is not correct

Change-Id: Ieebc586f11c42429902d653e871c038d096783e8
2023-02-01 16:24:44 +08:00
MusangKing 92f594ea4a FIX: support blocker not work on vertical+horizontal faces
Jira: STUDIO-2088

Change-Id: I6803e8e90ebcc4c67d81473f60fdf97929011e12
(cherry picked from commit 738800c5af48ab8a2cde40b6f2b3c48a88bfee8b)
2023-02-01 16:24:44 +08:00
Arthur Tang c07dcffe16 ENH: use print volume to clip tree support
So tree supports won't go outside the bed.

Known issue:
1. moving won't trigger support re-calculating, so if you want to
  clip the supports in a different way after moving, you need to change
  the support settings (eg change threshold angle to 31 degrees).
2. clipping with the occlusion region is not complete, and an error
  message of "outside toolpath" will still be popped because we use
  convex hull to detection confliction.

Jira: STUDIO-2036

Change-Id: I643b14618eb18ffa9825072c44f677e51b0ff937
(cherry picked from commit a6217824dc0f490027e16f80f810d176dec6004b)
2023-02-01 16:24:44 +08:00
qing.zhang 3d378563b5 ENH: modify start gcode
fix the text errot of density of PolyTerra
z_hop_type change to auto

Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I7f59d2620b42d2f2092ebb4c01ac3a5455c40a4f
2023-02-01 16:24:44 +08:00
qing.zhang 6ea24dfd89 ENH: open skirt height
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Ie709c2f2987a7c351e03cb1e3c5a06817f43df19
2023-02-01 16:24:44 +08:00
Arthur 30bb96aa47 FIX: spiral mode couldn't be enabled
Support layers should be released in is_support_necessary.

Jira: STUDIO-2120
Change-Id: Id1c6fa2d8635e55be745095408dfbac38a25efa6
(cherry picked from commit f911e8d084c4fa273f8c9211112fa2f83515cfb1)
2023-02-01 16:24:44 +08:00
salt.wei 431eabd464 ENH: use gcode processer to get precise layer number
Using layer z to calculate total layer number is not
precision, because for some models with sharp top
layer, the top layer may be empty.

Check the final layer change in final gcode file.
This must be same with total layer number.

Jira: Studio-2123

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I5d001a8bb9548c3fb5f67fda966051ac3bb16502
2023-02-01 16:24:44 +08:00
salt.wei 7dcb5c0e64 ENH: layer height 5.99999 should be same with 6.0
Merge numerically very close Z values when calculate
total layer number

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I4e60ca69fe5b06b66283d6a763d0b231c3d11b5a
2023-02-01 16:24:44 +08:00
Stone Li b1fbdaf61c NEW: pass design info to PrintJob
Change-Id: Ic24462324b389e20647620366a5fe2b53bb4c1ce
Signed-off-by: Stone Li <stone.li@bambulab.com>
2023-02-01 16:24:44 +08:00
yifan.wu d833ab1546 ENH: remove redundant log
Signed-off-by: yifan.wu <yifan.wu@bambulab.com>
Change-Id: Id18e366e05ca49740b781ccb5e5f88af61debf56
(cherry picked from commit 269e617faa20f47b2e27e9c24376c7c9c04e0cd0)
2023-02-01 16:24:44 +08:00
salt.wei 170a24a43f ENH: show travel time in gcode viewer
Seperate travel time from extrusion role time and
show it seperately.

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Icf0aaf63c4d4ed7d1407037e5ae051d61938f973
2023-02-01 16:24:44 +08:00
qing.zhang db873eb99b ENH: inner-out-inner wal seq
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Idd2205f2b72a8f471927c9e3a38415013548f09e
2023-02-01 16:24:44 +08:00
zhimin.zeng 1015b7bca9 ENH: enhance the travel path of change filament
Change-Id: I720b833fc203f7ece63487e00290f4d91423c9f9
(cherry picked from commit 55e5fd8df1576d2b9252b2bd9e3e494db76218bf)
2023-02-01 16:24:44 +08:00
zhimin.zeng a52e423416 FIX: crush when slicer multi-color model
the root cause is a mismatch between the dimensions of flush matrix and the number of extruders

Change-Id: I3a4ca706cb24d9e5d33969b9e6f5b288e71bb8f2
(cherry picked from commit 7399037eaacdfd7d8407667a2e5a097757265254)
2023-02-01 16:24:44 +08:00
salt.wei 9828101fa8 ENH: total layer number is wrong when enable support
This is fix for jira 2061

Layer height is double and may has small difference, which
influence total layer number when support is enabled.

Should use int data and consider EPSION when calculate total
layer number.

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I1bb6c89f2afd162d2d7e7dcff4a9d6a00b94dab3
2023-02-01 16:24:44 +08:00
四季奶青七分甜 b7b9029548 fix: Revert "ENH: avoid overhang area when set the seam position"
This reverts commit 1e95803df3733021e80241ecf7b88976708f0cf7.

Reason for revert: some model test not good, need to update curve function

Change-Id: I6afd6115d21198f60453d4f507905b6684a65cff
2023-02-01 16:24:44 +08:00
salt.wei 4a3a4645f0 ENH: fix issue that sommetimes no wipe path is generated
This is handling for github issue #1072

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I253be46b07054eb69ddbad3889e31dfca57b2a52
2023-02-01 16:24:44 +08:00
qing.zhang c56d0d8041 ENH:limit max nozzle diameter
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Id87a83f1ad5d6d0033bd25eb456dd1204320ae80
2023-02-01 16:24:44 +08:00
Arthur 81ee7bb99b ENH: improve is_support_necessary
Use tree support to detect if there are sharp tails and so on.

Jira: STUDIO-1898

Change-Id: I148e14ca4024849875133a646a8fdd36c265b2fb
(cherry picked from commit bc74015d45e96e409d34d611876e3a24e289e029)
2023-02-01 16:24:44 +08:00
salt.wei 43ba4b0712 ENH: fix the issue about forcing cooling of pa-cf
For pa-cf, the default setting of cooling is
forcing cooling for all outer wall.

And internal tester found that the slowing down by
layer time does not work for outer wall under
this situation.

This is fix for this issue.

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I05aaa16d246f5ea6dc1ae9808050e1281646e184
2023-02-01 16:24:44 +08:00
Arthur 5cc08e3398 FIX: tree support first layer defects
Tree support didn't fill the first layer when the tree is too short

udesk: 0284
Change-Id: I2702b26733e7360445e19847abb48f75f173da4e
(cherry picked from commit e317f9e19fbbfe21efb495e23a8ff78661bfee79)
2023-02-01 16:24:44 +08:00
Arthur fa9a530184 FIX: raft density in tree support was wrong
Jira: STUDIO-2005
Change-Id: Ic2e9a3824ea943f101737270382c63cfaea656a1
(cherry picked from commit e10e17863a40638329ff43c8fa12b88c79e7b76b)
2023-02-01 16:24:44 +08:00
SoftFever 9b3ed8e4e6 fix crashes when switch timelapse and vase mode
Signed-off-by: SoftFever <softfeverever@gmail.com>
2023-01-28 16:14:15 +08:00
salt.wei 70a0f09ea2 ENH: disable clipper2 in perimeter generator
Clipper2 doesn't solve wrong line issue for some
specific model and sometimes has performance issue.

Return to clipper1.

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I906f8b81083ac8c03ecc9fe3e8d2ade20be95c04
2023-01-10 19:08:26 +08:00
salt.wei ba064d44a1 fix: revert "ENH: aligned the z-seam"
This reverts commit 2d0805d4aabbc4e8f25aa93c8f01870c256a0b17.
2023-01-10 19:08:26 +08:00
salt.wei b13928b615 fix: revert "FIX: fix the out range of array of seam algining"
This reverts commit f100c10fa8aa0460d3ff11723c6a2504b6b69bba.

Change-Id: Ice36f6f41d5a50a7244d8f09960876d9539802d8
2023-01-10 19:08:26 +08:00
qing.zhang d42d6bec87 FIX: fix the out range of array of seam algining
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I655e7a0a5cdac6c05ddd8a6c7f38e1f97a7d0f96
2023-01-10 19:08:26 +08:00
chunmao.guo ae959b7400 ENH: [STUDIO-1871] merge changes of user presets from other sessions
Change-Id: I2841ff4e23b18ebe7cdf374b69a494a4c05a49ee
2023-01-10 19:08:26 +08:00
chunmao.guo a4cf284c3d ENH: adjust user preset handling
1. async fetch user presets from server (in thread)
2. always load default user presets
3. load user presets from cache immediately
4. not remove user presets cache
5. hide some loading ui

Change-Id: I1d29ed18e09606d0b2f69a69eea2eb5042c26223
2023-01-10 19:08:26 +08:00
qing.zhang ad6257ca84 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
qing.zhang 3a6f033794 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
Arthur d16dee04af 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
salt.wei de6ba75f40 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
SoftFever 357fa2bfe1 refactor and improve layer time display 2023-01-10 19:08:26 +08:00
SoftFever f42ae3239e 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
Stone Li 9bc46daf40 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
salt.wei ebaae57b01 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
wintergua 49eb40b711 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
salt.wei 4b63bf453c 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
yifan.wu 5d9bb61f8e 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
Stone Li a163d4fa02 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
zhimin.zeng 93b1a335d2 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
zhimin.zeng 1c5c9bd3d2 ENH: support text modify
Change-Id: Ide5a3c7df5f3ea4395821a65807d79b459f3e46e
(cherry picked from commit 55de44d4c80c545de14466aa039a7b0ac144f395)
2023-01-10 19:08:26 +08:00
lane.wei f0908f2a63 FIX: repair: fix the state not correct issue after repair
Change-Id: Ic4aaeaeeee921294e0a5ab6d82517dc28f8822c8
2023-01-10 19:08:26 +08:00
qing.zhang 9fcb67e6c7 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
Arthur 646b259972 ENH: merge tree support layers to support layers
Will greately reduce repeated codes.

Change-Id: I506a97a907b5b393fe41e13ae53e2f7c9247c4c5
2023-01-10 19:08:26 +08:00
qing.zhang c4ec0ddae9 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
zhimin.zeng a6e3d63576 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
Arthur 38ce4b94f4 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
zhimin.zeng 4284d2ddb0 ENH: generate wipe tower when custom change gcode filament
Change-Id: Ia0c81453f09457a9d1d56fbcdce79112953c0208
2023-01-10 19:08:26 +08:00
salt.wei 030d97bf78 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
salt.wei 9f4a54d280 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
Arthur bb48983e91 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
Arthur f4519a45e9 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
Arthur e7e26b4b1a FIX: fix typos
Change-Id: Iba3727626d9102aa6c87d336ee1d49bbfbb7c479
(cherry picked from commit bf58651fffb94f9aeb4e85ff6c8a7b9feb3cab83)
2022-12-26 05:31:54 -05:00
Arthur 58aaa94fc7 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
Arthur 854eb0af95 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
Arthur 3e7b5e7657 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
Arthur 7596b3fed9 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
Arthur 29dbc77e91 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
MusangKing 6096de0020 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
MusangKing 18f794e4fa 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
Arthur Tang 9ca84ba948 FIX: sync with master on TreeSupport.hpp
Change-Id: I5a7eab9fcf1d46ac4a3748c66eb163fb5cc289da
2022-12-17 03:21:09 -05:00
Zhaofeng Li 73679f6f2e 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
Zhaofeng Li 0c83c2884b 3mf: Correctly include expat.h 2022-12-16 22:51:07 -05:00
Zhaofeng Li 9b1429144b GCodeProcessor: Add missing mutex include 2022-12-16 22:51:07 -05:00
Zhaofeng Li 99043bbb02 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
Zhaofeng Li f4f871c906 Use fstream from boost::nowide
Fixes build on Boost 1.79.0.
2022-12-16 22:51:07 -05:00
Arthur a7ff17d99c 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
miaoxin f84402bc0e 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
yifan.wu f438c2dfcb 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
lane.wei 13a1dc03c1 ENH: sync the different codes
especially for the translation files

Change-Id: I940578ff6e22b0939d42eeed2209bfeddb0eb191
2022-12-15 04:38:15 -05:00
chunmao.guo dcb105c605 FIX: update po/mo
Change-Id: Ib2234356f9a17eec4f26791327151dde64f4e4bb
2022-12-15 04:38:15 -05:00
liz.li 110d81f6f7 ENH: font preview
Change-Id: I8151036cedcba9c57183414a9d134741bb2166a5
Signed-off-by: Stone Li <stone.li@bambulab.com>
2022-12-15 04:38:15 -05:00
shuai.liu ccd333e248 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
lane.wei 545fdbf96b ENH: remove 'repair' from cli which is not supported
Change-Id: I9ef1ef2e9971643ce9367e5ebf4417eb5c599c80
2022-12-15 04:38:15 -05:00
yifan.wu 56e6ecaa95 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