diff --git a/src/Mod/Robot/App/AppRobot.cpp b/src/Mod/Robot/App/AppRobot.cpp index 021c48a892..000a073227 100644 --- a/src/Mod/Robot/App/AppRobot.cpp +++ b/src/Mod/Robot/App/AppRobot.cpp @@ -25,22 +25,19 @@ #include #include -#include -#include - +#include "Edge2TracObject.h" +#include "PropertyTrajectory.h" #include "Robot6AxisPy.h" #include "Robot6Axis.h" -#include "Simulation.h" -#include "TrajectoryPy.h" -#include "Trajectory.h" -#include "PropertyTrajectory.h" -#include "WaypointPy.h" -#include "Waypoint.h" #include "RobotObject.h" -#include "TrajectoryObject.h" -#include "Edge2TracObject.h" +#include "Simulation.h" +#include "Trajectory.h" #include "TrajectoryCompound.h" #include "TrajectoryDressUpObject.h" +#include "TrajectoryObject.h" +#include "TrajectoryPy.h" +#include "WaypointPy.h" +#include "Waypoint.h" namespace Robot { diff --git a/src/Mod/Robot/App/Edge2TracObject.cpp b/src/Mod/Robot/App/Edge2TracObject.cpp index dec177ec79..0ee5577f8d 100644 --- a/src/Mod/Robot/App/Edge2TracObject.cpp +++ b/src/Mod/Robot/App/Edge2TracObject.cpp @@ -20,27 +20,22 @@ * * ***************************************************************************/ - #include "PreCompiled.h" - #ifndef _PreComp_ +# include +# include +# include +# include #endif -#include "Edge2TracObject.h" -//#include -//#include #include #include #include -#include -#include -#include -#include -#include -#include -#include -#include "Waypoint.h" + +#include "Edge2TracObject.h" #include "Trajectory.h" +#include "Waypoint.h" + using namespace Robot; using namespace App; diff --git a/src/Mod/Robot/App/Edge2TracObject.h b/src/Mod/Robot/App/Edge2TracObject.h index 4881350e7b..c440dd8d90 100644 --- a/src/Mod/Robot/App/Edge2TracObject.h +++ b/src/Mod/Robot/App/Edge2TracObject.h @@ -20,17 +20,13 @@ * * ***************************************************************************/ - #ifndef ROBOT_Edge2TracObject_H #define ROBOT_Edge2TracObject_H -#include -#include #include -#include "Trajectory.h" #include "TrajectoryObject.h" -#include "PropertyTrajectory.h" + namespace Robot { diff --git a/src/Mod/Robot/App/PreCompiled.h b/src/Mod/Robot/App/PreCompiled.h index ae65dc14b3..564b76b41c 100644 --- a/src/Mod/Robot/App/PreCompiled.h +++ b/src/Mod/Robot/App/PreCompiled.h @@ -39,16 +39,33 @@ #ifdef _PreComp_ // standard -#include -#include -#include #include -#include +#include #include +#include +#include #include -#include -#include + +// kdl_cp +#include "kdl_cp/chain.hpp" +#include "kdl_cp/chainiksolverpos_nr.hpp" +#include "kdl_cp/chainiksolvervel_pinv.hpp" +#include "kdl_cp/chainiksolverpos_nr_jl.hpp" +#include "kdl_cp/chainfksolverpos_recursive.hpp" +#include "kdl_cp/frames_io.hpp" +#include "kdl_cp/path_line.hpp" +#include "kdl_cp/path_roundedcomposite.hpp" +#include "kdl_cp/rotational_interpolation_sa.hpp" +#include "kdl_cp/trajectory_composite.hpp" +#include "kdl_cp/trajectory_segment.hpp" +#include "kdl_cp/utilities/error.h" +#include "kdl_cp/velocityprofile_trap.hpp" + +// OCC +#include +#include +#include +#include #endif // _PreComp_ #endif - diff --git a/src/Mod/Robot/App/PropertyTrajectory.cpp b/src/Mod/Robot/App/PropertyTrajectory.cpp index 8bd149f72a..0d79999938 100644 --- a/src/Mod/Robot/App/PropertyTrajectory.cpp +++ b/src/Mod/Robot/App/PropertyTrajectory.cpp @@ -20,24 +20,18 @@ * * ***************************************************************************/ - #include "PreCompiled.h" - #ifndef _PreComp_ # include #endif - -#include -#include #include -#include -#include -#include +#include #include "PropertyTrajectory.h" #include "TrajectoryPy.h" + using namespace Robot; TYPESYSTEM_SOURCE(Robot::PropertyTrajectory , App::Property) diff --git a/src/Mod/Robot/App/PropertyTrajectory.h b/src/Mod/Robot/App/PropertyTrajectory.h index 53e01d5e39..7d2c0283d7 100644 --- a/src/Mod/Robot/App/PropertyTrajectory.h +++ b/src/Mod/Robot/App/PropertyTrajectory.h @@ -20,18 +20,18 @@ * * ***************************************************************************/ - #ifndef PROPERTYTRAJECTORY_H #define PROPERTYTRAJECTORY_H -#include "Trajectory.h" #include #include +#include "Trajectory.h" + + namespace Robot { - /** The part shape property class. * @author Werner Mayer */ diff --git a/src/Mod/Robot/App/Robot6Axis.cpp b/src/Mod/Robot/App/Robot6Axis.cpp index 5cb04af7c6..26849f6c29 100644 --- a/src/Mod/Robot/App/Robot6Axis.cpp +++ b/src/Mod/Robot/App/Robot6Axis.cpp @@ -20,30 +20,22 @@ * * ***************************************************************************/ - #include "PreCompiled.h" - #ifndef _PreComp_ +# include "kdl_cp/chainfksolverpos_recursive.hpp" +# include "kdl_cp/chainiksolvervel_pinv.hpp" +# include "kdl_cp/chainiksolverpos_nr_jl.hpp" #endif #include -#include #include #include - -#include "kdl_cp/chain.hpp" -#include "kdl_cp/chainfksolver.hpp" -#include "kdl_cp/chainfksolverpos_recursive.hpp" -#include "kdl_cp/frames_io.hpp" -#include "kdl_cp/chainiksolver.hpp" -#include "kdl_cp/chainiksolvervel_pinv.hpp" -#include "kdl_cp/chainjnttojacsolver.hpp" -#include "kdl_cp/chainiksolverpos_nr.hpp" -#include "kdl_cp/chainiksolverpos_nr_jl.hpp" +#include #include "Robot6Axis.h" #include "RobotAlgos.h" + #ifndef M_PI #define M_PI 3.14159265358979323846 /* pi */ #endif diff --git a/src/Mod/Robot/App/Robot6Axis.h b/src/Mod/Robot/App/Robot6Axis.h index c1a76f1c02..e2348c3a96 100644 --- a/src/Mod/Robot/App/Robot6Axis.h +++ b/src/Mod/Robot/App/Robot6Axis.h @@ -20,17 +20,16 @@ * * ***************************************************************************/ - #ifndef ROBOT_ROBOT6AXLE_H #define ROBOT_ROBOT6AXLE_H -#include "kdl_cp/chain.hpp" -#include "kdl_cp/jntarray.hpp" - #include #include +#include "kdl_cp/chain.hpp" +#include "kdl_cp/jntarray.hpp" #include + namespace Robot { diff --git a/src/Mod/Robot/App/Robot6AxisPyImp.cpp b/src/Mod/Robot/App/Robot6AxisPyImp.cpp index a9609f1a9b..32c5477c3f 100644 --- a/src/Mod/Robot/App/Robot6AxisPyImp.cpp +++ b/src/Mod/Robot/App/Robot6AxisPyImp.cpp @@ -20,19 +20,19 @@ * * ***************************************************************************/ - #include "PreCompiled.h" +#ifndef _PreComp_ +# include +#endif -#include "Mod/Robot/App/Robot6Axis.h" -#include #include -#include -#include +#include // inclusion of the generated files (generated out of Robot6AxisPy.xml) #include "Robot6AxisPy.h" #include "Robot6AxisPy.cpp" + using namespace Robot; // returns a string which represents the object e.g. when printed in python diff --git a/src/Mod/Robot/App/RobotAlgos.cpp b/src/Mod/Robot/App/RobotAlgos.cpp index fe40610606..e997478ce5 100644 --- a/src/Mod/Robot/App/RobotAlgos.cpp +++ b/src/Mod/Robot/App/RobotAlgos.cpp @@ -20,31 +20,17 @@ * * ***************************************************************************/ - #include "PreCompiled.h" - #ifndef _PreComp_ - +# include "kdl_cp/chainiksolverpos_nr.hpp" +# include "kdl_cp/chainiksolvervel_pinv.hpp" +# include "kdl_cp/chainfksolverpos_recursive.hpp" +# include "kdl_cp/frames_io.hpp" #endif -#include "kdl_cp/chain.hpp" -#include "kdl_cp/chainfksolver.hpp" -#include "kdl_cp/chainfksolverpos_recursive.hpp" -#include "kdl_cp/frames_io.hpp" -#include "kdl_cp/chainiksolver.hpp" -#include "kdl_cp/chainiksolvervel_pinv.hpp" -#include "kdl_cp/chainjnttojacsolver.hpp" -#include "kdl_cp/chainiksolverpos_nr.hpp" - -#include -#include - -#include -#include - - #include "RobotAlgos.h" + using namespace Robot; using namespace std; using namespace KDL; @@ -62,8 +48,6 @@ using namespace KDL; // FeatureView //=========================================================================== - - RobotAlgos::RobotAlgos() { @@ -75,13 +59,13 @@ RobotAlgos::~RobotAlgos() void RobotAlgos::Test() { - //Definition of a kinematic chain & add segments to the chain + // Definition of a kinematic chain & add segments to the chain KDL::Chain chain; - chain.addSegment(Segment(Joint(Joint::RotZ),Frame(Vector(0.0,0.0,1.020)))); - chain.addSegment(Segment(Joint(Joint::RotX),Frame(Vector(0.0,0.0,0.480)))); - chain.addSegment(Segment(Joint(Joint::RotX),Frame(Vector(0.0,0.0,0.645)))); + chain.addSegment(Segment(Joint(Joint::RotZ), Frame(Vector(0.0, 0.0, 1.020)))); + chain.addSegment(Segment(Joint(Joint::RotX), Frame(Vector(0.0, 0.0, 0.480)))); + chain.addSegment(Segment(Joint(Joint::RotX), Frame(Vector(0.0, 0.0, 0.645)))); chain.addSegment(Segment(Joint(Joint::RotZ))); - chain.addSegment(Segment(Joint(Joint::RotX),Frame(Vector(0.0,0.0,0.120)))); + chain.addSegment(Segment(Joint(Joint::RotX), Frame(Vector(0.0, 0.0, 0.120)))); chain.addSegment(Segment(Joint(Joint::RotZ))); // Create solver based on kinematic chain @@ -92,12 +76,12 @@ void RobotAlgos::Test() KDL::JntArray jointpositions = JntArray(nj); // Assign some values to the joint positions - for(unsigned int i=0;i=0){ - std::cout << cartpos <= 0) { + std::cout << cartpos << std::endl; + printf("%s \n", "Success, thanks KDL!"); + } + else { + printf("%s \n", "Error: could not calculate forward kinematics :("); } - - //Creation of the solvers: - ChainFkSolverPos_recursive fksolver1(chain);//Forward position solver - ChainIkSolverVel_pinv iksolver1v(chain);//Inverse velocity solver - ChainIkSolverPos_NR iksolver1(chain,fksolver1,iksolver1v,100,1e-6);//Maximum 100 iterations, stop at accuracy 1e-6 + // Creation of the solvers: + ChainFkSolverPos_recursive fksolver1(chain);// Forward position solver + ChainIkSolverVel_pinv iksolver1v(chain); // Inverse velocity solver + ChainIkSolverPos_NR iksolver1(chain, fksolver1, iksolver1v, + 100, 1e-6);// Maximum 100 iterations, stop at accuracy 1e-6 - //Creation of jntarrays: + // Creation of jntarrays: JntArray result(chain.getNrOfJoints()); JntArray q_init(chain.getNrOfJoints()); - //Set destination frame + // Set destination frame Frame F_dest=cartpos; iksolver1.CartToJnt(q_init,F_dest,result); - for(unsigned int i=0;i -#include - -#include "kdl_cp/frames_io.hpp" #include +#include + namespace Robot { - /** Algo class for projecting shapes and creating SVG output of it */ class RobotExport RobotAlgos diff --git a/src/Mod/Robot/App/RobotObject.cpp b/src/Mod/Robot/App/RobotObject.cpp index 54c0a40f2d..8dc39e3786 100644 --- a/src/Mod/Robot/App/RobotObject.cpp +++ b/src/Mod/Robot/App/RobotObject.cpp @@ -20,18 +20,15 @@ * * ***************************************************************************/ - #include "PreCompiled.h" -#ifndef _PreComp_ -#endif - -#include "RobotObject.h" #include #include - -#include #include +#include + +#include "RobotObject.h" + using namespace Robot; using namespace App; diff --git a/src/Mod/Robot/App/RobotObject.h b/src/Mod/Robot/App/RobotObject.h index c92eaa6c7b..bfa622f2f5 100644 --- a/src/Mod/Robot/App/RobotObject.h +++ b/src/Mod/Robot/App/RobotObject.h @@ -20,17 +20,15 @@ * * ***************************************************************************/ - #ifndef ROBOT_ROBOTOBJECT_H #define ROBOT_ROBOTOBJECT_H #include #include -#include -#include #include "Robot6Axis.h" + namespace Robot { diff --git a/src/Mod/Robot/App/RobotObjectPyImp.cpp b/src/Mod/Robot/App/RobotObjectPyImp.cpp index 86fda96b77..50fd855f4a 100644 --- a/src/Mod/Robot/App/RobotObjectPyImp.cpp +++ b/src/Mod/Robot/App/RobotObjectPyImp.cpp @@ -20,15 +20,13 @@ * * ***************************************************************************/ - #include "PreCompiled.h" -#include "Mod/Robot/App/RobotObject.h" - // inclusion of the generated files (generated out of RobotObjectPy.xml) #include "RobotObjectPy.h" #include "RobotObjectPy.cpp" + using namespace Robot; // returns a string which represents the object e.g. when printed in python diff --git a/src/Mod/Robot/App/Simulation.cpp b/src/Mod/Robot/App/Simulation.cpp index c01e4043c7..87477cd837 100644 --- a/src/Mod/Robot/App/Simulation.cpp +++ b/src/Mod/Robot/App/Simulation.cpp @@ -20,36 +20,19 @@ * * ***************************************************************************/ - #include "PreCompiled.h" -#ifndef _PreComp_ - -#endif - -#include "kdl_cp/chain.hpp" -#include "kdl_cp/frames_io.hpp" - -#include -#include - -#include - - #include "Simulation.h" + using namespace Robot; using namespace std; using namespace KDL; - - //=========================================================================== // Simulation class //=========================================================================== - - Simulation::Simulation(const Robot::Trajectory &Trac,Robot::Robot6Axis &Rob) :Pos(0.0),Trac(Trac),Rob(Rob) { diff --git a/src/Mod/Robot/App/Simulation.h b/src/Mod/Robot/App/Simulation.h index 5c1b99de9c..6f27994087 100644 --- a/src/Mod/Robot/App/Simulation.h +++ b/src/Mod/Robot/App/Simulation.h @@ -19,17 +19,15 @@ * Suite 330, Boston, MA 02111-1307, USA * * * ***************************************************************************/ - #ifndef _Simulation_h_ #define _Simulation_h_ -#include #include -#include -#include "Trajectory.h" #include "Robot6Axis.h" +#include "Trajectory.h" + namespace Robot { diff --git a/src/Mod/Robot/App/Trajectory.cpp b/src/Mod/Robot/App/Trajectory.cpp index b827ad0a95..e47a0cf162 100644 --- a/src/Mod/Robot/App/Trajectory.cpp +++ b/src/Mod/Robot/App/Trajectory.cpp @@ -20,30 +20,28 @@ * * ***************************************************************************/ - #include "PreCompiled.h" #ifndef _PreComp_ # include + +# include "kdl_cp/path_line.hpp" +# include "kdl_cp/path_roundedcomposite.hpp" +# include "kdl_cp/rotational_interpolation_sa.hpp" +# include "kdl_cp/trajectory_composite.hpp" +# include "kdl_cp/trajectory_segment.hpp" +# include "kdl_cp/utilities/error.h" +# include "kdl_cp/velocityprofile_trap.hpp" #endif -#include -#include #include - -#include "kdl_cp/chain.hpp" -#include "kdl_cp/path_line.hpp" -#include "kdl_cp/path_roundedcomposite.hpp" -#include "kdl_cp/trajectory_composite.hpp" -#include "kdl_cp/rotational_interpolation_sa.hpp" -#include "kdl_cp/velocityprofile_trap.hpp" -#include "kdl_cp/trajectory_segment.hpp" -#include "kdl_cp/path_roundedcomposite.hpp" -#include "kdl_cp/utilities/error.h" +#include +#include #include "Trajectory.h" #include "RobotAlgos.h" + #ifndef M_PI #define M_PI 3.14159265358979323846 #define M_PI 3.14159265358979323846 /* pi */ diff --git a/src/Mod/Robot/App/Trajectory.h b/src/Mod/Robot/App/Trajectory.h index 67fc28c3a4..d5db4e234b 100644 --- a/src/Mod/Robot/App/Trajectory.h +++ b/src/Mod/Robot/App/Trajectory.h @@ -20,18 +20,16 @@ * * ***************************************************************************/ - #ifndef ROBOT_Trajectory_H #define ROBOT_Trajectory_H -#include "kdl_cp/trajectory.hpp" - -#include "Waypoint.h" +#include #include #include -#include +#include "Waypoint.h" + namespace KDL {class Trajectory_Composite;} diff --git a/src/Mod/Robot/App/TrajectoryCompound.cpp b/src/Mod/Robot/App/TrajectoryCompound.cpp index 7d677219c4..8da304bc6d 100644 --- a/src/Mod/Robot/App/TrajectoryCompound.cpp +++ b/src/Mod/Robot/App/TrajectoryCompound.cpp @@ -20,26 +20,11 @@ * * ***************************************************************************/ - #include "PreCompiled.h" -#ifndef _PreComp_ -#endif - #include "TrajectoryCompound.h" -//#include -//#include -#include -#include -#include -#include -#include -#include -#include -#include -#include #include "Waypoint.h" -#include "Trajectory.h" + using namespace Robot; using namespace App; diff --git a/src/Mod/Robot/App/TrajectoryCompound.h b/src/Mod/Robot/App/TrajectoryCompound.h index 2f997fc1cd..6de01b0807 100644 --- a/src/Mod/Robot/App/TrajectoryCompound.h +++ b/src/Mod/Robot/App/TrajectoryCompound.h @@ -20,17 +20,13 @@ * * ***************************************************************************/ - #ifndef ROBOT_TrajectoryCompound_H #define ROBOT_TrajectoryCompound_H -#include -#include -#include +#include -#include "Trajectory.h" #include "TrajectoryObject.h" -#include "PropertyTrajectory.h" + namespace Robot { diff --git a/src/Mod/Robot/App/TrajectoryDressUpObject.cpp b/src/Mod/Robot/App/TrajectoryDressUpObject.cpp index fb4d21c100..1988407b00 100644 --- a/src/Mod/Robot/App/TrajectoryDressUpObject.cpp +++ b/src/Mod/Robot/App/TrajectoryDressUpObject.cpp @@ -20,26 +20,11 @@ * * ***************************************************************************/ - #include "PreCompiled.h" -#ifndef _PreComp_ -#endif - #include "TrajectoryDressUpObject.h" -//#include -//#include -#include -#include -#include -#include -#include -#include -#include -#include -#include #include "Waypoint.h" -#include "Trajectory.h" + using namespace Robot; using namespace App; diff --git a/src/Mod/Robot/App/TrajectoryDressUpObject.h b/src/Mod/Robot/App/TrajectoryDressUpObject.h index e02caf8b99..82b8590d85 100644 --- a/src/Mod/Robot/App/TrajectoryDressUpObject.h +++ b/src/Mod/Robot/App/TrajectoryDressUpObject.h @@ -20,18 +20,14 @@ * * ***************************************************************************/ - #ifndef ROBOT_TrajectoryDressUpObject_H #define ROBOT_TrajectoryDressUpObject_H -#include -#include #include #include -#include "Trajectory.h" #include "TrajectoryObject.h" -#include "PropertyTrajectory.h" + namespace Robot { diff --git a/src/Mod/Robot/App/TrajectoryObject.cpp b/src/Mod/Robot/App/TrajectoryObject.cpp index 1532f6d4bf..8d0c6a31d4 100644 --- a/src/Mod/Robot/App/TrajectoryObject.cpp +++ b/src/Mod/Robot/App/TrajectoryObject.cpp @@ -20,16 +20,14 @@ * * ***************************************************************************/ - #include "PreCompiled.h" -#ifndef _PreComp_ -#endif - -#include "TrajectoryObject.h" #include #include +#include "TrajectoryObject.h" + + using namespace Robot; using namespace App; diff --git a/src/Mod/Robot/App/TrajectoryObject.h b/src/Mod/Robot/App/TrajectoryObject.h index ffd8b0463c..0a22e22e60 100644 --- a/src/Mod/Robot/App/TrajectoryObject.h +++ b/src/Mod/Robot/App/TrajectoryObject.h @@ -20,17 +20,16 @@ * * ***************************************************************************/ - #ifndef ROBOT_TrajectoryObject_H #define ROBOT_TrajectoryObject_H #include -#include #include #include "Trajectory.h" #include "PropertyTrajectory.h" + namespace Robot { diff --git a/src/Mod/Robot/App/TrajectoryPyImp.cpp b/src/Mod/Robot/App/TrajectoryPyImp.cpp index 9a2a621f91..1dcd42193c 100644 --- a/src/Mod/Robot/App/TrajectoryPyImp.cpp +++ b/src/Mod/Robot/App/TrajectoryPyImp.cpp @@ -20,18 +20,16 @@ * * ***************************************************************************/ - #include "PreCompiled.h" -#include #include -#include "Mod/Robot/App/Trajectory.h" // inclusion of the generated files (generated out of TrajectoryPy.xml) #include #include #include + using namespace Robot; // returns a string which represents the object e.g. when printed in python diff --git a/src/Mod/Robot/App/Waypoint.cpp b/src/Mod/Robot/App/Waypoint.cpp index a098a181d8..db2734bd87 100644 --- a/src/Mod/Robot/App/Waypoint.cpp +++ b/src/Mod/Robot/App/Waypoint.cpp @@ -20,26 +20,17 @@ * * ***************************************************************************/ - #include "PreCompiled.h" - #ifndef _PreComp_ +# include "kdl_cp/chain.hpp" #endif -#include #include - -#include "kdl_cp/chain.hpp" -#include "kdl_cp/chainfksolver.hpp" -#include "kdl_cp/chainfksolverpos_recursive.hpp" -#include "kdl_cp/frames_io.hpp" -#include "kdl_cp/chainiksolver.hpp" -#include "kdl_cp/chainiksolvervel_pinv.hpp" -#include "kdl_cp/chainjnttojacsolver.hpp" -#include "kdl_cp/chainiksolverpos_nr.hpp" +#include #include "Waypoint.h" + #ifndef M_PI #define M_PI 3.14159265358979323846 #define M_PI 3.14159265358979323846 /* pi */ diff --git a/src/Mod/Robot/App/Waypoint.h b/src/Mod/Robot/App/Waypoint.h index f62ebd649f..0c822aa2d3 100644 --- a/src/Mod/Robot/App/Waypoint.h +++ b/src/Mod/Robot/App/Waypoint.h @@ -20,20 +20,16 @@ * * ***************************************************************************/ - #ifndef ROBOT_WAYPOINT_H #define ROBOT_WAYPOINT_H -#include "kdl_cp/chain.hpp" -#include "kdl_cp/jntarray.hpp" - #include #include + namespace Robot { - /** The representation of a waypoint in a trajectory */ class RobotExport Waypoint : public Base::Persistence diff --git a/src/Mod/Robot/App/WaypointPyImp.cpp b/src/Mod/Robot/App/WaypointPyImp.cpp index 6ef5810a0a..3f27fcaba1 100644 --- a/src/Mod/Robot/App/WaypointPyImp.cpp +++ b/src/Mod/Robot/App/WaypointPyImp.cpp @@ -20,22 +20,16 @@ * * ***************************************************************************/ - #include "PreCompiled.h" - #include -#include -#include #include -#include "Mod/Robot/App/Waypoint.h" - - // inclusion of the generated files (generated out of WaypointPy.xml) #include "WaypointPy.h" #include "WaypointPy.cpp" + using namespace Robot; using namespace Base;