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

#include <Circle3D.hpp>

Inheritance diagram for mundy::Circle3D< Scalar, PointType, QuaternionType >:
[legend]

Public Member Functions

Constructors and destructor
constexpr Circle3D ()
 Default constructor. Initializes as invalid.
constexpr Circle3D (const point_t &center, const orientation_t &orientation, const value_type &radius)
 Constructor to initialize the circle3d.
template<ValidPointType OtherPointType, ValidQuaternionType OtherQuaternionType>
constexpr Circle3D (const OtherPointType &center, const OtherQuaternionType &orientation, const value_type &radius)
 Constructor to initialize the circle3d.
 ~Circle3D ()=default
 Destructor.
constexpr Circle3D (const Circle3D< value_type, point_t, orientation_t > &other)
 Deep copy constructor.
template<typename OtherCircle3DType>
constexpr Circle3D (const OtherCircle3DType &other)
 Deep copy constructor with different circle3d type.
constexpr Circle3D (Circle3D< value_type, point_t, orientation_t > &&other)
 Deep move constructor.
template<typename OtherCircle3DType>
constexpr Circle3D (OtherCircle3DType &&other)
 Deep move constructor.
Operators
constexpr Circle3D< value_type, point_t, orientation_t > & operator= (const Circle3D< value_type, point_t, orientation_t > &other)
 Copy assignment operator.
template<typename OtherCircle3DType>
constexpr Circle3D< value_type, point_t, orientation_t > & operator= (const OtherCircle3DType &other)
 Copy assignment operator.
constexpr Circle3D< value_type, point_t, orientation_t > & operator= (Circle3D< value_type, point_t, orientation_t > &&other)
 Move assignment operator.
template<typename OtherCircle3DType>
constexpr Circle3D< value_type, point_t, orientation_t > & operator= (OtherCircle3DType &&other)
 Move assignment operator.
Accessors
constexpr const point_tcenter () const
constexpr point_tcenter ()
constexpr const orientation_torientation () const
constexpr orientation_torientation ()
constexpr const value_typeradius () const
constexpr value_typeradius ()

Type aliases

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

Setters

template<ValidPointType OtherPointType>
constexpr void set_center (const OtherPointType &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_radius (const value_type &radius)
 Set the major radius.