1 #include "TEveCompound.h"
10 : m_tower(nullptr), m_ls(nullptr), m_energy(e), m_et(et), m_isTallest(
false) {
14 TEveCompound *
h =
new TEveCompound(
"rechit box",
"tower");
16 h->CSCApplyMainColorToAllChildren();
34 for (
size_t i = 0;
i < 4; ++
i) {
38 m_tower->SetVertex(j, corners[j]);
48 m_tower =
new TEveBox(
"EcalRecHitTower");
49 std::vector<TEveVector> towerCorners = corners;
63 m_ls =
new TEveStraightLineSet(
"EcalRecHitLineSet");
67 for (
unsigned int i = 0;
i < 4; ++
i) {
71 m_ls->AddLine(data[0], data[1], 0, data[0], data[1], 0);
76 m_ls->SetMarkerStyle(1);
77 m_ls->AddLine(c.fX, c.fY, c.fZ, c.fX, c.fY, c.fZ);
78 m_ls->AddMarker(0, 0.);
96 for (
unsigned int i = 0;
i < 4; ++
i) {
100 m_tower->SetVertex(
i, data[0], data[1], 0);
101 m_tower->SetVertex(
i + 4, data[0], data[1], scale);
108 float s =
log(1 + val) / maxLogVal;
111 float z = scale * 1.001;
112 setLine(0, c.fX - d, c.fY - d, z, c.fX + d, c.fY - d, z);
113 setLine(1, c.fX + d, c.fY - d, z, c.fX + d, c.fY + d, z);
114 setLine(2, c.fX + d, c.fY + d, z, c.fX - d, c.fY + d, z);
115 setLine(3, c.fX - d, c.fY + d, z, c.fX - d, c.fY - d, z);
118 m_ls->AddLine(c.fX - d, c.fY - d, z, c.fX + d, c.fY + d, z);
119 m_ls->AddLine(c.fX - d, c.fY + d, z, c.fX + d, c.fY - d, z);
120 m_ls->GetMarkerPlex().Refit();
123 TEveStraightLineSet::Marker_t *
m = ((TEveStraightLineSet::Marker_t *)(
m_ls->GetMarkerPlex().Atom(0)));
133 m_ls->StampTransBBox();
140 TEveStraightLineSet::Line_t *
l = ((TEveStraightLineSet::Line_t *)(
m_ls->GetLinePlex().Atom(idx)));
156 m_ls->AddLine(x1, y1, z1, x2, y2, z2);
161 m_ls->AddLine(v1.fX, v1.fY, v1.fZ, v2.fX, v2.fY, v2.fZ);
void setupEveBox(std::vector< TEveVector > &corners, float scale)
static std::vector< std::string > checklist log
const edm::EventSetup & c
void buildTower(const std::vector< TEveVector > &corners)
TEveStraightLineSet * m_ls
void updateScale(float scale, float maxLogVal, bool plotEt)
void addLine(float x1, float y1, float z1, float x2, float y2, float z2)
void buildLineSet(const std::vector< TEveVector > &corners)
FWBoxRecHit(const std::vector< TEveVector > &corners, TEveElement *comp, float e, float et)
char data[epos_bytes_allocation]
void setLine(int idx, float x1, float y1, float z1, float x2, float y2, float z2)
The Signals That Services Can Subscribe To This is based on ActivityRegistry h
Helper function to determine trigger accepts.