From b22d59c0aa0abd106a1ff38ba8dc497b34e6f774 Mon Sep 17 00:00:00 2001 From: Abdullah Tahiri Date: Fri, 3 May 2019 14:13:19 +0200 Subject: [PATCH] PCH: Path App --- src/Mod/Path/App/Area.cpp | 111 +++++++++++++------------- src/Mod/Path/App/CMakeLists.txt | 7 ++ src/Mod/Path/App/Command.cpp | 12 +-- src/Mod/Path/App/CommandPyImp.cpp | 5 +- src/Mod/Path/App/FeatureArea.cpp | 7 +- src/Mod/Path/App/FeaturePathShape.cpp | 19 +++-- src/Mod/Path/App/Path.cpp | 25 +++--- src/Mod/Path/App/PreCompiled.h | 72 +++++++++++++++++ 8 files changed, 168 insertions(+), 90 deletions(-) diff --git a/src/Mod/Path/App/Area.cpp b/src/Mod/Path/App/Area.cpp index 360c5dbedd..116e73cd52 100644 --- a/src/Mod/Path/App/Area.cpp +++ b/src/Mod/Path/App/Area.cpp @@ -23,66 +23,65 @@ #ifndef _PreComp_ # include -#endif - -#include -#include -#if defined(BOOST_MSVC) && (BOOST_VERSION == 105500) +# include +# include +# if defined(BOOST_MSVC) && (BOOST_VERSION == 105500) // for fixing issue https://svn.boost.org/trac/boost/ticket/9332 # include "boost_fix/intrusive/detail/memory_util.hpp" # include "boost_fix/container/detail/memory_util.hpp" -#endif -#include -#include -#include -#include -#include -#include +# endif +# include +# include +# include +# include +# include +# include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +# include +#endif #include #include diff --git a/src/Mod/Path/App/CMakeLists.txt b/src/Mod/Path/App/CMakeLists.txt index 72d437af95..2ef5835eac 100644 --- a/src/Mod/Path/App/CMakeLists.txt +++ b/src/Mod/Path/App/CMakeLists.txt @@ -116,6 +116,13 @@ SOURCE_GROUP("Module" FILES ${Mod_SRCS}) add_library(Path SHARED ${Path_SRCS}) target_link_libraries(Path ${Path_LIBS}) +if(FREECAD_USE_PCH) + add_definitions(-D_PreComp_) + GET_MSVC_PRECOMPILED_SOURCE("PreCompiled.cpp" Path_CPP_SRCS ${Path_SRCS}) + ADD_MSVC_PRECOMPILED_HEADER(Path PreCompiled.h PreCompiled.cpp Path_CPP_SRCS) +endif(FREECAD_USE_PCH) + + SET_BIN_DIR(Path Path /Mod/Path) SET_PYTHON_PREFIX_SUFFIX(Path) diff --git a/src/Mod/Path/App/Command.cpp b/src/Mod/Path/App/Command.cpp index 6ff96f0bd7..95c9bee7dd 100644 --- a/src/Mod/Path/App/Command.cpp +++ b/src/Mod/Path/App/Command.cpp @@ -24,12 +24,12 @@ #include "PreCompiled.h" #ifndef _PreComp_ - +# include +# include +# include +# include #endif -#include -#include -#include -#include + #include #include #include @@ -103,7 +103,7 @@ std::string Command::toGCode (int precision, bool padzero) const std::stringstream str; str.fill('0'); str << Name; - if(precision<0) + if(precision<0) precision = 0; double scale = std::pow(10.0,precision+1); std::int64_t iscale = static_cast(scale)/10; diff --git a/src/Mod/Path/App/CommandPyImp.cpp b/src/Mod/Path/App/CommandPyImp.cpp index 5d8dbcd8ef..b2dc7575c1 100644 --- a/src/Mod/Path/App/CommandPyImp.cpp +++ b/src/Mod/Path/App/CommandPyImp.cpp @@ -22,7 +22,10 @@ #include "PreCompiled.h" -#include + +#ifndef _PreComp_ +# include +#endif #include #include diff --git a/src/Mod/Path/App/FeatureArea.cpp b/src/Mod/Path/App/FeatureArea.cpp index 6fb4ca09d2..f3d9cce3fd 100644 --- a/src/Mod/Path/App/FeatureArea.cpp +++ b/src/Mod/Path/App/FeatureArea.cpp @@ -23,11 +23,10 @@ #include "PreCompiled.h" #ifndef _PreComp_ +# include +# include #endif -#include -#include - #include "FeatureArea.h" #include "FeatureAreaPy.h" #include @@ -106,7 +105,7 @@ App::DocumentObjectExecReturn *FeatureArea::execute(void) } myShapes.clear(); - if(myArea.getSectionCount()==0) + if(myArea.getSectionCount()==0) myShapes.push_back(myArea.getShape(-1)); else { myShapes.reserve(myArea.getSectionCount()); diff --git a/src/Mod/Path/App/FeaturePathShape.cpp b/src/Mod/Path/App/FeaturePathShape.cpp index 3e43afc1b2..4a730341dd 100644 --- a/src/Mod/Path/App/FeaturePathShape.cpp +++ b/src/Mod/Path/App/FeaturePathShape.cpp @@ -19,13 +19,20 @@ * Suite 330, Boston, MA 02111-1307, USA * * * ***************************************************************************/ -/* - * Copyright (c) 2017 Zheng, Lei +/* + * Copyright (c) 2017 Zheng, Lei */ #include "PreCompiled.h" #ifndef _PreComp_ +# include +# include +# include +# include +# include +# include +# include #endif #include "FeaturePathShape.h" @@ -36,14 +43,6 @@ #include #include -#include -#include -#include -#include -#include -#include -#include - #include "FeatureArea.h" using namespace Path; diff --git a/src/Mod/Path/App/Path.cpp b/src/Mod/Path/App/Path.cpp index 7b80f6af51..cc526c0684 100644 --- a/src/Mod/Path/App/Path.cpp +++ b/src/Mod/Path/App/Path.cpp @@ -24,10 +24,9 @@ #include "PreCompiled.h" #ifndef _PreComp_ +# include #endif -#include - #include #include #include @@ -79,7 +78,7 @@ Toolpath &Toolpath::operator=(const Toolpath& otherPath) return *this; } -void Toolpath::clear(void) +void Toolpath::clear(void) { for(std::vector::iterator it = vpcCommands.begin();it!=vpcCommands.end();++it) delete ( *it ); @@ -167,12 +166,12 @@ static void bulkAddCommand(const std::string &gcodestr, std::vector &c void Toolpath::setFromGCode(const std::string instr) { clear(); - + // remove comments //boost::regex e("\\(.*?\\)"); //std::string str = boost::regex_replace(instr, e, ""); std::string str(instr); - + // split input string by () or G or M commands std::string mode = "command"; std::size_t found = str.find_first_of("(gGmM"); @@ -225,23 +224,23 @@ std::string Toolpath::toGCode(void) const result += "\n"; } return result; -} +} void Toolpath::recalculate(void) // recalculates the path cache { - + if(vpcCommands.size()==0) return; - + // TODO recalculate the KDL stuff. At the moment, this is unused. #if 0 // delete the old and create a new one - if(pcPath) + if(pcPath) delete (pcPath); - + pcPath = new KDL::Path_Composite(); - + KDL::Path *tempPath; KDL::Frame Last; @@ -350,7 +349,7 @@ void Toolpath::RestoreDocFile(Base::Reader &reader) { std::string gcode; std::string line; - while (reader >> line) { + while (reader >> line) { gcode += line; gcode += " "; } @@ -361,4 +360,4 @@ void Toolpath::RestoreDocFile(Base::Reader &reader) - + diff --git a/src/Mod/Path/App/PreCompiled.h b/src/Mod/Path/App/PreCompiled.h index fd6e5e029e..045808934c 100644 --- a/src/Mod/Path/App/PreCompiled.h +++ b/src/Mod/Path/App/PreCompiled.h @@ -53,8 +53,80 @@ #include #include +#include +#include + +// Python #include +// Boost +#include +#include +#if defined(BOOST_MSVC) && (BOOST_VERSION == 105500) +// for fixing issue https://svn.boost.org/trac/boost/ticket/9332 +# include "boost_fix/intrusive/detail/memory_util.hpp" +# include "boost_fix/container/detail/memory_util.hpp" +#endif +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +//OCC +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + #endif // _PreComp_ #endif