Public Member Functions | Protected Attributes | List of all members
fcl::CollisionObject Class Reference

the object for collision or distance computation, contains the geometry and the transform information More...

#include <hpp/fcl/collision_object.h>

Collaboration diagram for fcl::CollisionObject:
[legend]

Public Member Functions

 CollisionObject (const boost::shared_ptr< CollisionGeometry > &cgeom_)
 
 CollisionObject (const boost::shared_ptr< CollisionGeometry > &cgeom_, const Transform3f &tf)
 
 CollisionObject (const boost::shared_ptr< CollisionGeometry > &cgeom_, const Matrix3f &R, const Vec3f &T)
 
 ~CollisionObject ()
 
OBJECT_TYPE getObjectType () const
 get the type of the object More...
 
NODE_TYPE getNodeType () const
 get the node type More...
 
const AABBgetAABB () const
 get the AABB in world space More...
 
void computeAABB ()
 compute the AABB in world space More...
 
void * getUserData () const
 get user data in object More...
 
void setUserData (void *data)
 set user data in object More...
 
const Vec3fgetTranslation () const
 get translation of the object More...
 
const Matrix3fgetRotation () const
 get matrix rotation of the object More...
 
const Quaternion3fgetQuatRotation () const
 get quaternion rotation of the object More...
 
const Transform3fgetTransform () const
 get object's transform More...
 
void setRotation (const Matrix3f &R)
 set object's rotation matrix More...
 
void setTranslation (const Vec3f &T)
 set object's translation More...
 
void setQuatRotation (const Quaternion3f &q)
 set object's quatenrion rotation More...
 
void setTransform (const Matrix3f &R, const Vec3f &T)
 set object's transform More...
 
void setTransform (const Quaternion3f &q, const Vec3f &T)
 set object's transform More...
 
void setTransform (const Transform3f &tf)
 set object's transform More...
 
bool isIdentityTransform () const
 whether the object is in local coordinate More...
 
void setIdentityTransform ()
 set the object in local coordinate More...
 
FCL_DEPRECATED const CollisionGeometrygetCollisionGeometry () const
 get geometry from the object instance More...
 
const boost::shared_ptr< const CollisionGeometry > & collisionGeometry () const
 get geometry from the object instance More...
 
const boost::shared_ptr< CollisionGeometry > & collisionGeometry ()
 get geometry from the object instance More...
 
FCL_REAL getCostDensity () const
 get object's cost density More...
 
void setCostDensity (FCL_REAL c)
 set object's cost density More...
 
bool isOccupied () const
 whether the object is completely occupied More...
 
bool isFree () const
 whether the object is completely free More...
 
bool isUncertain () const
 whether the object is uncertain More...
 

Protected Attributes

boost::shared_ptr< CollisionGeometrycgeom
 
boost::shared_ptr< const CollisionGeometrycgeom_const
 
Transform3f t
 
AABB aabb
 AABB in global coordinate. More...
 
void * user_data
 pointer to user defined data specific to this object More...
 

Detailed Description

the object for collision or distance computation, contains the geometry and the transform information

Constructor & Destructor Documentation

◆ CollisionObject() [1/3]

fcl::CollisionObject::CollisionObject ( const boost::shared_ptr< CollisionGeometry > &  cgeom_)
inline

◆ CollisionObject() [2/3]

fcl::CollisionObject::CollisionObject ( const boost::shared_ptr< CollisionGeometry > &  cgeom_,
const Transform3f tf 
)
inline

◆ CollisionObject() [3/3]

fcl::CollisionObject::CollisionObject ( const boost::shared_ptr< CollisionGeometry > &  cgeom_,
const Matrix3f R,
const Vec3f T 
)
inline

◆ ~CollisionObject()

fcl::CollisionObject::~CollisionObject ( )
inline

Member Function Documentation

◆ collisionGeometry() [1/2]

const boost::shared_ptr<const CollisionGeometry>& fcl::CollisionObject::collisionGeometry ( ) const
inline

get geometry from the object instance

◆ collisionGeometry() [2/2]

const boost::shared_ptr<CollisionGeometry>& fcl::CollisionObject::collisionGeometry ( )
inline

get geometry from the object instance

◆ computeAABB()

void fcl::CollisionObject::computeAABB ( )
inline

compute the AABB in world space

References fcl::translate().

◆ getAABB()

const AABB& fcl::CollisionObject::getAABB ( ) const
inline

◆ getCollisionGeometry()

FCL_DEPRECATED const CollisionGeometry* fcl::CollisionObject::getCollisionGeometry ( ) const
inline

get geometry from the object instance

◆ getCostDensity()

FCL_REAL fcl::CollisionObject::getCostDensity ( ) const
inline

get object's cost density

◆ getNodeType()

NODE_TYPE fcl::CollisionObject::getNodeType ( ) const
inline

get the node type

◆ getObjectType()

OBJECT_TYPE fcl::CollisionObject::getObjectType ( ) const
inline

get the type of the object

◆ getQuatRotation()

const Quaternion3f& fcl::CollisionObject::getQuatRotation ( ) const
inline

get quaternion rotation of the object

◆ getRotation()

const Matrix3f& fcl::CollisionObject::getRotation ( ) const
inline

get matrix rotation of the object

◆ getTransform()

const Transform3f& fcl::CollisionObject::getTransform ( ) const
inline

get object's transform

◆ getTranslation()

const Vec3f& fcl::CollisionObject::getTranslation ( ) const
inline

get translation of the object

◆ getUserData()

void* fcl::CollisionObject::getUserData ( ) const
inline

get user data in object

References fcl::CollisionGeometry::user_data.

◆ isFree()

bool fcl::CollisionObject::isFree ( ) const
inline

whether the object is completely free

◆ isIdentityTransform()

bool fcl::CollisionObject::isIdentityTransform ( ) const
inline

whether the object is in local coordinate

◆ isOccupied()

bool fcl::CollisionObject::isOccupied ( ) const
inline

whether the object is completely occupied

◆ isUncertain()

bool fcl::CollisionObject::isUncertain ( ) const
inline

whether the object is uncertain

◆ setCostDensity()

void fcl::CollisionObject::setCostDensity ( FCL_REAL  c)
inline

set object's cost density

◆ setIdentityTransform()

void fcl::CollisionObject::setIdentityTransform ( )
inline

set the object in local coordinate

References FCL_DEPRECATED.

◆ setQuatRotation()

void fcl::CollisionObject::setQuatRotation ( const Quaternion3f q)
inline

set object's quatenrion rotation

◆ setRotation()

void fcl::CollisionObject::setRotation ( const Matrix3f R)
inline

set object's rotation matrix

◆ setTransform() [1/3]

void fcl::CollisionObject::setTransform ( const Matrix3f R,
const Vec3f T 
)
inline

set object's transform

◆ setTransform() [2/3]

void fcl::CollisionObject::setTransform ( const Quaternion3f q,
const Vec3f T 
)
inline

set object's transform

◆ setTransform() [3/3]

void fcl::CollisionObject::setTransform ( const Transform3f tf)
inline

set object's transform

◆ setTranslation()

void fcl::CollisionObject::setTranslation ( const Vec3f T)
inline

set object's translation

◆ setUserData()

void fcl::CollisionObject::setUserData ( void *  data)
inline

set user data in object

References fcl::CollisionGeometry::user_data.

Member Data Documentation

◆ aabb

AABB fcl::CollisionObject::aabb
mutableprotected

AABB in global coordinate.

◆ cgeom

boost::shared_ptr<CollisionGeometry> fcl::CollisionObject::cgeom
protected

◆ cgeom_const

boost::shared_ptr<const CollisionGeometry> fcl::CollisionObject::cgeom_const
protected

◆ t

Transform3f fcl::CollisionObject::t
protected

◆ user_data

void* fcl::CollisionObject::user_data
protected

pointer to user defined data specific to this object