Go to the documentation of this file.
61 if (sqrDistLowerBound > break_distance_squared)
return false;
69 if (sqrDistLowerBound > break_distance_squared)
return false;
76 for (Eigen::DenseIndex i = 0; i < 3; ++i) {
84 result += delta * delta;
89 }
else if (bmin > amax) {
91 result += delta * delta;
111 return std::sqrt(result);
116 for (Eigen::DenseIndex i = 0; i < 3; ++i) {
124 result += delta * delta;
125 }
else if (bmin > amax) {
127 result += delta * delta;
131 return std::sqrt(result);
144 return bb1.
overlap(b2, request, sqrDistLowerBound);
156 const Vec3s support2 =
161 const int sign1 = (dist1 > 0) ? 1 : -1;
162 const int sign2 = (dist2 > 0) ? 1 : -1;
165 if (sign1 != sign2) {
174 const int ssr_sign1 = (ssr_dist1 > 0) ? 1 : -1;
175 const int ssr_sign2 = (ssr_dist2 > 0) ? 1 : -1;
176 return ssr_sign1 != ssr_sign2;
179 return (sign1 != sign2);
Eigen::Matrix< CoalScalar, 3, 1 > Vec3s
CoalScalar distance(const AABB &other) const
Distance between two AABBs.
Half Space: this is equivalent to the Plane in ODE. A Half space has a priviledged direction: the dir...
AABB()
Creating an AABB with zero size (low bound +inf, upper bound -inf)
CoalScalar security_margin
Distance below which objects are considered in collision. See Collision.
A class describing the AABB collision structure, which is a box in 3D space determined by two diagona...
Infinite plane. A plane can be viewed as two half spaces; it has no priviledged direction....
Vec3s max_
The max point in the AABB.
bool overlap(const AABB &other) const
Check whether two AABB are overlap.
size_t select(const NodeBase< BV > &query, const NodeBase< BV > &node1, const NodeBase< BV > &node2)
select from node1 and node2 which is close to a given query. 0 for node1 and 1 for node2
request to the collision algorithm
CoalScalar signedDistance(const Vec3s &p) const
static AABB translate(const AABB &aabb, const Vec3s &t)
translate the center of AABB by t
Vec3s center() const
Center of the AABB.
COAL_DLLAPI bool overlap(const Matrix3s &R0, const Vec3s &T0, const AABB &b1, const AABB &b2)
Check collision between two aabbs, b1 is in configuration (R0, T0) and b2 is in identity.
Vec3s min_
The min point in the AABB.
CoalScalar getSweptSphereRadius() const
Get radius of sphere swept around the shape. This radius is always >= 0.
static AABB rotate(const AABB &aabb, const Matrix3s &R)
Eigen::Matrix< CoalScalar, 3, 3 > Matrix3s
CoalScalar break_distance
Distance below which bounding volumes are broken down. See Collision.
CoalScalar d
Plane offset.
hpp-fcl
Author(s):
autogenerated on Sat Nov 23 2024 03:44:57