BDSIM
BDSIM is a Geant4 extension toolkit for simulation of particle transport in accelerator beamlines.
|
A holder for any placement offsets and rotations for a BDSAcceleratorComponent. More...
#include <BDSTiltOffset.hh>
Public Member Functions | |
BDSTiltOffset (G4double xOffset, G4double yOffset, G4double tiltIn) | |
G4ThreeVector | GetOffset () const |
More advance accessor for offset - only in x,y. | |
G4Transform3D | Transform3D () const |
Get a transform to represent this tilt offset. | |
G4double | GetXOffset () const |
Accessor. | |
G4double | GetYOffset () const |
Accessor. | |
G4double | GetTilt () const |
Accessor. | |
G4bool | HasFiniteOffset () const |
Inspector. | |
G4bool | HasFiniteTilt () const |
Inspector. | |
Private Attributes | |
G4double | dx |
Horizontal displacement (mm) - note right handed coordinate system. | |
G4double | dy |
Vertical displacement (mm) | |
G4double | tilt |
Tilt angle (rad) - rotation angle about Z axis. | |
Friends | |
std::ostream & | operator<< (std::ostream &out, BDSTiltOffset const &to) |
Output stream. | |
A holder for any placement offsets and rotations for a BDSAcceleratorComponent.
Note, no rotation variables are provided other than along the beam axis (z) as this would cause overlapping volumes between a component and the next one in the line. This leads to much more complicated geometry or padding space (perhaps acceptable for very low angles), but for now is left to be implemented in future.
Definition at line 40 of file BDSTiltOffset.hh.
BDSTiltOffset::BDSTiltOffset | ( | ) |
Definition at line 29 of file BDSTiltOffset.cc.
BDSTiltOffset::BDSTiltOffset | ( | G4double | xOffset, |
G4double | yOffset, | ||
G4double | tiltIn | ||
) |
Definition at line 33 of file BDSTiltOffset.cc.
|
inline |
More advance accessor for offset - only in x,y.
Definition at line 56 of file BDSTiltOffset.hh.
Referenced by BDSBeamline::AddSingleComponent(), BDSExtent::TiltOffset(), and Transform3D().
|
inline |
Accessor.
Definition at line 52 of file BDSTiltOffset.hh.
References tilt.
Referenced by BDSBeamline::AddSingleComponent(), BDSCurvilinearFactory::CreateCurvilinearVolume(), BDSOutputROOTEventModel::Fill(), BDSBeamlineElement::GetTilt(), BDSBeamlineElement::InputFaceNormal(), BDSBeamlineElement::OutputFaceNormal(), and BDSExtent::TiltOffset().
|
inline |
Accessor.
Definition at line 50 of file BDSTiltOffset.hh.
References dx.
Referenced by BDSOutputROOTEventModel::Fill().
|
inline |
Accessor.
Definition at line 51 of file BDSTiltOffset.hh.
References dy.
Referenced by BDSOutputROOTEventModel::Fill().
G4bool BDSTiltOffset::HasFiniteOffset | ( | ) | const |
Inspector.
Definition at line 53 of file BDSTiltOffset.cc.
References dx, dy, and BDS::IsFinite().
Referenced by BDSBeamline::AddSingleComponent().
G4bool BDSTiltOffset::HasFiniteTilt | ( | ) | const |
Inspector.
Definition at line 58 of file BDSTiltOffset.cc.
References BDS::IsFinite(), and tilt.
Referenced by BDSBeamline::AddSingleComponent().
G4Transform3D BDSTiltOffset::Transform3D | ( | ) | const |
Get a transform to represent this tilt offset.
Definition at line 45 of file BDSTiltOffset.cc.
References GetOffset(), and tilt.
Referenced by BDSComponentFactory::CreateFieldTransform().
|
friend |
Output stream.
Definition at line 39 of file BDSTiltOffset.cc.
|
private |
Horizontal displacement (mm) - note right handed coordinate system.
Definition at line 71 of file BDSTiltOffset.hh.
Referenced by GetOffset(), GetXOffset(), and HasFiniteOffset().
|
private |
Vertical displacement (mm)
Definition at line 73 of file BDSTiltOffset.hh.
Referenced by GetOffset(), GetYOffset(), and HasFiniteOffset().
|
private |
Tilt angle (rad) - rotation angle about Z axis.
Definition at line 75 of file BDSTiltOffset.hh.
Referenced by GetTilt(), HasFiniteTilt(), and Transform3D().