Mundy: Multibody Nonlocal Dynamics Version of the Day
Loading...
Searching...
No Matches
mundy::Ellipsoid< Scalar, PointType, OrientationType > Class Template Reference

#include <Ellipsoid.hpp>

Public Member Functions

Constructors and destructor
constexpr Ellipsoid ()
 Default constructor. Default initializes center/orientation and sets axis radii to invalid values.
constexpr Ellipsoid (const point_t &center, const value_type &radius_1, const value_type &radius_2, const value_type &radius_3)
 Constructor to initialize the center and radii.
constexpr Ellipsoid (const value_type &x, const value_type &y, const value_type &z, const value_type &qw, const value_type &qx, const value_type &qy, const value_type &qz, const value_type &radius_1, const value_type &radius_2, const value_type &radius_3)
 Constructor to initialize the center and axis radii.
constexpr Ellipsoid (const point_t &center, const orientation_t &orientation, const point_t &radii)
 Constructor to initialize the center and axis radii.
constexpr Ellipsoid (const point_t &center, const orientation_t &orientation, const value_type &radius_1, const value_type &radius_2, const value_type &radius_3)
 Constructor to initialize the center and axis radii.
constexpr ~Ellipsoid ()=default
 Destructor.
constexpr Ellipsoid (const Ellipsoid< value_type, point_t, orientation_t > &other)
 Deep copy constructor.
template<typename OtherEllipsoidType>
constexpr Ellipsoid (const OtherEllipsoidType &other)
 Deep copy constructor with different ellipsoid type.
constexpr Ellipsoid (Ellipsoid< value_type, point_t, orientation_t > &&other)
 Deep move constructor.
template<typename OtherEllipsoidType>
constexpr Ellipsoid (OtherEllipsoidType &&other)
 Deep move constructor with different ellipsoid type.
Operators
constexpr Ellipsoid< value_type, point_t, orientation_t > & operator= (const Ellipsoid< value_type, point_t, orientation_t > &other)
 Copy assignment operator.
template<typename OtherEllipsoidType>
constexpr Ellipsoid< value_type, point_t, orientation_t > & operator= (const OtherEllipsoidType &other)
 Copy assignment operator with different ellipsoid type.
constexpr Ellipsoid< value_type, point_t, orientation_t > & operator= (Ellipsoid< value_type, point_t, orientation_t > &&other)
 Move assignment operator.
template<typename OtherEllipsoidType>
constexpr Ellipsoid< value_type, point_t, orientation_t > & operator= (OtherEllipsoidType &&other)
 Move assignment operator with different ellipsoid type.
Accessors
constexpr const point_tcenter () const
 Accessor for the center.
constexpr point_tcenter ()
 Accessor for the center.
constexpr const orientation_torientation () const
 Accessor for the orientation.
constexpr orientation_torientation ()
 Accessor for the orientation.
constexpr const point_tradii () const
 Accessor for the radii.
constexpr point_tradii ()
 Accessor for the radii.
constexpr const value_typeradius_1 () const
 Accessor for the first axis length.
constexpr value_typeradius_1 ()
 Accessor for the first axis length.
constexpr const value_typeradius_2 () const
 Accessor for the second axis length.
constexpr value_typeradius_2 ()
 Accessor for the second axis length.
constexpr const value_typeradius_3 () const
 Accessor for the third axis length.
constexpr value_typeradius_3 ()
 Accessor for the third axis length.

Type aliases

using value_type = Scalar
 Our scalar type.
using point_t = PointType
 Our point type.
using orientation_t = OrientationType
 Our quaternion type.
static constexpr bool is_finite = true

Setters

constexpr void set_center (const point_t &center)
 Set the center.
constexpr void set_center (const value_type &x, const value_type &y, const value_type &z)
 Set the center.
constexpr void set_orientation (const orientation_t &orientation)
 Set the orientation.
constexpr void set_orientation (const value_type &qw, const value_type &qx, const value_type &qy, const value_type &qz)
 Set the orientation.
constexpr void set_radii (const point_t &radii)
 Set the radii.
constexpr void set_radii (const value_type &radius_1, const value_type &radius_2, const value_type &radius_3)
 Set the radii.