Tekkotsu Homepage
Demos
Overview
Downloads
Dev. Resources
Reference
Credits

SphericalObstacle Class Reference

Spherically defined obstacle. More...

#include <PlannerObstacles.h>

Inheritance diagram for SphericalObstacle:

Detailed Description

Spherically defined obstacle.

Definition at line 865 of file PlannerObstacles.h.

List of all members.

Public Member Functions

 SphericalObstacle ()
 Default constructor.
 SphericalObstacle (fmat::fmatReal x, fmat::fmatReal y, fmat::fmatReal z, fmat::fmatReal r)
 point and radius
 SphericalObstacle (const fmat::Column< 3 > &c, fmat::fmatReal r)
 point and radius
SphericalObstacleoperator= (const SphericalObstacle &o)
 Assignment, should not use plist::Dictionary version.
virtual void updatePosition (const fmat::SubVector< 3, const fmat::fmatReal > &newPos)
virtual void rotate (const fmat::SubVector< 3, const fmat::fmatReal > &origin, const fmat::SubMatrix< 3, 3, const fmat::fmatReal > &rot)
virtual fmat::Column< 3 > getCenter () const
 get center point of obstacle
virtual fmat::fmatReal getRadius () const
virtual BoundingBox3D getBoundingBox () const
 get boundaries of the current obstacle
virtual bool collides (const fmat::SubVector< 3, const fmat::fmatReal > &point) const
 For obstacle on point.
bool collides (const SphericalObstacle &other) const
virtual fmat::Column< 3 > getSupport (const fmat::SubVector< 3, const fmat::fmatReal > &direction) const
virtual fmat::Column< 3 > gradient (const fmat::SubVector< 3, const fmat::fmatReal > &pt) const
virtual void loadXML (xmlNode *node)
 This specialization looks for the SensorInfo::sensorType, then has the factory construct the correct subtype before loading the node into and returning that.
virtual void saveXML (xmlNode *node) const
 subclasses are expected to provide a working implementation
virtual SphericalObstacleclone () const __attribute__((warn_unused_result))
 clone definition for SphericalObstacle

Protected Attributes

fmat::Column< 3 > center
 center of the sphere
fmat::fmatReal radius
 radius of the sphere

Static Protected Attributes

static const std::string autoRegisterName = PlannerObstacle3D::getRegistry().registerType<SphericalObstacle>("Sphere")
 stores the class name used for polymorphic load/save

Constructor & Destructor Documentation

SphericalObstacle::SphericalObstacle (  ) 

Default constructor.

Definition at line 878 of file PlannerObstacles.h.

SphericalObstacle::SphericalObstacle ( fmat::fmatReal  x,
fmat::fmatReal  y,
fmat::fmatReal  z,
fmat::fmatReal  r 
)

point and radius

Definition at line 882 of file PlannerObstacles.h.

SphericalObstacle::SphericalObstacle ( const fmat::Column< 3 > &  c,
fmat::fmatReal  r 
)

point and radius

Definition at line 886 of file PlannerObstacles.h.


Member Function Documentation

SphericalObstacle * SphericalObstacle::clone (  )  const [virtual]

clone definition for SphericalObstacle

Reimplemented from plist::DictionaryOf< PO, Alloc >.

Definition at line 33 of file PlannerObstacles.cc.

bool SphericalObstacle::collides ( const SphericalObstacle other  )  const
bool SphericalObstacle::collides ( const fmat::SubVector< 3, const fmat::fmatReal > &  point  )  const [virtual]

For obstacle on point.

Definition at line 1367 of file PlannerObstacles.cc.

virtual BoundingBox3D SphericalObstacle::getBoundingBox (  )  const [virtual]

get boundaries of the current obstacle

Implements PlannerObstacle< N >.

Definition at line 904 of file PlannerObstacles.h.

virtual fmat::Column<3> SphericalObstacle::getCenter (  )  const [virtual]

get center point of obstacle

Implements PlannerObstacle< N >.

Definition at line 902 of file PlannerObstacles.h.

virtual fmat::fmatReal SphericalObstacle::getRadius (  )  const [virtual]

Definition at line 903 of file PlannerObstacles.h.

fmat::Column< 3 > SphericalObstacle::getSupport ( const fmat::SubVector< 3, const fmat::fmatReal > &  direction  )  const [virtual]

Definition at line 1372 of file PlannerObstacles.cc.

fmat::Column< 3 > SphericalObstacle::gradient ( const fmat::SubVector< 3, const fmat::fmatReal > &  pt  )  const [virtual]

Definition at line 1376 of file PlannerObstacles.cc.

void SphericalObstacle::loadXML ( xmlNode node  )  [virtual]

This specialization looks for the SensorInfo::sensorType, then has the factory construct the correct subtype before loading the node into and returning that.

From the name of node, will instantiate a new ObjectBase subclass to load it.

supports use of plist::ArrayOf<PlannerObstacle> for polymorphic load/save

The mapping from node names to actual instantiated types is:

If successful, returns a pointer to a newly allocated region, which the caller is responsible for freeing. If an error occurs, NULL is returned.

attempts to load a new T instance from the specified xmlNode

Reimplemented from plist::DictionaryBase.

Definition at line 1384 of file PlannerObstacles.cc.

SphericalObstacle& SphericalObstacle::operator= ( const SphericalObstacle o  ) 

Assignment, should not use plist::Dictionary version.

Definition at line 890 of file PlannerObstacles.h.

virtual void SphericalObstacle::rotate ( const fmat::SubVector< 3, const fmat::fmatReal > &  origin,
const fmat::SubMatrix< 3, 3, const fmat::fmatReal > &  rot 
) [virtual]

Definition at line 899 of file PlannerObstacles.h.

void SphericalObstacle::saveXML ( xmlNode node  )  const [virtual]

subclasses are expected to provide a working implementation

Reimplemented from plist::DictionaryBase.

Definition at line 1397 of file PlannerObstacles.cc.

virtual void SphericalObstacle::updatePosition ( const fmat::SubVector< 3, const fmat::fmatReal > &  newPos  )  [virtual]

Definition at line 897 of file PlannerObstacles.h.


Member Data Documentation

const std::string SphericalObstacle::autoRegisterName = PlannerObstacle3D::getRegistry().registerType<SphericalObstacle>("Sphere") [static, protected]

stores the class name used for polymorphic load/save

Definition at line 868 of file PlannerObstacles.h.

radius of the sphere

Definition at line 874 of file PlannerObstacles.h.

Referenced by collides(), getBoundingBox(), getRadius(), getSupport(), gradient(), loadXML(), operator=(), and saveXML().


The documentation for this class was generated from the following files:

Tekkotsu v5.1CVS
Generated Fri Mar 16 05:27:30 2012 by Doxygen 1.6.3