Geant4  10.04.p03
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Vector3D< double > Class Template Reference
Inheritance diagram for Vector3D< double >:
BasicVector3D< double >

Public Member Functions

 Vector3D ()
 
 Vector3D (double x1, double y1, double z1)
 
 Vector3D (const float *a)
 
 Vector3D (const double *a)
 
 Vector3D (const Vector3D< double > &v)
 
 Vector3D (const BasicVector3D< float > &v)
 
 Vector3D (const BasicVector3D< double > &v)
 
 ~Vector3D ()
 
 Vector3D (const CLHEP::Hep3Vector &v)
 
 operator CLHEP::Hep3Vector () const
 
Vector3D< double > & operator= (const Vector3D< double > &v)
 
Vector3D< double > & operator= (const BasicVector3D< float > &v)
 
Vector3D< double > & operator= (const BasicVector3D< double > &v)
 
Vector3D< double > & transform (const Transform3D &m)
 
- Public Member Functions inherited from BasicVector3D< double >
 BasicVector3D (doublex1, doubley1, doublez1)
 
 BasicVector3D (const BasicVector3D< float > &v)
 
virtual ~BasicVector3D ()
 
 operator double * ()
 
 operator const double * () const
 
 operator CLHEP::Hep3Vector () const
 
BasicVector3D< double > & operator= (const BasicVector3D< double > &v)
 
BasicVector3D< double > & operator+= (const BasicVector3D< double > &v)
 
BasicVector3D< double > & operator-= (const BasicVector3D< double > &v)
 
BasicVector3D< double > & operator*= (double a)
 
BasicVector3D< double > & operator/= (double a)
 
double operator() (int i) const
 
double & operator() (int i)
 
double operator[] (int i) const
 
double & operator[] (int i)
 
double x () const
 
double y () const
 
double z () const
 
void setX (doublea)
 
void setY (doublea)
 
void setZ (doublea)
 
void set (doublex1, doubley1, doublez1)
 
double perp2 () const
 
double perp2 (const BasicVector3D< double > &v) const
 
double perp () const
 
double perp (const BasicVector3D< double > &v) const
 
double rho () const
 
void setPerp (doublerh)
 
double mag2 () const
 
double mag () const
 
double r () const
 
double phi () const
 
double theta () const
 
double cosTheta () const
 
double getR () const
 
double getPhi () const
 
double getTheta () const
 
void setMag (doublema)
 
void setR (doublema)
 
void setPhi (doubleph)
 
void setTheta (doubleth)
 
double pseudoRapidity () const
 
double eta () const
 
double getEta () const
 
void setEta (doublea)
 
double dot (const BasicVector3D< double > &v) const
 
BasicVector3D< double > cross (const BasicVector3D< double > &v) const
 
double angle (const BasicVector3D< double > &v) const
 
BasicVector3D< double > unit () const
 
BasicVector3D< double > orthogonal () const
 
BasicVector3D< double > & rotateX (doublea)
 
BasicVector3D< double > & rotateY (doublea)
 
BasicVector3D< double > & rotateZ (doublea)
 
BasicVector3D< double > & rotate (doublea, const BasicVector3D< double > &v)
 

Additional Inherited Members

- Public Types inherited from BasicVector3D< double >
enum  
 
- Protected Member Functions inherited from BasicVector3D< double >
 BasicVector3D ()
 
- Protected Attributes inherited from BasicVector3D< double >
double v_ [3]
 

Detailed Description

template<>
class HepGeom::Vector3D< double >

Geometrical 3D Vector with components of double type.

Author
Evgeni Chernyaev Evgue.nosp@m.ni.T.nosp@m.chern.nosp@m.iaev.nosp@m.@cern.nosp@m..ch

Constructor & Destructor Documentation

Vector3D ( )

Default constructor.

Vector3D ( double  x1,
double  y1,
double  z1 
)

Constructor from three numbers.

Vector3D ( const float *  a)
explicit

Constructor from array of floats.

Vector3D ( const double *  a)
explicit

Constructor from array of doubles.

Vector3D ( const Vector3D< double > &  v)

Copy constructor.

Vector3D ( const BasicVector3D< float > &  v)

Constructor from BasicVector3D<float>.

Vector3D ( const BasicVector3D< double > &  v)

Constructor from BasicVector3D<double>.

~Vector3D ( )

Destructor.

Constructor from CLHEP::Hep3Vector. This constructor is needed only for backward compatibility and in principle should be absent.

Member Function Documentation

operator CLHEP::Hep3Vector ( ) const

Conversion (cast) to CLHEP::Hep3Vector. This operator is needed only for backward compatibility and in principle should not exit.

References BasicVector3D< T >::x(), BasicVector3D< T >::y(), and BasicVector3D< T >::z().

Vector3D<double>& operator= ( const Vector3D< double > &  v)
Vector3D<double>& transform ( const Transform3D m)

Transformation by Transform3D.