This set of classes allows quickly detecting whether a given point is inside an object or not. This capability is useful when removing points from inside the robot (when the robot sees its arms, for example). More...
Namespaces | |
detail | |
Classes | |
class | AABB |
Represents an axis-aligned bounding box. More... | |
class | Body |
A body is a shape + its pose. Point inclusion, ray intersection can be tested, volumes and bounding spheres can be computed. More... | |
class | BodyVector |
A vector of Body objects. More... | |
struct | BoundingCylinder |
Definition of a cylinder. More... | |
struct | BoundingSphere |
Definition of a sphere that bounds another object. More... | |
class | Box |
Definition of a box. More... | |
class | ConvexMesh |
Definition of a convex mesh. Convex hull is computed for a given shape::Mesh. More... | |
class | Cylinder |
Definition of a cylinder. More... | |
class | OBB |
Represents an oriented bounding box. More... | |
class | OBBPrivate |
class | Sphere |
Definition of a sphere. More... | |
Typedefs | |
typedef std::shared_ptr< const Body > | BodyConstPtr |
Shared pointer to a const Body. More... | |
typedef std::shared_ptr< Body > | BodyPtr |
Shared pointer to a Body. More... | |
Functions | |
void | computeBoundingSphere (const std::vector< const Body * > &bodies, BoundingSphere &mergedSphere) |
Compute the bounding sphere for a set of bodies and store the resulting sphere in mergedSphere. More... | |
Body * | constructBodyFromMsg (const shape_msgs::Mesh &shape, const geometry_msgs::Pose &pose) |
Create a body from a given shape. More... | |
Body * | constructBodyFromMsg (const shape_msgs::SolidPrimitive &shape, const geometry_msgs::Pose &pose) |
Create a body from a given shape. More... | |
Body * | constructBodyFromMsg (const shapes::ShapeMsg &shape, const geometry_msgs::Pose &pose) |
Create a body from a given shape. More... | |
template<typename T > | |
Body * | constructBodyFromMsgHelper (const T &shape_msg, const geometry_msgs::Pose &pose) |
void | constructMarkerFromBody (const bodies::Body *body, visualization_msgs::Marker &msg) |
Construct a Marker message that corresponds to this (scaled and padded) body. More... | |
shapes::ShapeConstPtr | constructShapeFromBody (const bodies::Body *body) |
Get a shape that corresponds to this (scaled and padded) body. More... | |
Body * | createBodyFromShape (const shapes::Shape *shape) |
Create a body from a given shape. More... | |
Body * | createEmptyBodyFromShapeType (const shapes::ShapeType &shapeType) |
Create a body from a given shape. More... | |
void | mergeBoundingBoxes (const std::vector< AABB > &boxes, AABB &mergedBox) |
Compute an axis-aligned bounding box to enclose a set of bounding boxes. More... | |
void | mergeBoundingBoxesApprox (const std::vector< OBB > &boxes, OBB &mergedBox) |
Compute an approximate oriented bounding box to enclose a set of bounding boxes. More... | |
void | mergeBoundingSpheres (const std::vector< BoundingSphere > &spheres, BoundingSphere &mergedSphere) |
Compute a bounding sphere to enclose a set of bounding spheres. More... | |
Eigen::Vector3d | normalize (const Eigen::Vector3d &dir) |
This set of classes allows quickly detecting whether a given point is inside an object or not. This capability is useful when removing points from inside the robot (when the robot sees its arms, for example).
typedef std::shared_ptr< const Body > bodies::BodyConstPtr |
typedef std::shared_ptr< Body > bodies::BodyPtr |
void bodies::computeBoundingSphere | ( | const std::vector< const Body * > & | bodies, |
BoundingSphere & | mergedSphere | ||
) |
Compute the bounding sphere for a set of bodies and store the resulting sphere in mergedSphere.
bodies::Body * bodies::constructBodyFromMsg | ( | const shape_msgs::Mesh & | shape, |
const geometry_msgs::Pose & | pose | ||
) |
Create a body from a given shape.
Definition at line 212 of file body_operations.cpp.
bodies::Body * bodies::constructBodyFromMsg | ( | const shape_msgs::SolidPrimitive & | shape, |
const geometry_msgs::Pose & | pose | ||
) |
Create a body from a given shape.
Definition at line 217 of file body_operations.cpp.
bodies::Body * bodies::constructBodyFromMsg | ( | const shapes::ShapeMsg & | shape, |
const geometry_msgs::Pose & | pose | ||
) |
Create a body from a given shape.
Definition at line 207 of file body_operations.cpp.
Body* bodies::constructBodyFromMsgHelper | ( | const T & | shape_msg, |
const geometry_msgs::Pose & | pose | ||
) |
Definition at line 181 of file body_operations.cpp.
void bodies::constructMarkerFromBody | ( | const bodies::Body * | body, |
visualization_msgs::Marker & | msg | ||
) |
Construct a Marker message that corresponds to this (scaled and padded) body.
Definition at line 130 of file body_operations.cpp.
shapes::ShapeConstPtr bodies::constructShapeFromBody | ( | const bodies::Body * | body | ) |
Get a shape that corresponds to this (scaled and padded) body.
Definition at line 81 of file body_operations.cpp.
bodies::Body * bodies::createBodyFromShape | ( | const shapes::Shape * | shape | ) |
Create a body from a given shape.
Definition at line 68 of file body_operations.cpp.
bodies::Body * bodies::createEmptyBodyFromShapeType | ( | const shapes::ShapeType & | shapeType | ) |
Create a body from a given shape.
Definition at line 43 of file body_operations.cpp.
Compute an axis-aligned bounding box to enclose a set of bounding boxes.
Compute an approximate oriented bounding box to enclose a set of bounding boxes.
void bodies::mergeBoundingSpheres | ( | const std::vector< BoundingSphere > & | spheres, |
BoundingSphere & | mergedSphere | ||
) |
Compute a bounding sphere to enclose a set of bounding spheres.
Definition at line 147 of file body_operations.cpp.
|
inline |
Definition at line 150 of file bodies.cpp.