ROOT::Math::Cartesian3D< T > Class Template Reference
[GenVector]

Class describing a 3D cartesian coordinate system (x, y, z coordinates). More...

#include <Cartesian3D.h>

Inheritance diagram for ROOT::Math::Cartesian3D< T >:

Inheritance graph
[legend]
Collaboration diagram for ROOT::Math::Cartesian3D< T >:

Collaboration graph
[legend]

List of all members.

Public Types

typedef T Scalar

Public Member Functions

 Cartesian3D ()
 Default constructor with x=y=z=0.
 Cartesian3D (Scalar xx, Scalar yy, Scalar zz)
 Constructor from x,y,z coordinates.
template<class CoordSystem >
 Cartesian3D (const CoordSystem &v)
 Construct from any Vector or coordinate system implementing X(), Y() and Z().
 Cartesian3D (const Cartesian3D &v)
 copy constructor
Cartesian3Doperator= (const Cartesian3D &v)
 assignment operator
void SetCoordinates (const Scalar src[])
 Set internal data based on an array of 3 Scalar numbers.
void GetCoordinates (Scalar dest[]) const
 get internal data into an array of 3 Scalar numbers
void SetCoordinates (Scalar xx, Scalar yy, Scalar zz)
 Set internal data based on 3 Scalar numbers.
void GetCoordinates (Scalar &xx, Scalar &yy, Scalar &zz) const
 get internal data into 3 Scalar numbers
Scalar X () const
Scalar Y () const
Scalar Z () const
Scalar Mag2 () const
Scalar Perp2 () const
Scalar Rho () const
Scalar R () const
Scalar Theta () const
Scalar Phi () const
Scalar Eta () const
void SetX (Scalar xx)
 set the x coordinate value keeping y and z constant
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
void SetXYZ (Scalar xx, Scalar yy, Scalar zz)
 set all values using cartesian coordinates
void Scale (Scalar a)
 scale the vector by a scalar quantity a
void Negate ()
 negate the vector
template<class CoordSystem >
Cartesian3Doperator= (const CoordSystem &v)
 Assignment from any class implementing x(),y() and z() (can assign from any coordinate system).
bool operator== (const Cartesian3D &rhs) const
 Exact equality.
bool operator!= (const Cartesian3D &rhs) const
x () const
y () const
z () const
template<class T2 >
 Cartesian3D (const Polar3D< T2 > &v)
template<class T2 >
Cartesian3Doperator= (const Polar3D< T2 > &v)


Detailed Description

template<class T = double>
class ROOT::Math::Cartesian3D< T >

Class describing a 3D cartesian coordinate system (x, y, z coordinates).

Definition at line 51 of file GenVector/Cartesian3D.h.


Member Typedef Documentation

template<class T = double>
typedef T ROOT::Math::Cartesian3D< T >::Scalar

Definition at line 55 of file GenVector/Cartesian3D.h.


Constructor & Destructor Documentation

template<class T = double>
ROOT::Math::Cartesian3D< T >::Cartesian3D (  )  [inline]

Default constructor with x=y=z=0.

Definition at line 60 of file GenVector/Cartesian3D.h.

template<class T = double>
ROOT::Math::Cartesian3D< T >::Cartesian3D ( Scalar  xx,
Scalar  yy,
Scalar  zz 
) [inline]

Constructor from x,y,z coordinates.

Definition at line 65 of file GenVector/Cartesian3D.h.

template<class T = double>
template<class CoordSystem >
ROOT::Math::Cartesian3D< T >::Cartesian3D ( const CoordSystem &  v  )  [inline, explicit]

Construct from any Vector or coordinate system implementing X(), Y() and Z().

Definition at line 72 of file GenVector/Cartesian3D.h.

template<class T = double>
ROOT::Math::Cartesian3D< T >::Cartesian3D ( const Cartesian3D< T > &  v  )  [inline]

copy constructor

Definition at line 80 of file GenVector/Cartesian3D.h.

template<class T = double>
template<class T2 >
ROOT::Math::Cartesian3D< T >::Cartesian3D ( const Polar3D< T2 > &  v  )  [inline, explicit]

Definition at line 197 of file GenVector/Cartesian3D.h.


Member Function Documentation

template<class T = double>
Scalar ROOT::Math::Cartesian3D< T >::Eta (  )  const [inline]

Definition at line 127 of file GenVector/Cartesian3D.h.

template<class T = double>
void ROOT::Math::Cartesian3D< T >::GetCoordinates ( Scalar xx,
Scalar yy,
Scalar zz 
) const [inline]

get internal data into 3 Scalar numbers

Definition at line 113 of file GenVector/Cartesian3D.h.

template<class T = double>
void ROOT::Math::Cartesian3D< T >::GetCoordinates ( Scalar  dest[]  )  const [inline]

get internal data into an array of 3 Scalar numbers

Definition at line 102 of file GenVector/Cartesian3D.h.

template<class T = double>
Scalar ROOT::Math::Cartesian3D< T >::Mag2 (  )  const [inline]

Definition at line 118 of file GenVector/Cartesian3D.h.

Referenced by ROOT::Math::Cartesian3D< double >::R().

template<class T = double>
void ROOT::Math::Cartesian3D< T >::Negate (  )  [inline]

negate the vector

Definition at line 163 of file GenVector/Cartesian3D.h.

template<class T = double>
bool ROOT::Math::Cartesian3D< T >::operator!= ( const Cartesian3D< T > &  rhs  )  const [inline]

Definition at line 183 of file GenVector/Cartesian3D.h.

template<class T = double>
template<class T2 >
Cartesian3D& ROOT::Math::Cartesian3D< T >::operator= ( const Polar3D< T2 > &  v  )  [inline]

Definition at line 210 of file GenVector/Cartesian3D.h.

template<class T = double>
template<class CoordSystem >
Cartesian3D& ROOT::Math::Cartesian3D< T >::operator= ( const CoordSystem &  v  )  [inline]

Assignment from any class implementing x(),y() and z() (can assign from any coordinate system).

Definition at line 170 of file GenVector/Cartesian3D.h.

template<class T = double>
Cartesian3D& ROOT::Math::Cartesian3D< T >::operator= ( const Cartesian3D< T > &  v  )  [inline]

assignment operator

Definition at line 86 of file GenVector/Cartesian3D.h.

template<class T = double>
bool ROOT::Math::Cartesian3D< T >::operator== ( const Cartesian3D< T > &  rhs  )  const [inline]

Exact equality.

Definition at line 180 of file GenVector/Cartesian3D.h.

Referenced by ROOT::Math::Cartesian3D< double >::operator!=().

template<class T = double>
Scalar ROOT::Math::Cartesian3D< T >::Perp2 (  )  const [inline]

Definition at line 119 of file GenVector/Cartesian3D.h.

Referenced by ROOT::Math::Cartesian3D< double >::Rho().

template<class T = double>
Scalar ROOT::Math::Cartesian3D< T >::Phi (  )  const [inline]

Definition at line 124 of file GenVector/Cartesian3D.h.

template<class T = double>
Scalar ROOT::Math::Cartesian3D< T >::R (  )  const [inline]

Definition at line 121 of file GenVector/Cartesian3D.h.

template<class T = double>
Scalar ROOT::Math::Cartesian3D< T >::Rho (  )  const [inline]

template<class T = double>
void ROOT::Math::Cartesian3D< T >::Scale ( Scalar  a  )  [inline]

scale the vector by a scalar quantity a

Definition at line 158 of file GenVector/Cartesian3D.h.

template<class T = double>
void ROOT::Math::Cartesian3D< T >::SetCoordinates ( Scalar  xx,
Scalar  yy,
Scalar  zz 
) [inline]

Set internal data based on 3 Scalar numbers.

Definition at line 108 of file GenVector/Cartesian3D.h.

template<class T = double>
void ROOT::Math::Cartesian3D< T >::SetCoordinates ( const Scalar  src[]  )  [inline]

Set internal data based on an array of 3 Scalar numbers.

Definition at line 97 of file GenVector/Cartesian3D.h.

template<class T = double>
void ROOT::Math::Cartesian3D< T >::SetX ( Scalar  xx  )  [inline]

set the x coordinate value keeping y and z constant

Definition at line 134 of file GenVector/Cartesian3D.h.

template<class T = double>
void ROOT::Math::Cartesian3D< T >::SetXYZ ( Scalar  xx,
Scalar  yy,
Scalar  zz 
) [inline]

set all values using cartesian coordinates

Definition at line 149 of file GenVector/Cartesian3D.h.

template<class T = double>
void ROOT::Math::Cartesian3D< T >::SetY ( Scalar  yy  )  [inline]

set the y coordinate value keeping x and z constant

Definition at line 139 of file GenVector/Cartesian3D.h.

template<class T = double>
void ROOT::Math::Cartesian3D< T >::SetZ ( Scalar  zz  )  [inline]

set the z coordinate value keeping x and y constant

Definition at line 144 of file GenVector/Cartesian3D.h.

template<class T = double>
Scalar ROOT::Math::Cartesian3D< T >::Theta (  )  const [inline]

Definition at line 122 of file GenVector/Cartesian3D.h.

template<class T = double>
T ROOT::Math::Cartesian3D< T >::x (  )  const [inline]

template<class T = double>
Scalar ROOT::Math::Cartesian3D< T >::X (  )  const [inline]

Definition at line 115 of file GenVector/Cartesian3D.h.

Referenced by ROOT::Math::Cartesian3D< double >::x().

template<class T = double>
T ROOT::Math::Cartesian3D< T >::y (  )  const [inline]

template<class T = double>
Scalar ROOT::Math::Cartesian3D< T >::Y (  )  const [inline]

Definition at line 116 of file GenVector/Cartesian3D.h.

Referenced by ROOT::Math::Cartesian3D< double >::y().

template<class T = double>
T ROOT::Math::Cartesian3D< T >::z (  )  const [inline]

template<class T = double>
Scalar ROOT::Math::Cartesian3D< T >::Z (  )  const [inline]


The documentation for this class was generated from the following file:

Generated on Thu Dec 16 21:09:44 2010 for ROOT Mathematical Libraries by  doxygen 1.5.9