Public Member Functions | Public Attributes
fcl::CollisionGeometry Class Reference

The geometry for the object for collision or distance computation. More...

#include <hpp/fcl/collision_object.h>

Inheritance diagram for fcl::CollisionGeometry:
[legend]
Collaboration diagram for fcl::CollisionGeometry:
[legend]

List of all members.

Public Member Functions

 CollisionGeometry ()
virtual ~CollisionGeometry ()
virtual OBJECT_TYPE getObjectType () const
 get the type of the object
virtual NODE_TYPE getNodeType () const
 get the node type
virtual void computeLocalAABB ()=0
 compute the AABB for object in local coordinate
void * getUserData () const
 get user data in geometry
void setUserData (void *data)
 set user data in geometry
bool isOccupied () const
 whether the object is completely occupied
bool isFree () const
 whether the object is completely free
bool isUncertain () const
 whether the object has some uncertainty
virtual Vec3f computeCOM () const
 compute center of mass
virtual Matrix3f computeMomentofInertia () const
 compute the inertia matrix, related to the origin
virtual FCL_REAL computeVolume () const
 compute the volume
virtual Matrix3f computeMomentofInertiaRelatedToCOM () const
 compute the inertia matrix, related to the com

Public Attributes

Vec3f aabb_center
 AABB center in local coordinate.
FCL_REAL aabb_radius
 AABB radius.
AABB aabb_local
 AABB in local coordinate, used for tight AABB when only translation transform.
void * user_data
 pointer to user defined data specific to this object
FCL_REAL cost_density
 collision cost for unit volume
FCL_REAL threshold_occupied
 threshold for occupied ( >= is occupied)
FCL_REAL threshold_free
 threshold for free (<= is free)

Detailed Description

The geometry for the object for collision or distance computation.


Constructor & Destructor Documentation

fcl::CollisionGeometry::CollisionGeometry ( ) [inline]
virtual fcl::CollisionGeometry::~CollisionGeometry ( ) [inline, virtual]

Member Function Documentation

virtual Vec3f fcl::CollisionGeometry::computeCOM ( ) const [inline, virtual]
virtual void fcl::CollisionGeometry::computeLocalAABB ( ) [pure virtual]
virtual Matrix3f fcl::CollisionGeometry::computeMomentofInertia ( ) const [inline, virtual]
virtual Matrix3f fcl::CollisionGeometry::computeMomentofInertiaRelatedToCOM ( ) const [inline, virtual]

compute the inertia matrix, related to the com

References computeCOM(), computeMomentofInertia(), and computeVolume().

virtual FCL_REAL fcl::CollisionGeometry::computeVolume ( ) const [inline, virtual]
virtual NODE_TYPE fcl::CollisionGeometry::getNodeType ( ) const [inline, virtual]
virtual OBJECT_TYPE fcl::CollisionGeometry::getObjectType ( ) const [inline, virtual]
void* fcl::CollisionGeometry::getUserData ( ) const [inline]

get user data in geometry

References user_data.

bool fcl::CollisionGeometry::isFree ( ) const [inline]

whether the object is completely free

References cost_density, and threshold_free.

Referenced by isUncertain().

bool fcl::CollisionGeometry::isOccupied ( ) const [inline]

whether the object is completely occupied

References cost_density, and threshold_occupied.

Referenced by isUncertain().

bool fcl::CollisionGeometry::isUncertain ( ) const [inline]

whether the object has some uncertainty

References isFree(), and isOccupied().

void fcl::CollisionGeometry::setUserData ( void *  data) [inline]

set user data in geometry

References user_data.


Member Data Documentation

AABB center in local coordinate.

Referenced by fcl::OcTree::computeLocalAABB().

AABB in local coordinate, used for tight AABB when only translation transform.

Referenced by fcl::OcTree::computeLocalAABB().

AABB radius.

Referenced by fcl::OcTree::computeLocalAABB().

collision cost for unit volume

Referenced by fcl::initialize(), isFree(), and isOccupied().

threshold for free (<= is free)

Referenced by isFree().

threshold for occupied ( >= is occupied)

Referenced by isOccupied().

pointer to user defined data specific to this object

Referenced by getUserData(), and setUserData().

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines