//----------------------------------------------------------- // File and Version Information: // $Id$ // // Description: // Class containing CDC Cirle // // // Environment: // Software developed for the Prototype Detector at FOPI // // Author List: // Robert Münzer TUM // //----------------------------------------------------------- // C++ headers #include #include #include #include # include "CdcCircle.h" CdcCircle::CdcCircle(){ fradius=0; fmidx=0; fmidy=0; fmidxtpc=0.; fmidytpc=0.; fradiustpcinner=5.; fradiustpcouter=15.; } void CdcCircle::SetRXY(Float_t rad,Float_t midx,Float_t midy){ fradius=fabs(rad); fmidx=midx; fmidy=midy; } void CdcCircle::SetRXYP(Float_t rad,Float_t midx,Float_t midy,Float_t phi){ fradius=fabs(rad); fmidx=midx; fmidy=midy; fphi=phi; } double CdcCircle::GetTpcLength(){ Float_t centredistance = pow(pow(fmidxtpc-fmidx,2)+pow(fmidytpc-fmidy,2),0.5); if(centredistance>fradius+fradiustpcouter||centredistancefradius+fradiustpcinner||centredistancemaxphi) return(0.); if(fabs(distr)>maxdist) return(0.); return(fabs(phitpcpoint-fphi)); }