Class ComputeDistance

Class Documentation

class ComputeDistance

This class reduces the cost of identifying the geometry pair. This is mostly useful for repeated shape-shape queries.

ComputeDistance calc_distance (o1, o2);
FCL_REAL distance = calc_distance(tf1, tf2, request, result);

Public Functions

ComputeDistance(const CollisionGeometry *o1, const CollisionGeometry *o2)
FCL_REAL operator()(const Transform3f &tf1, const Transform3f &tf2, const DistanceRequest &request, DistanceResult &result) const
inline FCL_REAL operator()(const Transform3f &tf1, const Transform3f &tf2, DistanceRequest &request, DistanceResult &result) const
inline bool operator==(const ComputeDistance &other) const
inline bool operator!=(const ComputeDistance &other) const
inline virtual ~ComputeDistance()

Protected Functions

virtual FCL_REAL run(const Transform3f &tf1, const Transform3f &tf2, const DistanceRequest &request, DistanceResult &result) const

Protected Attributes

mutable const CollisionGeometry *o1
mutable const CollisionGeometry *o2
mutable GJKSolver solver
DistanceFunctionMatrix::DistanceFunc func
bool swap_geoms