13 #include "TEveBoxSet.h"
14 #include "TGeoSphere.h"
16 #include "TEveGeoShape.h"
17 #include "TEveStraightLineSet.h"
49 TEveElement &oItemHolder,
74 <<
"lower time bound is larger than upper time bound. Maybe opposite is desired?";
77 edm::LogWarning(
"DataNotFound|InvalidData") <<
"couldn't locate 'timeLayerCluster' ValueMap in root file.";
81 edm::LogWarning(
"DataNotFound|InvalidData") <<
"couldn't locate 'timeLayerCluster' ValueMap in root file.";
98 TEveElement &oItemHolder,
107 const size_t N = trackster.
vertices().size();
110 for (
size_t i = 0;
i <
N; ++
i) {
113 const size_t nHits = layerCluster.
size();
118 const bool z = (layerCluster.
seed() >> 25) & 0
x1;
133 if (isScintillator) {
135 float dphi = (isFine) ? 1.0 *
M_PI / 180. : 1.25 *
M_PI / 180.;
137 float dr = (isFine) ? (0.0484 * static_cast<float>(ir) + 2.1) : (0.075 * static_cast<float>(ir) + 2.0);
138 float r = (isFine) ? (0.0239 * static_cast<float>(
pow(ir, 2)) + 2.02 * static_cast<float>(ir) + 119.6)
139 : (0.0367 * static_cast<float>(
pow(ir, 2)) + 1.7 * static_cast<float>(ir) + 90.7);
143 float side = (isFine) ? 0.465 : 0.698;
149 auto eveCircle =
new TEveGeoShape(
"Circle");
151 eveCircle->SetShape(tube);
152 eveCircle->InitMainTrans();
157 const float crossScale = 1.0f + fmin(
energy, 5.0
f);
159 TEveStraightLineSet *position_marker =
new TEveStraightLineSet;
160 position_marker->SetLineWidth(2);
161 position_marker->SetLineColor(kOrange);
163 const float position_crossScale = crossScale * 0.5;
164 position_marker->AddLine(
165 pos.x() - position_crossScale,
pos.y(),
pos.z(),
pos.x() + position_crossScale,
pos.y(),
pos.z());
166 position_marker->AddLine(
167 pos.x(),
pos.y() - position_crossScale,
pos.z(),
pos.x(),
pos.y() + position_crossScale,
pos.z());
169 oItemHolder.AddElement(position_marker);
176 for (
auto edge :
edges) {
179 const bool isScintillatorIn = doublet.first.seed().det() ==
DetId::HGCalHSc;
180 const bool isScintillatorOut = doublet.second.seed().det() ==
DetId::HGCalHSc;
191 layerOut += offsetOut;
193 const bool isAdjacent = (layerOut - layerIn) == 1;
195 TEveStraightLineSet *marker =
new TEveStraightLineSet;
196 marker->SetLineWidth(2);
198 marker->SetLineColor(kYellow);
200 marker->SetLineColor(kRed);
204 if (
layer == 0 || fabs(layerIn -
layer) == 0 || fabs(layerOut -
layer) == 0) {
205 marker->AddLine(doublet.first.x(),
213 oItemHolder.AddElement(marker);