Class describing a 3D cartesian coordinate system (x, y, z coordinates)
Definition at line 52 of file Cartesian3D.h.
Public Types | |
typedef T | Scalar |
Public Member Functions | |
constexpr | Cartesian3D () noexcept=default |
Default constructor with x=y=z=0. | |
template<class CoordSystem > | |
constexpr | Cartesian3D (const CoordSystem &v) |
Construct from any Vector or coordinate system implementing X(), Y() and Z() | |
template<class T2 > | |
Cartesian3D (const Polar3D< T2 > &v) | |
constexpr | Cartesian3D (Scalar xx, Scalar yy, Scalar zz) noexcept |
Constructor from x,y,z coordinates. | |
Scalar | Eta () const |
void | GetCoordinates (Scalar &xx, Scalar &yy, Scalar &zz) const |
get internal data into 3 Scalar numbers | |
void | GetCoordinates (Scalar dest[]) const |
get internal data into an array of 3 Scalar numbers | |
Scalar | Mag2 () const |
void | Negate () |
negate the vector | |
bool | operator!= (const Cartesian3D &rhs) const |
template<class CoordSystem > | |
Cartesian3D & | operator= (const CoordSystem &v) |
Assignment from any class implementing x(),y() and z() (can assign from any coordinate system) | |
template<class T2 > | |
Cartesian3D & | operator= (const Polar3D< T2 > &v) |
bool | operator== (const Cartesian3D &rhs) const |
Exact equality. | |
Scalar | Perp2 () const |
Scalar | Phi () const |
Scalar | R () const |
Scalar | Rho () const |
void | Scale (Scalar a) |
scale the vector by a scalar quantity a | |
void | SetCoordinates (const Scalar src[]) |
Set internal data based on an array of 3 Scalar numbers. | |
void | SetCoordinates (Scalar xx, Scalar yy, Scalar zz) |
Set internal data based on 3 Scalar numbers. | |
void | SetX (Scalar xx) |
set the x coordinate value keeping y and z constant | |
void | SetXYZ (Scalar xx, Scalar yy, Scalar zz) |
set all values using cartesian coordinates | |
void | SetY (Scalar yy) |
set the y coordinate value keeping x and z constant | |
void | SetZ (Scalar zz) |
set the z coordinate value keeping x and y constant | |
Scalar | Theta () const |
Scalar | X () const |
T | x () const |
Scalar | Y () const |
T | y () const |
Scalar | Z () const |
T | z () const |
Private Attributes | |
T | fX = 0 |
T | fY = 0 |
T | fZ = 0 |
#include <MathX/GenVectorX/Cartesian3D.h>
typedef T ROOT::ROOT_MATH_ARCH::Cartesian3D< T >::Scalar |
Definition at line 55 of file Cartesian3D.h.
|
constexprdefaultnoexcept |
Default constructor with x=y=z=0.
|
inlineconstexprnoexcept |
Constructor from x,y,z coordinates.
Definition at line 65 of file Cartesian3D.h.
|
inlineexplicitconstexpr |
Construct from any Vector or coordinate system implementing X(), Y() and Z()
Definition at line 72 of file Cartesian3D.h.
|
inlineexplicit |
Definition at line 204 of file Cartesian3D.h.
|
inline |
Definition at line 127 of file Cartesian3D.h.
|
inline |
get internal data into 3 Scalar numbers
Definition at line 109 of file Cartesian3D.h.
|
inline |
get internal data into an array of 3 Scalar numbers
Definition at line 89 of file Cartesian3D.h.
|
inline |
Definition at line 119 of file Cartesian3D.h.
|
inline |
negate the vector
Definition at line 167 of file Cartesian3D.h.
|
inline |
Definition at line 191 of file Cartesian3D.h.
|
inline |
Assignment from any class implementing x(),y() and z() (can assign from any coordinate system)
Definition at line 179 of file Cartesian3D.h.
|
inline |
Definition at line 218 of file Cartesian3D.h.
|
inline |
Exact equality.
Definition at line 190 of file Cartesian3D.h.
|
inline |
Definition at line 120 of file Cartesian3D.h.
|
inline |
Definition at line 124 of file Cartesian3D.h.
|
inline |
Definition at line 122 of file Cartesian3D.h.
|
inline |
Definition at line 121 of file Cartesian3D.h.
|
inline |
scale the vector by a scalar quantity a
Definition at line 157 of file Cartesian3D.h.
|
inline |
Set internal data based on an array of 3 Scalar numbers.
Definition at line 79 of file Cartesian3D.h.
|
inline |
Set internal data based on 3 Scalar numbers.
Definition at line 99 of file Cartesian3D.h.
|
inline |
set the x coordinate value keeping y and z constant
Definition at line 132 of file Cartesian3D.h.
|
inline |
set all values using cartesian coordinates
Definition at line 147 of file Cartesian3D.h.
|
inline |
set the y coordinate value keeping x and z constant
Definition at line 137 of file Cartesian3D.h.
|
inline |
set the z coordinate value keeping x and y constant
Definition at line 142 of file Cartesian3D.h.
|
inline |
Definition at line 123 of file Cartesian3D.h.
|
inline |
Definition at line 116 of file Cartesian3D.h.
|
inline |
Definition at line 197 of file Cartesian3D.h.
|
inline |
Definition at line 117 of file Cartesian3D.h.
|
inline |
Definition at line 198 of file Cartesian3D.h.
|
inline |
Definition at line 118 of file Cartesian3D.h.
|
inline |
Definition at line 199 of file Cartesian3D.h.
|
private |
Definition at line 244 of file Cartesian3D.h.
|
private |
Definition at line 245 of file Cartesian3D.h.
|
private |
Definition at line 246 of file Cartesian3D.h.