Fix Slic3r::Polyline and Slic3r::MultiPoint declarations

[61/471] Building CXX object src/libslic3r/CMakeFiles/libslic3r.dir/ArcFitter.cpp.o
FAILED: src/libslic3r/CMakeFiles/libslic3r.dir/ArcFitter.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/ArcFitter.cpp.o -MF src/libslic3r/CMakeFiles/libslic3r.dir/ArcFitter.cpp.o.d -o src/libslic3r/CMakeFiles/libslic3r.dir/ArcFitter.cpp.o -c /run/build/BambuStudio/src/libslic3r/ArcFitter.cpp
/run/build/BambuStudio/src/libslic3r/ArcFitter.cpp: In static member function ‘static void Slic3r::ArcFitter::do_arc_fitting(const Slic3r::Points&, std::vector<Slic3r::PathFittingData>&, double)’:
/run/build/BambuStudio/src/libslic3r/ArcFitter.cpp:51:99: error: invalid use of incomplete type ‘class Slic3r::Polyline’
   51 |         can_fit = ArcSegment::try_create_arc(current_segment, target_arc, Polyline(current_segment).length(),
      |                                                                                                   ^
In file included from /run/build/BambuStudio/src/libslic3r/Circle.hpp:5,
                 from /run/build/BambuStudio/src/libslic3r/ArcFitter.hpp:4,
                 from /run/build/BambuStudio/src/libslic3r/ArcFitter.cpp:1:
/run/build/BambuStudio/src/libslic3r/Line.hpp:15:7: note: forward declaration of ‘class Slic3r::Polyline’
   15 | class Polyline;
      |       ^~~~~~~~
/run/build/BambuStudio/src/libslic3r/ArcFitter.cpp: In static member function ‘static void Slic3r::ArcFitter::do_arc_fitting_and_simplify(Slic3r::Points&, std::vector<Slic3r::PathFittingData>&, double)’:
/run/build/BambuStudio/src/libslic3r/ArcFitter.cpp:108:30: error: incomplete type ‘Slic3r::MultiPoint’ used in nested name specifier
  108 |         points = MultiPoint::_douglas_peucker(points, tolerance);
      |                              ^~~~~~~~~~~~~~~~
/run/build/BambuStudio/src/libslic3r/ArcFitter.cpp:130:48: error: incomplete type ‘Slic3r::MultiPoint’ used in nested name specifier
  130 |             straight_or_arc_part = MultiPoint::_douglas_peucker(straight_or_arc_part, tolerance);
      |                                                ^~~~~~~~~~~~~~~~

Closes: https://github.com/bambulab/BambuStudio/issues/3074
This commit is contained in:
Bastien Nocera 2023-12-10 22:54:08 +01:00 committed by Lane.Wei
parent 8ff74ea0f5
commit e88948a684
1 changed files with 1 additions and 0 deletions

View File

@ -1,4 +1,5 @@
#include "ArcFitter.hpp"
#include "Polyline.hpp"
#include <cmath>
#include <cassert>