 ROOT   Reference Guide ROOT::Math::Cartesian2D< T > Class Template Reference
template<class T = double>
class ROOT::Math::Cartesian2D< T >

Class describing a 2D cartesian coordinate system (x, y coordinates)

Overview of the physics vector library

Definition at line 39 of file Cartesian2D.h.

typedef T Scalar

## Public Member Functions

Cartesian2D ()
Default constructor with x=y=0. More...

Cartesian2D (const Cartesian2D &v)
copy constructor More...

template<class CoordSystem >
Cartesian2D (const CoordSystem &v)
Construct from any Vector or coordinate system implementing X() and Y() More...

template<class T2 >
Cartesian2D (const Polar2D< T2 > &v)

Cartesian2D (Scalar xx, Scalar yy)
Constructor from x,y coordinates. More...

void GetCoordinates (Scalar &xx, Scalar &yy) const
get internal data into 2 Scalar numbers More...

Scalar Mag2 () const

void Negate ()
negate the vector More...

bool operator!= (const Cartesian2D &rhs) const

Cartesian2Doperator= (const Cartesian2D &v)
assignment operator More...

template<class CoordSystem >
Cartesian2Doperator= (const CoordSystem &v)
Assignment from any class implementing x(),y() (can assign from any coordinate system) More...

template<class T2 >
Cartesian2Doperator= (const Polar2D< T2 > &v)

bool operator== (const Cartesian2D &rhs) const
Exact equality. More...

Scalar Phi () const

Scalar R () const

void Rotate (Scalar angle)
rotate by an angle More...

void Scale (Scalar a)
scale the vector by a scalar quantity a More...

void SetCoordinates (Scalar xx, Scalar yy)
Set internal data based on 2 Scalar numbers. More...

void SetX (Scalar a)
set the x coordinate value keeping y constant More...

void SetXY (Scalar xx, Scalar yy)
set all values using cartesian coordinates More...

void SetY (Scalar a)
set the y coordinate value keeping x constant More...

Scalar X () const

Scalar x () const

Scalar Y () const

Scalar y () const

## Private Attributes

fX
(Contiguous) data containing the coordinates values x and y More...

fY

#include <Math/GenVector/Cartesian2D.h>

## ◆ Scalar

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

Definition at line 43 of file Cartesian2D.h.

## ◆ Cartesian2D() [1/5]

template<class T = double>
 ROOT::Math::Cartesian2D< T >::Cartesian2D ( )
inline

Default constructor with x=y=0.

Definition at line 48 of file Cartesian2D.h.

## ◆ Cartesian2D() [2/5]

template<class T = double>
 ROOT::Math::Cartesian2D< T >::Cartesian2D ( Scalar xx, Scalar yy )
inline

Constructor from x,y coordinates.

Definition at line 53 of file Cartesian2D.h.

## ◆ Cartesian2D() [3/5]

template<class T = double>
template<class CoordSystem >
 ROOT::Math::Cartesian2D< T >::Cartesian2D ( const CoordSystem & v )
inlineexplicit

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

Definition at line 60 of file Cartesian2D.h.

## ◆ Cartesian2D() [4/5]

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

copy constructor

Definition at line 69 of file Cartesian2D.h.

## ◆ Cartesian2D() [5/5]

template<class T = double>
template<class T2 >
 ROOT::Math::Cartesian2D< T >::Cartesian2D ( const Polar2D< T2 > & v )
inlineexplicit

Definition at line 166 of file Cartesian2D.h.

## ◆ GetCoordinates()

template<class T = double>
 void ROOT::Math::Cartesian2D< T >::GetCoordinates ( Scalar & xx, Scalar & yy ) const
inline

get internal data into 2 Scalar numbers

Definition at line 89 of file Cartesian2D.h.

## ◆ Mag2()

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

Definition at line 93 of file Cartesian2D.h.

## ◆ Negate()

template<class T = double>
 void ROOT::Math::Cartesian2D< T >::Negate ( )
inline

negate the vector

Definition at line 123 of file Cartesian2D.h.

## ◆ operator!=()

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

Definition at line 153 of file Cartesian2D.h.

## ◆ operator=() [1/3]

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

assignment operator

Definition at line 75 of file Cartesian2D.h.

## ◆ operator=() [2/3]

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

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

Definition at line 141 of file Cartesian2D.h.

## ◆ operator=() [3/3]

template<class T = double>
template<class T2 >
 Cartesian2D & ROOT::Math::Cartesian2D< T >::operator= ( const Polar2D< T2 > & v )
inline

Definition at line 181 of file Cartesian2D.h.

## ◆ operator==()

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

Exact equality.

Definition at line 150 of file Cartesian2D.h.

## ◆ Phi()

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

Definition at line 95 of file Cartesian2D.h.

## ◆ R()

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

Definition at line 94 of file Cartesian2D.h.

## ◆ Rotate()

template<class T = double>
 void ROOT::Math::Cartesian2D< T >::Rotate ( Scalar angle )
inline

rotate by an angle

Definition at line 128 of file Cartesian2D.h.

## ◆ Scale()

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

scale the vector by a scalar quantity a

Definition at line 118 of file Cartesian2D.h.

## ◆ SetCoordinates()

template<class T = double>
 void ROOT::Math::Cartesian2D< T >::SetCoordinates ( Scalar xx, Scalar yy )
inline

Set internal data based on 2 Scalar numbers.

Definition at line 84 of file Cartesian2D.h.

## ◆ SetX()

template<class T = double>
 void ROOT::Math::Cartesian2D< T >::SetX ( Scalar a )
inline

set the x coordinate value keeping y constant

Definition at line 100 of file Cartesian2D.h.

## ◆ SetXY()

template<class T = double>
 void ROOT::Math::Cartesian2D< T >::SetXY ( Scalar xx, Scalar yy )
inline

set all values using cartesian coordinates

Definition at line 110 of file Cartesian2D.h.

## ◆ SetY()

template<class T = double>
 void ROOT::Math::Cartesian2D< T >::SetY ( Scalar a )
inline

set the y coordinate value keeping x constant

Definition at line 105 of file Cartesian2D.h.

## ◆ X()

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

Definition at line 91 of file Cartesian2D.h.

## ◆ x()

template<class T = double>
 Scalar ROOT::Math::Cartesian2D< T >::x ( ) const
inline

Definition at line 160 of file Cartesian2D.h.

## ◆ Y()

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

Definition at line 92 of file Cartesian2D.h.

## ◆ y()

template<class T = double>
 Scalar ROOT::Math::Cartesian2D< T >::y ( ) const
inline

Definition at line 161 of file Cartesian2D.h.

## ◆ fX

template<class T = double>
 T ROOT::Math::Cartesian2D< T >::fX
private

(Contiguous) data containing the coordinates values x and y

Definition at line 209 of file Cartesian2D.h.

## ◆ fY

template<class T = double>
 T ROOT::Math::Cartesian2D< T >::fY
private

Definition at line 210 of file Cartesian2D.h.

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