Definition of an ellipsoid.
It is centered on the origin of its canonical frame with its dimensions aligned with the frame's axes. The standard equation for the ellipsoid is:
x²/a² + y²/b² + z²/c² = 1,
where a,b,c are the lengths of the principal semi-axes of the ellipsoid. The bounding box of the ellipsoid is [-a,a]x[-b,b]x[-c,c].
#include <drake/geometry/shape_specification.h>
Public Member Functions | |
Ellipsoid (double a, double b, double c) | |
Constructs an ellipsoid with the given lengths of its principal semi-axes, with a, b, and c measured along the x-, y-, and z- axes of the canonical frame, respectively. More... | |
Ellipsoid (const Vector3< double > &measures) | |
Constructs an ellipsoid with a vector of measures: the lengths of its principal semi-axes, with a, b, and c measured along the x-, y-, and z- axes of the canonical frame, respectively. More... | |
double | a () const |
double | b () const |
double | c () const |
Implements CopyConstructible, CopyAssignable, MoveConstructible, MoveAssignable | |
Ellipsoid (const Ellipsoid &)=default | |
Ellipsoid & | operator= (const Ellipsoid &)=default |
Ellipsoid (Ellipsoid &&)=default | |
Ellipsoid & | operator= (Ellipsoid &&)=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... | |
Additional Inherited Members | |
Protected Member Functions inherited from Shape | |
template<typename S > | |
Shape (ShapeTag< S > tag) | |
Constructor available for derived class construction. More... | |
Shape (const Shape &)=default | |
Shape & | operator= (const Shape &)=default |
Shape (Shape &&)=default | |
Shape & | operator= (Shape &&)=default |
Constructs an ellipsoid with the given lengths of its principal semi-axes, with a, b, and c measured along the x-, y-, and z- axes of the canonical frame, respectively.
std::exception | if a , b , or c are not strictly positive. |
Constructs an ellipsoid with a vector of measures: the lengths of its principal semi-axes, with a, b, and c measured along the x-, y-, and z- axes of the canonical frame, respectively.
std::exception | if the measures are not strictly positive. |
double a | ( | ) | const |
double b | ( | ) | const |
double c | ( | ) | const |