Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

BesAngle Class Reference

#include <BesAngle.h>

List of all members.

Public Member Functions

double arc (double radius) const
double arc (double radius) const
 BesAngle (const double)
 BesAngle ()
 BesAngle (const double)
 BesAngle ()
double Deg () const
double deg () const
double Deg () const
double deg () const
BesAngle operator * (const double) const
BesAngle operator * (const double) const
void operator *= (double)
void operator *= (double)
 operator double () const
 operator double () const
BesAngle operator+ (const double) const
BesAngle operator+ (const BesAngle &) const
BesAngle operator+ (const double) const
BesAngle operator+ (const BesAngle &) const
void operator+= (double)
void operator+= (BesAngle)
void operator+= (double)
void operator+= (BesAngle)
BesAngle operator- (const double) const
BesAngle operator- (const BesAngle &) const
BesAngle operator- (const double) const
BesAngle operator- (const BesAngle &) const
void operator-= (double)
void operator-= (BesAngle)
void operator-= (double)
void operator-= (BesAngle)
BesAngle operator/ (const double) const
BesAngle operator/ (const double) const
void operator/= (double)
void operator/= (double)
void operator= (const BesAngle)
void operator= (const BesAngle)
double posDeg () const
double posDeg () const
double posRad () const
double posRad () const
double Rad () const
double rad () const
double Rad () const
double rad () const
int Sector (int max, BesAngle phi_0)
int Sector (int max)
int sector (int max, BesAngle phi_0)
int sector (int max)
int Sector (int max, BesAngle phi_0)
int Sector (int max)
int sector (int max, BesAngle phi_0)
int sector (int max)
void setDeg (const double)
void setDeg (const double)
void setRad (const double)
void setRad (const double)
void setSector (int n, int max, BesAngle phi_0)
void setSector (int n, int max)
void setSector (int n, int max, BesAngle phi_0)
void setSector (int n, int max)
 ~BesAngle ()
 ~BesAngle ()

Static Public Attributes

const double pi = Constants::pi
 used instead.
const double twoPi = Constants::twoPi

Static Protected Member Functions

double normalize (double)
double normalize (double)

Protected Attributes

double _phi

Static Protected Attributes

const double toDegrees = Constants::radToDegrees

Friends

double cos (const BesAngle)
double cos (const BesAngle)
BesAngle operator * (const double, const BesAngle &)
BesAngle operator * (const double, const BesAngle &)
double sin (const BesAngle)
double sin (const BesAngle)
double tan (const BesAngle)
double tan (const BesAngle)


Constructor & Destructor Documentation

BesAngle::BesAngle  )  [inline]
 

00110                           : _phi(0)
00111 { }

BesAngle::BesAngle const   double  )  [inline]
 

00113                                           : _phi(normalize(phi))
00114 {}

BesAngle::~BesAngle  )  [inline]
 

00116 {}

BesAngle::BesAngle  )  [inline]
 

BesAngle::BesAngle const   double  )  [inline]
 

BesAngle::~BesAngle  )  [inline]
 


Member Function Documentation

double BesAngle::arc double  radius  )  const [inline]
 

double BesAngle::arc double  radius  )  const [inline]
 

00140 { return radius * rad(); }

double BesAngle::Deg  )  const [inline]
 

00079 { return deg(); }

double BesAngle::deg  )  const [inline]
 

double BesAngle::Deg  )  const [inline]
 

00079 { return deg(); }

double BesAngle::deg  )  const [inline]
 

00122 { return _phi *  Constants::radToDegrees; }

double BesAngle::normalize double   )  [inline, static, protected]
 

double BesAngle::normalize double   )  [inline, static, protected]
 

00098                                               {
00099   if (angle < - Constants::pi) {
00100     angle += Constants::twoPi;
00101     if (angle < - Constants::pi) angle = fmod(angle+ Constants::pi, Constants::twoPi) + Constants::pi; 
00102   }
00103   else if (angle > Constants::pi) {
00104     angle -= Constants::twoPi;
00105     if (angle > Constants::pi) angle = fmod(angle+Constants::pi, Constants::twoPi) - Constants::pi;
00106   }
00107   return angle;
00108 }

BesAngle BesAngle::operator * const   double  )  const [inline]
 

BesAngle BesAngle::operator * const   double  )  const [inline]
 

00161 { return BesAngle(_phi * x); }

void BesAngle::operator *= double   )  [inline]
 

void BesAngle::operator *= double   )  [inline]
 

00190 { _phi = normalize(_phi*x); 
00191 }

BesAngle::operator double  )  const [inline]
 

00024 { return _phi;};   // automatic conversion to double

BesAngle::operator double  )  const [inline]
 

00024 { return _phi;};   // automatic conversion to double

BesAngle BesAngle::operator+ const   double  )  const [inline]
 

BesAngle BesAngle::operator+ const BesAngle  )  const [inline]
 

BesAngle BesAngle::operator+ const   double  )  const [inline]
 

00152 { return BesAngle(_phi + a); }

BesAngle BesAngle::operator+ const BesAngle  )  const [inline]
 

00149 { return BesAngle(_phi + a._phi); }

void BesAngle::operator+= double   )  [inline]
 

void BesAngle::operator+= BesAngle   )  [inline]
 

void BesAngle::operator+= double   )  [inline]
 

00178 { _phi = normalize(_phi + a); 
00179 }

void BesAngle::operator+= BesAngle   )  [inline]
 

00174 { _phi = normalize(_phi + a._phi );
00175 }

BesAngle BesAngle::operator- const   double  )  const [inline]
 

BesAngle BesAngle::operator- const BesAngle  )  const [inline]
 

BesAngle BesAngle::operator- const   double  )  const [inline]
 

00158 { return BesAngle(_phi - a); }

BesAngle BesAngle::operator- const BesAngle  )  const [inline]
 

00155 { return BesAngle(_phi - a._phi); }

void BesAngle::operator-= double   )  [inline]
 

void BesAngle::operator-= BesAngle   )  [inline]
 

void BesAngle::operator-= double   )  [inline]
 

00186 { _phi = normalize(_phi - a); 
00187 }

void BesAngle::operator-= BesAngle   )  [inline]
 

00182 { _phi = normalize(_phi - a._phi ); 
00183 }

BesAngle BesAngle::operator/ const   double  )  const [inline]
 

BesAngle BesAngle::operator/ const   double  )  const [inline]
 

00164 { return BesAngle(_phi / x); }

void BesAngle::operator/= double   )  [inline]
 

void BesAngle::operator/= double   )  [inline]
 

00194 { _phi = normalize(_phi/x); 
00195 }

void BesAngle::operator= const   BesAngle  )  [inline]
 

void BesAngle::operator= const   BesAngle  )  [inline]
 

00170 { _phi = normalize(a._phi); 
00171 }

double BesAngle::posDeg  )  const [inline]
 

double BesAngle::posDeg  )  const [inline]
 

00131 { return posRad() *  Constants::radToDegrees; }

double BesAngle::posRad  )  const [inline]
 

double BesAngle::posRad  )  const [inline]
 

00125 { 
00126   if (_phi >= 0.0) return _phi; 
00127   else return _phi + Constants::twoPi;
00128 }

double BesAngle::Rad  )  const [inline]
 

00078 { return rad(); }

double BesAngle::rad  )  const [inline]
 

double BesAngle::Rad  )  const [inline]
 

00078 { return rad(); }

double BesAngle::rad  )  const [inline]
 

00119 { return _phi; }

int BesAngle::Sector int  max,
BesAngle  phi_0
[inline]
 

00082 { return sector(max, phi_0); }

int BesAngle::Sector int  max  )  [inline]
 

00081 { return sector(max); }

int BesAngle::sector int  max,
BesAngle  phi_0
[inline]
 

int BesAngle::sector int  max  )  [inline]
 

int BesAngle::Sector int  max,
BesAngle  phi_0
[inline]
 

00082 { return sector(max, phi_0); }

int BesAngle::Sector int  max  )  [inline]
 

00081 { return sector(max); }

int BesAngle::sector int  max,
BesAngle  phi_0
[inline]
 

00205 { 
00206   BesAngle t( _phi - phi_0._phi);
00207   return t.sector(max);
00208 }

int BesAngle::sector int  max  )  [inline]
 

00198 { 
00199   double phi = _phi;
00200   if (phi < 0) phi += Constants::twoPi;
00201   return ( int (phi / (Constants::twoPi / max) ) + 1 );
00202 }

void BesAngle::setDeg const   double  )  [inline]
 

void BesAngle::setDeg const   double  )  [inline]
 

00137 { setRad(phi / Constants::radToDegrees); }

void BesAngle::setRad const   double  )  [inline]
 

void BesAngle::setRad const   double  )  [inline]
 

00134 { _phi = normalize(phi); }

void BesAngle::setSector int  n,
int  max,
BesAngle  phi_0
[inline]
 

void BesAngle::setSector int  n,
int  max
[inline]
 

void BesAngle::setSector int  n,
int  max,
BesAngle  phi_0
[inline]
 

00146 { setRad((n + 0.5) * Constants::twoPi / max + phi_0._phi); }

void BesAngle::setSector int  n,
int  max
[inline]
 

00143 { setRad((n + 0.5) * Constants::twoPi / max); }


Friends And Related Function Documentation

double cos const   BesAngle  )  [friend]
 

00214 { return cos(a._phi); }

double cos const   BesAngle  )  [friend]
 

00214 { return cos(a._phi); }

BesAngle operator * const   double,
const BesAngle a
[friend]
 

00167 { return BesAngle(a * x); }

BesAngle operator * const   double,
const BesAngle a
[friend]
 

00167 { return BesAngle(a * x); }

double sin const   BesAngle  )  [friend]
 

00211 { return sin(a._phi); }

double sin const   BesAngle  )  [friend]
 

00211 { return sin(a._phi); }

double tan const   BesAngle  )  [friend]
 

00217 { return tan(a._phi); }

double tan const   BesAngle  )  [friend]
 

00217 { return tan(a._phi); }


Member Data Documentation

double BesAngle::_phi [protected]
 

const double BesAngle::pi = Constants::pi [static]
 

used instead.

const double BesAngle::toDegrees = Constants::radToDegrees [static, protected]
 

const double BesAngle::twoPi = Constants::twoPi [static]
 


The documentation for this class was generated from the following files:
Generated on Wed Feb 2 15:51:59 2011 for BOSS6.5.5 by  doxygen 1.3.9.1