Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

Geom Class Reference

Geometric models and collision detection methods. More...

#include <geom.h>

Inheritance diagram for Geom::

GeomNone GeomPQP GeomPQP2D GeomPQP3DRigid GeomPQP2DRigid GeomPQP3DRigidMulti GeomPQP2DRigidMulti List of all members.

Public Methods

 Geom (string path)
 Empty constructor in base class.

virtual ~Geom ()
 Empty destructor.

virtual bool CollisionFree (const MSLVector &q)=0
 Return true if the robot(s) and obstacles are not in collision.

virtual double DistanceComp (const MSLVector &q)=0
 Compute the distance of the closest point on the robot to the obstacle region.

virtual MSLVector ConfigurationDifference (const MSLVector &q1, const MSLVector &q2)
 Compute a MSLVector based on q2-q1. In R^n, the configurations are simply subtracted to make the MSLVector. This method exists to make things work correctly for other configuration-space topologies.


Public Attributes

int NumBodies
 The number of rigid bodies in the geometry model.

int GeomDim
 The dimension of the world geometry: 2 or 3.

MSLVector MaxDeviates
 Maximum displacement of geometry with respect to change in each variable.


Protected Attributes

string FilePath

Detailed Description

Geometric models and collision detection methods.

These classes define the geometric representations of all obstacles in the world, and of each part of the robot. The methods allow planning algorithms to determine whether any of the robot parts are in collision with each other or with obstacles in the world.

A configuration vector specifies the positions and orientation of each rigid body.


Constructor & Destructor Documentation

Geom::Geom ( string path )
 

Empty constructor in base class.

Geom::~Geom ( ) [inline, virtual]
 

Empty destructor.


Member Function Documentation

bool Geom::CollisionFree ( const MSLVector & q ) [pure virtual]
 

Return true if the robot(s) and obstacles are not in collision.

Reimplemented in GeomNone, GeomPQP, GeomPQP2DRigid, GeomPQP2DRigidMulti, GeomPQP3DRigid, and GeomPQP3DRigidMulti.

MSLVector Geom::ConfigurationDifference ( const MSLVector & q1,
const MSLVector & q2 ) [virtual]
 

Compute a MSLVector based on q2-q1. In R^n, the configurations are simply subtracted to make the MSLVector. This method exists to make things work correctly for other configuration-space topologies.

Reimplemented in GeomPQP2DRigid, and GeomPQP3DRigid.

double Geom::DistanceComp ( const MSLVector & q ) [pure virtual]
 

Compute the distance of the closest point on the robot to the obstacle region.

Reimplemented in GeomNone, GeomPQP, GeomPQP2DRigid, GeomPQP2DRigidMulti, GeomPQP3DRigid, and GeomPQP3DRigidMulti.


Member Data Documentation

string Geom::FilePath [protected]
 

int Geom::GeomDim
 

The dimension of the world geometry: 2 or 3.

MSLVector Geom::MaxDeviates
 

Maximum displacement of geometry with respect to change in each variable.

int Geom::NumBodies
 

The number of rigid bodies in the geometry model.


The documentation for this class was generated from the following file: Motion Strategy Library


Web page maintained by Steve LaValle
Partial support provided by NSF CAREER Award IRI-970228 (LaValle), Honda Research.
Contributors: Anna Atramentov, Peng Cheng, James Kuffner, Steve LaValle, and Libo Yang.