PL_Neural Class Reference

#include <planners/neural/PL_Neural.h>

Inherits PL_Boolean_Output, and PL_OpenGL.

Inheritance diagram for PL_Neural:

Inheritance graph
[legend]
Collaboration diagram for PL_Neural:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 PL_Neural ()
virtual ~PL_Neural ()
virtual bool DrawExplicit () const
virtual void DrawUniversePortion () const
bool Plan ()
void PlanMultiThread (void *data)

Protected Member Functions

void AddObstaclePoint (const Configuration &c) const
void ClampAllPointsToJointLimits ()
Configuration ClampToJointLimits (const Configuration &c) const
bool CheckPathForObstacles ()
int ClosestObstacleToEdge (const unsigned int edgeNum) const
int ClosestObstacleToPoint (const Configuration &c) const
int EdgeInCollision () const
Configuration EdgeRepulsion (const unsigned int edgeNum) const
Configuration GenerateRandomConfig () const
int NodesInCollision () const
void Perturb (const unsigned int pointNum)
void Relax (const unsigned int pointNum)
void RelaxUntilSettled ()
Configuration RepulsiveVector (const Configuration &c) const

Private Attributes

PA_Points m_Path
std::vector< Configurationm_ObstacleLocations

Detailed Description

Definition at line 13 of file PL_Neural.h.


Constructor & Destructor Documentation

PL_Neural::PL_Neural  ) 
 

Definition at line 13 of file PL_Neural.cpp.

PL_Neural::~PL_Neural  )  [virtual]
 

Definition at line 20 of file PL_Neural.cpp.


Member Function Documentation

void PL_Neural::AddObstaclePoint const Configuration c  )  const [protected]
 

Definition at line 27 of file PL_Neural.cpp.

References m_ObstacleLocations.

Referenced by EdgeInCollision(), and NodesInCollision().

bool PL_Neural::CheckPathForObstacles  )  [protected]
 

Definition at line 35 of file PL_Neural.cpp.

References EdgeInCollision(), and NodesInCollision().

Here is the call graph for this function:

void PL_Neural::ClampAllPointsToJointLimits  )  [protected]
 

Definition at line 50 of file PL_Neural.cpp.

References ClampToJointLimits(), m_Path, and PA_Points::Size().

Referenced by RelaxUntilSettled().

Here is the call graph for this function:

Configuration PL_Neural::ClampToJointLimits const Configuration c  )  const [protected]
 

Definition at line 64 of file PL_Neural.cpp.

References Clamp(), PL_HasCollisionDetector::collisionDetector, Configuration::DOF(), CD_BasicStyle::JointMax(), and CD_BasicStyle::JointMin().

Referenced by ClampAllPointsToJointLimits().

Here is the call graph for this function:

int PL_Neural::ClosestObstacleToEdge const unsigned int  edgeNum  )  const [protected]
 

Definition at line 81 of file PL_Neural.cpp.

References DistanceSquared(), m_ObstacleLocations, and m_Path.

Here is the call graph for this function:

int PL_Neural::ClosestObstacleToPoint const Configuration c  )  const [protected]
 

Definition at line 110 of file PL_Neural.cpp.

References m_ObstacleLocations.

bool PL_Neural::DrawExplicit  )  const [virtual]
 

Reimplemented from PL_OpenGL.

Definition at line 136 of file PL_Neural.cpp.

References PL_OpenGL::Draw(), Semaphore::Lock(), m_ObstacleLocations, m_Path, Color::red, and Color::yellow_50.

Here is the call graph for this function:

void PL_Neural::DrawUniversePortion  )  const [virtual]
 

Reimplemented from PL_OpenGL.

Definition at line 164 of file PL_Neural.cpp.

References PL_OpenGL::DrawOverlay(), PlannerBase::guid, Semaphore::Lock(), m_ObstacleLocations, m_Path, Color::red, and Color::yellow_50.

Here is the call graph for this function:

int PL_Neural::EdgeInCollision  )  const [protected]
 

Definition at line 218 of file PL_Neural.cpp.

References AddObstaclePoint(), PL_HasCollisionDetector::collisionDetector, CD_Linear::GetLastIntersection(), CD_Linear::IsInterferingLinear(), m_Path, and PA_Points::Size().

Referenced by CheckPathForObstacles().

Here is the call graph for this function:

Configuration PL_Neural::EdgeRepulsion const unsigned int  edgeNum  )  const [protected]
 

Definition at line 241 of file PL_Neural.cpp.

References ClosestPoint(), m_ObstacleLocations, m_Path, and VectorN::MagSquared().

Here is the call graph for this function:

Configuration PL_Neural::GenerateRandomConfig  )  const [protected]
 

Definition at line 272 of file PL_Neural.cpp.

References PL_HasCollisionDetector::collisionDetector, PlannerBase::GetStartConfig(), CD_BasicStyle::JointMax(), CD_BasicStyle::JointMin(), and VectorN::Size().

Referenced by Perturb().

Here is the call graph for this function:

int PL_Neural::NodesInCollision  )  const [protected]
 

Definition at line 291 of file PL_Neural.cpp.

References AddObstaclePoint(), PL_HasCollisionDetector::collisionDetector, CD_Bool::IsInterfering(), m_Path, and PA_Points::Size().

Referenced by CheckPathForObstacles().

Here is the call graph for this function:

void PL_Neural::Perturb const unsigned int  pointNum  )  [protected]
 

Definition at line 312 of file PL_Neural.cpp.

References GenerateRandomConfig(), m_Path, and PA_Points::Size().

Here is the call graph for this function:

bool PL_Neural::Plan  )  [virtual]
 

Implements PlannerBase.

Definition at line 331 of file PL_Neural.cpp.

References PA_Points::AppendPoint(), PlannerBase::GetGoalConfig(), PlannerBase::GetStartConfig(), and m_Path.

Here is the call graph for this function:

void PL_Neural::PlanMultiThread void *  data  ) 
 

void PL_Neural::Relax const unsigned int  pointNum  )  [protected]
 

Definition at line 383 of file PL_Neural.cpp.

References m_Path, PA_Points::PhysicalLength(), and PA_Points::Size().

Referenced by RelaxUntilSettled().

Here is the call graph for this function:

void PL_Neural::RelaxUntilSettled  )  [protected]
 

Definition at line 420 of file PL_Neural.cpp.

References ClampAllPointsToJointLimits(), m_Path, Relax(), and PA_Points::Size().

Here is the call graph for this function:

Configuration PL_Neural::RepulsiveVector const Configuration c  )  const [protected]
 

Definition at line 456 of file PL_Neural.cpp.

References m_ObstacleLocations, and VectorN::MagSquared().

Here is the call graph for this function:


Member Data Documentation

std::vector< Configuration > PL_Neural::m_ObstacleLocations [mutable, private]
 

Definition at line 42 of file PL_Neural.h.

Referenced by AddObstaclePoint(), ClosestObstacleToEdge(), ClosestObstacleToPoint(), DrawExplicit(), DrawUniversePortion(), EdgeRepulsion(), and RepulsiveVector().

PA_Points PL_Neural::m_Path [private]
 

Definition at line 41 of file PL_Neural.h.

Referenced by ClampAllPointsToJointLimits(), ClosestObstacleToEdge(), DrawExplicit(), DrawUniversePortion(), EdgeInCollision(), EdgeRepulsion(), NodesInCollision(), Perturb(), Plan(), Relax(), and RelaxUntilSettled().


The documentation for this class was generated from the following files:
Generated on Sat Apr 1 21:56:31 2006 for Motion Planning Kernel by  doxygen 1.4.6-NO