19#ifndef ROOT_Math_GenVector_Polar3D 
   20#define ROOT_Math_GenVector_Polar3D  1 
   67   template <
class CoordSystem >
 
   68   explicit constexpr Polar3D( 
const CoordSystem & 
v ) :
 
 
  175   template <
class CoordSystem >
 
  196   T 
x()
 const { 
return X(); }
 
  197   T 
y()
 const { 
return Y(); }
 
  198   T 
z()
 const { 
return Z(); }
 
  204#if defined(__MAKECINT__) || defined(G__DICTIONARY) 
 
  236#if defined(__MAKECINT__) || defined(G__DICTIONARY) 
  251#if defined(__MAKECINT__) || defined(G__DICTIONARY) 
  263void Polar3D<T>::SetY(Scalar 
yy) {
 
  264   GenVector_exception 
e(
"Polar3D::SetY() is not supposed to be called");
 
  269void Polar3D<T>::SetZ(Scalar 
zz) {
 
  270   GenVector_exception 
e(
"Polar3D::SetZ() is not supposed to be called");
 
  275void Polar3D<T>::SetRho(Scalar rho) {
 
  276   GenVector_exception 
e(
"Polar3D::SetRho() is not supposed to be called");
 
  282void Polar3D<T>::SetEta(Scalar eta) {
 
  283   GenVector_exception 
e(
"Polar3D::SetEta() is not supposed to be called");
 
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t dest
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t r
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t src
 
Class describing a polar coordinate system based on r, theta and phi Phi is restricted to be in the r...
 
void Negate()
negate the vector
 
void SetTheta(const T &theta)
set the theta coordinate value keeping r and phi constant
 
void SetCoordinates(Scalar r, Scalar theta, Scalar phi)
Set internal data based on 3 Scalar numbers.
 
bool operator!=(const Polar3D &rhs) const
 
void SetR(const T &r)
set the r coordinate value keeping theta and phi constant
 
void SetPhi(const T &phi)
set the phi coordinate value keeping r and theta constant
 
void Scale(T a)
scale by a scalar quantity - for polar coordinates r changes
 
void SetCoordinates(const Scalar src[])
Set internal data based on an array of 3 Scalar numbers.
 
constexpr Polar3D() noexcept=default
Default constructor with r=theta=phi=0.
 
void GetCoordinates(Scalar &r, Scalar &theta, Scalar &phi) const
get internal data into 3 Scalar numbers
 
void GetCoordinates(Scalar dest[]) const
get internal data into an array of 3 Scalar numbers
 
Polar3D & operator=(const CoordSystem &c)
generic assignment operator from any coordinate system
 
constexpr Polar3D(const CoordSystem &v)
Construct from any Vector or coordinate system implementing R(), Theta() and Phi()
 
static constexpr unsigned int Dimension
 
bool operator==(const Polar3D &rhs) const
Exact equality.
 
void SetXYZ(Scalar x, Scalar y, Scalar z)
set all values using cartesian coordinates
 
Namespace for new Math classes and functions.
 
Scalar Eta_FromTheta(Scalar theta, Scalar r)
Implementation of eta from -log(tan(theta/2)).
 
Rotation3D::Scalar Scalar