RobWorkProject
Classes | Typedefs | Functions
rw::proximity Namespace Reference

Interfaces for collision checking and distance calculation. More...

Classes

class  BasicFilterStrategy
 a simple rule based broadphase filter strategy. A static frame pair list of frame pairs that is to be checked for collision is maintained. The list is static in the sense that it is not optimized to be changed. However the user can both add and remove new geometries and rules. More...
 
class  BinaryBVTree
 a generic pointer based tree structure. This is not the most efficient structure for bounding volume trees. though it is quite generic and easy to work with because of its pointer based structure. More...
 
class  BTPNode
 this node class stores the bv implicitly and use explicit pointers to its child nodes. This is an inefficient storage method and for general usage the other types should be used. However, there is only a small overhead for adding and deleting nodes so for very dynamic uses this might still be applicable. More...
 
class  BVTree
 this implementation defines a BVTree structure that use an indexed based storage representation. The implementation does not include functionality for building a BVTree. It is a data structure for accessing nodes in a bounding volume tree. More...
 
class  BVTreeCollider
 this class encapsulates the methods for iterating through two hierachical OBV trees while testing if the BV's are disjoint. More...
 
class  BVTreeColliderFactory
 factory for creating tree colliders. More...
 
class  BVTreeFactory
 factory for creating bounding volume trees. More...
 
struct  BVTreeIterator
 
class  BVTreeToleranceCollider
 this class encapsulates the methods for iterating through two hierachical OBV trees while testing if the OBV's are disjoint by more than a specified tolerance. More...
 
class  CollisionDetector
 The CollisionDetector implements an efficient way of checking a complete frame tree for collisions. More...
 
class  CollisionSetup
 Setup for the collision checker. More...
 
class  CollisionStrategy
 An interface that defines methods to test collision between two objects. More...
 
class  CollisionToleranceStrategy
 This is a collision strategy that detects collisions between objects that are closer than a specified tolerance. More...
 
class  DistanceCalculator
 The DistanceCalculator implements an efficient way of calculating different distances between two objects, each represented by a frame. More...
 
class  DistanceMultiStrategy
 This interface allows the definition of computing all points between two geometric objects that are closer than a specified tolerance. See ProxmityStrategy on how to add geometry to the strategy. More...
 
class  DistanceStrategy
 This is an interface that defines methods for computing the minimum distance between geometric objects. If geometry objects has been related to frames (see ProximityStrategy) then distance functions computing the distance between the geometry attached to frames can also be used. More...
 
class  IndexedPrimArray
 this class is a proxy to a triangle mesh where the triangles can be indirectly copied in an efficient manner. More...
 
class  OBVTreeDFSCollider
 this tree collider is used for oriented bounding volumes. The collider traverse the trees in a depth first manner. The DESCENTSTRATEGY is used to choose which node the traversal should pick first. The collider only works on trees of the same type. The BVCOLLIDER and PRIMCOLLIDER is used to check is bounding volumes or primitives are colliding. More...
 
struct  PrimArrayAccessor
 
class  ProximityCache
 Interface for cache used by ProximityStrategy. More...
 
class  ProximityData
 
class  ProximityFilter
 this class is used for fetching frame pairs using some proximity filtering strategy. More...
 
class  ProximityFilterStrategy
 describe the interface of a broad phase proximity strategy or proximity culler. More...
 
class  ProximityModel
 Class for managing the collision geometries associated to a frame. More...
 
class  ProximitySetup
 Setup for the collision checker. More...
 
class  ProximitySetupRule
 Rule specifying include/exclude of frame pairs. More...
 
class  ProximityStrategy
 The ProximityStrategy interface is a clean interface for defining methods that are common for different proximity strategy classes. Specifically adding of geometric models and relating them to frames. More...
 
class  ProximityStrategyData
 
class  ProximityStrategyRW
 This is a strategy wrapper for the distance library PQP (Proximity Query Package). More...
 
class  Raycaster
 a raycast implementation that relies on a collision strategy for finding the collision between the ray and the scene. More...
 
class  RectDistanceCalc
 class for testing if two Oriented Bounding Boxes are overlapping More...
 
class  RSSDistanceCalc
 class for testing if two Oriented Bounding Boxes are overlapping More...
 
class  SAPFilterStrategy
 This is a Sweep-And-Prune based filter strategy (broadphase strategy). More...
 
class  SphereDistanceCalc
 class for testing if two Oriented Bounding Boxes are overlapping More...
 
class  TreeDistanceCalc
 this class encapsulates the methods for iterating through two hierachical BV trees and finding the smallest distance between any triangle in the trees. More...
 

Typedefs

typedef CollisionStrategy::Result CollisionResult
 
typedef DistanceStrategy::Result DistanceResult
 
typedef DistanceMultiStrategy::Result MultiDistanceResult
 
typedef BinaryBVTree< rw::geometry::OBB<>, rw::geometry::Triangle<> > BinaryOBBPtrTreeD
 
typedef BinaryBVTree< rw::geometry::OBB< float >, rw::geometry::Triangle< float > > BinaryOBBPtrTreeF
 
typedef BVTree< rw::geometry::OBB< float > > OBBfTree
 

Functions

template<class T >
void SegCoords (T &t, T &u, const T &a, const T &b, const T &A_dot_B, const T &A_dot_T, const T &B_dot_T)
 

Detailed Description

Interfaces for collision checking and distance calculation.