Geant4 11.1.1
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
HepGeom::Vector3D< float > Class Reference

#include <Vector3D.h>

+ Inheritance diagram for HepGeom::Vector3D< float >:

Public Member Functions

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

Additional Inherited Members

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

Detailed Description

Geometrical 3D Vector with components of float type.

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

Definition at line 42 of file Vector3D.h.

Constructor & Destructor Documentation

◆ Vector3D() [1/6]

HepGeom::Vector3D< float >::Vector3D ( )
default

Default constructor.

◆ Vector3D() [2/6]

HepGeom::Vector3D< float >::Vector3D ( float  x1,
float  y1,
float  z1 
)
inline

Constructor from three numbers.

Definition at line 50 of file Vector3D.h.

50: BasicVector3D<float>(x1,y1,z1) {}

◆ Vector3D() [3/6]

HepGeom::Vector3D< float >::Vector3D ( const float *  a)
inlineexplicit

Constructor from array of floats.

Definition at line 54 of file Vector3D.h.

55 : BasicVector3D<float>(a[0],a[1],a[2]) {}

◆ Vector3D() [4/6]

HepGeom::Vector3D< float >::Vector3D ( const Vector3D< float > &  )
default

Copy constructor.

◆ Vector3D() [5/6]

HepGeom::Vector3D< float >::Vector3D ( Vector3D< float > &&  )
default

Move constructor.

◆ Vector3D() [6/6]

HepGeom::Vector3D< float >::Vector3D ( const BasicVector3D< float > &  v)
inline

Constructor from BasicVector3D<float>.

Definition at line 67 of file Vector3D.h.

67: BasicVector3D<float>(v) {}

◆ ~Vector3D()

HepGeom::Vector3D< float >::~Vector3D ( )
default

Destructor.

Member Function Documentation

◆ operator=() [1/3]

Vector3D< float > & HepGeom::Vector3D< float >::operator= ( const BasicVector3D< float > &  v)
inline

Assignment from BasicVector3D<float>.

Definition at line 79 of file Vector3D.h.

79 {
81 return *this;
82 }
BasicVector3D< T > & operator=(const BasicVector3D< T > &)=default

◆ operator=() [2/3]

Vector3D< float > & HepGeom::Vector3D< float >::operator= ( const Vector3D< float > &  )
default

Assignment.

◆ operator=() [3/3]

Vector3D< float > & HepGeom::Vector3D< float >::operator= ( Vector3D< float > &&  )
default

Move assignment.

◆ transform()

Vector3D< float > & HepGeom::Vector3D< float >::transform ( const Transform3D m)

Transformation by Transform3D.

Definition at line 10 of file Vector3D.cc.

10 {
11 double vx = x(), vy = y(), vz = z();
12 set(m.xx()*vx + m.xy()*vy + m.xz()*vz,
13 m.yx()*vx + m.yy()*vy + m.yz()*vz,
14 m.zx()*vx + m.zy()*vy + m.zz()*vz);
15 return *this;
16 }
void set(float x1, float y1, float z1)

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