11#include "MucGeoCreateAlg/MucGeoConst.h"
12#include "MucGeoCreateAlg/MucGap.h"
26 m_MucBox = other.m_MucBox;
37 m_MucBox = other.m_MucBox;
74 if( m_MucBox != NULL )
91 m_Theta = ( MUC_PI/4.0 ) + (
m_ID - 1) * MUC_PI / 8.0 ;
123 m_Rc = sqrt(2.0) * E_AS_RMAX / 2.0;
145 m_W = ( B_GP_WT[
m_Layer] - B_GP_SLOT_WT )/2.0;
151 m_W = E_AS_RMAX - E_GP_DX;
164 m_H = E_AS_RMAX - E_GP_DY;
167 m_H = E_AS_RMAX - E_GP_RMIN[
m_Layer] +1.5*OVERLAP_WIDTH;
183 m_L = B_AS_LMAX - B_GP_SLOT_LT;
203 m_Wu -= 2*VALUE*(2.0/2);
204 m_Wu += 1.5*OVERLAP_WIDTH;
211 if(
m_ID != -1 )
m_Wu+=OVERLAP_WIDTH;
227 m_Wd += 2*VALUE*(2.0/2);
228 m_Wd += 1.5*OVERLAP_WIDTH;
235 if(
m_ID != -1 )
m_Wd+=OVERLAP_WIDTH;
255 x = (E_AS_RMAX + E_GP_DX) / 2.0;
256 y = (E_AS_RMAX + E_GP_DY) / 2.0;
265 for(
int i=0; i<
m_Layer+1; i++ ) z += E_AS_TH[i];
267 z += (E_AS_ZMAX - E_AS_TOTAL_TH ) + AS_GAP/2.0;
277 for(
int i=0;i<3;i++) {
305 if(
m_ID == 2 )
x = 0.;
306 else x = (1-2*
m_ID) * ( B_GP_WT[
m_Layer] + B_GP_SLOT_WT )/4.0;
310 if(
m_ID == 2 ) z = -B_GP_SLOT_LT / 2.0;
311 else z = ( B_AS_LMAX - B_GP_SLOT_LT )/2.0;
320 for(
int i=0; i<3; i++ ) {
356 for(
int i=0; i<2; i++ ) {
double tan(const BesAngle a)
double sin(const BesAngle a)
double cos(const BesAngle a)
MucEntity & operator=(const MucEntity &other)
MucGap & operator=(const MucGap &other)
virtual void SetObjOrgInBes()
virtual void SetLocOrgInBes()
MucGap(int part, int segment, int layer, int id)
virtual void SetObjRotToMot()
virtual void SetObjOrgInLoc()