#include <MuonEndcapFrameRotation.h>
Public Member Functions | |
virtual Local3DPoint | transformPoint (Local3DPoint &, G4Step *) const |
virtual | ~MuonEndcapFrameRotation () |
implementation of FrameRotation for the muon endcap
Modification:
Definition at line 18 of file MuonEndcapFrameRotation.h.
virtual MuonEndcapFrameRotation::~MuonEndcapFrameRotation | ( | ) | [inline, virtual] |
Definition at line 20 of file MuonEndcapFrameRotation.h.
{};
Local3DPoint MuonEndcapFrameRotation::transformPoint | ( | Local3DPoint & | point, |
G4Step * | s = 0 |
||
) | const [virtual] |
Implements MuonFrameRotation.
Definition at line 6 of file MuonEndcapFrameRotation.cc.
References alignCSCRings::s, PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().
{ if (s) { G4StepPoint * preStepPoint = s->GetPreStepPoint(); G4TouchableHistory * theTouchable=(G4TouchableHistory *) (preStepPoint->GetTouchable()); const G4ThreeVector trans=theTouchable->GetTranslation(); if (trans.z()<0) { // return Local3DPoint(point.x(),-point.z(),point.y()); // return Local3DPoint(-point.x(),point.z(),-point.y()); return Local3DPoint(-point.x(),-point.z(),-point.y()); } else { // return Local3DPoint(point.x(),point.z(),-point.y()); return Local3DPoint(point.x(),point.z(),-point.y()); } } else { return Local3DPoint(0.,0.,0.); } }