11#include "MucGeoCreateAlg/MucGeoConst.h"
12#include "MucGeoCreateAlg/MucBoxCover.h"
73 m_Theta = ( MUC_PI/4.0 ) + (
m_ID - 1) * MUC_PI / 8.0 ;
97 m_Rout = E_AS_RMAX - E_BOX_DR;
108 m_Rc = sqrt(2.0) * ( E_AS_RMAX - E_BOX_DR ) / 2.0;
130 m_W = ( B_BOX_WT[
m_Layer] - B_BOX_SLOT_WT )/2.0;
136 m_W = E_AS_RMAX - E_BOX_DR - E_GP_DX;
149 m_H = E_AS_RMAX - E_BOX_DR - E_GP_DY;
151 m_H = E_AS_RMAX - E_BOX_DR - E_GP_RMIN[
m_Layer];
224 x = (E_AS_RMAX - E_BOX_DR + E_GP_DX) / 2.0;
225 y = (E_AS_RMAX - E_BOX_DR + E_GP_DY) / 2.0;
234 for(
int i=0; i<
m_Layer+1; i++ ) z += E_AS_TH[i];
237 z += (E_AS_ZMAX - E_AS_TOTAL_TH) + AS_GAP/2.0;
240 if(
m_ID != -1 ) z += (1-2*
m_UpDown)*(BOX_TH - BOX_COVER_TH)/2.0;
249 for(
int i=0;i<3;i++) {
264 r =
m_Rc + (1-2*
m_UpDown)*(BOX_TH - BOX_COVER_TH) / 2.0;
272 if(
m_ID == 2 )
x = 0.;
273 else x = (1-2*
m_ID) * ( B_BOX_WT[
m_Layer] + B_BOX_SLOT_WT )/4.0;
276 y =
m_Rc + (1-2*
m_UpDown)*(BOX_TH - BOX_COVER_TH) / 2.0;
280 else z = ( B_BOX_LT - B_TOPRPC_LTS[(
m_Layer==0)?1:(
m_Layer%2)] )/2.0;
289 x = (E_AS_RMAX - E_BOX_DR + E_GP_DX) / 2.0;
290 y = (E_AS_RMAX - E_BOX_DR + E_GP_DY) / 2.0;
297 else if (
m_ID == 1 )
327 for(
int i=0; i<3; i++ ) {
359 for(
int i=0; i<3; i++)
364 for(
int i=0; i<3; i++ ) {
double tan(const BesAngle a)
double sin(const BesAngle a)
double cos(const BesAngle a)
virtual void SetObjOrgInBes()
MucBoxCover(int part, int segment, int layer, int upDown, int id)
virtual void SetLocOrgInBes()
virtual void SetObjOrgInLoc()
MucBoxCover & operator=(const MucBoxCover &other)
MucEntity & operator=(const MucEntity &other)