42 #include <boost/math/constants/constants.hpp>
47 struct CollisionRequest;
78 return axes == other.
axes && Tr == other.
Tr &&
79 length[0] == other.
length[0] && length[1] == other.
length[1] &&
95 sqrDistLowerBound = sqrt(-1);
109 *
this = *
this + other;
118 return (std::sqrt(length[0] * length[0] + length[1] * length[1]) +
136 return (length[0] * length[1] * 2 * radius +
137 4 * boost::math::constants::pi<FCL_REAL>() * radius * radius *
#define HPP_FCL_DLLAPI
Definition: config.hh:88
RSS()
 
Definition: RSS.h:71
bool overlap(const RSS &other, RSS &) const
Check collision between two RSS and return the overlap part. For RSS, we return nothing,...
Definition: RSS.h:144
FCL_REAL distance(const RSS &other, Vec3f *P=NULL, Vec3f *Q=NULL) const
the distance between two RSS; P and Q, if not NULL, return the nearest points
FCL_REAL depth() const
Depth of the RSS.
Definition: RSS.h:132
Vec3f Tr
Origin of the rectangle in RSS.
Definition: RSS.h:62
FCL_REAL volume() const
Volume of the RSS.
Definition: RSS.h:135
FCL_REAL size() const
Size of the RSS (used in BV_Splitter to order two RSSs)
Definition: RSS.h:117
FCL_REAL distance(const Matrix3f &R0, const Vec3f &T0, const kIOS &b1, const kIOS &b2, Vec3f *P=NULL, Vec3f *Q=NULL)
Approximate distance between two kIOS bounding volumes.
RSS operator+(const RSS &other) const
Return the merged RSS of current RSS and the other one.
bool overlap(const RSS &other, const CollisionRequest &, FCL_REAL &sqrDistLowerBound) const
Not implemented.
Definition: RSS.h:93
FCL_REAL radius
Radius of sphere summed with rectangle to form RSS.
Definition: RSS.h:68
FCL_REAL width() const
Width of the RSS.
Definition: RSS.h:126
bool overlap(const Matrix3f &R0, const Vec3f &T0, const AABB &b1, const AABB &b2)
Check collision between two aabbs, b1 is in configuration (R0, T0) and b2 is in identity.
bool operator!=(const RSS &other) const
Difference operator.
Definition: RSS.h:84
FCL_REAL length[2]
Side lengths of rectangle.
Definition: RSS.h:65
bool overlap(const RSS &other) const
Check collision between two RSS.
bool operator==(const RSS &other) const
Equality operator.
Definition: RSS.h:77
Matrix3f axes
Orientation of RSS. axis[i] is the ith column of the orientation matrix for the RSS; it is also the i...
Definition: RSS.h:59
RSS & operator+=(const RSS &other)
Merge the RSS and another RSS.
Definition: RSS.h:108
const Vec3f & center() const
The RSS center.
Definition: RSS.h:123
bool contain(const Vec3f &p) const
Check whether the RSS contains a point.
RSS & operator+=(const Vec3f &p)
A simple way to merge the RSS and a point, not compact.
FCL_REAL height() const
Height of the RSS.
Definition: RSS.h:129
Eigen::Matrix< FCL_REAL, 3, 3 > Matrix3f
Definition: data_types.h:68
Eigen::Matrix< FCL_REAL, 3, 1 > Vec3f
Definition: data_types.h:66
double FCL_REAL
Definition: data_types.h:65
Main namespace.
Definition: broadphase_bruteforce.h:44
request to the collision algorithm
Definition: collision_data.h:235