This is a strategy wrapper for the distance library PQP (Proximity Query Package).
More...
|
|
| ProximityStrategyPQP () |
| | Constructor.
|
| |
| 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 | setFirstContact (bool b) |
| | not implemented yet in rw::proximity::CollisionStrategy::setFirstContact
|
| |
| 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...
|
| |
| bool | doIsWithinDistance (rw::proximity::ProximityModel::Ptr a, const rw::math::Transform3D<> &wTa, rw::proximity::ProximityModel::Ptr b, const rw::math::Transform3D<> &wTb, double tolerance, rw::proximity::ProximityStrategyData &data) |
| | Checks to see if two proximity models \( \mathcal{F}_a \) and \( \mathcal{F}_b \) are closer than the specified tolerance. Result is cached in data. 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, rw::proximity::ProximityStrategyData &data) |
| | Calculates the distance between two proximity models \( \mathcal{a} \) and \( \mathcal{b} \). More...
|
| |
| rw::proximity::DistanceStrategy::Result & | doDistanceThreshold (rw::proximity::ProximityModel::Ptr aModel, const rw::math::Transform3D<> &wTa, rw::proximity::ProximityModel::Ptr bModel, const rw::math::Transform3D<> &wTb, double threshold, rw::proximity::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...
|
| |
| 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, 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 | clear () |
| | Clears any stored model information. More...
|
| |
|
int | getNrOfBVTests () |
| | returns the number of bounding volume tests performed since the last call to clearStats
|
| |
|
int | getNrOfTriTests () |
| | returns the number of ptriangle tests performed since the last call to clearStats
|
| |
|
void | clearStats () |
| | clears the bounding volume and triangle test counters.
|
| |
|
void | setThreshold (double threshold) |
| |
| std::pair< rw::math::Vector3D<>, rw::math::Vector3D<> > | getSurfaceNormals (rw::proximity::MultiDistanceResult &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 | ~CollisionToleranceStrategy () |
| | Destroys object.
|
| |
| bool | isWithinDistance (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) |
| | Checks to see if the geometry attached to two given frames \( \mathcal{F}_a \) and \( \mathcal{F}_b \) are closer than the specified tolerance. More...
|
| |
| bool | isWithinDistance (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 distance, class ProximityStrategyData &data) |
| | Checks to see if the geometry attached to two given frames \( \mathcal{F}_a \) and \( \mathcal{F}_b \) are closer than the specified tolerance. Result is cached in data. More...
|
| |
| bool | isWithinDistance (ProximityModel::Ptr a, const math::Transform3D< double > &wTa, ProximityModel::Ptr b, const math::Transform3D< double > &wTb, double tolerance, class ProximityStrategyData &data) |
| | Checks to see if two proximity models \( \mathcal{F}_a \) and \( \mathcal{F}_b \) are closer than the specified tolerance. Result is cached in data. 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...
|
| |
This is a strategy wrapper for the distance library PQP (Proximity Query Package).
PQP use Oriented Bounding Boxes (OBB) and hierarchical bounding trees for fast distance calculation.
For further information check out http://www.cs.unc.edu/~geom/SSV/