Belle II Software  release-08-01-10
ARICHPositionElement Class Reference

Position element for ARICH. More...

#include <ARICHPositionElement.h>

Inheritance diagram for ARICHPositionElement:
Collaboration diagram for ARICHPositionElement:

Public Member Functions

 ARICHPositionElement ()
 Default constructor.
 
 ARICHPositionElement (double x, double y, double z, double alpha, double beta, double gamma, const std::string &name="ARICHAlignment")
 Full constructor. More...
 
void setX (double x)
 Sets translation in x. More...
 
void setY (double y)
 Sets translation in y. More...
 
void setZ (double z)
 Sets translation in z. More...
 
void setRPhi (double r, double phi)
 Sets x,y from r,phi. More...
 
void setAlpha (double alpha)
 Sets rotation around x. More...
 
void setBeta (double beta)
 Sets rotation around y. More...
 
void setGamma (double gamma)
 Sets rotation around z. More...
 
void addShift (double dx, double dy, double dz, double dalpha, double dbeta, double dgamma)
 Shift the existing values of parameters. More...
 
double getX () const
 Returns translation in x. More...
 
double getY () const
 Returns translation in y. More...
 
double getZ () const
 Returns translation in z. More...
 
double getAlpha () const
 Returns rotation angle around x. More...
 
double getBeta () const
 Returns rotation angle around y. More...
 
double getGamma () const
 Returns rotation angle around z. More...
 
TRotation getRotation () const
 Returns rotation matrix. More...
 
TVector3 getTranslation () const
 Returns translation vector (always in basf2 units!) More...
 
bool isConsistent () const override
 Check for consistency of data members. More...
 
void print (const std::string &title="Parmeters of position element") const override
 Print the content of the class. More...
 
void setName (const std::string &name)
 Sets object name. More...
 
const std::string & getName () const
 Returns object name. More...
 
virtual void printSurface (const GeoOpticalSurface &surface) const
 Print the content of optical surface. More...
 
virtual void printPlacement (double x, double y, double z, double rx, double ry, double rz) const
 Print volume positioning parameters. More...
 

Protected Member Functions

 ClassDef (ARICHGeoBase, 2)
 ClassDef.
 

Protected Attributes

std::string m_name
 geometry object name
 

Static Protected Attributes

static double s_unit = Unit::cm
 conversion unit for length
 
static std::string s_unitName
 conversion unit name
 

Private Member Functions

 ClassDefOverride (ARICHPositionElement, 1)
 ClassDef.
 

Private Attributes

float m_x = 0
 translation in x
 
float m_y = 0
 translation in y
 
float m_z = 0
 translation in z
 
float m_alpha = 0
 rotation angle around x
 
float m_beta = 0
 rotation angle around y
 
float m_gamma = 0
 rotation angle around z
 

Detailed Description

Position element for ARICH.

Holding parameters for displacement and alignment of arich components

Definition at line 26 of file ARICHPositionElement.h.

Constructor & Destructor Documentation

◆ ARICHPositionElement()

ARICHPositionElement ( double  x,
double  y,
double  z,
double  alpha,
double  beta,
double  gamma,
const std::string &  name = "ARICHAlignment" 
)
inline

Full constructor.

Parameters
xtranslation in x
ytranslation in y
ztranslation in z
alpharotation angle around x
betarotation angle around y
gammarotation angle around z
nameobject name

Definition at line 45 of file ARICHPositionElement.h.

46  :
47  ARICHGeoBase(name),
48  m_x(x), m_y(y), m_z(z),
49  m_alpha(alpha), m_beta(beta), m_gamma(gamma)
50  {}
ARICHGeoBase()
Default constructor.
Definition: ARICHGeoBase.h:30
float m_beta
rotation angle around y
float m_alpha
rotation angle around x
float m_gamma
rotation angle around z

Member Function Documentation

◆ addShift()

void addShift ( double  dx,
double  dy,
double  dz,
double  dalpha,
double  dbeta,
double  dgamma 
)
inline

Shift the existing values of parameters.

Parameters
dxtranslation in x
dytranslation in y
dztranslation in z
dalpharotation angle around x
dbetarotation angle around y
dgammarotation angle around z

Definition at line 113 of file ARICHPositionElement.h.

◆ getAlpha()

double getAlpha ( ) const
inline

Returns rotation angle around x.

Returns
rotation angle

Definition at line 145 of file ARICHPositionElement.h.

◆ getBeta()

double getBeta ( ) const
inline

Returns rotation angle around y.

Returns
rotation angle

Definition at line 151 of file ARICHPositionElement.h.

◆ getGamma()

double getGamma ( ) const
inline

Returns rotation angle around z.

Returns
rotation angle

Definition at line 157 of file ARICHPositionElement.h.

◆ getName()

const std::string& getName ( ) const
inlineinherited

Returns object name.

Returns
object name

Definition at line 49 of file ARICHGeoBase.h.

◆ getRotation()

TRotation getRotation ( ) const
inline

Returns rotation matrix.

Returns
rotation matrix

Definition at line 163 of file ARICHPositionElement.h.

◆ getTranslation()

TVector3 getTranslation ( ) const
inline

Returns translation vector (always in basf2 units!)

Returns
translation vector

Definition at line 174 of file ARICHPositionElement.h.

◆ getX()

double getX ( ) const
inline

Returns translation in x.

Returns
x coordinate

Definition at line 127 of file ARICHPositionElement.h.

◆ getY()

double getY ( ) const
inline

Returns translation in y.

Returns
y coordinate

Definition at line 133 of file ARICHPositionElement.h.

◆ getZ()

double getZ ( ) const
inline

Returns translation in z.

Returns
z coordinate

Definition at line 139 of file ARICHPositionElement.h.

◆ isConsistent()

bool isConsistent ( ) const
inlineoverridevirtual

Check for consistency of data members.

Returns
true if values consistent (valid)

Reimplemented from ARICHGeoBase.

Definition at line 180 of file ARICHPositionElement.h.

◆ print()

void print ( const std::string &  title = "Parmeters of position element") const
inlineoverridevirtual

Print the content of the class.

Parameters
titletitle to be printed

Reimplemented from ARICHGeoBase.

Definition at line 186 of file ARICHPositionElement.h.

◆ printPlacement()

void printPlacement ( double  x,
double  y,
double  z,
double  rx,
double  ry,
double  rz 
) const
virtualinherited

Print volume positioning parameters.

Parameters
xx position
yy position
zz position
rxrotation around x-axis
ryrotation around y-axis
rzrotation around z-axis

Definition at line 25 of file ARICHGeoBase.cc.

◆ printSurface()

void printSurface ( const GeoOpticalSurface surface) const
virtualinherited

Print the content of optical surface.

Parameters
surfaceoptical surface parameters

Definition at line 32 of file ARICHGeoBase.cc.

◆ setAlpha()

void setAlpha ( double  alpha)
inline

Sets rotation around x.

Parameters
alpharotation angle around x

Definition at line 88 of file ARICHPositionElement.h.

◆ setBeta()

void setBeta ( double  beta)
inline

Sets rotation around y.

Parameters
alpharotation angle around y

Definition at line 95 of file ARICHPositionElement.h.

◆ setGamma()

void setGamma ( double  gamma)
inline

Sets rotation around z.

Parameters
alpharotation angle around z

Definition at line 102 of file ARICHPositionElement.h.

◆ setName()

void setName ( const std::string &  name)
inlineinherited

Sets object name.

Parameters
nameobject name

Definition at line 43 of file ARICHGeoBase.h.

◆ setRPhi()

void setRPhi ( double  r,
double  phi 
)
inline

Sets x,y from r,phi.

Parameters
rradius
phiphi angle

Definition at line 78 of file ARICHPositionElement.h.

◆ setX()

void setX ( double  x)
inline

Sets translation in x.

Parameters
xtranslation in x

Definition at line 59 of file ARICHPositionElement.h.

◆ setY()

void setY ( double  y)
inline

Sets translation in y.

Parameters
ytranslation in y

Definition at line 65 of file ARICHPositionElement.h.

◆ setZ()

void setZ ( double  z)
inline

Sets translation in z.

Parameters
ztranslation in z

Definition at line 71 of file ARICHPositionElement.h.


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