|
ATLAS Offline Software
|
Go to the documentation of this file.
11 using namespace SegmentFit;
14 const int fillStyle) {
15 auto ellipse = std::make_unique<TEllipse>(center.y(), center.z(),
radius);
16 ellipse->SetLineColor(
color);
17 ellipse->SetFillStyle(fillStyle);
18 ellipse->SetLineWidth(1);
19 ellipse->SetFillColorAlpha(
color, 0.2);
24 const double xPos,
const double yPos,
25 const unsigned int fontSize) {
26 auto tl = std::make_unique<TLatex>(xPos, yPos,
text.c_str());
29 tl->SetTextSize(fontSize);
33 const double boxWidth,
const double boxHeight,
34 const int color,
const int fillStyle,
36 return drawBox(boxCenter[
view] - 0.5*boxWidth, boxCenter.z() - 0.5*boxHeight,
37 boxCenter[
view] + 0.5*boxWidth, boxCenter.z() + 0.5*boxHeight,
40 std::unique_ptr<TBox>
drawBox(
const double x1,
const double y1,
41 const double x2,
const double y2,
42 const int color,
const int fillStyle) {
43 auto box = std::make_unique<TBox>(
x1,
y1,
x2,
y2);
44 box->SetFillColor(
color);
45 box->SetLineColor(
color);
46 box->SetFillStyle(fillStyle);
47 box->SetFillColorAlpha(
color, 0.8);
51 const double lowEnd,
const double highEnd,
52 const int color,
const int lineStyle,
55 const double x1 = (
pos + Amg::intersect<3>(
pos,
dir,Amg::Vector3D::UnitZ(), lowEnd).value_or(0.)*
dir)[
view];
56 const double x2 = (
pos + Amg::intersect<3>(
pos,
dir,Amg::Vector3D::UnitZ(), highEnd).value_or(0.)*
dir)[
view];
57 auto seedLine = std::make_unique<TLine>(
x1, lowEnd,
x2, highEnd);
58 seedLine->SetLineColor(
color);
59 seedLine->SetLineWidth(2);
60 seedLine->SetLineStyle(lineStyle);
64 const std::string&
status) {
69 const std::string_view sqrtS,
70 const std::string_view
lumi) {
AmgVector(toInt(ParamDefs::nPars)) Parameters
std::unique_ptr< TBox > drawBox(const Amg::Vector3D &boxCenter, const double boxWidth, const double boxHeight, const int color=kGreen+2, const int fillStyle=hollowFilling, const int view=objViewEta)
Creates a box for drawing, e.g strip measurements.
std::unique_ptr< TLine > drawLine(const MuonR4::SegmentFit::Parameters &pars, const double lowEnd, const double highEnd, const int color=kRed+1, const int lineStyle=kDashed, const int view=objViewEta)
std::pair< Amg::Vector3D, Amg::Vector3D > makeLine(const Parameters &pars)
Returns the parsed parameters into an Eigen line parametrization.
std::unique_ptr< TLatex > drawLabel(const std::string &text, const double xPos, const double yPos, const unsigned int fontSize=18)
Create a TLatex label,.
Lightweight algorithm to read xAOD MDT sim hits and (fast-digitised) drift circles from SG and fill a...
Eigen::Matrix< double, 3, 1 > Vector3D
This header ties the generic definitions in this package.
std::unique_ptr< TEllipse > drawDriftCircle(const Amg::Vector3D ¢er, const double radius, const int color=kViolet, const int fillStyle=hollowFilling)
Create a TEllipse for drawing a drift circle.
std::unique_ptr< TLatex > drawAtlasLabel(const double xPos, const double yPos, const std::string &status="Internal")
Create a ATLAS label.
std::unique_ptr< TLatex > drawLumiSqrtS(const double xPos, const double yPos, const std::string_view sqrtS="14", const std::string_view lumi="")
Create a luminosity sqrtS label.