|
ant
A2 ant: class-based analysis framework
|
#include <vec3.h>
Public Member Functions | |
| constexpr | vec3 () noexcept=default |
| constexpr | vec3 (const vec3 &) noexcept=default |
| constexpr | vec3 (vec3 &&) noexcept=default |
| constexpr | vec3 (const double X, const double Y, const double Z) noexcept |
| constexpr | vec3 (const vec2 &XY, const double Z) noexcept |
| vec3 & | operator= (const vec3 &) noexcept=default |
| vec3 & | operator= (vec3 &&) noexcept=default |
| vec3 (const TVector3 &v) noexcept | |
| vec3 & | operator= (const TVector3 &v) noexcept |
| operator TVector3 () const noexcept | |
| vec3 & | operator+= (const vec3 &other) noexcept |
| vec3 & | operator-= (const vec3 &other) noexcept |
| vec3 | operator+ (const vec3 &other) const noexcept |
| vec3 | operator- (const vec3 &other) const noexcept |
| vec3 | operator- () const noexcept |
| vec3 & | operator*= (const double s) noexcept |
| vec3 & | operator/= (const double s) noexcept |
| vec3 | operator* (const double s) const noexcept |
| vec3 | operator/ (const double s) const noexcept |
| double | R2 () const noexcept |
| Get the length squared. More... | |
| double | R () const noexcept |
| Get the length or radius. More... | |
| void | SetR (double r) noexcept |
| SetR rescales vector, keeping theta/phi constant. More... | |
| double | Angle (const vec3 &other) const |
| Angle to another vec3. More... | |
| double | Dot (const vec3 &other) const noexcept |
| Dot product. More... | |
| vec3 | Cross (const vec3 &p) const noexcept |
| Cross product. More... | |
| double | Phi () const |
| Calculate the phi angle. More... | |
| void | SetPhi (double phi) |
| double | Theta () const |
| Calculate the theta angle. More... | |
| vec3 | Unit () const noexcept |
| Get a vector of unit length parallel to this one. More... | |
| bool | operator== (const vec3 &other) const noexcept |
| bool | operator!= (const vec3 &other) const noexcept |
| vec2 | XY () const noexcept |
| Get X and Y as vec2. More... | |
| vec2 | YZ () const noexcept |
| Get Y and Z as a vec2. More... | |
| vec2 | XZ () const noexcept |
| Get X and Z as a vec2. More... | |
| template<class Archive > | |
| void | serialize (Archive &archive) |
Static Public Member Functions | |
| static vec3 | RThetaPhi (const double r, const double theta, const double phi) noexcept |
| Create a new vec3 from Radius and theta and phi angles. More... | |
Public Attributes | |
| double | x = {} |
| double | y = {} |
| double | z = {} |
Friends | |
| std::ostream & | operator<< (std::ostream &stream, const vec3 &v) |
|
defaultnoexcept |
|
defaultnoexcept |
|
defaultnoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
noexcept |
|
inline |
Cross product.
| p | other vector |
|
inlinenoexcept |
Dot product.
| other |
|
noexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
noexcept |
|
inlinenoexcept |
|
inline |
Calculate the phi angle.
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinestaticnoexcept |
Create a new vec3 from Radius and theta and phi angles.
| r | Radius/Length of vector |
| theta | (radians) Angle to the z-axis |
| phi | (radians) |
|
inline |
|
inline |
|
inlinenoexcept |
SetR rescales vector, keeping theta/phi constant.
|
inline |
Calculate the theta angle.
|
inlinenoexcept |
Get a vector of unit length parallel to this one.
|
friend |
| double ant::vec3::x = {} |
| double ant::vec3::y = {} |
| double ant::vec3::z = {} |