1318 {
1319
1320
1321 {
1322 SoMaterial *
m =
new SoMaterial;
1323 m->ambientColor.setValue(1, .4, .4);
1324 m->diffuseColor.setValue(1, .4, .4);
1325 m->specularColor.setValue(0.441667, 0.441667, 0.441667);
1326 m->shininess.setValue(0.67);
1327 add(
"LAr::Barrel::Cryostat::Cylinder::#4",m);
1328 add(
"LAr::Barrel::Cryostat::Cylinder::#5",m);
1329 add(
"LAr::Barrel::Cryostat::Cylinder::#6",m);
1330 add(
"LAr::Barrel::Cryostat::Cylinder::#7",m);
1331 add(
"LAr::Barrel::Cryostat::Cylinder::#8",m);
1332 add(
"LAr::Barrel::Cryostat::Cylinder::#9",m);
1333 add(
"LAr::Barrel::Cryostat::InnerWall",m);
1334 add(
"LAr::Barrel::Cryostat::InnerEndWall",m);
1335 add(
"LAr::Barrel::Cryostat::Leg",m);
1336 }
1337
1338 {
1339
1340 SoMaterial *
m =
new SoMaterial;
1341 m->ambientColor.setValue(.4, .4, 1);
1342 m->diffuseColor.setValue(.4, .4, 1);
1343 m->specularColor.setValue(0.441667, 0.441667, 0.441667);
1344 m->shininess.setValue(0.67);
1345 add(
"LAr::Barrel::Cryostat::Cylinder::#0",m);
1346 add(
"LAr::Barrel::Cryostat::Cylinder::#1",m);
1347 add(
"LAr::Barrel::Cryostat::Cylinder::#2",m);
1348 add(
"LAr::Barrel::Cryostat::Cylinder::#3",m);
1349 add(
"LAr::Barrel::Cryostat::Ear",m);
1350 add(
"LAr::Barrel::Cryostat::OuterWall",m);
1351 }
1352
1353 {
1354 SoMaterial *
m =
new SoMaterial;
1355 m->diffuseColor.setValue (1, 1, 0.5);
1356 m->ambientColor.setValue (0.54, 0.54, 0.27);
1357 m->emissiveColor.setValue (0.133, 0.133, 0.067);
1359 add(
"bcmWallLog",m);
1360 }
1361
1362
1363
1364 {
1365
1366 SoMaterial *
m =
new SoMaterial;
1367
1369 m->shininess.setValue(0.67);
1370 add(
"LAr::EMEC::Mother",m);
1371 }
1372 {
1373
1374 SoMaterial *
m =
new SoMaterial;
1376
1377 m->shininess.setValue(0.67);
1378 add(
"LAr::HEC::LiquidArgon",m);
1379 }
1380 {
1381
1382 SoMaterial *
m =
new SoMaterial;
1384 m->shininess.setValue(0.67);
1385 add(
"LAr::FCAL::LiquidArgonC",m);
1386 add(
"LAr::FCAL::LiquidArgonA",m);
1387 }
1388
1389 {
1390
1391 SoMaterial *
m =
new SoMaterial;
1393 m->shininess.setValue(0.67);
1394 add(
"TRTEndcapWheelAB",m);
1395 add(
"TRTBarrel",m);
1396 }
1397
1398 {
1399
1400 SoMaterial *
m =
new SoMaterial;
1401
1403 m->shininess.setValue(0.67);
1404 add(
"SCT_Barrel",m);
1405 add(
"SCT_ForwardA",m);
1406 add(
"SCT_ForwardC",m);
1407 }
1408
1409
1410
1411 {
1412 SoMaterial *
m =
new SoMaterial;
1414 m->shininess.setValue(0.67);
1415
1417 }
1418
1419
1420
1421 {
1422 SoMaterial *
m =
new SoMaterial;
1427 m->shininess.setValue(0.5);
1428
1429
1430 add(
"InnerBarrelSingleMod_Sensor",m);
1431 add(
"InnerBarrelSingleMod_DeadVolume",m);
1432 add(
"InnerBarrelSingleMod_Chip",m);
1433 add(
"InnerBarrelSingleMod_Bonding",m);
1434
1435 add(
"InnerBarrelQuadMod_Sensor",m);
1436 add(
"InnerRingSingleMod_Chip",m);
1437
1438 add(
"InnerRingSingleMod_Sensor",m);
1439 add(
"InnerRingSingleMod_Bonding",m);
1440
1441 add(
"InnerEndcapQuadMod_Sensor",m);
1442
1443 add(
"InnerQuadMod_Chip",m);
1444 add(
"InnerQuadMod_Bonding",m);
1445
1446 add(
"OuterBarrelQuadMod_Sensor",m);
1447 add(
"InclinedQuadMod_Sensor",m);
1448
1449 add(
"OuterEndcapQuadMod_Sensor",m);
1450
1451 add(
"OuterQuadMod_Chip",m);
1452 add(
"OuterQuadMod_Bonding",m);
1453
1454 }
1455
1456
1457 {
1458 SoMaterial *
m =
new SoMaterial;
1463
1464
1465 add(
"BRLSensorSS",m);
1466 add(
"BRLSensorMS",m);
1467
1468
1469 add(
"ECSensor0",m);
1470 add(
"ECSensor1",m);
1471 add(
"ECSensor2",m);
1472 add(
"ECSensor3",m);
1473 add(
"ECSensor4",m);
1474 add(
"ECSensor5",m);
1475
1476 add(
"ECSensorBack0",m);
1477 add(
"ECSensorBack1",m);
1478 add(
"ECSensorBack2",m);
1479 add(
"ECSensorBack3",m);
1480 add(
"ECSensorBack4",m);
1481 add(
"ECSensorBack5",m);
1482
1483 }
1484
1485
1486 {
1487 SoMaterial *
m =
new SoMaterial;
1492 m->shininess.setValue(0.5);
1493
1494 m->transparency.setValue(0.6);
1495
1496
1497
1498 add(
"InnerBarrelSingleMod_Pigtail",m);
1499
1500 add(
"InnerQuadMod_QuadPigtail",m);
1501 add(
"InnerQuadMod_QuadFlex",m);
1502
1503 add(
"OuterQuadMod_QuadFlex",m);
1504
1505
1506
1507 add(
"InnerPixelBarrel_T0",m);
1508 add(
"InnerPixEndcap_L0T0Back_ring",m);
1509 add(
"InnerPixEndcap_L1T0Front_ring",m);
1510 add(
"InnerPixEndcap_L1T0Back_ring",m);
1511 add(
"InnerPixEndcap_L2T0Front_ring",m);
1512 add(
"InnerPixEndcap_L2T0Back_ring",m);
1513
1514 add(
"L2HalfRingEndCapBusTapeRing",m);
1515 add(
"L3HalfRingEndCapBusTapeRing",m);
1516 add(
"L4endcapBusTape",m);
1517
1518
1519 unsigned int sectors = 9;
1520 std::vector<unsigned int>
layers = {2, 3, 4};
1521 for (auto& layer : layers) {
1522 for (unsigned int sector = 0; sector<sectors; sector++) {
1523 std::string volumeName = "Pixel__ModuleSvcM" + std::to_string(sectors-sector) + "_L" + std::to_string(layer) + "_S" + std::to_string(sector);
1525 }
1526 }
1527 add(
"PixelSvcBrlT1_L2",m);
1528 add(
"PixelSvcBrlT1_L3",m);
1529 add(
"PixelSvcBrlT1_L4in",m);
1530 add(
"PixelSvcBrlT1_L4out",m);
1531 for (unsigned int sector = 0; sector<sectors; sector++) {
1532 std::string volumeName = "PixelSvcBrlT1_Radial" + std::to_string(sectors-sector);
1534 }
1535
1536 add(
"svcEcT1_r199_z103",m);
1537 add(
"svcEcT1_r199_z116",m);
1538 add(
"svcEcT1_r199_z127",m);
1539 add(
"svcEcT1_r199_z141",m);
1540 add(
"svcEcT1_r199_z1366",m);
1541 add(
"svcEcT1_r198_z172",m);
1542 add(
"svcEcT1_r198_z190",m);
1543 add(
"svcEcT1_r198_z210",m);
1544 add(
"svcEcT1_r198_z232",m);
1545 add(
"svcEcT1_r198_z257",m);
1546 add(
"svcEcT1_r198_z149",m);
1547
1548 add(
"svcEcT1_r259_z151",m);
1549 add(
"svcEcT1_r259_z176",m);
1550 add(
"svcEcT1_r259_z203",m);
1551 add(
"svcEcT1_r259_z234",m);
1552 add(
"svcEcT1_r259_z270",m);
1553 add(
"svcEcT1_r259_z311",m);
1554 add(
"svcEcT1_r259_z359",m);
1555 add(
"svcEcT1_r259_z149",m);
1556
1557 add(
"svcEcT1_r319_z131",m);
1558 add(
"svcEcT1_r319_z150",m);
1559 add(
"svcEcT1_r319_z170",m);
1560 add(
"svcEcT1_r319_z192",m);
1561 add(
"svcEcT1_r319_z218",m);
1562 add(
"svcEcT1_r319_z246",m);
1563 add(
"svcEcT1_r319_z746",m);
1564 add(
"svcEcT1_r318_z317",m);
1565 add(
"svcEcT1_r318_z149",m);
1566
1567 add(
"SvcEcT0TwdBS_r156_199_z.5",m);
1568 add(
"SvcEcT0TwdBS_r156_198_z.5",m);
1569 add(
"SvcEcT0TwdBS_r199_199_z.5",m);
1570 add(
"SvcEcT0TwdBS_r216_259_z.5",m);
1571 add(
"SvcEcT0TwdBS_r276_319_z.5",m);
1572 add(
"SvcEcT0TwdBS_r276_318_z.5",m);
1573 add(
"SvcEcT0TwdBS_r318_319_z.5",m);
1574
1575 add(
"SvcEc_r196.7_197.1_z78.6",m);
1576 add(
"SvcEc_r196.7_197.1_z97.6",m);
1577 add(
"SvcEc_r196.7_197.1_z121.2",m);
1578 add(
"SvcEc_r196.7_197.1_z150.3",m);
1579 add(
"SvcEc_r196.7_197.1_z186.7",m);
1580 add(
"SvcEc_r196.7_197.1_z23.3",m);
1581 add(
"SvcEc_r337.8_338.2_z1939.2",m);
1582
1583
1584 add(
"SvcEc_r264.4_264.8_z58.1",m);
1585 add(
"SvcEc_r264.4_264.8_z66.6",m);
1586 add(
"SvcEc_r264.4_264.8_z76.4",m);
1587 add(
"SvcEc_r264.4_264.8_z87.5",m);
1588 add(
"SvcEc_r264.4_264.8_z100.3",m);
1589 add(
"SvcEc_r264.4_264.8_z115",m);
1590 add(
"SvcEc_r264.4_264.8_z131.9",m);
1591 add(
"SvcEc_r264.4_264.8_z30.9",m);
1592 add(
"SvcEc_r338.8_339.2_z1937.2",m);
1593
1594 add(
"SvcEc_r327.3_327.7_z52.7",m);
1595 add(
"SvcEc_r327.3_327.7_z58.8",m);
1596 add(
"SvcEc_r327.3_327.7_z65.6",m);
1597 add(
"SvcEc_r327.3_327.7_z73.1",m);
1598 add(
"SvcEc_r327.3_327.7_z81.7",m);
1599 add(
"SvcEc_r327.3_327.7_z91.1",m);
1600 add(
"SvcEc_r327.3_327.7_z101.6",m);
1601 add(
"SvcEc_r327.3_327.7_z113.4",m);
1602 add(
"SvcEc_r327.3_327.7_z34.7",m);
1603 add(
"SvcEc_r339.8_340.2_z1935.2",m);
1604
1605 add(
"SvcEc_r197.1_202.8_z.4",m);
1606 add(
"SvcEc_r203.2_263.4_z.4",m);
1607 add(
"SvcEc_r264.8_270.8_z.4",m);
1608 add(
"SvcEc_r271.2_326.3_z.4",m);
1609 add(
"SvcEc_r326.7_327.3_z.4",m);
1610 add(
"SvcEc_r327.7_333.8_z.4",m);
1611 add(
"SvcEc_r334.2_337.3_z.4",m);
1612 add(
"SvcEc_r337.7_337.8_z.4",m);
1613 add(
"SvcEc_r338.2_338.3_z.4",m);
1614 add(
"SvcEc_r338.7_338.8_z.4",m);
1615 add(
"SvcEc_r339.2_339.3_z.4",m);
1616 add(
"SvcEc_r339.7_339.8_z.4",m);
1617
1618
1619
1620
1621 add(
"InnerPixelBarrelCoolingL0",m);
1622 add(
"InnerPixelBarrelCoolingL1",m);
1623
1624 add(
"OuterQuadMod_Cell",m);
1625 add(
"LongeronCoolingTube",m);
1626 add(
"L2HalfRingCoolingPipe",m);
1627 add(
"L3HalfRingCoolingPipe",m);
1628 add(
"L4endcapcoolingpipe",m);
1629
1630 }
1631
1632
1633 {
1634 SoMaterial *
m =
new SoMaterial;
1639 m->transparency.setValue(0.5);
1640
1641 add (
"SV_Barrel01",m);
1642 add (
"SV_Barrel12",m);
1643 add (
"SV_Barrel23",m);
1644 add (
"SV_Barrel3Out",m);
1645 add (
"SV_BarrelPastEndcap",m);
1646 add (
"SV_BarrelAtEC_lv",m);
1647 add (
"SV_Barrel_lv",m);
1648 add (
"SV_Endcap_lv",m);
1649 add (
"SV_Endcap01",m);
1650 add (
"SV_Endcap12",m);
1651 add (
"SV_Endcap23",m);
1652 add (
"SV_Endcap34",m);
1653 add (
"SV_Endcap45",m);
1654 add (
"SV_Endcap5Out",m);
1655 add(
"SVatBulkhead_lv",m);
1656
1657 add(
"SVatBulkhead_lv",m);
1658 add(
"StaveSignalSS",m);
1659 add(
"StaveGround",m);
1660
1661 }
1662
1663
1664 {
1665 SoMaterial *
m =
new SoMaterial;
1670 m->shininess.setValue(0.5);
1671
1672 m->transparency.setValue(0.6);
1673
1676 add(
"InnerPixBarrelSupport_Stave",m);
1677 add(
"InnerPixBarrelSupport_Stave1",m);
1678 add(
"InnerPixBarrelSupport_Global",m);
1679 add(
"InnerPixEndcap_CoupledRingSupport",m);
1680 add(
"InnerPixEndcap_IntermediateRingSupport",m);
1681 add(
"InnerPixEndcap_L1RingSupport",m);
1682 add(
"QuarterShell",m);
1683
1684 add(
"InclL2HalfShell",m);
1685 add(
"InclL2Support",m);
1686 add(
"InclL3HalfShell",m);
1687 add(
"InclL3Support",m);
1688 add(
"InclL4HalfShell",m);
1689 add(
"InclL4Support",m);
1690 add(
"LongeronCornerBase",m);
1691 add(
"LongeronCornerEnd",m);
1692 add(
"LongeronTrussWall",m);
1693 add(
"LongeronCapBase",m);
1694 add(
"LongeronTopCap",m);
1695 add(
"L2HalfRingCarbonFoamInner",m);
1696 add(
"L2HalfRingCarbonFoamOuter",m);
1697 add(
"L2HalfRingFaceSheet",m);
1698 add(
"L3HalfRingCarbonFoamInner",m);
1699 add(
"L3HalfRingCarbonFoamOuter",m);
1700 add(
"L3HalfRingFaceSheet",m);
1701 add(
"L4endcapinnerCarbonFoam",m);
1702 add(
"L4endcapouterCarbonFoam",m);
1703 add(
"L4endcapFaceSheet",m);
1704 add(
"L2HalfShell",m);
1705 add(
"L3HalfShell",m);
1706 add(
"L4HalfShell",m);
1707 add(
"L2HalfRingEndCapFixingLug",m);
1708 add(
"L3HalfRingEndCapFixingLug",m);
1709 add(
"HalfRingEndCapFixingLug",m);
1710
1711
1712 add(
"FrontSupportFacing",m);
1713 add(
"FrontSupportCore",m);
1714 add(
"RearSupport",m);
1715 }
1716
1717
1718 {
1719 SoMaterial *
m =
new SoMaterial;
1724 m->transparency.setValue(0.5);
1725
1726 add(
"StripB_Cyl0",m);
1727 add(
"StripB_Cyl1",m);
1728 add(
"StripB_Cyl2",m);
1729 add(
"StripB_Cyl3",m);
1730 add(
"StripB_Cyl4",m);
1731 add(
"StaveCylHat0",m);
1732 add(
"StaveCylHat1",m);
1733 add(
"StaveCylHat2",m);
1734 add(
"StaveCylHat3",m);
1739 add(
"Interlink0",m);
1740 add(
"Interlink1",m);
1741 add(
"Interlink2",m);
1742 add(
"Interlink3",m);
1743 add(
"WheelInnerT",m);
1744 add(
"WheelOuterT",m);
1749 add(
"EC_InnerCyl",m);
1750 add(
"OCFlangeTop",m);
1751 add(
"OCFlangeFoot",m);
1753 add(
"OCHatWall",m);
1754 add(
"OCHatFoot",m);
1755 add(
"PetalCore",m);
1756 add(
"BladeFace",m);
1757 add(
"BladeSideRod",m);
1758 add(
"BladeCore",m);
1759 add(
"LockBaseL",m);
1760 add(
"LockBaseH",m);
1762 add(
"RailWedge",m);
1764 add(
"RailWheel",m);
1765 add(
"RailShelf",m);
1766 add(
"RailSquare",m);
1767 add(
"RailSquareT",m);
1768 add(
"RailSquare1",m);
1769 add(
"OCMountPadOuter",m);
1770 add(
"OCMountPadMiddle",m);
1771 add(
"OCMountPadInner",m);
1772 add(
"ZtubeD0D1",m);
1773 add(
"ZtubeD1D2",m);
1774 add(
"ZtubeD2D3",m);
1775 add(
"ZtubeD3D4",m);
1776 add(
"ZtubeD4D5",m);
1777 add(
"StiffDiscAve",m);
1779 add(
"StaveFacesheetAll",m);
1781 add(
"StaveEOS_CFoam",m);
1782 add(
"StaveBusGlue",m);
1783 add(
"StaveCloseoutEOS_End",m);
1784 add(
"StaveCoreMS",m);
1785 add(
"StaveCoreSS",m);
1786 add(
"StaveMountC",m);
1787 add(
"StaveMountI",m);
1788 add(
"StaveMountE",m);
1789
1790 }
1791
1792
1793 {
1794 SoMaterial *
m =
new SoMaterial;
1799 m->shininess.setValue(1);
1801 add(
"PolyMod_InnerLayer",m);
1802 add(
"InnerPolyMod",m);
1803 add(
"InnerPolyMod_InnerLayer",m);
1804 }
1805
1806
1807
1808 {
1809 SoMaterial *
m =
new SoMaterial;
1810 m->transparency.setValue(1.0);
1811 add(
"StaveCchannelAirEOS",m);
1812 add(
"StaveCchannelAirLong",m);
1813 add(
"StaveCchannelAirLongEOS",m);
1814 add(
"PetalCloseoutShortSpace",m);
1815 add(
"PetalCloseoutLongSpace",m);
1816 }
1817
1818 {
1819 SoMaterial *
m =
new SoMaterial;
1822 m->transparency.setValue(0.7);
1823 add(
"SealPlate",m);
1824 }
1825
1826 {
1827 SoMaterial *
m =
new SoMaterial;
1832 m->shininess.setValue(0.45);
1833
1834 add(
"HGTDSiSensorPosL0", m);
1835 add(
"HGTDSiSensorPosL1", m);
1836 add(
"HGTDSiSensorPosL2", m);
1837 add(
"HGTDSiSensorPosL3", m);
1838 add(
"HGTDSiSensorNegL0", m);
1839 add(
"HGTDSiSensorNegL1", m);
1840 add(
"HGTDSiSensorNegL2", m);
1841 add(
"HGTDSiSensorNegL3", m);
1842 add(
"HGTDLGADInactive", m);
1844 }
1845
1846
1847 {
1848 SoMaterial *
m =
new SoMaterial;
1852 m->shininess.setValue(0.35);
1853
1854 add(
"HGTDFlexPackage", m);
1855 add(
"HGTDHybrid", m);
1856 for (
int i = 0;
i <= 7; ++
i) {
1857 add(
"HGTDFlexTube" + std::to_string(i), m);
1858 }
1859 }
1860
1861
1862 {
1863 SoMaterial *
m =
new SoMaterial;
1866 m->shininess.setValue(0.2);
1867
1868 add(
"HGTDGlueSensor", m);
1869 add(
"HGTDGlueAsic", m);
1870 }
1871
1872
1873 {
1874 SoMaterial *
m =
new SoMaterial;
1878 m->transparency.setValue(0.20);
1879 m->shininess.setValue(0.30);
1880
1881 add(
"HGTDSupportPlate", m);
1882 add(
"HGTDCoolingPlate", m);
1883 add(
"HGTDFrontCover", m);
1884 add(
"HGTDBackCover", m);
1885 add(
"HGTDOuterRCover", m);
1886 add(
"HGTDInnerRCover1", m);
1887 add(
"HGTDInnerRCover2", m);
1888 add(
"HGTDInnerRCover3", m);
1889 }
1890
1891
1892 {
1893 SoMaterial *
m =
new SoMaterial;
1897 m->shininess.setValue(0.55);
1898
1899 for (
int i = 0;
i <= 41; ++
i) {
1900 add(
"HGTDCoolingTube_" + std::to_string(i), m);
1901 }
1902 }
1903
1904
1905 {
1906 SoMaterial *
m =
new SoMaterial;
1910 m->transparency.setValue(0.45);
1911
1912 for (
int i = 0;
i <= 41; ++
i) {
1913 add(
"HGTDCoolingTubeFluid_" + std::to_string(i), m);
1914 }
1915 }
1916
1917
1918 {
1919 SoMaterial *
m =
new SoMaterial;
1923 m->shininess.setValue(0.25);
1924
1925 add(
"HGTDPeripheralCoolingLines", m);
1926 add(
"support_F_vol", m);
1927 add(
"support_B_vol", m);
1928 add(
"PowerBlock_F1_vol", m);
1929 add(
"PowerBlock_F2_vol", m);
1930 add(
"PowerBlock_F3_vol", m);
1931 add(
"PowerBlock_B1_vol", m);
1932 add(
"PowerBlock_B2_vol", m);
1933 add(
"PowerBlock_B3_vol", m);
1934 add(
"VTRx_F1_vol", m);
1935 add(
"VTRx_F21_vol", m);
1936 add(
"VTRx_F22_vol", m);
1937 }
1938
1940}
void add(const std::string &name, SoMaterial *)
void setColorFromRGB(SoMaterial *mat, const std::string &type, const int r, const int g, const int b)
layers(flags, cells_name, *args, **kw)
Here we define wrapper functions to set up all of the standard corrections.