|  | 
|  | ProximityStrategyFCL (BV bv=BV::RSS) | 
|  | Constructor.  More... 
 | 
|  | 
| virtual | ~ProximityStrategyFCL () | 
|  | Destructor. 
 | 
|  | 
| virtual rw::proximity::ProximityModel::Ptr | createModel () | 
|  | creates an empty ProximityModel  More... 
 | 
|  | 
| void | destroyModel (rw::proximity::ProximityModel *model) | 
|  | deallocates the memory used for model  More... 
 | 
|  | 
| bool | addGeometry (rw::proximity::ProximityModel *model, const rw::geometry::Geometry &geom) | 
|  | 
| bool | addGeometry (rw::proximity::ProximityModel *model, rw::core::Ptr< rw::geometry::Geometry > geom, bool forceCopy=false) | 
|  | 
| bool | removeGeometry (rw::proximity::ProximityModel *model, const std::string &geomId) | 
|  | removes a geometry from a specific proximity model  More... 
 | 
|  | 
| std::vector< std::string > | getGeometryIDs (rw::proximity::ProximityModel *model) | 
|  | the list of all geometry ids that are associated to the proximity model model is returned  More... 
 | 
|  | 
| std::vector< rw::core::Ptr< rw::geometry::Geometry > > | getGeometries (rw::proximity::ProximityModel *model) | 
|  | the list of all geometry that are associated to the proximity model model is returned  More... 
 | 
|  | 
| void | clear () | 
|  | Clears any stored model information.  More... 
 | 
|  | 
| bool | doInCollision (rw::proximity::ProximityModel::Ptr a, const rw::math::Transform3D<> &wTa, rw::proximity::ProximityModel::Ptr b, const rw::math::Transform3D<> &wTb, rw::proximity::ProximityStrategyData &data) | 
|  | Checks to see if two proximity models are in collision.  More... 
 | 
|  | 
| void | getCollisionContacts (std::vector< rw::proximity::CollisionStrategy::Contact > &contacts, rw::proximity::ProximityStrategyData &data) | 
|  | this method interprets the collision query result and calculates a list of contacts to represent the collision geometry between the colliding geometries.  More... 
 | 
|  | 
| rw::proximity::DistanceStrategy::Result & | doDistance (rw::proximity::ProximityModel::Ptr a, const rw::math::Transform3D<> &wTa, rw::proximity::ProximityModel::Ptr b, const rw::math::Transform3D<> &wTb, class rw::proximity::ProximityStrategyData &data) | 
|  | Calculates the distance between two proximity models \( \mathcal{a} \) and \( \mathcal{b} \).  More... 
 | 
|  | 
| rw::proximity::DistanceMultiStrategy::Result & | doDistances (rw::proximity::ProximityModel::Ptr a, const rw::math::Transform3D<> &wTa, rw::proximity::ProximityModel::Ptr b, const rw::math::Transform3D<> &wTb, double tolerance, class rw::proximity::ProximityStrategyData &data) | 
|  | Calculates all distances between two given objects \( \mathcal{F}_a \) and \( \mathcal{F}_b \) where the distances are below a certain threshold.  More... 
 | 
|  | 
| void | setBV (const BV &bv) | 
|  | Set the bounding volume.  More... 
 | 
|  | 
| BV | getBV () | 
|  | Get the bounding volume.  More... 
 | 
|  | 
| fclCollisionRequest & | getCollisionRequest () | 
|  | Get access to the CollisionRequest that is used with FCL collision query.  More... 
 | 
|  | 
| fclDistanceRequest & | getDistanceRequest () | 
|  | Get access to the DistanceRequest that is used with FCL distance query.  More... 
 | 
|  | 
| void | setCollectFCLResults (bool enable) | 
|  | Specify if FCL results should be collected. 
 | 
|  | 
| bool | getCollectFCLResults () | 
|  | Get whether FCL results should be collected or not. 
 | 
|  | 
| std::vector< fclCollisionResult > & | getCollisionResults () | 
|  | Get access to the collected FCL collision results. 
 | 
|  | 
| fclCollisionResult & | getCollisionResult (std::size_t index) | 
|  | Get access to the collected FCL collision result.  More... 
 | 
|  | 
| fclDistanceResult & | getDistanceResult () | 
|  | Get access to the collected FCL distance result. 
 | 
|  | 
| std::pair< rw::math::Vector3D<>, rw::math::Vector3D<> > | getSurfaceNormals (rw::proximity::DistanceMultiStrategy::Result &res, int idx) | 
|  | Get the Surface Normals.  More... 
 | 
|  | 
| virtual | ~CollisionStrategy () | 
|  | Destroys object. 
 | 
|  | 
| bool | inCollision (const rw::core::Ptr< kinematics::Frame > a, const math::Transform3D< double > &wTa, const rw::core::Ptr< kinematics::Frame > b, const math::Transform3D< double > &wTb, QueryType type=FirstContact) | 
|  | Checks to see if two given frames \( \mathcal{F}_a \) and \( \mathcal{F}_b \) are in collision.  More... 
 | 
|  | 
| bool | inCollision (const rw::core::Ptr< kinematics::Frame > a, const math::Transform3D< double > &wTa, const rw::core::Ptr< kinematics::Frame > b, const math::Transform3D< double > &wTb, class ProximityStrategyData &data, QueryType type=FirstContact) | 
|  | Checks to see if two given frames \( \mathcal{F}_a \) and \( \mathcal{F}_b \) are in collision.  More... 
 | 
|  | 
| bool | inCollision (ProximityModel::Ptr a, const math::Transform3D< double > &wTa, ProximityModel::Ptr b, const math::Transform3D< double > &wTb, ProximityStrategyData &data) | 
|  | Checks to see if two proximity models are in collision.  More... 
 | 
|  | 
| virtual | ~ProximityStrategy () | 
|  | Destructor. 
 | 
|  | 
| virtual bool | addModel (rw::core::Ptr< rw::models::Object > object) | 
|  | Adds a Proximity model of a frame to this strategy.  More... 
 | 
|  | 
| virtual bool | addModel (const rw::core::Ptr< rw::kinematics::Frame > frame, const rw::geometry::Geometry &faces) | 
|  | Adds a Proximity model to a frame where the geometry is copied in the underlying proximity strategy.  More... 
 | 
|  | 
| virtual bool | addModel (const rw::core::Ptr< rw::kinematics::Frame > frame, rw::core::Ptr< rw::geometry::Geometry > faces, bool forceCopy=false) | 
|  | Adds a Proximity model to a frame.  More... 
 | 
|  | 
| virtual bool | hasModel (const rw::core::Ptr< rw::kinematics::Frame > frame) | 
|  | Tells whether the frame has a proximity model in the strategy.  More... 
 | 
|  | 
| virtual void | clearFrame (const rw::core::Ptr< rw::kinematics::Frame > frame) | 
|  | Clear (remove all) model information for frame frame. 
 | 
|  | 
| virtual void | clearFrames () | 
|  | Clear (remove all) model information for all frames. 
 | 
|  | 
| ProximityModel::Ptr | getModel (const rw::core::Ptr< rw::kinematics::Frame > frame) | 
|  | get the proximitymodel associated to frame. If no model has been associated to frame then NULL is returned.  More... 
 | 
|  | 
|  | DEPRECATED ("This function is deprecated due to a spelling mistake, use the correct " "spelling \"getGeometries\" instead") std | 
|  | 
| void | useThreads (int threads) | 
|  | setNumber of threads the strategy may use  More... 
 | 
|  | 
| virtual | ~DistanceStrategy () | 
|  | Destroys object. 
 | 
|  | 
| Result | distance (const rw::core::Ptr< kinematics::Frame > a, const math::Transform3D< double > &wTa, const rw::core::Ptr< kinematics::Frame > b, const math::Transform3D< double > &wTb) | 
|  | Calculates the distance between two given frames \( \mathcal{F}_a \) and \( \mathcal{F}_b \).  More... 
 | 
|  | 
| Result & | distance (const rw::core::Ptr< kinematics::Frame > a, const math::Transform3D< double > &wTa, const rw::core::Ptr< kinematics::Frame > b, const math::Transform3D< double > &wTb, class ProximityStrategyData &data) | 
|  | Calculates the distance between two given frames \( \mathcal{F}_a \) and \( \mathcal{F}_b \).  More... 
 | 
|  | 
| Result & | distance (ProximityModel::Ptr a, const math::Transform3D< double > &wTa, ProximityModel::Ptr b, const math::Transform3D< double > &wTb, class ProximityStrategyData &data) | 
|  | Calculates the distance between two proximity models \( \mathcal{a} \) and \( \mathcal{b} \).  More... 
 | 
|  | 
| Result | distance (const rw::core::Ptr< kinematics::Frame > a, const math::Transform3D< double > &wTa, const rw::core::Ptr< kinematics::Frame > b, const math::Transform3D< double > &wTb, double threshold) | 
|  | Calculates the distance between two given frames \( \mathcal{F}_a \) and \( \mathcal{F}_b \) if the distance are within threshold. If the distance between the frames are larger than the threshold, the result will be inaccurate.  More... 
 | 
|  | 
| DistanceStrategy::Result & | distance (const rw::core::Ptr< kinematics::Frame > a, const math::Transform3D< double > &wTa, const rw::core::Ptr< kinematics::Frame > b, const math::Transform3D< double > &wTb, double threshold, ProximityStrategyData &data) | 
|  | Calculates the distance between two given frames \( \mathcal{F}_a \) and \( \mathcal{F}_b \) if the distance are within threshold. If the distance between the frames are larger than the threshold, the result will be inaccurate.  More... 
 | 
|  | 
| DistanceStrategy::Result & | distance (ProximityModel::Ptr a, const math::Transform3D< double > &wTa, ProximityModel::Ptr b, const math::Transform3D< double > &wTb, double threshold, ProximityStrategyData &data) | 
|  | Calculates the distance between two given frames \( \mathcal{F}_a \) and \( \mathcal{F}_b \) if the distance are within threshold. If the distance between the frames are larger than the threshold, the result will be inaccurate.  More... 
 | 
|  | 
| virtual | ~DistanceMultiStrategy () | 
|  | Destroys object. 
 | 
|  | 
| Result | distances (const rw::core::Ptr< kinematics::Frame > a, const math::Transform3D< double > &wTa, const rw::core::Ptr< kinematics::Frame > b, const math::Transform3D< double > &wTb, double tolerance) | 
|  | Calculates all distances between geometry of two given frames \( \mathcal{F}_a \) and \( \mathcal{F}_b \).  More... 
 | 
|  | 
| Result & | distances (const rw::core::Ptr< kinematics::Frame > a, const math::Transform3D< double > &wTa, const rw::core::Ptr< kinematics::Frame > b, const math::Transform3D< double > &wTb, double tolerance, class ProximityStrategyData &data) | 
|  | Calculates all distances between geometry of two given frames \( \mathcal{F}_a \) and \( \mathcal{F}_b \).  More... 
 | 
|  | 
| Result & | distances (ProximityModel::Ptr a, const math::Transform3D< double > &wTa, ProximityModel::Ptr b, const math::Transform3D< double > &wTb, double tolerance, class ProximityStrategyData &data) | 
|  | Calculates all distances between two given objects \( \mathcal{F}_a \) and \( \mathcal{F}_b \) where the distances are below a certain threshold.  More... 
 | 
|  | 
|  | 
| static CollisionStrategy::Ptr | make (rw::core::Ptr< CollisionToleranceStrategy > strategy, double tolerance) | 
|  | A collision strategy constructed from a collision tolerance strategy and a resolution.  More... 
 | 
|  | 
| static CollisionStrategy::Ptr | make (rw::core::Ptr< CollisionToleranceStrategy > strategy, const rw::kinematics::FrameMap< double > &frameToTolerance, double defaultTolerance) | 
|  | A collision strategy constructed from a collision tolerance strategy and a resolution.  More... 
 | 
|  | 
| virtual bool | doInCollision (ProximityModel::Ptr a, const math::Transform3D< double > &wTa, ProximityModel::Ptr b, const math::Transform3D< double > &wTb, ProximityStrategyData &data)=0 | 
|  | Checks to see if two proximity models are in collision.  More... 
 | 
|  | 
|  | CollisionStrategy () | 
|  | Creates object. 
 | 
|  | 
|  | ProximityStrategy () | 
|  | Creates object. 
 | 
|  | 
| virtual Result & | doDistance (ProximityModel::Ptr a, const math::Transform3D< double > &wTa, ProximityModel::Ptr b, const math::Transform3D< double > &wTb, class ProximityStrategyData &data)=0 | 
|  | Calculates the distance between two proximity models \( \mathcal{a} \) and \( \mathcal{b} \).  More... 
 | 
|  | 
| virtual DistanceStrategy::Result & | doDistanceThreshold (ProximityModel::Ptr a, const math::Transform3D< double > &wTa, ProximityModel::Ptr b, const math::Transform3D< double > &wTb, double threshold, ProximityStrategyData &data) | 
|  | Calculates the distance between two given frames \( \mathcal{F}_a \) and \( \mathcal{F}_b \) if the distance are within threshold. If the distance between the frames are larger than the threshold, the result will be inaccurate.  More... 
 | 
|  | 
|  | DistanceStrategy () | 
|  | Creates object. 
 | 
|  | 
| virtual Result & | doDistances (ProximityModel::Ptr a, const math::Transform3D< double > &wTa, ProximityModel::Ptr b, const math::Transform3D< double > &wTb, double tolerance, class ProximityStrategyData &data)=0 | 
|  | Calculates all distances between two given objects \( \mathcal{F}_a \) and \( \mathcal{F}_b \) where the distances are below a certain threshold.  More... 
 | 
|  | 
|  | DistanceMultiStrategy () | 
|  | Creates object. 
 | 
|  | 
| size_t | _threads | 
|  | the number of threads the strategy may use 
 | 
|  | 
This is a strategy wrapper for the Flexible Collision Library (FCL) 
For further information check out https://github.com/flexible-collision-library/fcl