hpp-fcl
1.4.4
HPP fork of FCL -- The Flexible Collision Library
|
Classes | |
struct | hpp::fcl::BVNodeBase |
BVNodeBase encodes the tree structure for BVH. More... | |
struct | hpp::fcl::BVNode< BV > |
A class describing a bounding volume node. It includes the tree structure providing in BVNodeBase and also the geometry data provided in BV template parameter. More... | |
class | hpp::fcl::BVFitter< BV > |
The class for the default algorithm fitting a bounding volume to a set of points. More... | |
class | hpp::fcl::BVSplitter< BV > |
A class describing the split rule that splits each BV node. More... | |
class | hpp::fcl::BVHModelBase |
A base class describing the bounding hierarchy of a mesh model or a point cloud model (which is viewed as a degraded version of mesh) More... | |
class | hpp::fcl::BVHModel< BV > |
A class describing the bounding hierarchy of a mesh model or a point cloud model (which is viewed as a degraded version of mesh) More... | |
class | hpp::fcl::CollisionGeometry |
The geometry for the object for collision or distance computation. More... | |
class | hpp::fcl::CollisionObject |
the object for collision or distance computation, contains the geometry and the transform information More... | |
Functions | |
bool | hpp::fcl::BVNodeBase::isLeaf () const |
Whether current node is a leaf node (i.e. contains a primitive index. More... | |
int | hpp::fcl::BVNodeBase::primitiveId () const |
Return the primitive index. The index is referred to the original data (i.e. vertices or tri_indices) in BVHModel. More... | |
int | hpp::fcl::BVNodeBase::leftChild () const |
Return the index of the first child. The index is referred to the bounding volume array (i.e. bvs) in BVHModel. More... | |
int | hpp::fcl::BVNodeBase::rightChild () const |
Return the index of the second child. The index is referred to the bounding volume array (i.e. bvs) in BVHModel. More... | |
bool | hpp::fcl::BVNode< BV >::overlap (const BVNode &other) const |
Check whether two BVNode collide. More... | |
bool | hpp::fcl::BVNode< BV >::overlap (const BVNode &other, const CollisionRequest &request, FCL_REAL &sqrDistLowerBound) const |
Check whether two BVNode collide. More... | |
FCL_REAL | hpp::fcl::BVNode< BV >::distance (const BVNode &other, Vec3f *P1=NULL, Vec3f *P2=NULL) const |
Compute the distance between two BVNode. P1 and P2, if not NULL and the underlying BV supports distance, return the nearest points. More... | |
Vec3f | hpp::fcl::BVNode< BV >::getCenter () const |
Access to the center of the BV. More... | |
const Matrix3f & | hpp::fcl::BVNode< BV >::getOrientation () const |
Access to the orientation of the BV. More... | |
hpp::fcl::CollisionGeometry::CollisionGeometry () | |
virtual | hpp::fcl::CollisionGeometry::~CollisionGeometry () |
virtual OBJECT_TYPE | hpp::fcl::CollisionGeometry::getObjectType () const |
get the type of the object More... | |
virtual NODE_TYPE | hpp::fcl::CollisionGeometry::getNodeType () const |
get the node type More... | |
virtual void | hpp::fcl::CollisionGeometry::computeLocalAABB ()=0 |
compute the AABB for object in local coordinate More... | |
void * | hpp::fcl::CollisionGeometry::getUserData () const |
get user data in geometry More... | |
void | hpp::fcl::CollisionGeometry::setUserData (void *data) |
set user data in geometry More... | |
bool | hpp::fcl::CollisionGeometry::isOccupied () const |
whether the object is completely occupied More... | |
bool | hpp::fcl::CollisionGeometry::isFree () const |
whether the object is completely free More... | |
bool | hpp::fcl::CollisionGeometry::isUncertain () const |
whether the object has some uncertainty More... | |
virtual Vec3f | hpp::fcl::CollisionGeometry::computeCOM () const |
compute center of mass More... | |
virtual Matrix3f | hpp::fcl::CollisionGeometry::computeMomentofInertia () const |
compute the inertia matrix, related to the origin More... | |
virtual FCL_REAL | hpp::fcl::CollisionGeometry::computeVolume () const |
compute the volume More... | |
virtual Matrix3f | hpp::fcl::CollisionGeometry::computeMomentofInertiaRelatedToCOM () const |
compute the inertia matrix, related to the com More... | |
hpp::fcl::CollisionObject::CollisionObject (const boost::shared_ptr< CollisionGeometry > &cgeom_) | |
hpp::fcl::CollisionObject::CollisionObject (const boost::shared_ptr< CollisionGeometry > &cgeom_, const Transform3f &tf) | |
hpp::fcl::CollisionObject::CollisionObject (const boost::shared_ptr< CollisionGeometry > &cgeom_, const Matrix3f &R, const Vec3f &T) | |
hpp::fcl::CollisionObject::~CollisionObject () | |
OBJECT_TYPE | hpp::fcl::CollisionObject::getObjectType () const |
get the type of the object More... | |
NODE_TYPE | hpp::fcl::CollisionObject::getNodeType () const |
get the node type More... | |
const AABB & | hpp::fcl::CollisionObject::getAABB () const |
get the AABB in world space More... | |
void | hpp::fcl::CollisionObject::computeAABB () |
compute the AABB in world space More... | |
void * | hpp::fcl::CollisionObject::getUserData () const |
get user data in object More... | |
void | hpp::fcl::CollisionObject::setUserData (void *data) |
set user data in object More... | |
const Vec3f & | hpp::fcl::CollisionObject::getTranslation () const |
get translation of the object More... | |
const Matrix3f & | hpp::fcl::CollisionObject::getRotation () const |
get matrix rotation of the object More... | |
const Transform3f & | hpp::fcl::CollisionObject::getTransform () const |
get object's transform More... | |
void | hpp::fcl::CollisionObject::setRotation (const Matrix3f &R) |
set object's rotation matrix More... | |
void | hpp::fcl::CollisionObject::setTranslation (const Vec3f &T) |
set object's translation More... | |
void | hpp::fcl::CollisionObject::setTransform (const Matrix3f &R, const Vec3f &T) |
set object's transform More... | |
void | hpp::fcl::CollisionObject::setTransform (const Transform3f &tf) |
set object's transform More... | |
bool | hpp::fcl::CollisionObject::isIdentityTransform () const |
whether the object is in local coordinate More... | |
void | hpp::fcl::CollisionObject::setIdentityTransform () |
set the object in local coordinate More... | |
HPP_FCL_DEPRECATED const CollisionGeometry * | hpp::fcl::CollisionObject::getCollisionGeometry () const |
get geometry from the object instance More... | |
const boost::shared_ptr< const CollisionGeometry > & | hpp::fcl::CollisionObject::collisionGeometry () const |
get geometry from the object instance More... | |
const boost::shared_ptr< CollisionGeometry > & | hpp::fcl::CollisionObject::collisionGeometry () |
get geometry from the object instance More... | |
Variables | |
int | hpp::fcl::BVNodeBase::first_child |
An index for first child node or primitive If the value is positive, it is the index of the first child bv node If the value is negative, it is -(primitive index + 1) Zero is not used. More... | |
int | hpp::fcl::BVNodeBase::first_primitive |
The start id the primitive belonging to the current node. The index is referred to the primitive_indices in BVHModel and from that we can obtain the primitive's index in original data indirectly. More... | |
int | hpp::fcl::BVNodeBase::num_primitives |
The number of primitives belonging to the current node. More... | |
BV | hpp::fcl::BVNode< BV >::bv |
bounding volume storing the geometry More... | |
Vec3f | hpp::fcl::CollisionGeometry::aabb_center |
AABB center in local coordinate. More... | |
FCL_REAL | hpp::fcl::CollisionGeometry::aabb_radius |
AABB radius. More... | |
AABB | hpp::fcl::CollisionGeometry::aabb_local |
AABB in local coordinate, used for tight AABB when only translation transform. More... | |
void * | hpp::fcl::CollisionGeometry::user_data |
pointer to user defined data specific to this object More... | |
FCL_REAL | hpp::fcl::CollisionGeometry::cost_density |
collision cost for unit volume More... | |
FCL_REAL | hpp::fcl::CollisionGeometry::threshold_occupied |
threshold for occupied ( >= is occupied) More... | |
FCL_REAL | hpp::fcl::CollisionGeometry::threshold_free |
threshold for free (<= is free) More... | |
boost::shared_ptr< CollisionGeometry > | hpp::fcl::CollisionObject::cgeom |
boost::shared_ptr< const CollisionGeometry > | hpp::fcl::CollisionObject::cgeom_const |
Transform3f | hpp::fcl::CollisionObject::t |
AABB | hpp::fcl::CollisionObject::aabb |
AABB in global coordinate. More... | |
void * | hpp::fcl::CollisionObject::user_data |
pointer to user defined data specific to this object More... | |
Classes which are used to build a BVHModel (Bounding Volume Hierarchy)
|
inline |
|
inline |
get geometry from the object instance
|
inline |
get geometry from the object instance
|
inline |
|
inline |
|
inline |
|
inline |
compute the AABB in world space
|
inlinevirtual |
compute center of mass
Reimplemented in hpp::fcl::Cone, hpp::fcl::BVHModelBase, and hpp::fcl::Convex< PolygonT >.
|
pure virtual |
compute the AABB for object in local coordinate
Implemented in hpp::fcl::Plane, hpp::fcl::Halfspace, hpp::fcl::ConvexBase, hpp::fcl::Cylinder, hpp::fcl::Cone, hpp::fcl::Capsule, hpp::fcl::Sphere, hpp::fcl::BVHModelBase, hpp::fcl::Box, hpp::fcl::OcTree, and hpp::fcl::TriangleP.
|
inlinevirtual |
compute the inertia matrix, related to the origin
Reimplemented in hpp::fcl::Cylinder, hpp::fcl::Cone, hpp::fcl::BVHModelBase, hpp::fcl::Capsule, hpp::fcl::Sphere, hpp::fcl::Box, and hpp::fcl::Convex< PolygonT >.
|
inlinevirtual |
compute the inertia matrix, related to the com
|
inlinevirtual |
compute the volume
Reimplemented in hpp::fcl::Cylinder, hpp::fcl::Cone, hpp::fcl::BVHModelBase, hpp::fcl::Capsule, hpp::fcl::Sphere, hpp::fcl::Box, and hpp::fcl::Convex< PolygonT >.
|
inline |
Compute the distance between two BVNode. P1 and P2, if not NULL and the underlying BV supports distance, return the nearest points.
|
inline |
Access to the center of the BV.
|
inline |
get geometry from the object instance
|
inlinevirtual |
get the node type
Reimplemented in hpp::fcl::Plane, hpp::fcl::BVHModel< BV >, hpp::fcl::BVHModel< BV >, hpp::fcl::BVHModel< BV >, hpp::fcl::BVHModel< BV >, hpp::fcl::BVHModel< BV >, hpp::fcl::BVHModel< BV >, hpp::fcl::BVHModel< BV >, hpp::fcl::BVHModel< BV >, hpp::fcl::Halfspace, hpp::fcl::BVHModel< BV >, hpp::fcl::ConvexBase, hpp::fcl::Cylinder, hpp::fcl::OcTree, hpp::fcl::Cone, hpp::fcl::Capsule, hpp::fcl::Sphere, hpp::fcl::Box, and hpp::fcl::TriangleP.
|
inline |
get the node type
|
inlinevirtual |
get the type of the object
Reimplemented in hpp::fcl::OcTree, hpp::fcl::BVHModelBase, and hpp::fcl::ShapeBase.
|
inline |
get the type of the object
|
inline |
Access to the orientation of the BV.
|
inline |
get matrix rotation of the object
|
inline |
get object's transform
|
inline |
get translation of the object
|
inline |
get user data in geometry
|
inline |
get user data in object
|
inline |
whether the object is completely free
|
inline |
whether the object is in local coordinate
|
inline |
Whether current node is a leaf node (i.e. contains a primitive index.
|
inline |
whether the object is completely occupied
bool hpp::fcl::CollisionGeometry::isUncertain | ( | ) | const |
whether the object has some uncertainty
|
inline |
Return the index of the first child. The index is referred to the bounding volume array (i.e. bvs) in BVHModel.
|
inline |
Check whether two BVNode collide.
|
inline |
Check whether two BVNode collide.
|
inline |
Return the primitive index. The index is referred to the original data (i.e. vertices or tri_indices) in BVHModel.
|
inline |
Return the index of the second child. The index is referred to the bounding volume array (i.e. bvs) in BVHModel.
|
inline |
set the object in local coordinate
|
inline |
set object's rotation matrix
set object's transform
|
inline |
set object's transform
|
inline |
set object's translation
|
inline |
set user data in geometry
|
inline |
set user data in object
|
inlinevirtual |
|
inline |
AABB hpp::fcl::CollisionGeometry::aabb_local |
BV hpp::fcl::BVNode< BV >::bv |
bounding volume storing the geometry
|
protected |
|
protected |
FCL_REAL hpp::fcl::CollisionGeometry::cost_density |
collision cost for unit volume
int hpp::fcl::BVNodeBase::first_child |
An index for first child node or primitive If the value is positive, it is the index of the first child bv node If the value is negative, it is -(primitive index + 1) Zero is not used.
int hpp::fcl::BVNodeBase::first_primitive |
The start id the primitive belonging to the current node. The index is referred to the primitive_indices in BVHModel and from that we can obtain the primitive's index in original data indirectly.
int hpp::fcl::BVNodeBase::num_primitives |
The number of primitives belonging to the current node.
|
protected |
FCL_REAL hpp::fcl::CollisionGeometry::threshold_free |
threshold for free (<= is free)
FCL_REAL hpp::fcl::CollisionGeometry::threshold_occupied |
threshold for occupied ( >= is occupied)
void* hpp::fcl::CollisionGeometry::user_data |
pointer to user defined data specific to this object
|
protected |
pointer to user defined data specific to this object