Tekkotsu Homepage
Demos
Overview
Downloads
Dev. Resources
Reference
Credits

CylindricalObstacle Class Reference

Cylinder with central axis in alignment with z-axis by default. More...

#include <PlannerObstacles.h>

Inheritance diagram for CylindricalObstacle:

Detailed Description

Cylinder with central axis in alignment with z-axis by default.

Definition at line 820 of file PlannerObstacles.h.

List of all members.

Public Member Functions

 CylindricalObstacle ()
 Default constructor.
 CylindricalObstacle (const fmat::SubVector< 3, const fmat::fmatReal > &c, const fmat::SubMatrix< 3, 3, const fmat::fmatReal > &o, fmat::fmatReal r, fmat::fmatReal hh)
CylindricalObstacleoperator= (const CylindricalObstacle &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 float getRadius () const
virtual BoundingBox3D getBoundingBox () const
 get boundaries of the current obstacle
virtual bool collides (const fmat::SubVector< 3, const fmat::fmatReal > &point) 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 std::string toString () const
 return current value as a string
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 CylindricalObstacleclone () const __attribute__((warn_unused_result))
 clone definition for CylindricalObstacle

Protected Attributes

fmat::Column< 3 > center
 center of the cylinder
fmat::Matrix< 3, 3 > orientation
 3D orientation of cylinder
fmat::fmatReal radius
 radius of cylinder
fmat::fmatReal halfHeight
 half-height

Static Protected Attributes

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

Constructor & Destructor Documentation

CylindricalObstacle::CylindricalObstacle (  ) 

Default constructor.

Definition at line 839 of file PlannerObstacles.h.

CylindricalObstacle::CylindricalObstacle ( const fmat::SubVector< 3, const fmat::fmatReal > &  c,
const fmat::SubMatrix< 3, 3, const fmat::fmatReal > &  o,
fmat::fmatReal  r,
fmat::fmatReal  hh 
)

Definition at line 842 of file PlannerObstacles.h.


Member Function Documentation

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

clone definition for CylindricalObstacle

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

Definition at line 23 of file PlannerObstacles.cc.

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

Definition at line 1267 of file PlannerObstacles.cc.

BoundingBox3D CylindricalObstacle::getBoundingBox (  )  const [virtual]

get boundaries of the current obstacle

Implements PlannerObstacle< N >.

Definition at line 1265 of file PlannerObstacles.cc.

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

get center point of obstacle

Implements PlannerObstacle< N >.

Definition at line 864 of file PlannerObstacles.h.

virtual float CylindricalObstacle::getRadius (  )  const [virtual]

Definition at line 865 of file PlannerObstacles.h.

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

Definition at line 1275 of file PlannerObstacles.cc.

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

Definition at line 1290 of file PlannerObstacles.cc.

void CylindricalObstacle::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 1299 of file PlannerObstacles.cc.

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

Assignment, should not use plist::Dictionary version.

Definition at line 849 of file PlannerObstacles.h.

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

Definition at line 859 of file PlannerObstacles.h.

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

subclasses are expected to provide a working implementation

Reimplemented from plist::DictionaryBase.

Definition at line 1320 of file PlannerObstacles.cc.

std::string CylindricalObstacle::toString (  )  const [virtual]

return current value as a string

Reimplemented from PlannerObstacle< N >.

Definition at line 1292 of file PlannerObstacles.cc.

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

Definition at line 858 of file PlannerObstacles.h.


Member Data Documentation

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

stores the class name used for polymorphic load/save

Definition at line 823 of file PlannerObstacles.h.

center of the cylinder

Definition at line 826 of file PlannerObstacles.h.

Referenced by getCenter(), loadXML(), operator=(), rotate(), saveXML(), toString(), and updatePosition().

half-height

Definition at line 835 of file PlannerObstacles.h.

Referenced by collides(), getSupport(), loadXML(), operator=(), saveXML(), and toString().

3D orientation of cylinder

Definition at line 829 of file PlannerObstacles.h.

Referenced by collides(), getSupport(), loadXML(), operator=(), rotate(), saveXML(), and toString().

radius of cylinder

Definition at line 832 of file PlannerObstacles.h.

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


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

Tekkotsu v5.1CVS
Generated Mon May 9 04:59:06 2016 by Doxygen 1.6.3