Tekkotsu Homepage
Demos
Overview
Downloads
Dev. Resources
Reference
Credits

EllipsoidObstacle Class Reference

#include <PlannerObstacles.h>

Inheritance diagram for EllipsoidObstacle:

Detailed Description

Definition at line 949 of file PlannerObstacles.h.

List of all members.

Public Member Functions

 EllipsoidObstacle ()
 Default constructor.
 EllipsoidObstacle (const fmat::SubVector< 3, const fmat::fmatReal > &c, const fmat::SubMatrix< 3, 3, const fmat::fmatReal > &o, const fmat::SubVector< 3, const fmat::fmatReal > &e)
EllipsoidObstacleoperator= (const EllipsoidObstacle &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 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< 2 > get2Support (const fmat::SubVector< 2, const fmat::fmatReal > &direction) const
 helper function, in the case of any of the components being zero.
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 EllipsoidObstacleclone () const __attribute__((warn_unused_result))
 clone definition for EllipsoidObstacle

Protected Attributes

fmat::Column< 3 > center
 center of the ellipsoid
fmat::Matrix< 3, 3 > orientation
 3D orientation of the ellipse
fmat::Column< 3 > extents
 positive half-width extents along each axis

Static Protected Attributes

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

Constructor & Destructor Documentation

EllipsoidObstacle::EllipsoidObstacle (  ) 

Default constructor.

Definition at line 965 of file PlannerObstacles.h.

EllipsoidObstacle::EllipsoidObstacle ( const fmat::SubVector< 3, const fmat::fmatReal > &  c,
const fmat::SubMatrix< 3, 3, const fmat::fmatReal > &  o,
const fmat::SubVector< 3, const fmat::fmatReal > &  e 
)

Definition at line 968 of file PlannerObstacles.h.


Member Function Documentation

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

clone definition for EllipsoidObstacle

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

Definition at line 25 of file PlannerObstacles.cc.

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

Definition at line 1394 of file PlannerObstacles.cc.

fmat::Column< 2 > EllipsoidObstacle::get2Support ( const fmat::SubVector< 2, const fmat::fmatReal > &  direction  )  const [virtual]

helper function, in the case of any of the components being zero.

Definition at line 1434 of file PlannerObstacles.cc.

Referenced by getSupport().

BoundingBox3D EllipsoidObstacle::getBoundingBox (  )  const [virtual]

get boundaries of the current obstacle

Implements PlannerObstacle< N >.

Definition at line 1392 of file PlannerObstacles.cc.

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

get center point of obstacle

Implements PlannerObstacle< N >.

Definition at line 988 of file PlannerObstacles.h.

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

Definition at line 1407 of file PlannerObstacles.cc.

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

Definition at line 1453 of file PlannerObstacles.cc.

void EllipsoidObstacle::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 1462 of file PlannerObstacles.cc.

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

Assignment, should not use plist::Dictionary version.

Definition at line 974 of file PlannerObstacles.h.

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

Definition at line 983 of file PlannerObstacles.h.

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

subclasses are expected to provide a working implementation

Reimplemented from plist::DictionaryBase.

Definition at line 1479 of file PlannerObstacles.cc.

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

return current value as a string

Reimplemented from PlannerObstacle< N >.

Definition at line 1455 of file PlannerObstacles.cc.

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

Definition at line 982 of file PlannerObstacles.h.


Member Data Documentation

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

stores the class name used for polymorphic load/save

Definition at line 952 of file PlannerObstacles.h.

center of the ellipsoid

Definition at line 955 of file PlannerObstacles.h.

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

positive half-width extents along each axis

Definition at line 961 of file PlannerObstacles.h.

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

3D orientation of the ellipse

Definition at line 958 of file PlannerObstacles.h.

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


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

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