pa calibration for 3rd party printer and retraction calibration
Change-Id: Ifeb12807cdce366c9d265a0490b320224dfb23fe
(cherry picked from commit 732adceeef43c9c957468ab490f0e3ee20f3173b)
Enable label object when does not print with multi
filament and object number is smaller than 65
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Id670c6a5258f266076bc0a52c50ab5a28386f242
(cherry picked from commit 40248347908788ce6303ed255826011127d8eaa3)
tbb parallelization is used to improved the efficiency of for_each_volume and for_each_polygon loop
JIRA ID: STUDIO-2866
Change-Id: Id5b3a536e3162b148417cbee803bcede3b62a651
(cherry picked from commit 15a6f7ef2f575eaa4b4694ad357d881b39b82f5b)
If support_on_buildplate_only is enabled, and a node will fall into the object,
this node should not be a normal node.
Jira: STUDIO-3047
Change-Id: I65dc6d69d28729732907111c3b34b4d32edff806
(cherry picked from commit d04dc35d45c171e20899cb391d3b192fa123c10e)
This can avoid to simplify wall twice when
the only invalid step is infill.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ie5a9ccc10d5331c29c716aece08cdb195352cfe3
Optimize support top interface fill direction for bridge.
The direction is set orthogonal to the biggest bridges's infill
direction.
Currently, it only works when thick bridge is off.
Signed-off-by: yifan.wu <yifan.wu@bambulab.com>
Change-Id: I7bd894ae6f5ae24bc597c609e27a16b6d45a9797
Small overhang diameter threshold is reduced,
and use bounding box size instead of area for final decision.
Github: issue 1681
Change-Id: Iabbb49dfc47345bb609214749104c808608c4d65
Previously grid infill may be cut, so the strength on one direction is too weak. Now we switch the order at neighboring layers, so the strength of both directions are good enough.
Change-Id: I0ba768eeee34ce430e43ea57d8f06c209d469d39
These two settings is necessary for some
specific user case.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I9d70679932ac90c34296393d0e8bb8aebd8ebe48
The print z was wrong previously when there is a wipe tower, or there
is an object with floating parts.
Jira: STUDIO-2719
udesk: https://bblcs.s5.udesk.cn/entry/ticket/show/2258732
Change-Id: Ifa070aeb548d692549cf88df0d405ecdf0160c80
(cherry picked from commit be3097d8044ce9e0079ebf7070b15c7aad7aff0e)
Remove all spaces and special symbols like \ / : * ? " < > | in the plate name,allow xml special symbols such as & '
Change-Id: I2b391d13be709af0e47f1573c0e225e63591fd23
(cherry picked from commit 135c97e9916c852a8625d9d9bf0a4dda051b6e2b)
1. Previously if there are multiple sharp tails in a layer, some will be
missed. To fix this, we should not skip if the current layer is already
detected as sharp tails.
2. Do not mistakenly detect sharp horns as sharp tails by only detecting
the overhang areas larger than half of the extrusion line width.
Github: #1578
Jira: STUDIO-2659
Change-Id: If7ba5c9ae547d3051551aa6fa34eb6214d01a46d
CGAL to 5.4
TBB to 2021.5
OpenVDB to 8.2
Change-Id: I08992fce104e6f56001643c3c5dbf6c3f59ffc3d
(cherry picked from commit 1571f176fc37dda1c3e889776e13fa49bba4ae42)
Multi-material arranging is more compact by redefining same_color_with_previous_items:
if the colors of previous items are a subset of current object's colors, or vice versa.
Either of the two cases will not increase the total number of colors of the plate.
Jira: STUDIO-2871
Change-Id: I7cbe0835408d306084490b4849d03bb9fb617d2b
(cherry picked from commit d58702e9c0db54bcd123739298ce6dc03f5ca1a5)
Little overlap of support lines from two objects are allowed.
Change-Id: I738874ee71fc9787abbef764dbad762c76bc5731
(cherry picked from commit a5f7a53dc818d598523149d675fd0310f5d22f86)
This is caused by the inverse-order polgyons after mirroring. Adding
a union_ before offset_ex fixes this bug.
Github: #1621
Jira: 2738
Change-Id: I885a3ca6af4e5fadb2158d913cf67525bfffa91e
(cherry picked from commit 4ea95d89e7ec058ac21218e1839cfe16b486893a)
referenced OrcaSlicer code and support for Chinese textures,chinese xml,limit plate_name length,Code decoupling,wxColour use Local Variables
Change-Id: I6434b90efb2f90235527c7dfb3a7ed516ac2cf4b
(cherry picked from commit 0ecfefb0e1cfccbe73b0fcc530e04e6405ecf68a)
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)