sometimes the root mesh is loaded after the shared mesh
we need to treat the shared mesh loaded at first as the root mesh
Change-Id: Ibc6f6a07c5069f3dc9471a129c2f434b48f486e9
In normal support, contact_polygons were slightly larger than allowed region, so sampling to the wrong points, which were then removed when "on buildplate only" was turned on.
Jira: STUDIO-2742
Github: issue 1352
Change-Id: I2f131bac48eb30997f37818f312da3386516a5ea
(cherry picked from commit ed25a89c0e8c5358ea803344fbce482be172d2ee)
This reverts part of the commit d4490af, because redo slicing is unacceptable after changing support params.
Known issue:
Bottom surface type depends on support parmas, that's why we add the steps dependency of slicing against support params in commit d4490af.
With this commit, bottom surface type may not be right with the initial params, and the user can't do anything to make it better.
Change-Id: Iff079c4d1205b8a07468be6396990fe87634a3fe
(cherry picked from commit c663a844629c07dd40973832df4e4d1e1827235a)
1. Instead of smoothing top-down, now we smooth tree branches bottom-up, and do not stop at merged nodes.
2. Fix a bug where some nodes don't have child. This is critical for bottom-up smoothing.
Change-Id: Iac0fecd81dac541ca390bcf5cbdfe7fd66cfd3a2
(cherry picked from commit 536a8a4f0ef76fa0358f4b4b181c4c7e7fff8bc7)
We increase the smooth iterations from 1 to 50.
Change-Id: Iba883fd67d7a9a71c92b364dcc9b76e00fc45820
(cherry picked from commit 945fba20a5629148bfd8cee47f492d42c50f9824)
Tree Strong is too similar to Tree Slim and people don't like it.
Jira: STUDIO-2660
Github: #1579
Change-Id: I52d7e8e674f0fc332e4ab2813261ffbc4b4cfb7a
(cherry picked from commit 9eb209b4c1737d2f10b9b8bd78c9f876f3d32bce)
Previously we assume the NFP of exclude regions are rectangle, which was
not always right. Now we calculate the NFP and find a best new position
to shift.
Change-Id: I02c075603cf71dd3c9146d7ac7a6706c0f850669
(cherry picked from commit 713ebd666c90d5dcfaf89914c37d211e9a470e99)
tan(90\degrees) is too large and will make detect_overhangs very slow.
Jira: STUDIO-2620
Change-Id: I55901a6bc1b56216549f66e1a7e77c0da680997b
(cherry picked from commit e58cc8a4665808580e84107f54661447000d64f3)
1 limit the range of setting
2 avoid too dense points when fuzzy skin enabled
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I6691fd03d2aa960b055b68100dfb338b640cb4af
Use a more accurate way to estimate wipe tower:
1. read wipe configure from front-end (the positions may be different at
different plates).
2. when depth is unavailable, use all materials to estimate depth (the
estimated wipe tower may be larger than the actual generated one).
Change-Id: I42ffd03d9817b57f5023a6820cda0032509c6fe5
(cherry picked from commit 77ba9757023afb9160c996eeea6ead8a27b50ce4)
grouping of volumes in the slicing process, which will be used by the brim generation processes,
is moved to an indivial function from the fixed_slicing_errors function.
Change-Id: I241081823a671829d8cc4e923da5f6f22776c410
(cherry picked from commit 18a7b541ee48f3c01319d5835c05610c3d8ca0ae)
Cantilever detection should be done layer by layer, instead of using
merged_poly of clusters.
Jira: STUDIO-2198
Change-Id: Ifea017fc4c13425a944ee80f7dedb603a8e14cc2
(cherry picked from commit 0803a439a458ffeb9c6d91e90344a5b78794a6bd)
If an object has only one empty layer, error will encount
during grouping volumes
studio-2602
Change-Id: I25871b8cc8e4772c347c615db346875a9658db71
(cherry picked from commit 78b7e7706f6c8e7e86f4bd2e8daab7036499ced2)
1. cache the first layer group cache data for brim
2. fix some crash under debug mode when app exits
Change-Id: I81d716564af414353e9dfeed42e5f4eef08b2d6f
(cherry picked from commit a6ecdaed6f63f1c5c41fd343f72165fe27fda9d3)
1. Only draw infill in normal nodes of hybrid support.
Previously when hybrid support was selected, all nodes would have
infill including the circle nodes which don't need infill. Now we draw
infill only when there are normal nodes.
2. Move remove_bridge after small overhang removal because the trimmed
bridge may be detected as small overhangs.
3. Only split circle nodes in draw_circles to prevent floating circles.
4. Fix the issue where tree support infills may not be aligned,
which is caused by the changing spacing of filler.
5. Fix a bug where lightning infill in tree support may crash.
Note: it is still not prepared to set lightning infill as default,
as for some models the generation time of lightning infill is still
too long.
Change-Id: I556e5097041d09afae1e2957d4dc9914d4610149
(cherry picked from commit 4c0849a81b60cde0c3b8ca54f03f63ea7c62dcd9)
1. Fix sharp tail detection in normal support.
The not operator in front of overlaps was missing.
2. Fix bridge removal.
After adopting Prusa's smart bridge direction detection, the bridge
angle may be pi, so our previous method (comparing angle to 0 and pi/2)
was not right. Now we simply check if the bridge direction normal vector
is aligned to x-axis or y-axis.
Change-Id: I4e1fd937e432aca97cdd374ba66a0d869794126e
(cherry picked from commit c0d82003a5e4c44345219294072c54051fc5711a)
1. improve sharp detection for small regions.
When the region is around 1 extrsion width, previous method may miss some sharp tails.
Now we reduce the width threshold to 0.1*extrusion_width for sharp
tails.
When checking "nothing below", need to expand the poly a little. Example:
benchy.
2. improve is_support_necessary.
Only popup warning for sharp tail and large cantilever (longer than 6mm).
Jira: STUDIO-2567
Change-Id: I5e977e7766b35409891d1b41e36278e3f07fa372
(cherry picked from commit c9d8a7c1c3bbd4367c7fc44408c67e5c534167f4)
Also fix a crash bug due to setStarted and setDone.
Change-Id: Ib9b069fe4b7e5d1fc359f48e44b4032dd8249428
(cherry picked from commit 9ef190ed3ecd66d12617ad96e927ff34251395a2)
Allow user to set top/Bottom_z_distance under variable layer height.
Fix the bug STUDIO-2454
Change-Id: I026098a4df7cfa01f87a6802e2c787fcfd6df3ee
(cherry picked from commit 6e933acec7cde705f176937038ce307bc276cf5f)
Re-open this option as requested by github users.
Fix Jira STUDIO-2083; Github issue-1102
Change-Id: Ifb01a5153e7dc105bf2d29a98e64dda3a9d8e6d4
(cherry picked from commit e42914b2448c2693d19d40b0d84e64567b766f37)
1. add gcode conflict checker
2. add a new command line option: --no_check. When it's provided, gcode
conflict check is skipped.
Change-Id: I6feafca8c5fa6c3c5eae1f0e541ce59d2f03dedf
(cherry picked from commit 5a39afb64e826a960d9673dcada89d02d62b3911)
1. old 3mf judge logic improvement
2. some 3mf doesn't include gcode and geometry, treat it as empty
project
Change-Id: I9b3f3d04e32ae6ff273ec1ae04c04ac6329487f0
the processes are parallized via tbb
the patch 12311 ENH: remove trim_overlap should be used
Change-Id: I226dc171daadebd81b8d3ae013b08c71b91fb392
(cherry picked from commit eaa2e7997a59f43175d5af430269127471e40cbb)
Similar to tree support, make as many steps parallel as possible.
Jira: STUDIO-2525
Change-Id: Iee310bbf6911d8d3e4262ee8ed6bd133d09670a9
(cherry picked from commit 3798f1a3ecb85bbfb81925b3702fb4384e18994d)
1. tree support style default to Tree Hybrid
2. fix an assert bug with MedialAxis::build:
assert(polyline.width.size() == polyline.points.size() * 2 - 2)
This is caused by the incorrect clear function of ThickPolyline.
Change-Id: I8d6507ad366d253493e2749e0cbac8d3d837ee8a
(cherry picked from commit bd31e962c11e82005944bef40b17471075e79898)
1. Parallelize the majority of overhang detection, leaving only a small
part of sharp tail detection as sequential. This strategy makes
is_support_necessary 10 times faster.
2. Use the overlaps function to detect overlapping, instead of using
intersection().empty()
3. Control the max recursion depth to prevent crashing due to too deep
recursion.
Jira: STUDIO-2445, STUDIO-2458
Change-Id: I35283da3e4a22d7afe251b804ce30b90a9d754df
(cherry picked from commit 1a6fedd1a0c82906f1807234ea1b816247ca6fd7)
Fix for floating layer under multi-color
printing while z_hop is zero.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I8cc96bd18020cac8424fe4c3e62fb87da118b826
This is fix for STUDIO-2079 that slicer may hang
when generated archimedean chords pattern lines.
Thanks prusa.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I923c1ef48f093b2ab9576cb04beb4787c903ca00
offset may give empty results.
Jira: STUDIO-2452
Change-Id: I4da9689dc3e22afcb2340ce0f9956237e4aab434
(cherry picked from commit 3f33979a79c720fcaddb5b850ec278b3deaf2417)
Don't know why this file is missing when cherry-pick...
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Iddfba50ef885fa08078bb9723a6ae2d5d5d0289d
1. add top view thumbnail for each plate
2. add picking thumbnails for each plate
3. save model object id for picking
Change-Id: I1d7f6ade22726ff12c282cb12e4a78e6b444a070
"std::cout << float number" is unsafe which
may use , as decimal point when switch language.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I8a379117168eab0111dc93987b1d6130a741ade6
1. In small overhang detection, some sharp tail cases are missed because
the max_layer was not compared.
2. In normal support, previously the lower layer's expolys were not right,
should only keep the ones that won't vanish when extruding.
Jira: STUDIO-1977, STUDIO-2200
Change-Id: Ia09ff1ab4870b7e3c199a827932536867644c76c
(cherry picked from commit e3ba3a3114821e951d6eb00b4c95e6e63ffe00d4)
Allow user to disable support independent layer height when prime tower closed.
Fix wrong WIKI link jumping.
JIRA: STUDIO-1685
JIRA: STUDIO-2308
Change-Id: I894fdd37b707c53e17fd4ad7d1518897f307e557
(cherry picked from commit e10d31e123306a0893087ea03693303768a2daf6)
1) the function is not released to public
Change-Id: Ia1b5a31db3b1b1864997b57fe875c01f3ea9fb08
(cherry picked from commit a816cc313659f87978e1275b98f43172cb416a59)
The tooltip of brim type contain messages of inner brim,
which is not enabled in the current version
Change-Id: I155a16cc4331cb0b5b54d29f6be1de6c82819e0c
(cherry picked from commit 1fe773438e1697b8a0b9817a885b13e7e4fae097)
If the three points are in a straight line, let the middle point coincide with the first point.
Change-Id: I32e5a1e1f5f217f9db9766d698590e758f334ca1
(cherry picked from commit d8771943bddf80e23dab5e9fa841acb7e24e873d)
This reverts commit 9e026a289542545d5f63cd72fb9416be1521ecc2.
This Revert "ENH: STUDIO-2221 adjust cooling time for each layer"
This reverts commit eb1fa5975eb7dc3ff832539e9bec5a04515ff2f9.
Change-Id: Iba8d0a1492b81922aad0d64df81c74cff5eabbb3
JIRA: studio-2274
Now support enforcer on vertical faces function is invalid. Previous
enhancement of support enforcer on vertical faces brounght more conficts
than benefits.
Change-Id: Icbb0df3995d8ac8b3c22dda1bd4615da78af963b
(cherry picked from commit bca003cbc35791838484afe4032276be8fa91db0)
This placeholder will be used by start gcode
to avoid calibrate support filament which is
the first filament.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I7c8d206346bf3d3a5325c06abb24c58834f7f505
1. use tree slim's merge strategy in hybrid support
2. do not break bridge in hybrid support
3. fix "support on buildplate only" not working. The cause is: with
independent support layer height, contact_nodes are not synced with
object layers, so the previous way of accessing contact nodes in
unsupported_branch_leaves no longer works. To fix that, we add
obj_layer_nr.
Jira: STUDIO-2250
Change-Id: Idfc9b0bb10425de6414f7eae2cf5467cedf1d669
(cherry picked from commit 8780d5a7e92e298cbbccbb3bd1825197d387a340)
sub filament change time from layer time to adjust
layer speed
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I2f1c41a36946765b74ecad58ce102abe98e00dac
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)
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
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)
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)
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)
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)
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.
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)
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
Support layers should be released in is_support_necessary.
Jira: STUDIO-2120
Change-Id: Id1c6fa2d8635e55be745095408dfbac38a25efa6
(cherry picked from commit f911e8d084c4fa273f8c9211112fa2f83515cfb1)
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
Merge numerically very close Z values when calculate
total layer number
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I4e60ca69fe5b06b66283d6a763d0b231c3d11b5a
Seperate travel time from extrusion role time and
show it seperately.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Icf0aaf63c4d4ed7d1407037e5ae051d61938f973
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)
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
This reverts commit 1e95803df3733021e80241ecf7b88976708f0cf7.
Reason for revert: some model test not good, need to update curve function
Change-Id: I6afd6115d21198f60453d4f507905b6684a65cff
Use tree support to detect if there are sharp tails and so on.
Jira: STUDIO-1898
Change-Id: I148e14ca4024849875133a646a8fdd36c265b2fb
(cherry picked from commit bc74015d45e96e409d34d611876e3a24e289e029)
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
Tree support didn't fill the first layer when the tree is too short
udesk: 0284
Change-Id: I2702b26733e7360445e19847abb48f75f173da4e
(cherry picked from commit e317f9e19fbbfe21efb495e23a8ff78661bfee79)
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
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
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)
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
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)
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
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
allow generate wipe tower when print ByObject if there is only one object
Change-Id: I199e9cab7bd7c963edf58e829c663bb91c12f4f8
(cherry picked from commit 7153c30800022f3afb9811c67f88ba28c9b25d20)
even though there is only one color, the wipe tower is still exist
Change-Id: I5c68a4ca7239cfc74aba452a6588d74f6d622f47
(cherry picked from commit 032c2e6718c65aa4c5b18eecd0ccce27f3f489bb)
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)
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
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)
auto select grid infill for tree hybrid, and set default wall count to
1.
Change-Id: Icbecd540d06f353da2e63533f8f7cf7d7f20fbdb
(cherry picked from commit 246335cc195c88a4101dddd1eeda42d9ca16589f)
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)
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)
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)
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)
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
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)
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)
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
Add large cost when bed temp is greater than object's vitrify temp
STUDIO-1623
Change-Id: Ib73d312fce7b80999f11d1f6c172a9c1575937b4
(cherry picked from commit aed896d44776c9cd2fd55202420a3811bc117896)
[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)
[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)
As title
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I82a17cd8f82a87a898f933b5437836667136d834
(cherry picked from commit aedfffc4565113f186a55efa0e89366880a22fc6)
This is useful and need to be tuned
for some special 3-rd party filament.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I0527484d47c1bb9c89d5cc70bbaa34b5078b7e43
when loading third party 3mf, sometimes there is no object name
just named these object to 'Object_index'
Change-Id: Ie73f49ffa79e996114b7a2095de4de7d41bfec24