191 if colorBy<ETACODE
or colorBy>IPHI:
194 global box, c, h, leg
199 c = TCanvas(
'c',
"MuCTPi to Topo Geometry",1400,950)
202 h =
TH2F(
"h",
"Muon Topo Geometry %i" % (2016
if is2016
else 2015),10,-2.6,2.6,10,-0.15,6.4)
214 leg = TLegend(0.9,0.1,0.98,0.9)
216 leg = TLegend(0.8,0.1,0.9,0.35)
222 for MioctID
in drawOrder:
224 MIOCT = geometry.getMIOCT(MioctID)
227 for cellIdx,TopoCell
in enumerate(MIOCT.Decode.TopoCells):
230 code =
int(TopoCell[
"etacode"],16)
231 elif colorBy==PHICODE:
232 code =
int(TopoCell[
"phicode"],16)
234 code = abs(
int(TopoCell[
"ieta"]))
236 code =
int(TopoCell[
"iphi"])
238 raise RuntimeError(
"Don't know how to color the eta-phi map (%r)" % colorBy)
239 color = colorMap2[code % len(colorMap2)]
240 fillStyle = fillStyleMap2[code % 4]
241 box.SetLineColor(color)
242 box.SetFillColor(color)
244 circle.SetLineColor(color)
245 circle.SetFillColor(color)
248 c1_x =
float(TopoCell[
"etamin"])
249 c1_y =
float(TopoCell[
"phimin"])
251 c2_x =
float(TopoCell[
"etamax"])
252 c2_y =
float(TopoCell[
"phimax"])
254 c_x =
float(TopoCell[
"ieta"])
255 c_y =
float(TopoCell[
"iphi"])
261 box.SetFillStyle(fillStyle)
262 b = box.DrawBox(c1_x,c1_y,c2_x,c2_y)
264 box.DrawBox(c1_x,c1_y,c2_x,c2_y)
266 circle.DrawArc(c_x/10.,c_y/10.,0.02)
269 if code
not in codeInLegend:
270 codeInLegend += [code]
272 leg.AddEntry(b,
"etacode %i" % code,
"lf")
273 elif colorBy==PHICODE:
274 leg.AddEntry(b,
"phicode %i" % code,
"f")
276 leg.AddEntry(b,
"|ieta| %i" % code,
"f")
278 leg.AddEntry(b,
"iphi %i" % code,
"f")
285 elif colorBy==PHICODE:
293 c.SaveAs(
"TopoLayout%s%s.pdf" % (
"2016" if is2016
else "2015", ext))