Class CollisionGeometry

Inheritance Relationships

Derived Types

Class Documentation

class CollisionGeometry

The geometry for the object for collision or distance computation.

Subclassed by hpp::fcl::BVHModelBase, hpp::fcl::HeightField< BV >, hpp::fcl::OcTree, hpp::fcl::ShapeBase

Public Functions

inline CollisionGeometry()
CollisionGeometry(const CollisionGeometry &other) = default

Copy constructor.

inline virtual ~CollisionGeometry()
virtual CollisionGeometry *clone() const = 0

Clone *this into a new CollisionGeometry.

inline bool operator==(const CollisionGeometry &other) const

Equality operator.

inline bool operator!=(const CollisionGeometry &other) const

Difference operator.

inline virtual OBJECT_TYPE getObjectType() const

get the type of the object

inline virtual NODE_TYPE getNodeType() const

get the node type

virtual void computeLocalAABB() = 0

compute the AABB for object in local coordinate

inline void *getUserData() const

get user data in geometry

inline void setUserData(void *data)

set user data in geometry

inline bool isOccupied() const

whether the object is completely occupied

inline bool isFree() const

whether the object is completely free

bool isUncertain() const

whether the object has some uncertainty

inline virtual Vec3f computeCOM() const

compute center of mass

inline virtual Matrix3f computeMomentofInertia() const

compute the inertia matrix, related to the origin

inline virtual FCL_REAL computeVolume() const

compute the volume

inline virtual Matrix3f computeMomentofInertiaRelatedToCOM() const

compute the inertia matrix, related to the com

Public Members

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)