planners/fortest/PL_ForTest.h

Go to the documentation of this file.
00001 #ifndef PL_FORTEST_h
00002 #define PL_FORTEST_h 1
00003 
00004 #pragma warning( disable : 4250 )
00005 
00006 #include "Kinematics/Jacobian.h"
00007 #include "Robots/R_OpenChain.h"
00008 #include "geometry/Frame.h"
00009 #include "planners/ik_mpep/PL_MPEP.h"
00010 #include "planners/atace/LocalPlanner.h"
00011 
00012 class PL_ForTest: public PL_MPEP
00013 {
00014 public:
00015         PL_ForTest();
00016         virtual ~PL_ForTest();
00017 
00018         //does all the planning
00019         virtual void SetCollisionDetector (CD_BasicStyle* collisionDetector);
00020         virtual bool PL_ForTest::DrawExplicit () const;
00021         virtual bool Plan ();
00022 
00023         void SetStepAhead(int nAhead){m_nStepAhead = nAhead;};
00024         void SetMethodUsed(int nMethod){m_bUseJacobianSMGExploration=(nMethod==0);};
00025         void SetSMGStepSize(int dStep){m_nSMGStepSize = dStep;};
00026         void SetUseBacktracking(bool bUse){m_bUseBacktracking = bUse;};
00027         void SetObstacleAvoidLP(bool bUse){m_bUseObstacleAvoidLP = bUse;};
00028 
00029 protected:
00030         VectorN ComputeDeltaEndEff(Frame &fromPose, Frame &toPose);
00031         bool FindLocalPath(Configuration &start, int nStart, int nEnd, PA_Points &localPath);
00032         bool FindLocalPath2(Configuration &start, int nStart, int nEnd, PA_Points &localPath);
00033         int Establish_Self_Motion_Graph(dynamic_trees &tr, vertex extended);
00034         int Extend_Node_Self_Motion_Graph(vertex g_vertex, Configuration **nextConf);
00035         int Extend_Node_Self_Motion_Graph_Jacobian(vertex g_vertex, Configuration **nextConf);
00036         bool AdjustConfiguration(Configuration &config, int nPose);
00037         bool IsJointWithinLimits(Configuration& config);
00038         void RemoveNode(vertex failVert);
00039 
00040 protected:
00041         void ResetStatistics();
00042         void LogStatistics();
00043 
00044 protected:
00045         R_OpenChain *   m_pRobot;             // to get DH parameters
00046         int             m_nDof;
00047         int             m_nToolFrame;
00048         Frame           m_frEndEffector;
00049         CJacobian      *m_pJacobian;
00050         Jacobian_TrajPlanner *m_pLocalPlanner;
00051 
00052 protected:
00053         int             m_nStepAhead;
00054         bool            m_bUseJacobianSMGExploration;
00055         bool            m_bUseBacktracking;
00056         bool            m_bUseObstacleAvoidLP;
00057         double          m_nSMGStepSize;
00058 
00059 protected:
00060         int             m_nSMGNodes;
00061         int             m_nSMGraphs;
00062 };
00063 #endif

Generated on Sat Apr 1 21:30:42 2006 for Motion Planning Kernel by  doxygen 1.4.6-NO