799 switch (module_type) {
819 ((
TGeoXtru*)moduleS)->DefinePolygon(5, x_pos, y_pos);
833 ((
TGeoXtru*)moduleS)->DefinePolygon(5, x_pos, y_pos);
839 Error(
"CreateModule()",
"Incorrect module type selected!!!");
849 sensor_zone_upper_part_bevelS->
SetName(
TString(
"sensor_zone_upper_part_bevelS") +
TString(
"_") + module_name);
863 Double_t x_delta_bottom_BP = (y_delta_bottom_BP - (
YBevelSize[module_size] + y_delta))
870 +
XModuleSize[module_size] * 0.5 - x_delta_bottom_BP,
872 Double_t y_pos_sensor_zone_bevel[5] = {
879 ((
TGeoXtru*)sensor_zone_upper_part_bevelS)->DefinePolygon(5, x_pos_sensor_zone_bevel, y_pos_sensor_zone_bevel);
880 ((
TGeoXtru*)sensor_zone_upper_part_bevelS)->DefineSection(0, -
ZModuleSize[module_size] * 0.5);
881 ((
TGeoXtru*)sensor_zone_upper_part_bevelS)->DefineSection(1, +
ZModuleSize[module_size] * 0.5);
891 sensor_zone_lower_part_bevelS->
SetName(
TString(
"sensor_zone_lower_part_bevelS") +
TString(
"_") + module_name);
905 Double_t x_delta_bottom_BP = (y_delta_bottom_BP - (
YBevelSize[module_size] + y_delta))
912 +
XModuleSize[module_size] * 0.5 - x_delta_bottom_BP,
914 Double_t y_pos_sensor_zone_bevel[5] = {
921 ((
TGeoXtru*)sensor_zone_lower_part_bevelS)->DefinePolygon(5, x_pos_sensor_zone_bevel, y_pos_sensor_zone_bevel);
922 ((
TGeoXtru*)sensor_zone_lower_part_bevelS)->DefineSection(0, -
ZModuleSize[module_size] * 0.5);
923 ((
TGeoXtru*)sensor_zone_lower_part_bevelS)->DefineSection(1, +
ZModuleSize[module_size] * 0.5);
934 TString(
"Sensor_zone_upper_part_rectV") +
TString(
"_") + module_name, sensor_zone_upper_part_rectS);
938 TString(
"Sensor_zone_upper_part_bevelV") +
TString(
"_") + module_name, sensor_zone_upper_part_bevelS);
942 TString(
"Sensor_zone_lower_part_rectV") +
TString(
"_") + module_name, sensor_zone_lower_part_rectS);
946 TString(
"Sensor_zone_lower_part_bevelV") +
TString(
"_") + module_name, sensor_zone_lower_part_bevelS);
950 if (silicon_medium) {
952 sensor_zone_upper_part_rectV->
SetMedium(silicon_medium);
953 sensor_zone_upper_part_bevelV->
SetMedium(silicon_medium);
954 sensor_zone_lower_part_rectV->
SetMedium(silicon_medium);
955 sensor_zone_lower_part_bevelV->
SetMedium(silicon_medium);
957 Fatal(
"Main",
"Invalid medium for modules and sensor zones!");
967 switch (module_type) {
975 sensor_zone_upper_part_pos->
SetDy(
978 sensor_zone_upper_part_pos->
SetDz(0.0);
984 sensor_zone_lower_part_pos->
SetDy(
987 sensor_zone_lower_part_pos->
SetDz(0.0);
989 moduleV->
AddNode(sensor_zone_upper_part_rectV, 0, sensor_zone_upper_part_pos);
990 moduleV->
AddNode(sensor_zone_lower_part_rectV, 0, sensor_zone_lower_part_pos);
1001 sensor_zone_upper_part_pos->
SetDz(0.0);
1003 moduleV->
AddNode(sensor_zone_upper_part_rectV, 0, sensor_zone_upper_part_pos);
1013 sensor_zone_upper_part_pos->
SetDy(
1016 sensor_zone_upper_part_pos->
SetDz(0.0);
1020 sensor_zone_lower_part_bevel_pos->
SetDx(0.0);
1024 sensor_zone_lower_part_bevel_pos->
SetDz(0.0);
1026 moduleV->
AddNode(sensor_zone_upper_part_rectV, 0, sensor_zone_upper_part_pos);
1027 moduleV->
AddNode(sensor_zone_lower_part_bevelV, 0, sensor_zone_lower_part_bevel_pos);
1035 sensor_zone_upper_part_pos->
SetDx(0);
1036 sensor_zone_upper_part_pos->
SetDy(0);
1037 sensor_zone_upper_part_pos->
SetDz(0.0);
1039 moduleV->
AddNode(sensor_zone_upper_part_bevelV, 0, sensor_zone_upper_part_pos);
1044 Error(
"CreateModule()",
"Incorrect module type selected!!!");
1064 switch (module_type) {
1072 +(
XModuleSize[module_size] * 0.5 + leftMargin + 1.0) ,
1073 +(
XModuleSize[module_size] * 0.5 + leftMargin + 1.0) ,
1078 -(
XModuleSize[module_size] * 0.5 + rightMargin + 1.0) ,
1079 -(
XModuleSize[module_size] * 0.5 + rightMargin + 1.0) ,
1084 -(
YModuleSize[module_size] * 0.5 + bottomMargin) ,
1095 -(
YModuleSize[module_size] * 0.5 + bottomMargin) ,
1097 ((
TGeoXtru*)frameS)->DefinePolygon(12, x_pos, y_pos);
1109 +(
XModuleSize[module_size] * 0.5 + leftMargin + 1.0) ,
1110 +(
XModuleSize[module_size] * 0.5 + leftMargin + 1.0) ,
1115 -(
XModuleSize[module_size] * 0.5 + rightMargin + 1.0) ,
1116 -(
XModuleSize[module_size] * 0.5 + rightMargin + 1.0) ,
1134 ((
TGeoXtru*)frameS)->DefinePolygon(12, x_pos, y_pos);
1146 +(
XModuleSize[module_size] * 0.5 + leftMargin + 1.0) ,
1147 +(
XModuleSize[module_size] * 0.5 + leftMargin + 1.0) ,
1152 -(
XModuleSize[module_size] * 0.5 + rightMargin + 1.0) ,
1153 -(
XModuleSize[module_size] * 0.5 + rightMargin + 1.0) ,
1158 -(
YModuleSize[module_size] * 0.5 + bottomMargin) ,
1170 -(
YModuleSize[module_size] * 0.5 + bottomMargin) ,
1172 ((
TGeoXtru*)frameS)->DefinePolygon(13, x_pos, y_pos);
1184 +(
XModuleSize[module_size] * 0.5 + leftMargin + 1.0) ,
1185 +(
XModuleSize[module_size] * 0.5 + leftMargin + 1.0) ,
1190 -(
XModuleSize[module_size] * 0.5 + rightMargin + 1.0) ,
1191 -(
XModuleSize[module_size] * 0.5 + rightMargin + 1.0) ,
1210 ((
TGeoXtru*)frameS)->DefinePolygon(13, x_pos, y_pos);
1216 Error(
"CreateModule()",
"Incorrect module type selected!!!");
1223 TString(
"window_rectS") += module_name, (
XModuleSize[module_size] - innerMargin * 2) * 0.5,
1237 Double_t x_delta_top_BP = innerMargin;
1241 Double_t y_delta_bottom_BP = innerMargin;
1242 Double_t x_delta_bottom_BP = (y_delta_bottom_BP - (
YBevelSize[module_size] + y_delta))
1253 -
YModuleSize[module_size] * 0.25 + y_delta_top_BP};
1255 ((
TGeoXtru*)window_bevelS)->DefinePolygon(5, x_pos, y_pos);
1262 upper_window_frame_pos->
SetName(
TString(
"upper_window_frame_pos") + module_name);
1263 upper_window_frame_pos->
SetDx(0.0);
1267 upper_window_frame_pos->
SetDz(0.0);
1271 lower_window_frame_pos->
SetName(
TString(
"lower_window_frame_pos") + module_name);
1272 lower_window_frame_pos->
SetDx(0.0);
1276 lower_window_frame_pos->
SetDz(0.0);
1280 window_half_frame_pos->
SetName(
TString(
"window_half_frame_pos") + module_name);
1281 window_half_frame_pos->
SetDx(0.0);
1282 window_half_frame_pos->
SetDy(0.0);
1283 window_half_frame_pos->
SetDz(0.0);
1287 frame_with_windowsS->
SetName(
TString(
"frame_with_windowsS") + module_name);
1289 switch (module_type) {
1292 TString expression =
"(frameS";
1293 expression += module_name;
1294 expression +=
"-window_rectS";
1295 expression += module_name;
1296 expression +=
":upper_window_frame_pos";
1297 expression += module_name;
1298 expression +=
")-window_rectS";
1299 expression += module_name;
1300 expression +=
":lower_window_frame_pos";
1301 expression += module_name;
1302 frame_with_windowsS->
MakeNode(expression);
1308 TString expression =
"(frameS";
1309 expression += module_name;
1310 expression +=
")-window_rectS";
1311 expression += module_name;
1312 expression +=
":window_half_frame_pos";
1313 expression += module_name;
1314 frame_with_windowsS->
MakeNode(expression);
1320 TString expression =
"(frameS";
1321 expression += module_name;
1322 expression +=
"-window_rectS";
1323 expression += module_name;
1324 expression +=
":upper_window_frame_pos";
1325 expression += module_name;
1326 expression +=
")-window_bevelS";
1327 expression += module_name;
1328 expression +=
":lower_window_frame_pos";
1329 expression += module_name;
1330 frame_with_windowsS->
MakeNode(expression);
1336 TString expression =
"(frameS";
1337 expression += module_name;
1338 expression +=
")-window_bevelS";
1339 expression += module_name;
1340 expression +=
":window_half_frame_pos";
1341 expression += module_name;
1342 frame_with_windowsS->
MakeNode(expression);
1348 Error(
"CreateModule()",
"Incorrect module type selected!!!");
1358 if (carbon_medium) {
1361 Fatal(
"Main",
"Invalid medium for frameV!");
1382 Double_t half_plane_shift = z_ref_dist - ((1.37 + half_dist_mods) - 0.61) + (2.68 - (1.37 + half_dist_mods));
1384 cout <<
"standart: z_ref_dist = " << z_ref_dist <<
"\n";
1385 cout <<
"standart: half_plane_shift = " << half_plane_shift <<
"\n";
1389 if (current_station_num == 0)
1390 cut_from_height = 6.0;
1399 Double_t faceShield_XSize = (NModules / 2.0) * 6.3 - (NModules / 2.0) * 0.3 + 8.6;
1400 Double_t faceShield_YSize = 14.74 - cut_from_height;
1407 Double_t x_pos[8] = {faceShield_XSize * 0.5,
1408 faceShield_XSize * 0.5,
1409 -faceShield_XSize * 0.5,
1410 -faceShield_XSize * 0.5,
1415 Double_t y_pos[8] = {-faceShield_YSize * 0.5, faceShield_YSize * 0.5, faceShield_YSize * 0.5,
1416 -faceShield_YSize * 0.5, -faceShield_YSize * 0.5, -3.8 + cut_from_height * 0.5,
1417 -3.8 + cut_from_height * 0.5, -faceShield_YSize * 0.5};
1418 ((
TGeoXtru*)faceShieldS)->DefinePolygon(8, x_pos, y_pos);
1419 ((
TGeoXtru*)faceShieldS)->DefineSection(0, -faceShield_ZSize * 0.5);
1420 ((
TGeoXtru*)faceShieldS)->DefineSection(1, +faceShield_ZSize * 0.5);
1427 if (faceShieldV_medium) {
1428 faceShieldV->
SetMedium(faceShieldV_medium);
1430 Fatal(
"Main",
"Invalid medium for faceShieldV!");
1439 faceShield_transf[0]->
SetDy(+faceShield_YSize * 0.5 - 0.95);
1440 faceShield_transf[0]->
SetDz(+half_dist_mods - 1.35
1441 - faceShield_ZSize * 0.5 + half_plane_shift);
1444 faceShield_transf[1]->
SetDy(+faceShield_YSize * 0.5 - 0.95);
1445 faceShield_transf[1]->
SetDz(+half_dist_mods + 1.35
1446 + faceShield_ZSize * 0.5 + half_plane_shift);
1449 faceShield_transf[2]->
RotateX(180.0);
1450 faceShield_transf[2]->
SetDy(-faceShield_YSize * 0.5 + 0.95);
1451 faceShield_transf[2]->
SetDz(+half_dist_mods - 1.35
1452 - faceShield_ZSize * 0.5 );
1455 faceShield_transf[3]->
RotateX(180.0);
1456 faceShield_transf[3]->
SetDy(-faceShield_YSize * 0.5 + 0.95);
1457 faceShield_transf[3]->
SetDz(+half_dist_mods + 1.35
1458 + faceShield_ZSize * 0.5 );
1460 frames->
AddNode(faceShieldV, 0, faceShield_transf[0]);
1461 frames->
AddNode(faceShieldV, 1, faceShield_transf[1]);
1462 frames->
AddNode(faceShieldV, 2, faceShield_transf[2]);
1463 frames->
AddNode(faceShieldV, 3, faceShield_transf[3]);
1468 Double_t sideShield_YSize = 15.2 - cut_from_height;
1472 sideShield_XSize * 0.5, sideShield_YSize * 0.5, sideShield_ZSize * 0.5);
1478 if (sideShieldV_medium) {
1479 sideShieldV->
SetMedium(sideShieldV_medium);
1481 Fatal(
"Main",
"Invalid medium for sideShieldV!");
1490 sideShield_transf[0]->
SetDx(+(faceShield_XSize * 0.5 - sideShield_XSize * 0.5));
1491 sideShield_transf[0]->
SetDy(+faceShield_YSize * 0.5 - 0.95 + (sideShield_YSize - faceShield_YSize) * 0.5);
1492 sideShield_transf[0]->
SetDz(+half_dist_mods + half_plane_shift);
1495 sideShield_transf[1]->
SetDx(-(faceShield_XSize * 0.5 - sideShield_XSize * 0.5));
1496 sideShield_transf[1]->
SetDy(+faceShield_YSize * 0.5 - 0.95 + (sideShield_YSize - faceShield_YSize) * 0.5);
1497 sideShield_transf[1]->
SetDz(+half_dist_mods + half_plane_shift);
1500 sideShield_transf[2]->
SetDx(+(faceShield_XSize * 0.5 - sideShield_XSize * 0.5));
1501 sideShield_transf[2]->
SetDy(-faceShield_YSize * 0.5 + 0.95 - (sideShield_YSize - faceShield_YSize) * 0.5);
1502 sideShield_transf[2]->
SetDz(+half_dist_mods);
1505 sideShield_transf[3]->
SetDx(-(faceShield_XSize * 0.5 - sideShield_XSize * 0.5));
1506 sideShield_transf[3]->
SetDy(-faceShield_YSize * 0.5 + 0.95 - (sideShield_YSize - faceShield_YSize) * 0.5);
1507 sideShield_transf[3]->
SetDz(+half_dist_mods);
1509 frames->
AddNode(sideShieldV, 0, sideShield_transf[0]);
1510 frames->
AddNode(sideShieldV, 1, sideShield_transf[1]);
1511 frames->
AddNode(sideShieldV, 2, sideShield_transf[2]);
1512 frames->
AddNode(sideShieldV, 3, sideShield_transf[3]);
1516 Double_t horizShield_XSize = faceShield_XSize * 0.5 - sideShield_XSize - 2.75 ;
1521 horizShield_XSize * 0.5, horizShield_YSize * 0.5, horizShield_ZSize * 0.5);
1527 if (horizShieldV_medium) {
1528 horizShieldV->
SetMedium(horizShieldV_medium);
1530 Fatal(
"Main",
"Invalid medium for horizShieldV!");
1539 horizShield_transf[0]->
SetDx(+(faceShield_XSize * 0.5 - horizShield_XSize * 0.5 - sideShield_XSize));
1540 horizShield_transf[0]->
SetDy(+(-0.95 + horizShield_YSize * 0.5));
1541 horizShield_transf[0]->
SetDz(+half_dist_mods + half_plane_shift);
1544 horizShield_transf[1]->
SetDx(-(faceShield_XSize * 0.5 - horizShield_XSize * 0.5 - sideShield_XSize));
1545 horizShield_transf[1]->
SetDy(+(-0.95 + horizShield_YSize * 0.5));
1546 horizShield_transf[1]->
SetDz(+half_dist_mods + half_plane_shift);
1549 horizShield_transf[2]->
SetDx(+(faceShield_XSize * 0.5 - horizShield_XSize * 0.5 - sideShield_XSize));
1550 horizShield_transf[2]->
SetDy(-(-0.95 + horizShield_YSize * 0.5));
1551 horizShield_transf[2]->
SetDz(+half_dist_mods);
1554 horizShield_transf[3]->
SetDx(-(faceShield_XSize * 0.5 - horizShield_XSize * 0.5 - sideShield_XSize));
1555 horizShield_transf[3]->
SetDy(-(-0.95 + horizShield_YSize * 0.5));
1556 horizShield_transf[3]->
SetDz(+half_dist_mods);
1558 frames->
AddNode(horizShieldV, 0, horizShield_transf[0]);
1559 frames->
AddNode(horizShieldV, 1, horizShield_transf[1]);
1560 frames->
AddNode(horizShieldV, 2, horizShield_transf[2]);
1561 frames->
AddNode(horizShieldV, 3, horizShield_transf[3]);
1565 Double_t plankShield_XSize = faceShield_XSize;
1570 plankShield_XSize * 0.5, plankShield_YSize * 0.5, plankShield_ZSize * 0.5);
1576 if (plankShieldV_medium) {
1577 plankShieldV->
SetMedium(plankShieldV_medium);
1579 Fatal(
"Main",
"Invalid medium for plankShieldV!");
1588 plankShield_transf[0]->
SetDx(0.0);
1589 plankShield_transf[0]->
SetDy(+(-0.95 + faceShield_YSize) - 0.05);
1590 plankShield_transf[0]->
SetDz(+half_dist_mods
1591 - (1.35 + faceShield_ZSize + plankShield_ZSize * 0.5)
1592 + half_plane_shift);
1595 plankShield_transf[1]->
SetDx(0.0);
1596 plankShield_transf[1]->
SetDy(+(-0.95 + faceShield_YSize) - 0.05);
1597 plankShield_transf[1]->
SetDz(+half_dist_mods
1598 + (1.35 + faceShield_ZSize + plankShield_ZSize * 0.5)
1599 + half_plane_shift);
1602 plankShield_transf[2]->
SetDx(0.0);
1603 plankShield_transf[2]->
SetDy(-(-0.95 + faceShield_YSize) + 0.05);
1604 plankShield_transf[2]->
SetDz(+half_dist_mods
1605 - (1.35 + faceShield_ZSize + plankShield_ZSize * 0.5));
1608 plankShield_transf[3]->
SetDx(0.0);
1609 plankShield_transf[3]->
SetDy(-(-0.95 + faceShield_YSize) + 0.05);
1610 plankShield_transf[3]->
SetDz(+half_dist_mods
1611 + (1.35 + faceShield_ZSize + plankShield_ZSize * 0.5));
1613 frames->
AddNode(plankShieldV, 0, plankShield_transf[0]);
1614 frames->
AddNode(plankShieldV, 1, plankShield_transf[1]);
1615 frames->
AddNode(plankShieldV, 2, plankShield_transf[2]);
1616 frames->
AddNode(plankShieldV, 3, plankShield_transf[3]);
1620 Double_t baseRailMainPart_XSize = faceShield_XSize + 3.4 * 2 ;
1621 Double_t baseRailMainPart_YSize = 5.0;
1622 Double_t baseRailMainPart_ZSize = 0.7;
1624 Double_t baseRailUpperPart_XSize = baseRailMainPart_XSize - 9.0 ;
1625 Double_t baseRailUpperPart_YSize = 1.0;
1626 Double_t baseRailUpperPart_ZSize = 0.3;
1628 Double_t baseRailLowerPart_XSize = baseRailMainPart_XSize - 8.8 ;
1629 Double_t baseRailLowerPart_YSize = 0.7;
1630 Double_t baseRailLowerPart_ZSize = 0.3;
1634 baseRailMainPart_YSize * 0.5, baseRailMainPart_ZSize * 0.5);
1637 baseRailUpperPart_YSize * 0.5, baseRailUpperPart_ZSize * 0.5);
1640 baseRailLowerPart_YSize * 0.5, baseRailLowerPart_ZSize * 0.5);
1644 baseRailMainPart_pos->
SetDx(0.0);
1645 baseRailMainPart_pos->
SetDy(0.0);
1646 baseRailMainPart_pos->
SetDz(0.0);
1651 baseRailUpperPart_pos->
SetDx(0.0);
1652 baseRailUpperPart_pos->
SetDy(+(baseRailMainPart_YSize * 0.5 + baseRailUpperPart_YSize * 0.5));
1653 baseRailUpperPart_pos->
SetDz(baseRailMainPart_ZSize * 0.5 - baseRailUpperPart_ZSize * 0.5);
1658 baseRailLowerPart_pos->
SetDx(0.0);
1659 baseRailLowerPart_pos->
SetDy(-(baseRailMainPart_YSize * 0.5 + baseRailLowerPart_YSize * 0.5));
1660 baseRailLowerPart_pos->
SetDz(baseRailMainPart_ZSize * 0.5 - baseRailLowerPart_ZSize * 0.5);
1666 TString expression =
"baseRailMainPartS";
1668 expression +=
":baseRailMainPart_pos";
1670 expression +=
"+baseRailUpperPartS";
1672 expression +=
":baseRailUpperPart_pos";
1674 expression +=
"+baseRailLowerPartS";
1676 expression +=
":baseRailLowerPart_pos";
1686 if (baseRailV_medium) {
1689 Fatal(
"Main",
"Invalid medium for baseRailV!");
1698 baseRail_transf[0]->
RotateY(180.0);
1699 baseRail_transf[0]->
SetDx(0.0);
1700 baseRail_transf[0]->
SetDy(+(14.5 + baseRailMainPart_YSize * 0.5 - cut_from_height));
1701 baseRail_transf[0]->
SetDz(
1703 + (1.35 + faceShield_ZSize + baseRailMainPart_ZSize * 0.5 - baseRailLowerPart_ZSize)
1704 + half_plane_shift);
1708 baseRail_transf[1]->
RotateX(180.0);
1709 baseRail_transf[1]->
RotateY(180.0);
1710 baseRail_transf[1]->
SetDx(0.0);
1711 baseRail_transf[1]->
SetDy(-(14.5 + baseRailMainPart_YSize * 0.5 - cut_from_height));
1712 baseRail_transf[1]->
SetDz(
1714 - (1.35 + faceShield_ZSize + baseRailMainPart_ZSize * 0.5 - baseRailLowerPart_ZSize)
1717 frames->
AddNode(baseRailV, 0, baseRail_transf[0]);
1718 frames->
AddNode(baseRailV, 1, baseRail_transf[1]);
1722 Double_t backRailMainPart_XSize = faceShield_XSize + -0.3 * 2 ;
1723 Double_t backRailMainPart_YSize = 3.0;
1724 Double_t backRailMainPart_ZSize = 0.9;
1726 Double_t backRailLowerPart_XSize = backRailMainPart_XSize - 1.4;
1727 Double_t backRailLowerPart_YSize = 0.7;
1728 Double_t backRailLowerPart_ZSize = 0.6;
1730 Double_t backRailSidePart_XSize = 1.2;
1731 Double_t backRailSidePart_YSize = 3.0;
1732 Double_t backRailSidePart_ZSize = 1.62;
1736 backRailMainPart_YSize * 0.5, backRailMainPart_ZSize * 0.5);
1739 backRailLowerPart_YSize * 0.5, backRailLowerPart_ZSize * 0.5);
1742 backRailSidePart_YSize * 0.5, backRailSidePart_ZSize * 0.5);
1746 backRailLowerPart_pos->
SetDx(0.0);
1747 backRailLowerPart_pos->
SetDy(-(backRailMainPart_YSize * 0.5 + backRailLowerPart_YSize * 0.5));
1748 backRailLowerPart_pos->
SetDz(backRailMainPart_ZSize * 0.5 - backRailLowerPart_ZSize * 0.5);
1753 backRailSidePart1_pos->
SetDx(+(backRailMainPart_XSize * 0.5 - backRailSidePart_XSize * 0.5));
1754 backRailSidePart1_pos->
SetDy(0.0);
1755 backRailSidePart1_pos->
SetDz(backRailMainPart_ZSize * 0.5 + backRailSidePart_ZSize * 0.5);
1760 backRailSidePart2_pos->
SetDx(-(backRailMainPart_XSize * 0.5 - backRailSidePart_XSize * 0.5));
1761 backRailSidePart2_pos->
SetDy(0.0);
1762 backRailSidePart2_pos->
SetDz(backRailMainPart_ZSize * 0.5 + backRailSidePart_ZSize * 0.5);
1768 TString expression =
"backRailMainPartS";
1770 expression +=
"+backRailLowerPartS";
1772 expression +=
":backRailLowerPart_pos";
1774 expression +=
"+backRailSidePartS";
1776 expression +=
":backRailSidePart1_pos";
1778 expression +=
"+backRailSidePartS";
1780 expression +=
":backRailSidePart2_pos";
1790 if (backRailV_medium) {
1793 Fatal(
"Main",
"Invalid medium for backRailV!");
1802 backRail_transf[0]->
SetDx(0.0);
1803 backRail_transf[0]->
SetDy(+(14.5 + backRailMainPart_YSize * 0.5 - cut_from_height));
1804 backRail_transf[0]->
SetDz(+half_dist_mods
1805 - (1.35 + faceShield_ZSize
1806 + (backRailMainPart_ZSize * 0.5 - backRailLowerPart_ZSize))
1807 + half_plane_shift);
1810 backRail_transf[1]->
RotateX(180.0);
1811 backRail_transf[1]->
SetDx(0.0);
1812 backRail_transf[1]->
SetDy(-(14.5 + backRailMainPart_YSize * 0.5 - cut_from_height));
1813 backRail_transf[1]->
SetDz(+half_dist_mods
1814 + (1.35 + faceShield_ZSize
1815 + (backRailMainPart_ZSize * 0.5 - backRailLowerPart_ZSize)));
1817 frames->
AddNode(backRailV, 0, backRail_transf[0]);
1818 frames->
AddNode(backRailV, 1, backRail_transf[1]);
1822 Double_t holdBackRail_XSize = backRailMainPart_XSize;
1830 +0.0 , +0.1 , +holdBackRail_ZSize , +holdBackRail_ZSize , +0.0
1833 -holdBackRail_YSize ,
1834 -holdBackRail_YSize ,
1835 -holdBackRail_YSize * 0.5 ,
1839 ((
TGeoXtru*)holdBackRailS)->DefinePolygon(5, x_pos, y_pos);
1840 ((
TGeoXtru*)holdBackRailS)->DefineSection(0, -holdBackRail_XSize * 0.5);
1841 ((
TGeoXtru*)holdBackRailS)->DefineSection(1, +holdBackRail_XSize * 0.5);
1849 if (holdBackRailV_medium) {
1850 holdBackRailV->
SetMedium(holdBackRailV_medium);
1852 Fatal(
"Main",
"Invalid medium for holdBackRailV!");
1861 holdBackRail_transf[0]->
RotateY(90.0);
1862 holdBackRail_transf[0]->
SetDx(0.0);
1863 holdBackRail_transf[0]->
SetDy(+(14.5 + backRailMainPart_YSize - cut_from_height));
1864 holdBackRail_transf[0]->
SetDz(
1865 +half_dist_mods - (1.35 + faceShield_ZSize + plankShield_ZSize) + half_plane_shift);
1868 holdBackRail_transf[1]->
RotateY(90.0);
1869 holdBackRail_transf[1]->
RotateX(180.0);
1870 holdBackRail_transf[1]->
SetDx(0.0);
1871 holdBackRail_transf[1]->
SetDy(-(14.5 + backRailMainPart_YSize - cut_from_height));
1872 holdBackRail_transf[1]->
SetDz(+half_dist_mods
1873 + (1.35 + faceShield_ZSize + plankShield_ZSize));
1875 frames->
AddNode(holdBackRailV, 0, holdBackRail_transf[0]);
1876 frames->
AddNode(holdBackRailV, 1, holdBackRail_transf[1]);
1880 Double_t backPlane_XSize = (NModules / 2.0) * 6.3 - (NModules / 2.0) * 0.3 + 3.95 * 2 ;
1885 backPlane_XSize * 0.5, backPlane_YSize * 0.5, backPlane_ZSize * 0.5);
1891 if (backPlaneV_medium) {
1892 backPlaneV->
SetMedium(backPlaneV_medium);
1894 Fatal(
"Main",
"Invalid medium for backPlaneV!");
1903 backPlane_transf[0]->
SetDx(0.0);
1904 backPlane_transf[0]->
SetDy(+(16.75 + backPlane_YSize * 0.5 - cut_from_height));
1905 backPlane_transf[0]->
SetDz(+half_dist_mods
1906 - (1.35 + faceShield_ZSize + plankShield_ZSize
1907 + holdBackRail_ZSize + backPlane_ZSize * 0.5)
1908 + half_plane_shift);
1911 backPlane_transf[1]->
SetDx(0.0);
1912 backPlane_transf[1]->
SetDy(-(16.75 + backPlane_YSize * 0.5 - cut_from_height));
1913 backPlane_transf[1]->
SetDz(+half_dist_mods
1914 + (1.35 + faceShield_ZSize + plankShield_ZSize
1915 + holdBackRail_ZSize + backPlane_ZSize * 0.5));
1917 frames->
AddNode(backPlaneV, 0, backPlane_transf[0]);
1918 frames->
AddNode(backPlaneV, 1, backPlane_transf[1]);
1922 Double_t frontPlane_XSize = (NModules / 2.0) * 6.3 - (NModules / 2.0) * 0.3 + 1.8 * 2 ;
1927 frontPlane_XSize * 0.5, frontPlane_YSize * 0.5, frontPlane_ZSize * 0.5);
1933 if (frontPlaneV_medium) {
1934 frontPlaneV->
SetMedium(frontPlaneV_medium);
1936 Fatal(
"Main",
"Invalid medium for frontPlaneV!");
1945 frontPlane_transf[0]->
SetDx(0.0);
1946 frontPlane_transf[0]->
SetDy(+(19.7 + frontPlane_YSize * 0.5 - cut_from_height));
1947 frontPlane_transf[0]->
SetDz(
1949 + (1.35 + faceShield_ZSize + plankShield_ZSize + frontPlane_ZSize * 0.5)
1950 + half_plane_shift);
1953 frontPlane_transf[1]->
SetDx(0.0);
1954 frontPlane_transf[1]->
SetDy(-(19.7 + frontPlane_YSize * 0.5 - cut_from_height));
1955 frontPlane_transf[1]->
SetDz(
1957 - (1.35 + faceShield_ZSize + plankShield_ZSize + frontPlane_ZSize * 0.5));
1959 frames->
AddNode(frontPlaneV, 0, frontPlane_transf[0]);
1960 frames->
AddNode(frontPlaneV, 1, frontPlane_transf[1]);
1964 Double_t frontPlaneWithWindow_XSize = (NModules / 2.0) * 6.3 - (NModules / 2.0) * 0.3 + 4.0 * 2 ;
1965 Double_t frontPlaneWithWindow_YSize = 18.3;
1966 Double_t frontPlaneWithWindow_ZSize = 0.3;
1968 Double_t frontPlaneWindow_XSize = frontPlaneWithWindow_XSize - 3.0 * 2 ;
1969 Double_t frontPlaneWindow_YSize = 8.6;
1972 TString(
"frontPlaneWithWindowBlankS") +
TString(
"_") + frames->
GetName(), frontPlaneWithWindow_XSize * 0.5,
1973 frontPlaneWithWindow_YSize * 0.5, frontPlaneWithWindow_ZSize * 0.5);
1976 frontPlaneWindow_YSize * 0.5, (frontPlaneWithWindow_ZSize + 0.001) * 0.5);
1980 frontPlaneWindow_pos->
SetDx(0.0);
1981 frontPlaneWindow_pos->
SetDy(-2.85 );
1982 frontPlaneWindow_pos->
SetDz(0.0);
1988 TString expression =
"frontPlaneWithWindowBlankS";
1990 expression +=
"-frontPlaneWindowS";
1992 expression +=
":frontPlaneWindow_pos";
1994 frontPlaneWithWindowS->
MakeNode(expression);
2003 if (frontPlaneWithWindowV_medium) {
2004 frontPlaneWithWindowV->
SetMedium(frontPlaneWithWindowV_medium);
2006 Fatal(
"Main",
"Invalid medium for frontPlaneWithWindowV!");
2015 frontPlaneWithWindow_transf[0]->
SetDx(0.0);
2016 frontPlaneWithWindow_transf[0]->
SetDy(+(19.5 + frontPlaneWithWindow_YSize * 0.5 - cut_from_height));
2017 frontPlaneWithWindow_transf[0]->
SetDz(
2018 +half_dist_mods + (1.35 + faceShield_ZSize + frontPlaneWithWindow_ZSize * 0.5)
2019 + half_plane_shift);
2022 frontPlaneWithWindow_transf[1]->
RotateX(180.0);
2023 frontPlaneWithWindow_transf[1]->
SetDx(0.0);
2024 frontPlaneWithWindow_transf[1]->
SetDy(-(19.5 + frontPlaneWithWindow_YSize * 0.5 - cut_from_height));
2025 frontPlaneWithWindow_transf[1]->
SetDz(
2026 +half_dist_mods - (1.35 + faceShield_ZSize + frontPlaneWithWindow_ZSize * 0.5));
2028 frames->
AddNode(frontPlaneWithWindowV, 0, frontPlaneWithWindow_transf[0]);
2029 frames->
AddNode(frontPlaneWithWindowV, 1, frontPlaneWithWindow_transf[1]);
2033 Double_t pcb_XSize = (NModules / 2.0) * 6.3 - (NModules / 2.0) * 0.3 + 4.865 ;
2038 frontPlane_YSize * 0.5, frontPlane_ZSize * 0.5);
2047 Fatal(
"Main",
"Invalid medium for pcbV!");
2056 pcb_transf[0]->
SetDx(0.0);
2057 pcb_transf[0]->
SetDy(+(26.5 + pcb_YSize * 0.5 - cut_from_height));
2058 pcb_transf[0]->
SetDz(+half_dist_mods + half_plane_shift);
2061 pcb_transf[1]->
SetDx(0.0);
2062 pcb_transf[1]->
SetDy(-(26.5 + pcb_YSize * 0.5 - cut_from_height));
2063 pcb_transf[1]->
SetDz(+half_dist_mods);
2065 frames->
AddNode(pcbV, 0, pcb_transf[0]);
2066 frames->
AddNode(pcbV, 1, pcb_transf[1]);
2070 Double_t upperSideShield_XSize = 4.4;
2071 Double_t upperSideShield_YSize = 12.3;
2072 Double_t upperSideShield_ZSize = 0.8;
2074 Double_t upperSideShieldCut_XSize = 0.9;
2075 Double_t upperSideShieldCut_YSize = 2.4;
2077 Double_t upperSideShieldWindow_XSize = 3.0;
2078 Double_t upperSideShieldWindow_YSize = 7.0;
2084 +upperSideShield_XSize * 0.5 ,
2085 +upperSideShield_XSize * 0.5 ,
2086 -upperSideShield_XSize * 0.5 ,
2087 -upperSideShield_XSize * 0.5 ,
2088 -upperSideShield_XSize * 0.5 + upperSideShieldCut_XSize ,
2089 -upperSideShield_XSize * 0.5 + upperSideShieldCut_XSize
2093 -upperSideShield_YSize * 0.5 ,
2094 +upperSideShield_YSize * 0.5 ,
2095 +upperSideShield_YSize * 0.5 ,
2096 -upperSideShield_YSize * 0.5 + upperSideShieldCut_YSize ,
2097 -upperSideShield_YSize * 0.5 + upperSideShieldCut_YSize ,
2098 -upperSideShield_YSize * 0.5
2101 ((
TGeoXtru*)upperSideShieldBlankS)->DefinePolygon(6, x_pos, y_pos);
2102 ((
TGeoXtru*)upperSideShieldBlankS)->DefineSection(0, -upperSideShield_ZSize * 0.5);
2103 ((
TGeoXtru*)upperSideShieldBlankS)->DefineSection(1, +upperSideShield_ZSize * 0.5);
2107 TString(
"upperSideShieldWindowS") +
TString(
"_") + frames->
GetName(), upperSideShieldWindow_XSize * 0.5,
2108 upperSideShieldWindow_YSize * 0.5, (upperSideShield_ZSize + 0.001) * 0.5);
2112 upperSideShieldWindow_pos->
SetDx(0.0);
2113 upperSideShieldWindow_pos->
SetDy(+1.65 );
2114 upperSideShieldWindow_pos->
SetDz(0.0);
2120 TString expression =
"upperSideShieldBlankS";
2122 expression +=
"-upperSideShieldWindowS";
2124 expression +=
":upperSideShieldWindow_pos";
2126 upperSideShieldWithWindowS->
MakeNode(expression);
2135 if (upperSideShieldV_medium) {
2136 upperSideShieldV->
SetMedium(upperSideShieldV_medium);
2138 Fatal(
"Main",
"Invalid medium for upperSideShieldV!");
2147 upperSideShield_transf[0]->
RotateY(90.0);
2148 upperSideShield_transf[0]->
SetDx(+(frontPlaneWithWindow_XSize * 0.5 - upperSideShield_ZSize * 0.5));
2149 upperSideShield_transf[0]->
SetDy(+(17.6 + upperSideShield_YSize * 0.5 - cut_from_height));
2150 upperSideShield_transf[0]->
SetDz(+half_dist_mods - 0.65 + half_plane_shift);
2153 upperSideShield_transf[1]->
RotateY(90.0);
2154 upperSideShield_transf[1]->
SetDx(-(frontPlaneWithWindow_XSize * 0.5 - upperSideShield_ZSize * 0.5));
2155 upperSideShield_transf[1]->
SetDy(+(17.6 + upperSideShield_YSize * 0.5 - cut_from_height));
2156 upperSideShield_transf[1]->
SetDz(+half_dist_mods - 0.65 + half_plane_shift);
2159 upperSideShield_transf[2]->
RotateY(-90.0);
2161 upperSideShield_transf[2]->
RotateX(180.0);
2162 upperSideShield_transf[2]->
RotateY(180.0);
2163 upperSideShield_transf[2]->
SetDx(+(frontPlaneWithWindow_XSize * 0.5 - upperSideShield_ZSize * 0.5));
2164 upperSideShield_transf[2]->
SetDy(-(17.6 + upperSideShield_YSize * 0.5 - cut_from_height));
2165 upperSideShield_transf[2]->
SetDz(+half_dist_mods + 0.65 );
2168 upperSideShield_transf[3]->
RotateY(-90.0);
2170 upperSideShield_transf[3]->
RotateX(180.0);
2171 upperSideShield_transf[3]->
RotateY(180.0);
2172 upperSideShield_transf[3]->
SetDx(-(frontPlaneWithWindow_XSize * 0.5 - upperSideShield_ZSize * 0.5));
2173 upperSideShield_transf[3]->
SetDy(-(17.6 + upperSideShield_YSize * 0.5 - cut_from_height));
2174 upperSideShield_transf[3]->
SetDz(+half_dist_mods + 0.65 );
2176 frames->
AddNode(upperSideShieldV, 0, upperSideShield_transf[0]);
2177 frames->
AddNode(upperSideShieldV, 1, upperSideShield_transf[1]);
2178 frames->
AddNode(upperSideShieldV, 2, upperSideShield_transf[2]);
2179 frames->
AddNode(upperSideShieldV, 3, upperSideShield_transf[3]);
2183 Double_t upperSideShieldCover_XSize = 4.4;
2184 Double_t upperSideShieldCover_YSize = 8.5;
2185 Double_t upperSideShieldCover_ZSize = 0.15;
2188 upperSideShieldCover_XSize * 0.5, upperSideShieldCover_YSize * 0.5,
2189 upperSideShieldCover_ZSize * 0.5);
2196 if (upperSideShieldCoverV_medium) {
2197 upperSideShieldCoverV->
SetMedium(upperSideShieldCoverV_medium);
2199 Fatal(
"Main",
"Invalid medium for upperSideShieldCoverV!");
2208 upperSideShieldCover_transf[0]->
RotateY(90.0);
2209 upperSideShieldCover_transf[0]->
SetDx(+(frontPlaneWithWindow_XSize * 0.5 + upperSideShieldCover_ZSize * 0.5));
2210 upperSideShieldCover_transf[0]->
SetDy(+(20.7 + upperSideShieldCover_YSize * 0.5 - cut_from_height));
2211 upperSideShieldCover_transf[0]->
SetDz(+half_dist_mods - 0.65 + half_plane_shift);
2214 upperSideShieldCover_transf[1]->
RotateY(90.0);
2215 upperSideShieldCover_transf[1]->
SetDx(-(frontPlaneWithWindow_XSize * 0.5 + upperSideShieldCover_ZSize * 0.5));
2216 upperSideShieldCover_transf[1]->
SetDy(+(20.7 + upperSideShieldCover_YSize * 0.5 - cut_from_height));
2217 upperSideShieldCover_transf[1]->
SetDz(+half_dist_mods - 0.65 + half_plane_shift);
2220 upperSideShieldCover_transf[2]->
RotateY(90.0);
2221 upperSideShieldCover_transf[2]->
SetDx(+(frontPlaneWithWindow_XSize * 0.5 + upperSideShieldCover_ZSize * 0.5));
2222 upperSideShieldCover_transf[2]->
SetDy(-(20.7 + upperSideShieldCover_YSize * 0.5 - cut_from_height));
2223 upperSideShieldCover_transf[2]->
SetDz(+half_dist_mods + 0.65 );
2226 upperSideShieldCover_transf[3]->
RotateY(90.0);
2227 upperSideShieldCover_transf[3]->
SetDx(-(frontPlaneWithWindow_XSize * 0.5 + upperSideShieldCover_ZSize * 0.5));
2228 upperSideShieldCover_transf[3]->
SetDy(-(20.7 + upperSideShieldCover_YSize * 0.5 - cut_from_height));
2229 upperSideShieldCover_transf[3]->
SetDz(+half_dist_mods + 0.65 );
2231 frames->
AddNode(upperSideShieldCoverV, 0, upperSideShieldCover_transf[0]);
2232 frames->
AddNode(upperSideShieldCoverV, 1, upperSideShieldCover_transf[1]);
2233 frames->
AddNode(upperSideShieldCoverV, 2, upperSideShieldCover_transf[2]);
2234 frames->
AddNode(upperSideShieldCoverV, 3, upperSideShieldCover_transf[3]);
2252 Double_t half_plane_shift = z_ref_dist - ((1.57 + half_dist_mods) - 0.61) + (2.68 - (1.57 + half_dist_mods));
2254 cout <<
"long: z_ref_dist = " << z_ref_dist <<
"\n";
2255 cout <<
"long: half_plane_shift = " << half_plane_shift <<
"\n";
2262 if (current_station_num == 0)
2263 add_to_height = -3.0;
2274 Double_t faceShield_XSize = (NModules / 2.0) * 6.3 - (NModules / 2.0) * 0.3 + 8.6;
2275 Double_t faceShield_YSize = 14.74 + add_to_height;
2281 Double_t x_pos[8] = {faceShield_XSize * 0.5,
2282 faceShield_XSize * 0.5,
2283 -faceShield_XSize * 0.5,
2284 -faceShield_XSize * 0.5,
2289 Double_t y_pos[8] = {-faceShield_YSize * 0.5, faceShield_YSize * 0.5, faceShield_YSize * 0.5,
2290 -faceShield_YSize * 0.5, -faceShield_YSize * 0.5, -3.8 - add_to_height * 0.5,
2291 -3.8 - add_to_height * 0.5, -faceShield_YSize * 0.5};
2292 ((
TGeoXtru*)faceShieldS)->DefinePolygon(8, x_pos, y_pos);
2293 ((
TGeoXtru*)faceShieldS)->DefineSection(0, -faceShield_ZSize * 0.5);
2294 ((
TGeoXtru*)faceShieldS)->DefineSection(1, +faceShield_ZSize * 0.5);
2301 if (faceShieldV_medium) {
2302 faceShieldV->
SetMedium(faceShieldV_medium);
2304 Fatal(
"Main",
"Invalid medium for faceShieldV!");
2313 faceShield_transf[0]->
SetDy(+faceShield_YSize * 0.5 - 0.95);
2314 faceShield_transf[0]->
SetDz(+half_dist_mods - 1.35
2315 - faceShield_ZSize * 0.5 + half_plane_shift);
2318 faceShield_transf[1]->
SetDy(+faceShield_YSize * 0.5 - 0.95);
2319 faceShield_transf[1]->
SetDz(+half_dist_mods + 1.35
2320 + faceShield_ZSize * 0.5 + half_plane_shift);
2323 faceShield_transf[2]->
RotateX(180.0);
2324 faceShield_transf[2]->
SetDy(-faceShield_YSize * 0.5 + 0.95);
2325 faceShield_transf[2]->
SetDz(+half_dist_mods - 1.35
2326 - faceShield_ZSize * 0.5 );
2329 faceShield_transf[3]->
RotateX(180.0);
2330 faceShield_transf[3]->
SetDy(-faceShield_YSize * 0.5 + 0.95);
2331 faceShield_transf[3]->
SetDz(+half_dist_mods + 1.35
2332 + faceShield_ZSize * 0.5 );
2334 frames->
AddNode(faceShieldV, 0, faceShield_transf[0]);
2335 frames->
AddNode(faceShieldV, 1, faceShield_transf[1]);
2336 frames->
AddNode(faceShieldV, 2, faceShield_transf[2]);
2337 frames->
AddNode(faceShieldV, 3, faceShield_transf[3]);
2342 Double_t sideShield_YSize = 15.2 + add_to_height;
2346 sideShield_XSize * 0.5, sideShield_YSize * 0.5, sideShield_ZSize * 0.5);
2352 if (sideShieldV_medium) {
2353 sideShieldV->
SetMedium(sideShieldV_medium);
2355 Fatal(
"Main",
"Invalid medium for sideShieldV!");
2364 sideShield_transf[0]->
SetDx(+(faceShield_XSize * 0.5 - sideShield_XSize * 0.5));
2365 sideShield_transf[0]->
SetDy(+faceShield_YSize * 0.5 - 0.95 + (sideShield_YSize - faceShield_YSize) * 0.5);
2366 sideShield_transf[0]->
SetDz(+half_dist_mods + half_plane_shift);
2369 sideShield_transf[1]->
SetDx(-(faceShield_XSize * 0.5 - sideShield_XSize * 0.5));
2370 sideShield_transf[1]->
SetDy(+faceShield_YSize * 0.5 - 0.95 + (sideShield_YSize - faceShield_YSize) * 0.5);
2371 sideShield_transf[1]->
SetDz(+half_dist_mods + half_plane_shift);
2374 sideShield_transf[2]->
SetDx(+(faceShield_XSize * 0.5 - sideShield_XSize * 0.5));
2375 sideShield_transf[2]->
SetDy(-faceShield_YSize * 0.5 + 0.95 - (sideShield_YSize - faceShield_YSize) * 0.5);
2376 sideShield_transf[2]->
SetDz(+half_dist_mods);
2379 sideShield_transf[3]->
SetDx(-(faceShield_XSize * 0.5 - sideShield_XSize * 0.5));
2380 sideShield_transf[3]->
SetDy(-faceShield_YSize * 0.5 + 0.95 - (sideShield_YSize - faceShield_YSize) * 0.5);
2381 sideShield_transf[3]->
SetDz(+half_dist_mods);
2383 frames->
AddNode(sideShieldV, 0, sideShield_transf[0]);
2384 frames->
AddNode(sideShieldV, 1, sideShield_transf[1]);
2385 frames->
AddNode(sideShieldV, 2, sideShield_transf[2]);
2386 frames->
AddNode(sideShieldV, 3, sideShield_transf[3]);
2390 Double_t horizShield_XSize = faceShield_XSize * 0.5 - sideShield_XSize - 2.75 ;
2395 horizShield_XSize * 0.5, horizShield_YSize * 0.5, horizShield_ZSize * 0.5);
2401 if (horizShieldV_medium) {
2402 horizShieldV->
SetMedium(horizShieldV_medium);
2404 Fatal(
"Main",
"Invalid medium for horizShieldV!");
2413 horizShield_transf[0]->
SetDx(+(faceShield_XSize * 0.5 - horizShield_XSize * 0.5 - sideShield_XSize));
2414 horizShield_transf[0]->
SetDy(+(-0.95 + horizShield_YSize * 0.5));
2415 horizShield_transf[0]->
SetDz(+half_dist_mods + half_plane_shift);
2418 horizShield_transf[1]->
SetDx(-(faceShield_XSize * 0.5 - horizShield_XSize * 0.5 - sideShield_XSize));
2419 horizShield_transf[1]->
SetDy(+(-0.95 + horizShield_YSize * 0.5));
2420 horizShield_transf[1]->
SetDz(+half_dist_mods + half_plane_shift);
2423 horizShield_transf[2]->
SetDx(+(faceShield_XSize * 0.5 - horizShield_XSize * 0.5 - sideShield_XSize));
2424 horizShield_transf[2]->
SetDy(-(-0.95 + horizShield_YSize * 0.5));
2425 horizShield_transf[2]->
SetDz(+half_dist_mods);
2428 horizShield_transf[3]->
SetDx(-(faceShield_XSize * 0.5 - horizShield_XSize * 0.5 - sideShield_XSize));
2429 horizShield_transf[3]->
SetDy(-(-0.95 + horizShield_YSize * 0.5));
2430 horizShield_transf[3]->
SetDz(+half_dist_mods);
2432 frames->
AddNode(horizShieldV, 0, horizShield_transf[0]);
2433 frames->
AddNode(horizShieldV, 1, horizShield_transf[1]);
2434 frames->
AddNode(horizShieldV, 2, horizShield_transf[2]);
2435 frames->
AddNode(horizShieldV, 3, horizShield_transf[3]);
2439 Double_t plankShield_XSize = faceShield_XSize;
2444 plankShield_XSize * 0.5, plankShield_YSize * 0.5, plankShield_ZSize * 0.5);
2450 if (plankShieldV_medium) {
2451 plankShieldV->
SetMedium(plankShieldV_medium);
2453 Fatal(
"Main",
"Invalid medium for plankShieldV!");
2462 plankShield_transf[0]->
SetDx(0.0);
2463 plankShield_transf[0]->
SetDy(+(-0.95 + faceShield_YSize) - 0.05);
2464 plankShield_transf[0]->
SetDz(+half_dist_mods
2465 - (1.35 + faceShield_ZSize + plankShield_ZSize * 0.5)
2466 + half_plane_shift);
2469 plankShield_transf[1]->
SetDx(0.0);
2470 plankShield_transf[1]->
SetDy(+(-0.95 + faceShield_YSize) - 0.05);
2471 plankShield_transf[1]->
SetDz(+half_dist_mods
2472 + (1.35 + faceShield_ZSize + plankShield_ZSize * 0.5)
2473 + half_plane_shift);
2476 plankShield_transf[2]->
SetDx(0.0);
2477 plankShield_transf[2]->
SetDy(-(-0.95 + faceShield_YSize) + 0.05);
2478 plankShield_transf[2]->
SetDz(+half_dist_mods
2479 - (1.35 + faceShield_ZSize + plankShield_ZSize * 0.5));
2482 plankShield_transf[3]->
SetDx(0.0);
2483 plankShield_transf[3]->
SetDy(-(-0.95 + faceShield_YSize) + 0.05);
2484 plankShield_transf[3]->
SetDz(+half_dist_mods
2485 + (1.35 + faceShield_ZSize + plankShield_ZSize * 0.5));
2487 frames->
AddNode(plankShieldV, 0, plankShield_transf[0]);
2488 frames->
AddNode(plankShieldV, 1, plankShield_transf[1]);
2489 frames->
AddNode(plankShieldV, 2, plankShield_transf[2]);
2490 frames->
AddNode(plankShieldV, 3, plankShield_transf[3]);
2494 Double_t baseRailMainPart_XSize = faceShield_XSize + 3.4 * 2 ;
2495 Double_t baseRailMainPart_YSize = 5.0;
2496 Double_t baseRailMainPart_ZSize = 0.7;
2498 Double_t baseRailUpperPart_XSize = baseRailMainPart_XSize - 9.0 ;
2499 Double_t baseRailUpperPart_YSize = 1.0;
2500 Double_t baseRailUpperPart_ZSize = 0.3;
2502 Double_t baseRailLowerPart_XSize = baseRailMainPart_XSize - 8.8 ;
2503 Double_t baseRailLowerPart_YSize = 0.7;
2504 Double_t baseRailLowerPart_ZSize = 0.3;
2508 baseRailMainPart_YSize * 0.5, baseRailMainPart_ZSize * 0.5);
2511 baseRailUpperPart_YSize * 0.5, baseRailUpperPart_ZSize * 0.5);
2514 baseRailLowerPart_YSize * 0.5, baseRailLowerPart_ZSize * 0.5);
2518 baseRailMainPart_pos->
SetDx(0.0);
2519 baseRailMainPart_pos->
SetDy(0.0);
2520 baseRailMainPart_pos->
SetDz(0.0);
2525 baseRailUpperPart_pos->
SetDx(0.0);
2526 baseRailUpperPart_pos->
SetDy(+(baseRailMainPart_YSize * 0.5 + baseRailUpperPart_YSize * 0.5));
2527 baseRailUpperPart_pos->
SetDz(baseRailMainPart_ZSize * 0.5 - baseRailUpperPart_ZSize * 0.5);
2532 baseRailLowerPart_pos->
SetDx(0.0);
2533 baseRailLowerPart_pos->
SetDy(-(baseRailMainPart_YSize * 0.5 + baseRailLowerPart_YSize * 0.5));
2534 baseRailLowerPart_pos->
SetDz(baseRailMainPart_ZSize * 0.5 - baseRailLowerPart_ZSize * 0.5);
2540 TString expression =
"baseRailMainPartS";
2542 expression +=
":baseRailMainPart_pos";
2544 expression +=
"+baseRailUpperPartS";
2546 expression +=
":baseRailUpperPart_pos";
2548 expression +=
"+baseRailLowerPartS";
2550 expression +=
":baseRailLowerPart_pos";
2560 if (baseRailV_medium) {
2563 Fatal(
"Main",
"Invalid medium for baseRailV!");
2572 baseRail_transf[0]->
RotateY(180.0);
2573 baseRail_transf[0]->
SetDx(0.0);
2574 baseRail_transf[0]->
SetDy(+(14.5 + baseRailMainPart_YSize * 0.5 + add_to_height));
2575 baseRail_transf[0]->
SetDz(
2577 + (1.35 + faceShield_ZSize + baseRailMainPart_ZSize * 0.5 - baseRailLowerPart_ZSize)
2578 + half_plane_shift);
2582 baseRail_transf[1]->
RotateX(180.0);
2583 baseRail_transf[1]->
RotateY(180.0);
2584 baseRail_transf[1]->
SetDx(0.0);
2585 baseRail_transf[1]->
SetDy(-(14.5 + baseRailMainPart_YSize * 0.5 + add_to_height));
2586 baseRail_transf[1]->
SetDz(+half_dist_mods
2587 - (1.35 + faceShield_ZSize + baseRailMainPart_ZSize * 0.5
2588 - baseRailLowerPart_ZSize));
2590 frames->
AddNode(baseRailV, 0, baseRail_transf[0]);
2591 frames->
AddNode(baseRailV, 1, baseRail_transf[1]);
2595 Double_t backRailMainPart_XSize = faceShield_XSize + -0.3 * 2 ;
2596 Double_t backRailMainPart_YSize = 3.0;
2597 Double_t backRailMainPart_ZSize = 0.9;
2599 Double_t backRailLowerPart_XSize = backRailMainPart_XSize - 1.4;
2600 Double_t backRailLowerPart_YSize = 0.7;
2601 Double_t backRailLowerPart_ZSize = 0.6;
2603 Double_t backRailSidePart_XSize = 1.2;
2604 Double_t backRailSidePart_YSize = 3.0;
2605 Double_t backRailSidePart_ZSize = 1.62;
2609 backRailMainPart_YSize * 0.5, backRailMainPart_ZSize * 0.5);
2612 backRailLowerPart_YSize * 0.5, backRailLowerPart_ZSize * 0.5);
2615 backRailSidePart_YSize * 0.5, backRailSidePart_ZSize * 0.5);
2619 backRailLowerPart_pos->
SetDx(0.0);
2620 backRailLowerPart_pos->
SetDy(-(backRailMainPart_YSize * 0.5 + backRailLowerPart_YSize * 0.5));
2621 backRailLowerPart_pos->
SetDz(backRailMainPart_ZSize * 0.5 - backRailLowerPart_ZSize * 0.5);
2626 backRailSidePart1_pos->
SetDx(+(backRailMainPart_XSize * 0.5 - backRailSidePart_XSize * 0.5));
2627 backRailSidePart1_pos->
SetDy(0.0);
2628 backRailSidePart1_pos->
SetDz(backRailMainPart_ZSize * 0.5 + backRailSidePart_ZSize * 0.5);
2633 backRailSidePart2_pos->
SetDx(-(backRailMainPart_XSize * 0.5 - backRailSidePart_XSize * 0.5));
2634 backRailSidePart2_pos->
SetDy(0.0);
2635 backRailSidePart2_pos->
SetDz(backRailMainPart_ZSize * 0.5 + backRailSidePart_ZSize * 0.5);
2641 TString expression =
"backRailMainPartS";
2643 expression +=
"+backRailLowerPartS";
2645 expression +=
":backRailLowerPart_pos";
2647 expression +=
"+backRailSidePartS";
2649 expression +=
":backRailSidePart1_pos";
2651 expression +=
"+backRailSidePartS";
2653 expression +=
":backRailSidePart2_pos";
2663 if (backRailV_medium) {
2666 Fatal(
"Main",
"Invalid medium for backRailV!");
2675 backRail_transf[0]->
SetDx(0.0);
2676 backRail_transf[0]->
SetDy(+(14.5 + backRailMainPart_YSize * 0.5 + add_to_height));
2677 backRail_transf[0]->
SetDz(+half_dist_mods
2678 - (1.35 + faceShield_ZSize
2679 + (backRailMainPart_ZSize * 0.5 - backRailLowerPart_ZSize))
2680 + half_plane_shift);
2683 backRail_transf[1]->
RotateX(180.0);
2684 backRail_transf[1]->
SetDx(0.0);
2685 backRail_transf[1]->
SetDy(-(14.5 + backRailMainPart_YSize * 0.5 + add_to_height));
2686 backRail_transf[1]->
SetDz(+half_dist_mods
2687 + (1.35 + faceShield_ZSize
2688 + (backRailMainPart_ZSize * 0.5 - backRailLowerPart_ZSize)));
2690 frames->
AddNode(backRailV, 0, backRail_transf[0]);
2691 frames->
AddNode(backRailV, 1, backRail_transf[1]);
2695 Double_t holdBackRail_XSize = backRailMainPart_XSize;
2703 +0.0 , +0.1 , +holdBackRail_ZSize , +holdBackRail_ZSize , +0.0
2706 -holdBackRail_YSize ,
2707 -holdBackRail_YSize ,
2708 -holdBackRail_YSize * 0.5 ,
2712 ((
TGeoXtru*)holdBackRailS)->DefinePolygon(5, x_pos, y_pos);
2713 ((
TGeoXtru*)holdBackRailS)->DefineSection(0, -holdBackRail_XSize * 0.5);
2714 ((
TGeoXtru*)holdBackRailS)->DefineSection(1, +holdBackRail_XSize * 0.5);
2722 if (holdBackRailV_medium) {
2723 holdBackRailV->
SetMedium(holdBackRailV_medium);
2725 Fatal(
"Main",
"Invalid medium for holdBackRailV!");
2734 holdBackRail_transf[0]->
RotateY(90.0);
2735 holdBackRail_transf[0]->
SetDx(0.0);
2736 holdBackRail_transf[0]->
SetDy(+(14.5 + backRailMainPart_YSize + add_to_height));
2737 holdBackRail_transf[0]->
SetDz(
2738 +half_dist_mods - (1.35 + faceShield_ZSize + plankShield_ZSize) + half_plane_shift);
2741 holdBackRail_transf[1]->
RotateY(90.0);
2742 holdBackRail_transf[1]->
RotateX(180.0);
2743 holdBackRail_transf[1]->
SetDx(0.0);
2744 holdBackRail_transf[1]->
SetDy(-(14.5 + backRailMainPart_YSize + add_to_height));
2745 holdBackRail_transf[1]->
SetDz(+half_dist_mods
2746 + (1.35 + faceShield_ZSize + plankShield_ZSize));
2748 frames->
AddNode(holdBackRailV, 0, holdBackRail_transf[0]);
2749 frames->
AddNode(holdBackRailV, 1, holdBackRail_transf[1]);
2753 Double_t backPlane_XSize = (NModules / 2.0) * 6.3 - (NModules / 2.0) * 0.3 + 3.95 * 2 ;
2758 backPlane_XSize * 0.5, backPlane_YSize * 0.5, backPlane_ZSize * 0.5);
2764 if (backPlaneV_medium) {
2765 backPlaneV->
SetMedium(backPlaneV_medium);
2767 Fatal(
"Main",
"Invalid medium for backPlaneV!");
2776 backPlane_transf[0]->
SetDx(0.0);
2777 backPlane_transf[0]->
SetDy(+(16.75 + backPlane_YSize * 0.5 + add_to_height));
2778 backPlane_transf[0]->
SetDz(+half_dist_mods
2779 - (1.35 + faceShield_ZSize + plankShield_ZSize
2780 + holdBackRail_ZSize + backPlane_ZSize * 0.5)
2781 + half_plane_shift);
2784 backPlane_transf[1]->
SetDx(0.0);
2785 backPlane_transf[1]->
SetDy(-(16.75 + backPlane_YSize * 0.5 + add_to_height));
2786 backPlane_transf[1]->
SetDz(+half_dist_mods
2787 + (1.35 + faceShield_ZSize + plankShield_ZSize
2788 + holdBackRail_ZSize + backPlane_ZSize * 0.5));
2790 frames->
AddNode(backPlaneV, 0, backPlane_transf[0]);
2791 frames->
AddNode(backPlaneV, 1, backPlane_transf[1]);
2795 Double_t frontPlane_XSize = (NModules / 2.0) * 6.3 - (NModules / 2.0) * 0.3 + 1.8 * 2 ;
2800 frontPlane_XSize * 0.5, frontPlane_YSize * 0.5, frontPlane_ZSize * 0.5);
2806 if (frontPlaneV_medium) {
2807 frontPlaneV->
SetMedium(frontPlaneV_medium);
2809 Fatal(
"Main",
"Invalid medium for frontPlaneV!");
2818 frontPlane_transf[0]->
SetDx(0.0);
2819 frontPlane_transf[0]->
SetDy(+(19.7 + frontPlane_YSize * 0.5 + add_to_height));
2820 frontPlane_transf[0]->
SetDz(
2822 + (1.35 + faceShield_ZSize + plankShield_ZSize + frontPlane_ZSize * 0.5)
2823 + half_plane_shift);
2826 frontPlane_transf[1]->
SetDx(0.0);
2827 frontPlane_transf[1]->
SetDy(-(19.7 + frontPlane_YSize * 0.5 + add_to_height));
2828 frontPlane_transf[1]->
SetDz(
2830 - (1.35 + faceShield_ZSize + plankShield_ZSize + frontPlane_ZSize * 0.5));
2832 frames->
AddNode(frontPlaneV, 0, frontPlane_transf[0]);
2833 frames->
AddNode(frontPlaneV, 1, frontPlane_transf[1]);
2837 Double_t frontPlaneWithWindow_XSize = (NModules / 2.0) * 6.3 - (NModules / 2.0) * 0.3 + 4.0 * 2 ;
2838 Double_t frontPlaneWithWindow_YSize = 18.3;
2839 Double_t frontPlaneWithWindow_ZSize = 0.3;
2841 Double_t frontPlaneWindow_XSize = frontPlaneWithWindow_XSize - 3.0 * 2 ;
2842 Double_t frontPlaneWindow_YSize = 8.6;
2845 TString(
"frontPlaneWithWindowBlankS") +
TString(
"_") + frames->
GetName(), frontPlaneWithWindow_XSize * 0.5,
2846 frontPlaneWithWindow_YSize * 0.5, frontPlaneWithWindow_ZSize * 0.5);
2849 frontPlaneWindow_YSize * 0.5, (frontPlaneWithWindow_ZSize + 0.001) * 0.5);
2853 frontPlaneWindow_pos->
SetDx(0.0);
2854 frontPlaneWindow_pos->
SetDy(-2.85 );
2855 frontPlaneWindow_pos->
SetDz(0.0);
2861 TString expression =
"frontPlaneWithWindowBlankS";
2863 expression +=
"-frontPlaneWindowS";
2865 expression +=
":frontPlaneWindow_pos";
2867 frontPlaneWithWindowS->
MakeNode(expression);
2876 if (frontPlaneWithWindowV_medium) {
2877 frontPlaneWithWindowV->
SetMedium(frontPlaneWithWindowV_medium);
2879 Fatal(
"Main",
"Invalid medium for frontPlaneWithWindowV!");
2888 frontPlaneWithWindow_transf[0]->
SetDx(0.0);
2889 frontPlaneWithWindow_transf[0]->
SetDy(+(19.5 + frontPlaneWithWindow_YSize * 0.5 + add_to_height));
2890 frontPlaneWithWindow_transf[0]->
SetDz(
2891 +half_dist_mods + (1.35 + faceShield_ZSize + frontPlaneWithWindow_ZSize * 0.5)
2892 + half_plane_shift);
2895 frontPlaneWithWindow_transf[1]->
RotateX(180.0);
2896 frontPlaneWithWindow_transf[1]->
SetDx(0.0);
2897 frontPlaneWithWindow_transf[1]->
SetDy(-(19.5 + frontPlaneWithWindow_YSize * 0.5 + add_to_height));
2898 frontPlaneWithWindow_transf[1]->
SetDz(
2899 +half_dist_mods - (1.35 + faceShield_ZSize + frontPlaneWithWindow_ZSize * 0.5));
2901 frames->
AddNode(frontPlaneWithWindowV, 0, frontPlaneWithWindow_transf[0]);
2902 frames->
AddNode(frontPlaneWithWindowV, 1, frontPlaneWithWindow_transf[1]);
2906 Double_t pcb_XSize = (NModules / 2.0) * 6.3 - (NModules / 2.0) * 0.3 + 4.865 ;
2911 frontPlane_YSize * 0.5, frontPlane_ZSize * 0.5);
2920 Fatal(
"Main",
"Invalid medium for pcbV!");
2929 pcb_transf[0]->
SetDx(0.0);
2930 pcb_transf[0]->
SetDy(+(26.5 + pcb_YSize * 0.5 + add_to_height));
2931 pcb_transf[0]->
SetDz(+half_dist_mods + half_plane_shift);
2934 pcb_transf[1]->
SetDx(0.0);
2935 pcb_transf[1]->
SetDy(-(26.5 + pcb_YSize * 0.5 + add_to_height));
2936 pcb_transf[1]->
SetDz(+half_dist_mods);
2938 frames->
AddNode(pcbV, 0, pcb_transf[0]);
2939 frames->
AddNode(pcbV, 1, pcb_transf[1]);
2943 Double_t upperSideShield_XSize = 4.4;
2944 Double_t upperSideShield_YSize = 12.3;
2945 Double_t upperSideShield_ZSize = 0.8;
2947 Double_t upperSideShieldCut_XSize = 0.9;
2948 Double_t upperSideShieldCut_YSize = 2.4;
2950 Double_t upperSideShieldWindow_XSize = 3.0;
2951 Double_t upperSideShieldWindow_YSize = 7.0;
2957 +upperSideShield_XSize * 0.5 ,
2958 +upperSideShield_XSize * 0.5 ,
2959 -upperSideShield_XSize * 0.5 ,
2960 -upperSideShield_XSize * 0.5 ,
2961 -upperSideShield_XSize * 0.5 + upperSideShieldCut_XSize ,
2962 -upperSideShield_XSize * 0.5 + upperSideShieldCut_XSize
2966 -upperSideShield_YSize * 0.5 ,
2967 +upperSideShield_YSize * 0.5 ,
2968 +upperSideShield_YSize * 0.5 ,
2969 -upperSideShield_YSize * 0.5 + upperSideShieldCut_YSize ,
2970 -upperSideShield_YSize * 0.5 + upperSideShieldCut_YSize ,
2971 -upperSideShield_YSize * 0.5
2974 ((
TGeoXtru*)upperSideShieldBlankS)->DefinePolygon(6, x_pos, y_pos);
2975 ((
TGeoXtru*)upperSideShieldBlankS)->DefineSection(0, -upperSideShield_ZSize * 0.5);
2976 ((
TGeoXtru*)upperSideShieldBlankS)->DefineSection(1, +upperSideShield_ZSize * 0.5);
2980 TString(
"upperSideShieldWindowS") +
TString(
"_") + frames->
GetName(), upperSideShieldWindow_XSize * 0.5,
2981 upperSideShieldWindow_YSize * 0.5, (upperSideShield_ZSize + 0.001) * 0.5);
2985 upperSideShieldWindow_pos->
SetDx(0.0);
2986 upperSideShieldWindow_pos->
SetDy(+1.65 );
2987 upperSideShieldWindow_pos->
SetDz(0.0);
2993 TString expression =
"upperSideShieldBlankS";
2995 expression +=
"-upperSideShieldWindowS";
2997 expression +=
":upperSideShieldWindow_pos";
2999 upperSideShieldWithWindowS->
MakeNode(expression);
3008 if (upperSideShieldV_medium) {
3009 upperSideShieldV->
SetMedium(upperSideShieldV_medium);
3011 Fatal(
"Main",
"Invalid medium for upperSideShieldV!");
3020 upperSideShield_transf[0]->
RotateY(90.0);
3021 upperSideShield_transf[0]->
SetDx(+(frontPlaneWithWindow_XSize * 0.5 - upperSideShield_ZSize * 0.5));
3022 upperSideShield_transf[0]->
SetDy(+(17.6 + upperSideShield_YSize * 0.5 + add_to_height));
3023 upperSideShield_transf[0]->
SetDz(+half_dist_mods - 0.65 + half_plane_shift);
3026 upperSideShield_transf[1]->
RotateY(90.0);
3027 upperSideShield_transf[1]->
SetDx(-(frontPlaneWithWindow_XSize * 0.5 - upperSideShield_ZSize * 0.5));
3028 upperSideShield_transf[1]->
SetDy(+(17.6 + upperSideShield_YSize * 0.5 + add_to_height));
3029 upperSideShield_transf[1]->
SetDz(+half_dist_mods - 0.65 + half_plane_shift);
3032 upperSideShield_transf[2]->
RotateY(-90.0);
3034 upperSideShield_transf[2]->
RotateX(180.0);
3035 upperSideShield_transf[2]->
RotateY(180.0);
3036 upperSideShield_transf[2]->
SetDx(+(frontPlaneWithWindow_XSize * 0.5 - upperSideShield_ZSize * 0.5));
3037 upperSideShield_transf[2]->
SetDy(-(17.6 + upperSideShield_YSize * 0.5 + add_to_height));
3038 upperSideShield_transf[2]->
SetDz(+half_dist_mods + 0.65 );
3041 upperSideShield_transf[3]->
RotateY(-90.0);
3043 upperSideShield_transf[3]->
RotateX(180.0);
3044 upperSideShield_transf[3]->
RotateY(180.0);
3045 upperSideShield_transf[3]->
SetDx(-(frontPlaneWithWindow_XSize * 0.5 - upperSideShield_ZSize * 0.5));
3046 upperSideShield_transf[3]->
SetDy(-(17.6 + upperSideShield_YSize * 0.5 + add_to_height));
3047 upperSideShield_transf[3]->
SetDz(+half_dist_mods + 0.65 );
3049 frames->
AddNode(upperSideShieldV, 0, upperSideShield_transf[0]);
3050 frames->
AddNode(upperSideShieldV, 1, upperSideShield_transf[1]);
3051 frames->
AddNode(upperSideShieldV, 2, upperSideShield_transf[2]);
3052 frames->
AddNode(upperSideShieldV, 3, upperSideShield_transf[3]);
3056 Double_t upperSideShieldCover_XSize = 4.4;
3057 Double_t upperSideShieldCover_YSize = 8.5;
3058 Double_t upperSideShieldCover_ZSize = 0.15;
3061 upperSideShieldCover_XSize * 0.5, upperSideShieldCover_YSize * 0.5,
3062 upperSideShieldCover_ZSize * 0.5);
3069 if (upperSideShieldCoverV_medium) {
3070 upperSideShieldCoverV->
SetMedium(upperSideShieldCoverV_medium);
3072 Fatal(
"Main",
"Invalid medium for upperSideShieldCoverV!");
3081 upperSideShieldCover_transf[0]->
RotateY(90.0);
3082 upperSideShieldCover_transf[0]->
SetDx(+(frontPlaneWithWindow_XSize * 0.5 + upperSideShieldCover_ZSize * 0.5));
3083 upperSideShieldCover_transf[0]->
SetDy(+(20.7 + upperSideShieldCover_YSize * 0.5 + add_to_height));
3084 upperSideShieldCover_transf[0]->
SetDz(+half_dist_mods - 0.65 + half_plane_shift);
3087 upperSideShieldCover_transf[1]->
RotateY(90.0);
3088 upperSideShieldCover_transf[1]->
SetDx(-(frontPlaneWithWindow_XSize * 0.5 + upperSideShieldCover_ZSize * 0.5));
3089 upperSideShieldCover_transf[1]->
SetDy(+(20.7 + upperSideShieldCover_YSize * 0.5 + add_to_height));
3090 upperSideShieldCover_transf[1]->
SetDz(+half_dist_mods - 0.65 + half_plane_shift);
3093 upperSideShieldCover_transf[2]->
RotateY(90.0);
3094 upperSideShieldCover_transf[2]->
SetDx(+(frontPlaneWithWindow_XSize * 0.5 + upperSideShieldCover_ZSize * 0.5));
3095 upperSideShieldCover_transf[2]->
SetDy(-(20.7 + upperSideShieldCover_YSize * 0.5 + add_to_height));
3096 upperSideShieldCover_transf[2]->
SetDz(+half_dist_mods + 0.65 );
3099 upperSideShieldCover_transf[3]->
RotateY(90.0);
3100 upperSideShieldCover_transf[3]->
SetDx(-(frontPlaneWithWindow_XSize * 0.5 + upperSideShieldCover_ZSize * 0.5));
3101 upperSideShieldCover_transf[3]->
SetDy(-(20.7 + upperSideShieldCover_YSize * 0.5 + add_to_height));
3102 upperSideShieldCover_transf[3]->
SetDz(+half_dist_mods + 0.65 );
3104 frames->
AddNode(upperSideShieldCoverV, 0, upperSideShieldCover_transf[0]);
3105 frames->
AddNode(upperSideShieldCoverV, 1, upperSideShieldCover_transf[1]);
3106 frames->
AddNode(upperSideShieldCoverV, 2, upperSideShieldCover_transf[2]);
3107 frames->
AddNode(upperSideShieldCoverV, 3, upperSideShieldCover_transf[3]);