Previously we set bottom_z = 0 when soluble_interface is true and generate
bottom interfaces for tree support. This may cause tree supports unstable.
Now all tree supports will have no bottom interfaces.
jira: STUDIO-10505
Change-Id: I3c74f98fc171d28ff24ace3fd594ef5c925ff34d
1. when some area is need_extra_wall, the whole layer has double walls.
2. set circles above soluble interface with double walls
jira: STUDIO-10505
Change-Id: I5846c712a36e2e5bfc5018013b44e2712229b6ad
(cherry picked from commit 5675d9c14e57c4615249ec665603dd662a9a7ee3)
1. keep growing when collison do not contain the circle of the node.
2. when contact_node is nullptr, cannot assign it a type.
jira: none
Change-Id: I6168a3a19ceec087e93c919625c0c3b654fc7d7e
still need to check if layers' bottom_z is under initial_layer_height since z_heights[0] is fixed to it.
jira: STUDIO-10282
Change-Id: Ia2d0565039389c8eb7edbb6b5403996b5ee412c2
Rectilinear Interlaced interface pattern not working for normal support.
jira: STUDIO-8847
github: #5307
Change-Id: Ia17c9a0f8f20e3ac7a98ce13b1ea5065c200ac3a
1. Wrong generation of cluster when there are multiple overlapping areas in one layer.
2. set interface_bottom_spacing = interface(_top)_spacing.
jira: STUDIO-10241, STUDIO-10506, STUDIO-10507
Change-Id: Ic7a0d61e43c5cd8d8094cb75ac257f83bc2952b6
Use clipper2 and remove colinear points.
Later on we can try to set lightning infill as the default infill pattern of tree support.
jira: none
Change-Id: Id545b15d778071cec6e56d212ab68db1ab90ad2a
1. change type of transition layers below interface to erSupportTransition,
2. fix the number of transition layer above tree branches,
3. change the default setting of support_interface_pattern to smipRectilinearInterlaced,
4. change the default support_style to HybridTree when interface is soluble
5. FIX: conflict between xy_expansion && split_hole
jira: STUDIO-10239, STUDIO-10314, STUDIO-10319
Change-Id: I3eb392ccd005acedb001aa862d5bf3eb104c5293
1. only expand 2mm for BigFlat/ThinPlate overhangs, unnecessary for tree node overhangs without big areas.
2. avoid the situation that some overhangs are extended to fall on models when smoothing.
jira: STUDIO-10177
Change-Id: Icec0bb59627bb85332ad1435cbe29a07f57f922e
must be double walls between a double wall and another double wall, or it's easy to break with low strength filament
Change-Id: I2bb3a3b77e7ea964d2e94aaf7407449b86df84b2
ENH: [tree support] use 2 walls if necessary
Add impact_strength_z for filaments. Use 2 walls more for weaker filaments.
jira: none
Change-Id: I0c7cfcff31f1026d57630283775e7aeb6c311146
ENH: [tree support] ease removal of large area supports
Use xy_expansion to expand overhangs for better removal of large area supports
jira: none
Change-Id: Ief59a811204478e0e0a63ae10a9d63f24512fcfb
ENH: [tree support]shrink polygon support
jira: none
Change-Id: I621aa30191d235329156015ef98d260c5b1d9ca8
FIX: fix organic tree, remove ePolygon support more easily
1. add protection to organic tree when xy_distance is set to 0.
2. add detailed classification of nodes(BigFlat && Thinplate && SharpTail && Cantilever && Normal)
3. modify the corresponding generation logic when drawing ePolygon node circles
Change-Id: I5c52522b9adad832c9542a400ebf4e1e27a61754
FIX: dont set overhang with large areas to 'SharpTail'
Change-Id: Ib118abc54edcb0024be5b0d5d6a51b4bd7b5cb47
FIX: merge support interfaces into a continuous large one
jira: STUDIO-8611
github: #5132
Change-Id: I12ee4a9f88a78304a98f354bfaa92e2a05f19ec2
ENH: dont expand sharp tails
Also add interface below sharp tails when using soluble supports.
Change-Id: Ibf3af1fe466dd7f02f00357c49ad639249efab16
FIX:split holes to help remove
when one overhang area contains holes, split it into 4 pieces with one hole's center. when choosing this center hole, consider if it's collided in lower layers, then choose the bigger hole.
new: add xy_expansion to gap_width to balance the offset later in draw_circles
Change-Id: Ib2452a5f5afdc56e219e69caf8c373d9d9ce8cbf
FIX: sync printer preset when sync extruder info
jira: none
Change-Id: I0b856d38f75816036e428844aabe6fb4c58471f2
FIX: wall count=1 not working
Change-Id: Ib9c174b49f217cc76b42c6ecdb8acdec4f7051b7
ENH: merge circle nodes into polygon overhangs nearby
AND set the number of support_roof_layers below interface to 2, which developing the interface quality.
Change-Id: I3675d37a12321317672a096dc63a9e51e2b1e984
FIX: smooth, floor embedding, delete useless codes
Change-Id: I3a5e2634e35e2ed1c310e89fd22b1d75d9cde682
FIX: remove include "Brim.cpp"
Change-Id: Id99ff4495f6d0f78d8a865d14d997a5cd9aa0791
FIX: fix sharptail detection in organic tree
Change-Id: Ic1b9a0ebf595c814f7d58356270b2a740980c3b4
(cherry picked from commit f9bbc160ae44f3126ae10c4b964fa730d7deb03f)
Unnecessary warning messages are called when slicing reliefs, because some small overhangs with only one gap layer are set as SHARPTAIL.
jira: none
Change-Id: I9abcebbcfa41d75e32f86efa64ac3bb8848247d7
1. fix the issue that setting top z distance=0 not working
2. remove too small extrusions of tree support
jira: STUDIO-8578
Change-Id: I8c3face9d6a756698a6fab876fdb1acc0686647c
/run/build/BambuStudio/src/libslic3r/Support/SupportParameters.hpp: In constructor ‘Slic3r::SupportParameters::SupportParameters(const Slic3r::PrintObject&)’:
/run/build/BambuStudio/src/libslic3r/Support/SupportParameters.hpp:172:39: error: ‘warning’ was not declared in this scope
172 | BOOST_LOG_TRIVIAL(warning) << "tree support default to organic support";
| ^~~~~~~
/run/build/BambuStudio/src/libslic3r/Support/SupportParameters.hpp:172:21: error: ‘BOOST_LOG_TRIVIAL’ was not declared in this scope
172 | BOOST_LOG_TRIVIAL(warning) << "tree support default to organic support";
| ^~~~~~~~~~~~~~~~~
/run/build/BambuStudio/src/libslic3r/Support/SupportParameters.hpp:175:39: error: ‘warning’ was not declared in this scope
175 | BOOST_LOG_TRIVIAL(warning) << "tree support default to hybrid tree due to adaptive layer height";
| ^~~~~~~
/run/build/BambuStudio/src/libslic3r/Support/SupportParameters.hpp:175:21: error: ‘BOOST_LOG_TRIVIAL’ was not declared in this scope
175 | BOOST_LOG_TRIVIAL(warning) << "tree support default to hybrid tree due to adaptive layer height";
| ^~~~~~~~~~~~~~~~~
1. speedup organic tree support by using parallel for intersection of bed area
jira: STUDIO-8451
2. add extra wall for hybrid tree support's tall branches
3. disable circle fitting for tree support. This feature produces inconsistent
circles for tree supports.
4. expose the option tree_support_branch_diameter_angle. Tree supports'
strength can be improved by increasing this value.
Change-Id: If3688ca895df98a77f6ca538077daf8fe94e53f1
src/libslic3r/Support/TreeSupport.cpp:3204:41: error: ‘format’ was not declared in this scope; did you mean ‘boost::format’?
3204 | BOOST_LOG_TRIVIAL(trace) << format("plan_layer_heights0 (%.2f,%.2f)->(%.2f,%.2f): ", z1, h1, z2, h2);
| ^~~~~~
| boost::format
Use support_islands for all types of suports to avoid gaps between
support regions of the first layer.
jira: STUDIO-8443
Change-Id: Ic65b47640d8352d406bb11eeff7390532631712b