Definition of a box.
The box is centered on the origin of its canonical frame with its dimensions aligned with the frame's axes. The size of the box is given by three sizes.
#include <drake/geometry/shape_specification.h>
Public Member Functions | |
Box (double width, double depth, double height) | |
Constructs a box with the given width , depth , and height , which specify the box's dimension along the canonical x-, y-, and z-axes, respectively. More... | |
Box (const Vector3< double > &measures) | |
Constructs a box with a vector of measures: width, depth, and height – the box's dimensions along the canonical x-, y-, and z-axes, respectively. More... | |
~Box () final | |
double | width () const |
Returns the box's dimension along the x axis. More... | |
double | depth () const |
Returns the box's dimension along the y axis. More... | |
double | height () const |
Returns the box's dimension along the z axis. More... | |
const Vector3< double > & | size () const |
Returns the box's dimensions. More... | |
Implements CopyConstructible, CopyAssignable, MoveConstructible, MoveAssignable | |
Box (const Box &)=default | |
Box & | operator= (const Box &)=default |
Box (Box &&)=default | |
Box & | operator= (Box &&)=default |
Public Member Functions inherited from Shape | |
virtual | ~Shape () |
void | Reify (ShapeReifier *reifier, void *user_data=nullptr) const |
Causes this description to be reified in the given reifier . More... | |
std::unique_ptr< Shape > | Clone () const |
Creates a unique copy of this shape. More... | |
std::string_view | type_name () const |
Returns the (unqualified) type name of this Shape, e.g., "Box". More... | |
std::string | to_string () const |
Returns a string representation of this shape. More... | |
template<typename ReturnType = void, typename Visitor > | |
decltype(auto) | Visit (Visitor &&visitor) const |
Calls the given visitor function with *this as the sole argument, but with *this downcast to be the shape's concrete subclass. More... | |
Static Public Member Functions | |
static Box | MakeCube (double edge_size) |
Constructs a cube with the given edge_size for its width, depth, and height. More... | |
Additional Inherited Members | |
Protected Types inherited from Shape | |
using | VariantShapeConstPtr = std::variant< const Box *, const Capsule *, const Convex *, const Cylinder *, const Ellipsoid *, const HalfSpace *, const Mesh *, const MeshcatCone *, const Sphere * > |
(Internal use only) All concrete subclasses, as const pointers. More... | |
Protected Member Functions inherited from Shape | |
Shape () | |
(Internal use only) Constructor for use by derived classes. More... | |
Shape (const Shape &)=default | |
(Internal use only) For derived classes. More... | |
Shape & | operator= (const Shape &)=default |
(Internal use only) For derived classes. More... | |
Shape (Shape &&)=default | |
(Internal use only) For derived classes. More... | |
Shape & | operator= (Shape &&)=default |
(Internal use only) For derived classes. More... | |
Constructs a box with the given width
, depth
, and height
, which specify the box's dimension along the canonical x-, y-, and z-axes, respectively.
std::exception | if width , depth or height are not strictly positive. |
Constructs a box with a vector of measures: width, depth, and height – the box's dimensions along the canonical x-, y-, and z-axes, respectively.
std::exception | if the measures are not strictly positive. |
|
final |
double depth | ( | ) | const |
Returns the box's dimension along the y axis.
double height | ( | ) | const |
Returns the box's dimension along the z axis.
Constructs a cube with the given edge_size
for its width, depth, and height.
double width | ( | ) | const |
Returns the box's dimension along the x axis.