17 #ifndef IGNITION_MATH_CAPSULE_HH_ 18 #define IGNITION_MATH_CAPSULE_HH_ 32 inline namespace IGNITION_MATH_VERSION_NAMESPACE {
42 template<
typename Precision>
52 public:
Capsule(
const Precision _length,
const Precision _radius);
58 public:
Capsule(
const Precision _length,
const Precision _radius,
63 public: Precision Radius()
const;
67 public:
void SetRadius(
const Precision _radius);
71 public: Precision Length()
const;
75 public:
void SetLength(
const Precision _length);
83 public:
void SetMat(
const Material &_mat);
91 public: std::optional< MassMatrix3<Precision> > MassMatrix()
const;
95 public:
bool operator==(
const Capsule &_capsule)
const;
99 public: Precision Volume()
const;
109 public: Precision DensityFromMass(
const Precision _mass)
const;
123 public:
bool SetDensityFromMass(
const Precision _mass);
126 private: Precision radius = 0.0;
129 private: Precision length = 0.0;
149 #include "ignition/math/detail/Capsule.hh" A representation of a capsule or sphere-capped cylinder.
Definition: Capsule.hh:43
Capsule< double > Capsuled
Capsule with double precision.
Definition: Capsule.hh:141
Contains information about a single material.
Definition: Material.hh:65
Capsule< int > Capsulei
Capsule with integer precision.
Definition: Capsule.hh:137
Capsule< float > Capsulef
Capsule with float precision.
Definition: Capsule.hh:145