planners/neural/PL_Neural.h

Go to the documentation of this file.
00001 #ifndef _PL_Neural_
00002 #define _PL_Neural_
00003 
00004 #include "Planners/PL_Boolean_Output.h"
00005 #include "Planners/PL_OpenGL.h"
00006 #include <vector>
00007 
00008 #pragma warning( disable : 4250 )
00009 
00010 class CD_Bool;
00011 
00012 
00013 class PL_Neural
00014     :         public PL_Boolean_Output,
00015       virtual public PL_OpenGL
00016 {
00017   public:
00018       PL_Neural();
00019       virtual       ~PL_Neural();
00020       virtual bool  DrawExplicit () const;
00021       virtual void  DrawUniversePortion() const;
00022       bool          Plan ();
00023       void          PlanMultiThread (void* data);
00024 
00025   protected:
00026       void          AddObstaclePoint( const Configuration& c )           const;
00027       void          ClampAllPointsToJointLimits();
00028       Configuration ClampToJointLimits( const Configuration& c )         const;
00029       bool          CheckPathForObstacles();
00030       int           ClosestObstacleToEdge ( const unsigned int edgeNum ) const;
00031       int           ClosestObstacleToPoint( const Configuration& c )     const;
00032       int           EdgeInCollision() const;
00033       Configuration EdgeRepulsion( const unsigned int edgeNum )          const;
00034       Configuration GenerateRandomConfig () const;
00035       int           NodesInCollision() const;
00036       void          Perturb( const unsigned int pointNum );
00037       void          Relax( const unsigned int pointNum );
00038       void          RelaxUntilSettled();
00039       Configuration RepulsiveVector( const Configuration& c )            const;
00040   private:
00041       PA_Points     m_Path;
00042       mutable std::vector< Configuration > m_ObstacleLocations;
00043 };
00044 
00045 #endif //_PL_PrmIjg_
00046  

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