Commit Graph

24 Commits

Author SHA1 Message Date
Bastien Nocera 0930aa76c7 Fix Slic3r::BoundingBox declaration
[120/471] Building CXX object src/libslic3r/CMakeFiles/libslic3r.dir/GCode/RetractWhenCrossingPerimeters.cpp.o
FAILED: src/libslic3r/CMakeFiles/libslic3r.dir/GCode/RetractWhenCrossingPerimeters.cpp.o
/run/ccache/bin/c++ -DBOOST_ATOMIC_NO_LIB -DBOOST_CHRONO_NO_LIB -DBOOST_DATE_TIME_NO_LIB -DBOOST_FILESYSTEM_NO_LIB -DBOOST_IOSTREAMS_NO_LIB -DBOOST_LOCALE_NO_LIB -DBOOST_LOG_NO_LIB -DBOOST_REGEX_NO_LIB -DBOOST_SYSTEM_NO_LIB -DBOOST_THREAD_NO_LIB -DHAVE_FREETYPE -DHAVE_OPENGL_EXT -DHAVE_XLIB -DLIBNEST2D_GEOMETRIES_libslic3r -DLIBNEST2D_OPTIMIZER_nlopt -DLIBNEST2D_STATIC -DLIBNEST2D_THREADING_tbb -DOCC_CONVERT_SIGNALS -DOPENVDB_OPENEXR_STATICLIB -DOPENVDB_STATICLIB -DSLIC3R_GUI -DTBB_USE_CAPTURED_EXCEPTION=0 -DUNICODE -DUSE_TBB -DWXINTL_NO_GETTEXT_MACRO -D_UNICODE -DwxNO_UNSAFE_WXSTRING_CONV -DwxUSE_UNICODE -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/run/build/BambuStudio/src -I/run/build/BambuStudio/build/src/platform -I/run/build/BambuStudio/src/libslic3r -I/run/build/BambuStudio/build/src/libslic3r -I/run/build/BambuStudio/deps/build/destdir/usr/local/include/opencascade -I/run/build/BambuStudio/src/libnest2d/include -I/run/build/BambuStudio/src/miniz -I/run/build/BambuStudio/src/glu-libtess/include -I/run/build/BambuStudio/src/clipper2/Clipper2Lib/include -isystem /run/build/BambuStudio/src/eigen -isystem /run/build/BambuStudio/src/libigl -isystem /run/build/BambuStudio/deps/build/destdir/usr/local/include -isystem /run/build/BambuStudio/deps/build/destdir/usr/local/include/boost-1_78 -isystem /run/build/BambuStudio/deps/build/destdir/usr/local/include/OpenEXR -O2 -pipe -g -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -fext-numeric-literals -Wall -Wno-reorder -O3 -DNDEBUG -std=gnu++17 -fPIC -fsigned-char -Werror=return-type -Wno-ignored-attributes -Wno-unknown-pragmas -DOPENVDB_ABI_VERSION_NUMBER=8 -MD -MT src/libslic3r/CMakeFiles/libslic3r.dir/GCode/RetractWhenCrossingPerimeters.cpp.o -MF src/libslic3r/CMakeFiles/libslic3r.dir/GCode/RetractWhenCrossingPerimeters.cpp.o.d -o src/libslic3r/CMakeFiles/libslic3r.dir/GCode/RetractWhenCrossingPerimeters.cpp.o -c /run/build/BambuStudio/src/libslic3r/GCode/RetractWhenCrossingPerimeters.cpp
In file included from /run/build/BambuStudio/src/libslic3r/GCode/RetractWhenCrossingPerimeters.cpp:2:
/run/build/BambuStudio/src/libslic3r/GCode/../Layer.hpp:153:29: error: field ‘loverhangs_bbox’ has incomplete type ‘Slic3r::BoundingBox’
  153 |     BoundingBox             loverhangs_bbox;
      |                             ^~~~~~~~~~~~~~~
In file included from /run/build/BambuStudio/src/libslic3r/GCode/../ExPolygon.hpp:4,
                 from /run/build/BambuStudio/src/libslic3r/GCode/../ClipperUtils.hpp:7,
                 from /run/build/BambuStudio/src/libslic3r/GCode/RetractWhenCrossingPerimeters.cpp:1:
/run/build/BambuStudio/src/libslic3r/GCode/../Point.hpp:17:7: note: forward declaration of ‘class Slic3r::BoundingBox’
   17 | class BoundingBox;
      |       ^~~~~~~~~~~
2023-12-15 09:58:21 +08:00
arthur 76f876a3c6 ENH: improve tree support
1. add a hook inside tree branches for improved strength
2. fix the issue that interface may fly as a mess (delete the logic
  where gap nodes can skip dropping down)
3. fix the issue that base nodes may fly as a mess (smoothing should
  skip polygon nodes, see Jira:STUDIO-4403)

Change-Id: Ie9f2039813c2ca3127ed8913304cc455fec8e7ee
(cherry picked from commit 83cef5f91d49ff3d275a89ec3df8b5f0fd573f8c)
2023-11-09 10:09:10 +08:00
Arthur ad9fa81b01 ENH: add a new support style "Tree Organic"
Add a new suport style "Tree Organic" from Prusa, as organic support is
faster and seems more strong in some cases. Thanks to Prusa.

Feature detection including sharp tail, small overhang, long cantilever,
are still kept.

Known issue: first layer support path may go outside build plate.

Jira: STUDIO-2358
Github: #2420

Change-Id: I4cec149bf4fa9eb733ae720ac1a7f65098e3b951
(cherry picked from commit d977bc5d3b4609f4fec0aa68152a33cacf184c4a)
2023-11-01 09:33:21 +08:00
Arthur 04bfe7e405 ENH: ease removal of tree supports
Previously tree supports are harder to remove than normal
supports. We learn from normal supports and improve the gap between
object and supports.

Jira: STUDIO-3530

Change-Id: I229a7b869b334bdf4c5aba96c9450213b83457f2
2023-07-07 17:52:43 +08:00
salt.wei 3a1e112d49 ENH: separate the simplifying of infill and wall
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
2023-07-07 17:25:51 +08:00
qing.zhang 1d0476fa44 ENH: optimize the efficiency of auto lift
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I9c1679cc80ae23ff066df6e2fe98b5530a9d2288
2023-07-07 17:25:51 +08:00
wintergua 0440e288f7 ENH: move the volumes grouping process to an indivial function
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)
2023-04-17 15:39:02 +08:00
Arthur 15ba872d1c ENH: only draw infill in normal nodes of hybrid support
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)
2023-04-17 15:39:02 +08:00
salt.wei 61b271f379 ENH: fix for STUDIO-881
Thanks prusa

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I2e1c1088d29dd5401016ca41d3ed6dec87e0acd1
2023-04-17 15:39:02 +08:00
salt.wei 1278cbf461 ENH: remove tbb simplify in gcode export
Useless after importing AABB tree.

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Iaec9bef4a2a6bc4d097c6fd75720cb69d9cf314f
2023-04-17 15:39:02 +08:00
salt.wei 4c4b274408 ENH: speed gcode export up again
thanks prusa

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ifbe5e2ea55b16a7fe281b54ca16c37695c15f5b1
2023-04-17 15:39:02 +08:00
salt.wei 8669291aad ENH: optimize speed of gcode export
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ic641352623f26c7241ae5720ad1baa202a1b00c7
2023-04-17 15:39:02 +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
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
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
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 8cfee69015 FIX: undef SUPPORT_TREE_DEBUG_TO_SVG and tree support enhance
1. undef SUPPORT_TREE_DEBUG_TO_SVG
2. change default tree branch angle to 45 degrees
3. encourage tree neighbors merge faster
4. draw more loops at the top of trees for stronger support

Change-Id: I2edf6a2dddb3b6165c2519ee15e9a7ffaba9de94
(cherry picked from commit 3a9723b2e88a033b3298cd68daf9400265e984a1)
2022-12-15 04:38:15 -05:00
Arthur 95ed039879 ENH: simplify support options and fix a tree sup bug
1. add default support base pattern (lightning for tree support,
   rectilinear for normal)
2. change default support interface pattern to "Default" (concentric for
   absoluble material, rectilinear for others)
3. delete tree_support_with_infill, replace no-infill optio with "None" infill type
4. delete HAS_LIGHTNING_INFILL macro (lightning is impossible to be
   removed now)
5. fix the issue that tree support base may grow above interface by
   adding virtual nodes (distance_to_top<0).

Change-Id: I5affa44e1f72d0dc54052927f2b315de83702870
(cherry picked from commit a2b41b1dfd9227e68ac6d971312133ec3382baa7)
2022-12-15 04:38:15 -05:00
lane.wei c3abc64b61 ENH: slicing: add cache data load/export for slicing
Change-Id: I88b7c79b6f79ec6bed0f829316b67310cac99b44
(cherry picked from commit 67c1d2e8dd459cc4450ce580632f01e25db038ac)
2022-12-15 04:38:15 -05:00
xiang.zeng 9cf95696a4 NEW: enable lightning infill pattern for model and tree support
Change-Id: I6e2cbfdd30f8d222f88301ed0c8cc89e21cfdc24
(cherry picked from commit ddfee7c069cfc42685be509d48b8c609e1dc0cfc)
2022-10-20 19:34:37 +08:00
Arthur abddb1edc3 NEW: add support_critical_regions_only for tree support
When this option enabled, only generate supports for sharp tail, cantilever,
thin pillar (not well supported). So holes are safe from unnessary supports.

Currently only works for tree supports, will need to copied to normal
supports if it works fine.

Change-Id: I5eb86484a5b503149e3bfdee8ce73f76a0a849e4
2022-09-29 11:16:43 +08:00
salt.wei d4854c0df7 ENH: fix empty infill layers
This is fix for github issue #216 that
sometimes the infill layer is empty.

Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ie3be08b75506e48f5ae9dd6aae2ae729ba666e01
2022-09-15 16:03:53 +08:00
lane.wei e9e4d75877 Update the codes to 01.01.00.10 for the formal release
1. first formal version of macos
2. add the bambu networking plugin install logic
3. auto compute the wipe volume when filament change
4. add the logic of wiping into support
5. refine the GUI layout and icons, improve the gui apperance in lots of
   small places
6. serveral improve to support
7. support AMS auto-mapping
8. disable lots of unstable features: such as params table, media file download, HMS
9. fix serveral kinds of bugs
10. update the document of building
11. ...
2022-07-22 20:35:34 +08:00
lane.wei 1555904bef Add the full source of BambuStudio
using version 1.0.10
2022-07-15 23:42:08 +08:00