3278      return fPie->DistancetoPrimitive(px, py);
 
 3392   if (
gPad->IsVertical()) {
 
 3448      if (
f->InheritsFrom(
TF1::Class())) dist = 
f->DistancetoPrimitive(-px,py);
 
 3449      else                               dist = 
f->DistancetoPrimitive(px,py);
 
 
 3463      Error(
"DrawPanel", 
"need to draw histogram first");
 
 3468   gROOT->ProcessLine(
TString::Format(
"((TCanvas*)0x%zx)->Selected((TVirtualPad*)0x%zx,(TObject*)0x%zx,1)",
 
 3469                           (
size_t)
gPad->GetCanvas(), (
size_t)
gPad, (
size_t)
fH).Data());
 
 
 3484   static std::unique_ptr<TBox> 
zoombox;
 
 3491   if (!
gPad->IsEditable()) 
return;
 
 3494      fPie->ExecuteEvent(event, px, py);
 
 3512   if (IsSame.
Index(
"same")>=0) {
 
 3514      TIter next(
gPad->GetListOfPrimitives());
 
 3515      while ((
h1 = (
TH1 *)next())) {
 
 3533      fH->TAttLine::Modify();
 
 3535      if (
opaque && dimension ==2) {
 
 3542         if (
gPad->GetLogx()) {
 
 3546         if (
gPad->GetLogy()) {
 
 3550         if (
zoombox) 
Error(
"ExecuteEvent", 
"Last zoom box was not deleted");
 
 3568      if (dimension ==1) {
 
 3576         x        = 
gPad->AbsPixeltoX(px);
 
 3581         ylow     = 
gPad->GetUymin();
 
 3582         px1      = 
gPad->XtoAbsPixel(xlow);
 
 3583         px2      = 
gPad->XtoAbsPixel(xup);
 
 3584         py1      = 
gPad->YtoAbsPixel(ylow);
 
 3594      if (dimension ==1) {
 
 3595         if (
gROOT->GetEditHistograms()) {
 
 3611      if (
opaque && dimension ==2) {
 
 3630      if (dimension ==2) {
 
 3649      if (dimension == 2) {
 
 3671      if (dimension ==1) {
 
 3672         if (
gROOT->GetEditHistograms()) {
 
 3681      if (
opaque && dimension ==2) {
 
 3709         event = 
gVirtualX->RequestLocator(1, 1, px, py);
 
 
 3733   if (!
dt && !
dtOld) 
return nullptr;
 
 3738      ((
THistPainter*)
this)->fGraph2DPainter = 
dt ? std::make_unique<TGraph2DPainter>(
dt) : std::make_unique<TGraph2DPainter>(
dtOld);
 
 
 3750   if (!
gPad) 
return (
char*)
"";
 
 3774   if (
gPad->IsVertical()) {
 
 3778         TIter next(
gPad->GetListOfPrimitives());
 
 3779         while ((
h1 = (
TH1 *)next())) {
 
 3806         TIter next(
gPad->GetListOfPrimitives());
 
 3807         while ((
h1 = (
TH1 *)next())) {
 
 3854         fObjectInfo.
Form(
"(x=%g, y=%g, binx=%d, biny=%d, binc=%g, bine=%g, binn=%d)",
 
 
 3936   if (
gPad->GetLogx()) {
 
 3940   if (
gPad->GetLogy()) {
 
 3947   if (
gPad->IsVertical()) {
 
 3961   if (
gPad->IsVertical()) {
 
 
 4156      Warning(
"MakeChopt",
"option SCAT is deprecated.");
 
 4424         Warning(
"MakeChopt",
"option SURF5 is not supported in Cartesian and Polar modes");
 
 
 4446   if (!left) 
return 0;
 
 4448   if (!right) 
return 0;
 
 4450   if (
nch < 2) 
return 0;
 
 4451   char *cuts = left+1;
 
 4460      while (*cuts == 
' ') cuts++;
 
 4462      while (cuts[nc-1] == 
' ') {cuts[nc-1] = 0; nc--;}
 
 4466      while ((obj = next())) {
 
 4481   for (i=0;i<=
nch;i++) left[i] = 
' ';
 
 
 4509      gROOT->ProcessLineFast(
TString::Format(
"TSpectrum2Painter::PaintSpectrum((TH2F*)0x%zx,\"%s\",%d)",
 
 4522            fPie = std::make_unique<TPie>(
fH);
 
 4525         Error(
"Paint", 
"Option PIE is for 1D histograms only");
 
 4596   gPad->RangeAxisChanged(); 
 
 4614         if (gridx) 
gPad->SetGridx(0);
 
 4615         if (gridy) 
gPad->SetGridy(0);
 
 4617         if (gridx) 
gPad->SetGridx(1);
 
 4618         if (gridy) 
gPad->SetGridy(1);
 
 4653   if (gridx) 
gPad->SetGridx(0);
 
 4654   if (gridy) 
gPad->SetGridy(0);
 
 4656   if (gridx) 
gPad->SetGridx(1);
 
 4657   if (gridy) 
gPad->SetGridy(1);
 
 4666      while ((obj = next())) {
 
 4674      if (!
gPad->PadInSelectionMode() && !
gPad->PadInHighlightMode())
 
 
 4701   arrow->SetAngle(30);
 
 4702   arrow->SetFillStyle(1001);
 
 4722   for (
Int_t id=1;
id<=2;
id++) {
 
 4747            } 
else if (
id == 2) {
 
 
 4801         TIter next(
gPad->GetListOfPrimitives());
 
 4804         while ((obj = next())) {
 
 4810            if (
strstr(opt,
"hbar")) {
 
 4824   static char chopt[10] = 
"";
 
 4844      TIter next(
gPad->GetListOfPrimitives());
 
 4845      while ((obj=next())) {
 
 4856   if (
gPad->PadInSelectionMode())
 
 4860   if (
gPad->PadInSelectionMode() || !
gPad->PadInHighlightMode() || (
gPad->PadInHighlightMode() && 
gPad->GetSelected() == 
fXaxis)) {
 
 4873      if (
gPad->GetGridx()) {
 
 4940      if (
gPad->GetTickx() && !
gPad->PadInSelectionMode() && !
gPad->PadInHighlightMode()) {
 
 4958   if (
gPad->PadInSelectionMode())
 
 4962   if (
gPad->PadInSelectionMode() || !
gPad->PadInHighlightMode() || (
gPad->PadInHighlightMode() && 
gPad->GetSelected() == 
fYaxis)) {
 
 4969      if (
gPad->GetGridy()) {
 
 5036      if (
gPad->GetTicky() && !
gPad->PadInSelectionMode() && !
gPad->PadInHighlightMode()) {
 
 5037         if (
gPad->GetTicky() < 2) {
 
 
 5172      while ((obj = next())) {
 
 
 5193   fH->TAttLine::Modify();
 
 5194   fH->TAttFill::Modify();
 
 5196   Double_t z, 
xk,
xstep, 
yk, 
ystep, 
xcent, 
ycent, xlow, xup, ylow, yup;
 
 5213      TIter next(
gPad->GetListOfPrimitives());
 
 5214      while ((h2 = (
TH2 *)next())) {
 
 5215         if (!h2->InheritsFrom(
TH2::Class())) 
continue;
 
 5283         if (
dz == 0) 
continue;
 
 5285         if (
zratio == 0) 
continue;
 
 5312         if (xlow >= xup) 
continue;
 
 5313         if (ylow >= yup) 
continue;
 
 5317            fH->TAttFill::Modify();
 
 5318            gPad->PaintBox(xlow, ylow, xup, yup);
 
 5320               gPad->PaintLine(xlow, ylow, xup, yup);
 
 5321               gPad->PaintLine(xlow, yup, xup, ylow);
 
 5326            fH->TAttFill::Modify();
 
 5327            gPad->PaintBox(xlow, ylow, xup, yup);
 
 5332            x[0] = xlow;                     
y[0] = ylow;
 
 5333            x[1] = xlow + 
bwidth*(xup-xlow); 
y[1] = ylow + 
bwidth*(yup-ylow);
 
 5334            x[2] = 
x[1];                     
y[2] = yup - 
bwidth*(yup-ylow);
 
 5335            x[3] = xup - 
bwidth*(xup-xlow);  
y[3] = 
y[2];
 
 5336            x[4] = xup;                      
y[4] = yup;
 
 5337            x[5] = xlow;                     
y[5] = yup;
 
 5338            x[6] = xlow;                     
y[6] = ylow;
 
 5341            fH->TAttFill::Modify();
 
 5342            gPad->PaintFillArea(7, 
x, 
y);
 
 5345            x[0] = xlow;                     
y[0] = ylow;
 
 5346            x[1] = xlow + 
bwidth*(xup-xlow); 
y[1] = ylow + 
bwidth*(yup-ylow);
 
 5347            x[2] = xup - 
bwidth*(xup-xlow);  
y[2] = 
y[1];
 
 5348            x[3] = 
x[2];                     
y[3] = yup - 
bwidth*(yup-ylow);
 
 5349            x[4] = xup;                      
y[4] = yup;
 
 5350            x[5] = xup;                      
y[5] = ylow;
 
 5351            x[6] = xlow;                     
y[6] = ylow;
 
 5354            fH->TAttFill::Modify();
 
 5355            gPad->PaintFillArea(7, 
x, 
y);
 
 5363   fH->TAttFill::Modify();
 
 
 5399            hproj = h2->ProjectionY(
"_px", i, i);
 
 5405         hproj = h2->ProjectionY(
"_px", i, i);
 
 5406         if (
hproj->GetEntries() != 0) {
 
 5436            hproj = h2->ProjectionX(
"_py", i, i);
 
 5442         hproj = h2->ProjectionX(
"_py", i, i);
 
 5443         if (
hproj->GetEntries() != 0) {
 
 
 5489std::vector<THistRenderingRegion>
 
 5492   std::vector<THistRenderingRegion> 
regions;
 
 5538                                           std::make_pair(bin, bin+1)};
 
 5553               std::make_pair(binLow, binHigh)};
 
 5573               std::make_pair(bin, bin+1)};
 
 5583                                            std::make_pair(binLow, binHigh)};
 
 
 5599     Error(
"THistPainter::PaintColorLevelsFast(Option_t*)",
 
 5600           "Only cartesian coordinates supported by 'COL2' option. Using 'COL' option instead.");
 
 5613   if ((zmin == -1111) && (zmax == -1111)) {
 
 5617   } 
else if (zmin == -1111) {
 
 5620   } 
else if (zmax == -1111) {
 
 5638         Error(
"THistPainter::PaintColorLevelsFast(Option_t*)",
 
 5639               "Cannot plot logz because bin content is less than 0.");
 
 5651   std::vector<Double_t> 
contours(ndiv, 0);
 
 5659   for (
Int_t i=0; i<ndiv; ++i) {
 
 5676      Error(
"THistPainter::PaintColorLevelFast(Option_t*)",
 
 5677            "Encountered error while computing rendering regions.");
 
 5700       if (z > zmax) z = zmax;
 
 5701       if (z < zmin) z = zmin;
 
 5710             index = 0.001 + ((z - zmin)/
dz)*ndiv;
 
 5757         buffer[buffer.size()-
nXPixels] = 0.95;
 
 
 5786   Double_t z, 
e, 
zc, 
xk, 
xstep, 
yk, 
ystep, xlow, xup, ylow, yup;
 
 5802      TIter next(
gPad->GetListOfPrimitives());
 
 5803      while ((h2 = (
TH2 *)next())) {
 
 5804         if (!h2->InheritsFrom(
TH2::Class())) 
continue;
 
 5805         zmin = h2->GetMinimum();
 
 5806         zmax = h2->GetMaximum();
 
 5835   fH->TAttFill::Modify();
 
 5868            if (z == 0 && 
e == 0) {
 
 5897         if (xlow > 
gPad->GetUxmax()) 
continue;
 
 5898         if (ylow > 
gPad->GetUymax()) 
continue;
 
 5901         if (xup  > 
gPad->GetUxmax()) xup  = 
gPad->GetUxmax();
 
 5902         if (yup  > 
gPad->GetUymax()) yup  = 
gPad->GetUymax();
 
 5906            if (z < 
zc) 
continue;
 
 5908            for (
Int_t k=0; k<ndiv; k++) {
 
 5925            fH->TAttFill::Modify();
 
 5926            gPad->PaintBox(xlow, ylow, xup, yup);
 
 5930                     a1 = (xlow - 
gPad->GetUxmin()) / (
gPad->GetUxmax() - 
gPad->GetUxmin()) * 360,
 
 5931                     a2 = (xup - 
gPad->GetUxmin()) / (
gPad->GetUxmax() - 
gPad->GetUxmin()) * 360,
 
 5932                     rx = 
gPad->GetUxmax() - 
gPad->GetUxmin(),
 
 5933                     ry = 
gPad->GetUymax() - 
gPad->GetUymin(),
 
 5934                     r1 = (ylow - 
gPad->GetUymin()) / (
gPad->GetUymax() - 
gPad->GetUymin()) * rx / 2,
 
 5935                     r2 = (yup - 
gPad->GetUymin()) / (
gPad->GetUymax() - 
gPad->GetUymin()) * rx / 2;
 
 5938            crown.SetYXRatio(rx > 0 ? ry / rx : 1);
 
 5952   fH->TAttFill::Modify();
 
 
 5962   Int_t i, 
j, count, 
ncontour, 
icol, 
n, 
lj, 
m, ix, 
jx, 
ljfill;
 
 5972      gPad->SetTheta(90.);
 
 5986      TIter next(
gPad->GetListOfPrimitives());
 
 5987      while ((obj=next())) {
 
 6027      Warning(
"PaintContour", 
"maximum number of contours is %d, asked for %d",
 
 6038      fH->TAttLine::Modify();
 
 6041   std::vector<std::unique_ptr<TPolyLine>> 
polys;
 
 6043   TList *list = 
nullptr;
 
 6045   std::vector<Int_t> 
np;
 
 6051         polys.emplace_back(std::make_unique<TPolyLine>(100));
 
 6057            for (i=0;i<count;i++) {
 
 6059               if (list) list->Delete();
 
 6102         if (
ir[0] != 
ir[1] || 
ir[1] != 
ir[2] || 
ir[2] != 
ir[3] || 
ir[3] != 
ir[0]) {
 
 6107            if (
zc[0] <= 
zc[1]) 
n = 0; 
else n = 1;
 
 6108            if (
zc[2] <= 
zc[3]) 
m = 2; 
else m = 3;
 
 6112            for (ix=1;ix<=4;ix++) {
 
 6120            if (
zc[0] <= 
zc[1]) 
n = 0; 
else n = 1;
 
 6121            if (
zc[2] <= 
zc[3]) 
m = 2; 
else m = 3;
 
 6125            for (ix=1;ix<=4;ix++) {
 
 6137            for (ix=1; ix<=
lj-5; ix +=2) {
 
 6151                  if (count > 100) 
break;
 
 6156            if (count > 100) 
continue;
 
 6157            for (ix=1; ix<=
lj-2; ix +=2) {
 
 6169                  fH->TAttLine::Modify();
 
 6170                  gPad->PaintPolyLine(2,
xarr.data()+ix-1,
yarr.data()+ix-1);
 
 6187   std::vector<Double_t> 
xp, 
yp;
 
 6248            if (
nadd == 0) 
break;
 
 6253         fH->TAttFill::Modify();
 
 
 6347   if (
gPad->PadInHighlightMode() && 
gPad->GetSelected() != 
fH) 
return;
 
 6364   static Float_t cxx[30] = {1.0,1.0,0.5,0.5,1.0,1.0,0.5,0.6,1.0,0.5,0.5,1.0,0.5,0.6,1.0,1.0,1.0,1.0,1.0,1.0,0.0,0.0,1.0,1.0,1.0,1.0,0.5,0.5,0.5,1.0};
 
 6365   static Float_t cyy[30] = {1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,0.5,0.5,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0,0.0,0.0,1.0,1.0,1.0,1.0,0.5,0.5,0.5,1.0};
 
 6401   fH->TAttLine::Modify();
 
 6402   fH->TAttFill::Modify();
 
 6403   fH->TAttMarker::Modify();
 
 6421         Error(
"PaintErrors", 
"too many points, out of memory");
 
 6451   for (k=first; k<=last; k++) {
 
 6475         if (
xp <= 0) 
goto L30;
 
 6628         for (i=1; i<
if1; i++) {
 
 6636      gPad->SetLogx(logx);
 
 6637      gPad->SetLogy(logy);
 
 
 6647   fH->TAttMarker::Modify();
 
 6648   fH->TAttLine::Modify();
 
 6657   fLego = std::make_unique<TPainter3dAlgorithms>(
fXbuf.data(), 
fYbuf.data());
 
 6660      Error(
"Paint2DErrors", 
"no TView in current pad");
 
 6670   fLego->SetFillStyle(
gPad->GetFrameFillStyle());
 
 6671   fLego->SetFillColor(
gPad->GetFrameFillColor());
 
 6672   fLego->TAttFill::Modify();
 
 6678   fLego->TAttFill::Modify();
 
 6682      fLego->InitMoveScreen(-1.1,1.1);
 
 6787      fLego->InitMoveScreen(-1.1,1.1);
 
 6789      fLego->FrontBox(90);
 
 
 6814      if (frame) 
gPad->Remove(frame);
 
 6820   if (!
gPad->PadInSelectionMode() && !
gPad->PadInHighlightMode())
 
 
 6832      auto obj = 
lnk->GetObject();
 
 6841               f2->
Paint(
"surf same");
 
 6843               obj->Paint(
"cont3 same");
 
 6846      } 
else if (obj->InheritsFrom(
TF1::Class())) {
 
 6850         gPad->PushSelectableObject(obj);
 
 6854         if (!
gPad->PadInHighlightMode() || (
gPad->PadInHighlightMode() && obj == 
gPad->GetSelected()))
 
 6855            obj->Paint(
lnk->GetOption());
 
 
 6869   if (
gPad->PadInHighlightMode() && 
gPad->GetSelected() != 
fH)
 
 6894   nbins = last - first + 1;
 
 6900   else        keepx.resize(nbins+1);
 
 6901   keepy.resize(nbins);
 
 6907   for (
j=first; 
j<=last;
j++) {
 
 
 7047      cmd.Form(
"TPolyMarker3D::PaintH3((TH1 *)0x%zx,\"%s\");",(
size_t)
fH,
option);
 
 7092   while (
auto obj = next()) {
 
 
 7115   static const char *
where = 
"PaintInit";
 
 7136         Error(
where, 
"cannot set X axis to log scale");
 
 7143            TIter next(
gPad->GetListOfPrimitives());
 
 7144            while ((obj = (
TObject *)next())) {
 
 7155               Error(
where, 
"undefined user's coordinates. Cannot use option SAME");
 
 7159            for (i=first; i<=last; i++) {
 
 7171               Error(
where, 
"cannot set X axis to log scale");
 
 7197   for (i=first; i<=last;i++) {
 
 7258      Error(
where, 
"log scale requested with a negative argument (%f)", 
xm);
 
 7279         } 
else if (
ymin < 0) {
 
 7299   if (allchan) factor /= allchan;
 
 7300   if (factor == 0) factor = 1;
 
 7318         Error(
where, 
"Cannot set Y axis to log scale");
 
 
 7364   static const char *
where = 
"PaintInitH";
 
 7389         Error(
where, 
"cannot set Y axis to log scale");
 
 7411   for (i=first; i<=last;i++) {
 
 7448      Error(
where, 
"log scale requested with zero or negative argument (%f)", 
xm);
 
 7464         } 
else if (
xmin < 0) {
 
 7478   if (allchan) factor /= allchan;
 
 7479   if (factor == 0) factor = 1;
 
 7490         Error(
where, 
"Cannot set Y axis to log scale");
 
 
 7529   Double_t wxyz[8][3] = { {-1,-1,-1}, {1,-1,-1}, {1,1,-1}, {-1,1,-1},
 
 7530                           {-1,-1, 1}, {1,-1, 1}, {1,1, 1}, {-1,1, 1} };
 
 7532                         {0,1,5,4}, {1,2,6,5}, {2,3,7,6}, {3,0,4,7} };
 
 7546   fLego = std::make_unique<TPainter3dAlgorithms>(
fXbuf.data(), 
fYbuf.data());
 
 7551      Error(
"PaintH3", 
"no TView in current pad");
 
 7564   fLego->InitMoveScreen(-1.1,1.1);
 
 7593   fH->TAttFill::Modify();
 
 7594   fH->TAttLine::Modify();
 
 7620            if (
w < 
wmin) 
continue;
 
 7623            if (
scale == 0) 
continue;
 
 7624            for (
Int_t i=0; i<3; ++i) {
 
 7627               for (
Int_t k=0; k<8; ++k) { 
 
 7631            for (
Int_t k=0; k<8; ++k) { 
 
 7635            for (
Int_t k=0; k<6; ++k) {
 
 7636               for (
Int_t i=0; i<4; ++i) {
 
 7641               x[4] = 
x[0] ; 
y[4] = 
y[0];
 
 7643                  x[5] = 
x[2] ; 
y[5] = 
y[2];
 
 7644                  x[6] = 
x[3] ; 
y[6] = 
y[3];
 
 7645                  x[7] = 
x[1] ; 
y[7] = 
y[1];
 
 7651               if (z <= 0.) 
continue;
 
 7656                  if (k == 3 || k == 5) {
 
 7658                  } 
else if (k == 0 || k == 1) {
 
 7664               fH->TAttFill::Modify();
 
 7665               gPad->PaintFillArea(4, 
x, 
y);
 
 7695   while (
auto obj = next()) {
 
 7711   fH->TAttFill::Modify();
 
 
 7721      {-1,-1,-1}, {1,-1,-1}, {1,1,-1}, {-1,1,-1}, 
 
 7722      {-1,-1, 1}, {1,-1, 1}, {1,1, 1}, {-1,1, 1}  
 
 7725      {0,3,2,1}, {4,5,6,7},                       
 
 7726      {0,1,5,4}, {1,2,6,5}, {2,3,7,6}, {3,0,4,7}  
 
 7730      {0,-1,0}, {1,0,0}, {0,1,0}, {-1,0,0}        
 
 7745   fLego = std::make_unique<TPainter3dAlgorithms>(
fXbuf.data(), 
fYbuf.data());
 
 7750      Error(
"PaintH3", 
"no TView in current pad");
 
 7764      fLego->InitMoveScreen(-1.1,1.1);
 
 7769   fLego->InitRaster(-1.1,-1.1,1.1,1.1,1000,800);
 
 7785   fH->TAttLine::Modify();
 
 7809            if (
w < 
wmin) 
continue;
 
 7812            if (
scale == 0) 
continue;
 
 7813            for (
Int_t i=0; i<3; ++i) {
 
 7816               for (
Int_t k=0; k<8; ++k) { 
 
 7820            for (
Int_t k=0; k<8; ++k) { 
 
 7823            for (
Int_t k=0; k<6; ++k) { 
 
 7826               if (
zn <= 0) 
continue;
 
 7827               for (
Int_t i=0; i<4; ++i) {
 
 7832               for (
Int_t i=0; i<4; ++i) {
 
 7834                  Int_t i2 = (i == 3) ? 0 : i + 1;
 
 7840                  for (
Int_t it = 0; it < 
nt; ++it) {
 
 7845                     gPad->PaintPolyLine(2, 
x, 
y);
 
 7856                  for (
Int_t it = 0; it < 
nt; ++it) {
 
 7861                     gPad->PaintPolyLine(2, 
x, 
y);
 
 7868                  for (
Int_t it = 0; it < 
nt; ++it) {
 
 7873                     gPad->PaintPolyLine(2, 
x, 
y);
 
 7876               fLego->FillPolygonBorder(4, &pp[0][0]); 
 
 7901   while (
auto obj = next()) {
 
 
 7943   std::vector<Double_t> 
x(
nx);
 
 7944   std::vector<Double_t> 
y(
ny);
 
 7945   std::vector<Double_t> z(
nz);
 
 7947   for (i=0; i<
nx; i++) 
x[i] = 
xaxis->GetBinCenter(i+1);
 
 7948   for (i=0; i<
ny; i++) 
y[i] = 
yaxis->GetBinCenter(i+1);
 
 7949   for (i=0; i<
nz; i++) z[i] = 
zaxis->GetBinCenter(i+1);
 
 7963   fLego = std::make_unique<TPainter3dAlgorithms>(
fXbuf.data(), 
fYbuf.data());
 
 7967      Error(
"PaintH3Iso", 
"no TView in current pad");
 
 7994   fLego->InitMoveScreen(-1.1,1.1);
 
 8009   fLego->IsoSurface(1, s, 
nx, 
ny, 
nz, 
x.data(), 
y.data(), z.data(), 
"BF");
 
 8012      fLego->InitMoveScreen(-1.1,1.1);
 
 8014      fLego->FrontBox(90);
 
 8026   while (
auto obj = next()) {
 
 
 8136         fLego->SetEdgeAtt(
hid->GetLineColor(),
hid->GetLineStyle(),
hid->GetLineWidth(),
id);
 
 8162      Error(
"PaintLego", 
"no TView in current pad");
 
 8175   fLego->SetFillStyle(
gPad->GetFrameFillStyle());
 
 8176   fLego->SetFillColor(
gPad->GetFrameFillColor());
 
 8177   fLego->TAttFill::Modify();
 
 8185   fLego->TAttFill::Modify();
 
 8189   if (
raster) 
fLego->InitRaster(-1.1,-1.1,1.1,1.1,1000,800);
 
 8190   else        fLego->InitMoveScreen(-1.1,1.1);
 
 8244      fLego->InitMoveScreen(-1.1,1.1);
 
 
 8275      Error(
"PaintLegoAxis", 
"no TView in current pad");
 
 8301   for (i = 1; i <= 8; ++i) {
 
 8302      r[i*3 - 3] = 
av[i*3 - 3] + 
av[i*3 - 2]*
cosa;
 
 8303      r[i*3 - 2] = 
av[i*3 - 2]*
sina;
 
 8304      r[i*3 - 1] = 
av[i*3 - 1];
 
 8435      if (
ztit.Index(
";")>0) {
 
 
 8489   fH->TAttMarker::Modify();
 
 8497   if (zmin == 0 && zmax == 0) 
return;
 
 8508      if (zmin == 0 && zmax == 0) 
return;
 
 8515      if (
dz >= 
kNMAX || zmax < 1) {
 
 8524         if (zmin >= 0) zmin = 0;
 
 8525         else           zmin -= 
yMARGIN*(zmax-zmin);
 
 8528         if (zmin >= 0 && (zmin-
dzmin <= 0)) zmin  = 0;
 
 8556         if (z < zmin) z = zmin;
 
 8557         if (z > zmax) z = zmax;
 
 8563         if (z <= 0) 
continue;
 
 8567            for (
Int_t loop=0; loop<k; loop++) {
 
 8568               if (k+marker >= 
kNMAX) {
 
 8582               if (
fXbuf[marker] < 
gPad->GetUxmin()) 
break;
 
 8583               if (
fYbuf[marker] < 
gPad->GetUymin()) 
break;
 
 8584               if (
fXbuf[marker] > 
gPad->GetUxmax()) 
break;
 
 8585               if (
fYbuf[marker] > 
gPad->GetUymax()) 
break;
 
 8591   if (marker > 0) 
gPad->PaintPolyMarker(marker, 
fXbuf.data(), 
fYbuf.data());
 
 
 8646   while (
auto obj = next()) {
 
 8659   if (!
dofit) fit = 
nullptr;
 
 
 8865   while (
auto obj = next()) {
 
 8941         tt.Form(
tf.Data(),h2->GetMean(1));
 
 8944         tt.Form(
tf.Data(),h2->GetMean(2));
 
 8949         tt.Form(
tf.Data(),h2->GetMean(1),h2->GetMeanError(1));
 
 8953         tt.Form(
tf.Data(),h2->GetMean(2),h2->GetMeanError(2));
 
 8960         tt.Form(
tf.Data(),h2->GetStdDev(1));
 
 8963         tt.Form(
tf.Data(),h2->GetStdDev(2));
 
 8968         tt.Form(
tf.Data(),h2->GetStdDev(1),h2->GetStdDevError(1));
 
 8972         tt.Form(
tf.Data(),h2->GetStdDev(2),h2->GetStdDevError(2));
 
 8984         tt.Form(
tf.Data(),h2->GetSkewness(1));
 
 8987         tt.Form(
tf.Data(),h2->GetSkewness(2));
 
 8992         tt.Form(
tf.Data(),h2->GetSkewness(1),h2->GetSkewness(11));
 
 8996         tt.Form(
tf.Data(),h2->GetSkewness(2),h2->GetSkewness(12));
 
 9003         tt.Form(
tf.Data(),h2->GetKurtosis(1));
 
 9006         tt.Form(
tf.Data(),h2->GetKurtosis(2));
 
 9011         tt.Form(
tf.Data(),h2->GetKurtosis(1),h2->GetKurtosis(11));
 
 9015         tt.Form(
tf.Data(),h2->GetKurtosis(2),h2->GetKurtosis(12));
 
 9025      Int_t firstX = std::max(1, h2->GetXaxis()->GetFirst());
 
 9026      Int_t firstY = std::max(1, h2->GetYaxis()->GetFirst());
 
 9027      Int_t lastX  = std::min(h2->GetXaxis()->GetLast(), h2->GetXaxis()->GetNbins());
 
 9028      Int_t lastY  = std::min(h2->GetYaxis()->GetLast(), h2->GetYaxis()->GetNbins());
 
 9054         tt.Form(
"%-8s = %5.4g #pm %5.4g ",fit->
GetParName(ipar)
 
 
 9078   while (
auto obj = next()) {
 
 9152         tt.Form(
tf.Data(),h3->GetMean(1));
 
 9155         tt.Form(
tf.Data(),h3->GetMean(2));
 
 9158         tt.Form(
tf.Data(),h3->GetMean(3));
 
 9163         tt.Form(
tf.Data(),h3->GetMean(1),h3->GetMeanError(1));
 
 9167         tt.Form(
tf.Data(),h3->GetMean(2),h3->GetMeanError(2));
 
 9171         tt.Form(
tf.Data(),h3->GetMean(3),h3->GetMeanError(3));
 
 9178         tt.Form(
tf.Data(),h3->GetStdDev(1));
 
 9181         tt.Form(
tf.Data(),h3->GetStdDev(2));
 
 9184         tt.Form(
tf.Data(),h3->GetStdDev(3));
 
 9189         tt.Form(
tf.Data(),h3->GetStdDev(1),h3->GetStdDevError(1));
 
 9193         tt.Form(
tf.Data(),h3->GetStdDev(2),h3->GetStdDevError(2));
 
 9197         tt.Form(
tf.Data(),h3->GetStdDev(3),h3->GetStdDevError(3));
 
 9208         tt.Form(
tf.Data(),h3->GetSkewness(1));
 
 9211         tt.Form(
tf.Data(),h3->GetSkewness(2));
 
 9214         tt.Form(
tf.Data(),h3->GetSkewness(3));
 
 9219         tt.Form(
tf.Data(),h3->GetSkewness(1),h3->GetSkewness(11));
 
 9223         tt.Form(
tf.Data(),h3->GetSkewness(2),h3->GetSkewness(12));
 
 9227         tt.Form(
tf.Data(),h3->GetSkewness(3),h3->GetSkewness(13));
 
 9234         tt.Form(
tf.Data(),h3->GetKurtosis(1));
 
 9237         tt.Form(
tf.Data(),h3->GetKurtosis(2));
 
 9240         tt.Form(
tf.Data(),h3->GetKurtosis(3));
 
 9245         tt.Form(
tf.Data(),h3->GetKurtosis(1),h3->GetKurtosis(11));
 
 9249         tt.Form(
tf.Data(),h3->GetKurtosis(2),h3->GetKurtosis(12));
 
 9253         tt.Form(
tf.Data(),h3->GetKurtosis(3),h3->GetKurtosis(13));
 
 9268         tt.Form(
"%-8s = %5.4g #pm %5.4g ",fit->
GetParName(ipar)
 
 
 9372      Error(
"PaintSurface", 
"no TView in current pad");
 
 9383      fLego->SetFillStyle(0);
 
 9384      fLego->SetFillColor(1);
 
 9386      fLego->SetFillStyle(
gPad->GetFrameFillStyle());
 
 9387      fLego->SetFillColor(
gPad->GetFrameFillColor());
 
 9389   fLego->TAttFill::Modify();
 
 9397   fLego->TAttFill::Modify();
 
 9417   if (
raster) 
fLego->InitRaster(-1.1,-1.1,1.1,1.1,1000,800);
 
 9418   else        fLego->InitMoveScreen(-1.1,1.1);
 
 9492      fLego->InitMoveScreen(-1.1,1.1);
 
 9512      fLego->InitMoveScreen(-1.1,1.1);
 
 
 9550         Error(
"PaintTriangles", 
"no TView in current pad, do not use option SAME");
 
 9575   fLego = std::make_unique<TPainter3dAlgorithms>(
fXbuf.data(), 
fYbuf.data());
 
 9578      Error(
"PaintTriangles", 
"no TView in current pad");
 
 9588   fLego->SetFillStyle(
gPad->GetFrameFillStyle());
 
 9589   fLego->SetFillColor(
gPad->GetFrameFillColor());
 
 9590   fLego->TAttFill::Modify();
 
 9596   fLego->TAttFill::Modify();
 
 9600      fLego->InitMoveScreen(-1.1,1.1);
 
 9611      fLego->InitMoveScreen(-1.1,1.1);
 
 9613      fLego->FrontBox(90);
 
 
 9637      Warning(
"PaintSurface", 
"too many color levels, %d >= 100, reset to 99", 
ndivz);
 
 9644   for (i = 0; i < 
ndivz; ++i) {
 
 
 9718   while (
auto obj = next()) {
 
 9726         if (!
gPad->PadInSelectionMode() && !
gPad->PadInHighlightMode()) {
 
 
 9746   if (
gPad->PadInHighlightMode() && 
gPad->GetSelected() != 
fH) 
return;
 
 9763   while ((obj=next())) {
 
 9765      z = 
b->GetContent();
 
 9767      poly  = 
b->GetPolygon();
 
 9772         g->TAttLine::Modify();
 
 9773         g->TAttMarker::Modify();
 
 9774         g->TAttFill::Modify();
 
 9782            g->SetFillStyle(
fs);
 
 9784         if (fill) 
g->Paint(
"F");
 
 9785         if (mark) 
g->Paint(
"P");
 
 9796            g->TAttLine::Modify();
 
 9797            g->TAttMarker::Modify();
 
 9798            g->TAttFill::Modify();
 
 9806               g->SetFillStyle(
fs);
 
 9808            if (fill) 
g->Paint(
"F");
 
 9809            if (mark) 
g->Paint(
"P");
 
 
 9822   if (
gPad->PadInHighlightMode() && 
gPad->GetSelected() != 
fH)
 
 9853   while (
auto obj = next()) {
 
 9857      z = 
b->GetContent();
 
 9863      if (z < zmin) 
continue;
 
 9868         if (z < 
zc) 
continue;
 
 9870         for (
Int_t k=0; k<ndiv; k++) {
 
 9888         g->TAttFill::Modify();
 
 9901            g->TAttFill::Modify();
 
 
 9916   if (
gPad->PadInHighlightMode() && 
gPad->GetSelected() != 
fH)
 
 9919   Int_t k, loop, marker=0;
 
 9948   while ((obj=next())) {
 
 9956   while ((obj=next())) {
 
 9958      poly  = 
b->GetPolygon();
 
 9959      z     = 
b->GetContent();
 
 9960      if (z < zmin) z = zmin;
 
 9961      if (z > zmax) z = zmax;
 
 9976         if (k <= 0 || z <= 0) 
continue;
 
 9979            if (k+marker >= 
kNMAX) {
 
 9985            if (
g->IsInside(
xp,
yp)) {
 
 9992         if (marker > 0) 
gPad->PaintPolyMarker(marker, 
fXbuf.data(), 
fYbuf.data());
 
10000         if (k <= 0 || z <= 0) 
continue;
 
10003            if (k+marker >= 
kNMAX) {
 
10016         if (marker > 0) 
gPad->PaintPolyMarker(marker, 
fXbuf.data(), 
fYbuf.data());
 
 
10039   text.SetTextAlign(22);
 
10042   text.TAttText::Modify();
 
10049   while ((obj=next())) {
 
10051      p = 
b->GetPolygon();
 
10052      x = (
b->GetXMin()+
b->GetXMax())/2;
 
10057      y = (
b->GetYMin()+
b->GetYMax())/2;
 
10062      z = 
b->GetContent();
 
10066         tf.Form(
"#splitline{%s%s}{#pm %s%s}",
 
10069         tt.Form(
tf.Data(),z,
e);
 
10071         tt.Form(
tf.Data(),z);
 
 
10106      text.SetTextAlign(11);
 
10107      if (
angle == 90) 
text.SetTextAlign(12);
 
10109      text.TAttText::Modify();
 
10123         if (
yt == 0.) 
continue;
 
10133         if (
y >= 
gPad->GetY2()) 
continue;
 
10143      text.SetTextAlign(22);
 
10146      text.TAttText::Modify();
 
10165               tf.Form(
"#splitline{%s%s}{#pm %s%s}",
 
10168               tt.Form(
tf.Data(),z,
e);
 
10170               tt.Form(
tf.Data(),z);
 
 
10198   fLego = std::make_unique<TPainter3dAlgorithms>(
fXbuf.data(), 
fYbuf.data());
 
10202      Error(
"PaintTF3", 
"no TView in current pad");
 
10210   fLego->InitMoveScreen(-1.1,1.1);
 
10215      fLego->BackBox(90);
 
10225      fLego->InitMoveScreen(-1.1,1.1);
 
10227      fLego->FrontBox(90);
 
 
10264   TIter next(
gPad->GetListOfPrimitives());
 
10265   while ((obj = next())) {
 
10268      if (
strcmp(title->
GetName(),
"title")) {title = 
nullptr; 
continue;}
 
10272      if (title) 
delete title;
 
10287   if (
ht <= 0) 
ht = 0.05;
 
10324   ptitle->SetName(
"title");
 
 
10447   for (
int i = 0; i < 100; i++) {
 
10456      theta -= num / 
den;
 
 
10555   if (
h == 
nullptr)  
return;
 
 
10569   static const char *
where = 
"TableInit";
 
10597         Error(
where, 
"cannot set X axis to log scale");
 
10626         Error(
where, 
"cannot set Y axis to log scale");
 
10662      if (!
Hoption.
Same) 
Error(
where, 
"log scale is requested but maximum is less or equal 0 (%f)", zmax);
 
10668   if (zmin >= zmax) {
 
10670         if (zmax > 0) zmin = 0.001*zmax;
 
10672            if (!
Hoption.
Same) 
Error(
where, 
"log scale is requested but maximum is less or equal 0 (%f)", zmax);
 
10682   if (allchan) factor /= allchan;
 
10683   if (factor == 0) factor = 1;
 
10685   zmax = factor*zmax;
 
10686   zmin = factor*zmin;
 
10720         if (zmin >= 0) zmin = 0;
 
10721         else           zmin -= 
yMARGIN*(zmax-zmin);
 
10724         if (zmin >= 0 && (zmin-
dzmin <= 0)) zmin  = 0;
 
10725         else                                zmin -= 
dzmin;
 
 
10751   tf.Form(
"%s%s",
"%",
f);
 
10752   tv.Form(
tf.Data(),
v);
 
10755   int ie = 
tv.Index(
"e");
 
10756   int iE = 
tv.Index(
"E");
 
10757   int id = 
tv.Index(
".");
 
10761   if (
ie >= 0 || 
iE >= 0) {
 
10762      if (
tv.Index(
"+") >= 0) {
 
10764            ef.Form(
"%s.1f",
"%");
 
10767               ef.Form(
"%s.%de",
"%",
ie-
id-1);
 
10769               ef.Form(
"%s.%dE",
"%",
iE-
id-1);
 
10774            ef.Form(
"%s.%de",
"%",
ie-
id-1);
 
10776            ef.Form(
"%s.%dE",
"%",
iE-
id-1);
 
10781   } 
else if (
id < 0) {
 
10782      ef.Form(
"%s.1f",
"%");
 
10787      ef.Form(
"%s.%df",
"%",
tv.Length()-
id-1);
 
 
10801      if (
c2) 
c2->Close();
 
10807      if (
c1) 
c1->Close();
 
10811   if (nbins <= 0) 
return;
 
10829   gROOT->MakeDefCanvas();
 
 
10839      if (
c2) 
c2->Close();
 
10845      if (
c1) 
c1->Close();
 
10868   gROOT->MakeDefCanvas();
 
10871   gROOT->MakeDefCanvas();
 
 
10884   gPad->SetDoubleBuffer(0); 
 
10920   c->SetLogy(
ctxt.GetSaved()->GetLogz());
 
10921   c->SetLogx(
ctxt.GetSaved()->GetLogx());
 
10927      hp->SetFillColor(38);
 
 
10969   gPad->SetDoubleBuffer(0);             
 
11008   c->SetLogy(
ctxt.GetSaved()->GetLogz());
 
11009   c->SetLogx(
ctxt.GetSaved()->GetLogy());
 
11015      hp->SetFillColor(38);
 
 
11074   gPad->SetDoubleBuffer(0);             
 
11131            if (line1[0].GetX()) 
gVirtualX->DrawPolyLine(2,line1);
 
11132            if (nbins>1 && line1[0].GetX()) {
 
11184               endface1[0].SetX(line1[0].GetX());
 
11185               endface1[0].SetY(line1[0].GetY());
 
11186               endface1[1].SetX(line2[0].GetX());
 
11187               endface1[1].SetY(line2[0].GetY());
 
11192               endface1[4].SetX(line1[0].GetX());
 
11193               endface1[4].SetY(line1[0].GetY());
 
11195               endface2[0].SetX(line1[1].GetX());
 
11196               endface2[0].SetY(line1[1].GetY());
 
11197               endface2[1].SetX(line2[1].GetX());
 
11198               endface2[1].SetY(line2[1].GetY());
 
11203               endface2[4].SetX(line1[1].GetX());
 
11204               endface2[4].SetY(line1[1].GetY());
 
11214            TH1 *
hp = h3->Project3D(
"x");
 
11218               hp->SetFillColor(38);
 
11227               hp->SetYTitle(
"Number of Entries");
 
11246            if (line1[0].GetX()) 
gVirtualX->DrawPolyLine(2,line1);
 
11247            if (nbins>1 && line1[0].GetX()) {
 
11299               endface1[0].SetX(line1[0].GetX());
 
11300               endface1[0].SetY(line1[0].GetY());
 
11301               endface1[1].SetX(line2[0].GetX());
 
11302               endface1[1].SetY(line2[0].GetY());
 
11307               endface1[4].SetX(line1[0].GetX());
 
11308               endface1[4].SetY(line1[0].GetY());
 
11310               endface2[0].SetX(line1[1].GetX());
 
11311               endface2[0].SetY(line1[1].GetY());
 
11312               endface2[1].SetX(line2[1].GetX());
 
11313               endface2[1].SetY(line2[1].GetY());
 
11318               endface2[4].SetX(line1[1].GetX());
 
11319               endface2[4].SetY(line1[1].GetY());
 
11329            TH1 *
hp = h3->Project3D(
"y");
 
11333               hp->SetFillColor(38);
 
11341               hp->SetYTitle(
"Number of Entries");
 
11360            if (line1[0].GetX()) 
gVirtualX->DrawPolyLine(2,line1);
 
11361            if (nbins>1 && line1[0].GetX()) {
 
11413               endface1[0].SetX(line1[0].GetX());
 
11414               endface1[0].SetY(line1[0].GetY());
 
11415               endface1[1].SetX(line2[0].GetX());
 
11416               endface1[1].SetY(line2[0].GetY());
 
11421               endface1[4].SetX(line1[0].GetX());
 
11422               endface1[4].SetY(line1[0].GetY());
 
11424               endface2[0].SetX(line1[1].GetX());
 
11425               endface2[0].SetY(line1[1].GetY());
 
11426               endface2[1].SetX(line2[1].GetX());
 
11427               endface2[1].SetY(line2[1].GetY());
 
11432               endface2[4].SetX(line1[1].GetX());
 
11433               endface2[4].SetY(line1[1].GetY());
 
11443            TH1 *
hp = h3->Project3D(
"z");
 
11447               hp->SetFillColor(38);
 
11455               hp->SetYTitle(
"Number of Entries");
 
11518            TH2 *
hp = (
TH2*)h3->Project3D(
"xy");
 
11519            zaxis->SetRange(first,last);
 
11521               hp->SetFillColor(38);
 
11526               hp->SetZTitle(
"Number of Entries");
 
11588            TH2 *
hp = (
TH2*)h3->Project3D(
"yx");
 
11589            zaxis->SetRange(first,last);
 
11591               hp->SetFillColor(38);
 
11596               hp->SetZTitle(
"Number of Entries");
 
11658            TH2 *
hp = (
TH2*)h3->Project3D(
"xz");
 
11659            yaxis->SetRange(first,last);
 
11661               hp->SetFillColor(38);
 
11666               hp->SetZTitle(
"Number of Entries");
 
11728            TH2 *
hp = (
TH2*)h3->Project3D(
"zx");
 
11729            yaxis->SetRange(first,last);
 
11731               hp->SetFillColor(38);
 
11736               hp->SetZTitle(
"Number of Entries");
 
11798            TH2 *
hp = (
TH2*)h3->Project3D(
"yz");
 
11799            xaxis->SetRange(first,last);
 
11801               hp->SetFillColor(38);
 
11806               hp->SetZTitle(
"Number of Entries");
 
11868            TH2 *
hp = (
TH2*)h3->Project3D(
"zy");
 
11869            xaxis->SetRange(first,last);
 
11871               hp->SetFillColor(38);
 
11876               hp->SetZTitle(
"Number of Entries");
 
 
Handle_t Window_t
Window handle.
 
short Style_t
Style number (short)
 
int Int_t
Signed integer 4 bytes (int)
 
short Color_t
Color number (short)
 
unsigned int UInt_t
Unsigned integer 4 bytes (unsigned int)
 
short Width_t
Line width (short)
 
float Float_t
Float 4 bytes (float)
 
short Short_t
Signed Short integer 2 bytes (short)
 
double Double_t
Double 8 bytes.
 
const char Option_t
Option string (const char)
 
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
 
winID h TVirtualViewer3D TVirtualGLPainter p
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void pixel
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h offset
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t wmin
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize wid
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t np
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t r
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t index
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize id
 
Option_t Option_t TPoint TPoint const char x2
 
Option_t Option_t TPoint TPoint const char x1
 
Option_t Option_t TPoint TPoint angle
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void xpos
 
Option_t Option_t TPoint TPoint const char mode
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char backcolor
 
Option_t Option_t TPoint TPoint const char y2
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void ypos
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize fs
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t wmax
 
Option_t Option_t TPoint TPoint const char text
 
Option_t Option_t TPoint TPoint const char y1
 
R__EXTERN TH1 * gCurrentHist
 
R__EXTERN Hoption_t Hoption
 
static TString gStringStdDevZ
 
static TString gStringStdDevX
 
static TString gStringIntegralBinWidth
 
const UInt_t kCannotRotate
 
static TString gStringStdDev
 
static TString gStringOverflow
 
static TString gStringUnderflow
 
static TString gStringSkewnessY
 
static TString gStringMean
 
static TString gStringKurtosis
 
static TString gStringMeanX
 
static TString gStringEntries
 
static TString gStringIntegral
 
static TString gStringKurtosisY
 
static TString gStringStdDevY
 
static TString gStringMeanY
 
static TString gStringSkewnessX
 
static TString gStringKurtosisX
 
static std::unique_ptr< TBox > gXHighlightBox
 
static std::unique_ptr< TBox > gYHighlightBox
 
static TString gStringSkewnessZ
 
static TString gStringMeanZ
 
static TString gStringSkewness
 
static TString gStringKurtosisZ
 
R__EXTERN TStyle * gStyle
 
R__EXTERN TSystem * gSystem
 
Draw all kinds of Arrows.
 
virtual Int_t GetNdivisions() const
 
virtual Float_t GetLabelOffset() const
 
virtual Float_t GetLabelSize() const
 
virtual Float_t GetTickLength() const
 
virtual Float_t GetTitleOffset() const
 
virtual Color_t GetFillColor() const
Return the fill area color.
 
virtual Style_t GetFillStyle() const
Return the fill area style.
 
virtual void SetFillColor(Color_t fcolor)
Set the fill area color.
 
virtual void SetFillStyle(Style_t fstyle)
Set the fill area style.
 
virtual Color_t GetLineColor() const
Return the line color.
 
virtual void SetLineStyle(Style_t lstyle)
Set the line style.
 
virtual Width_t GetLineWidth() const
Return the line width.
 
virtual void SetLineWidth(Width_t lwidth)
Set the line width.
 
virtual void SetLineColor(Color_t lcolor)
Set the line color.
 
virtual Style_t GetLineStyle() const
Return the line style.
 
virtual Style_t GetMarkerStyle() const
Return the marker style.
 
virtual void SetMarkerColor(Color_t mcolor=1)
Set the marker color.
 
virtual Color_t GetMarkerColor() const
Return the marker color.
 
virtual Size_t GetMarkerSize() const
Return the marker size.
 
virtual void SetMarkerStyle(Style_t mstyle=1)
Set the marker style.
 
virtual void SetMarkerSize(Size_t msize=1)
Set the marker size.
 
static Style_t GetMarkerStyleBase(Style_t style)
Internal helper function that returns the corresponding marker style with line width 1 for the given ...
 
virtual void SetTextAlign(Short_t align=11)
Set the text alignment.
 
virtual Font_t GetTextFont() const
Return the text font.
 
virtual void SetTextAngle(Float_t tangle=0)
Set the text angle.
 
virtual void SetTextColor(Color_t tcolor=1)
Set the text color.
 
virtual void SetTextFont(Font_t tfont=62)
Set the text font.
 
virtual void SetTextSize(Float_t tsize=1)
Set the text size.
 
Class to manage histogram axis.
 
virtual Bool_t GetTimeDisplay() const
 
Bool_t IsAlphanumeric() const
 
const char * GetTitle() const override
Returns title of object.
 
virtual Double_t GetBinCenter(Int_t bin) const
Return center of bin.
 
const TArrayD * GetXbins() const
 
const char * GetBinLabel(Int_t bin) const
Return label for bin.
 
virtual Int_t FindBin(Double_t x)
Find bin number corresponding to abscissa x.
 
virtual Double_t GetBinLowEdge(Int_t bin) const
Return low edge of bin.
 
virtual Int_t FindFixBin(Double_t x) const
Find bin number corresponding to abscissa x
 
const char * ChooseTimeFormat(Double_t axislength=0)
Choose a reasonable time format from the coordinates in the active pad and the number of divisions in...
 
Int_t GetLast() const
Return last bin on the axis i.e.
 
virtual const char * GetTimeFormatOnly() const
Return only the time format from the string fTimeFormat.
 
virtual void SetRangeUser(Double_t ufirst, Double_t ulast)
Set the viewing range for the axis from ufirst to ulast (in user coordinates, that is,...
 
virtual const char * GetTimeFormat() const
 
virtual Double_t GetBinWidth(Int_t bin) const
Return bin width.
 
virtual Double_t GetBinUpEdge(Int_t bin) const
Return up edge of bin.
 
Int_t GetFirst() const
Return first bin on the axis i.e.
 
THashList * GetLabels() const
 
The candle plot painter class.
 
static Bool_t SupportAlpha()
Static function returning "true" if transparency is supported.
 
static TClass * GetClass(const char *name, Bool_t load=kTRUE, Bool_t silent=kFALSE)
Static method returning pointer to TClass of the specified class name.
 
virtual Int_t GetSize() const
Return the capacity of the collection, i.e.
 
The color creation and management class.
 
static void RGBtoHLS(Float_t r, Float_t g, Float_t b, Float_t &h, Float_t &l, Float_t &s)
 
static Int_t GetColor(const char *hexcolor)
Static method returning color number for color specified by hex color string of form: "#rrggbb",...
 
static Int_t GetColorBright(Int_t color)
Static function: Returns the bright color number corresponding to n If the TColor object does not exi...
 
static Int_t GetColorDark(Int_t color)
Static function: Returns the dark color number corresponding to n If the TColor object does not exist...
 
static void HLStoRGB(Float_t h, Float_t l, Float_t s, Float_t &r, Float_t &g, Float_t &b)
 
virtual Int_t GetValue(const char *name, Int_t dflt) const
Returns the integer value for a resource.
 
virtual Double_t GetXmax() const
 
virtual Int_t GetNDF() const
Return the number of degrees of freedom in the fit the fNDF parameter has been previously computed du...
 
virtual void GetParLimits(Int_t ipar, Double_t &parmin, Double_t &parmax) const
Return limits for parameter ipar.
 
virtual Double_t GetParError(Int_t ipar) const
Return value of parameter number ipar.
 
Double_t GetChisquare() const
Return the Chisquare after fitting. See ROOT::Fit::FitResult::Chi2()
 
virtual void SetMaximum(Double_t maximum=-1111)
Set the maximum value along Y for this function In case the function is already drawn,...
 
virtual Double_t GetMaximumStored() const
 
virtual Int_t GetNpar() const
 
virtual Int_t GetNumberFreeParameters() const
Return the number of free parameters.
 
virtual void SetMinimum(Double_t minimum=-1111)
Set the minimum value along Y for this function In case the function is already drawn,...
 
virtual const char * GetParName(Int_t ipar) const
 
virtual Double_t Eval(Double_t x, Double_t y=0, Double_t z=0, Double_t t=0) const
Evaluate this function.
 
virtual Double_t GetXmin() const
 
virtual Double_t GetParameter(Int_t ipar) const
 
A 2-Dim function with parameters.
 
void Paint(Option_t *option="") override
Paint this 2-D function with its current attributes.
 
void SetRange(Double_t xmin, Double_t xmax) override
Initialize the upper and lower bounds to draw the function.
 
A 3-Dim function with parameters.
 
void SetTimeFormat(const char *tformat)
Change the format used for time plotting.
 
virtual void PaintAxis(Double_t xmin, Double_t ymin, Double_t xmax, Double_t ymax, Double_t &wmin, Double_t &wmax, Int_t &ndiv, Option_t *chopt="", Double_t gridlength=0, Bool_t drawGridOnly=kFALSE)
Control function to draw an axis.
 
void SetTitleOffset(Float_t titleoffset=1)
 
virtual void SetTitle(const char *title="")
Change the title of the axis.
 
void SetLabelOffset(Float_t labeloffset)
 
virtual void ImportAxisAttributes(TAxis *axis)
Internal method to import TAxis attributes to this TGaxis.
 
void SetTickSize(Float_t ticksize)
 
void SetLabelSize(Float_t labelsize)
 
void SetOption(Option_t *option="")
To set axis options.
 
Graphics object made of three arrays X, Y and Z with the same number of points each.
 
TGraphDelaunay2D generates a Delaunay triangulation of a TGraph2D.
 
TGraphDelaunay generates a Delaunay triangulation of a TGraph2D.
 
A TGraph is an object made of two arrays X and Y with npoints each.
 
@ kClipFrame
Clip to the frame boundary.
 
void PaintGraph(Int_t npoints, const Double_t *x, const Double_t *y, Option_t *chopt)
Draw the (x,y) as a graph.
 
void PaintGrapHist(Int_t npoints, const Double_t *x, const Double_t *y, Option_t *chopt)
Draw the (x,y) as a histogram.
 
1-D histogram with a double per channel (see TH1 documentation)
 
1-D histogram with a float per channel (see TH1 documentation)
 
TH1 is the base class of all histogram classes in ROOT.
 
virtual EBinErrorOpt GetBinErrorOption() const
 
virtual Float_t GetBarWidth() const
 
virtual Double_t GetMinimumStored() const
 
virtual Float_t GetBarOffset() const
 
virtual Double_t GetStdDev(Int_t axis=1) const
Returns the Standard Deviation (Sigma).
 
virtual Int_t GetNbinsY() const
 
virtual Double_t GetBinError(Int_t bin) const
Return value of error associated to bin number bin.
 
virtual Int_t GetNbinsZ() const
 
virtual Double_t GetNormFactor() const
 
virtual Double_t GetMean(Int_t axis=1) const
For axis = 1,2 or 3 returns the mean value of the histogram along X,Y or Z axis.
 
virtual Double_t GetSkewness(Int_t axis=1) const
 
virtual Double_t GetContourLevelPad(Int_t level) const
Return the value of contour number "level" in Pad coordinates.
 
virtual Int_t GetDimension() const
 
static void AddDirectory(Bool_t add=kTRUE)
Sets the flag controlling the automatic add of histograms in memory.
 
@ kNoTitle
Don't draw the histogram title.
 
@ kUserContour
User specified contour levels.
 
@ kNoStats
Don't draw stats box.
 
virtual Double_t GetSumOfWeights() const
Return the sum of weights across all bins excluding under/overflows.
 
virtual Int_t GetBin(Int_t binx, Int_t biny=0, Int_t binz=0) const
Return Global bin number corresponding to binx,y,z.
 
virtual Double_t GetMaximum(Double_t maxval=FLT_MAX) const
Return maximum value smaller than maxval of bins in the range, unless the value has been overridden b...
 
virtual Int_t GetNbinsX() const
 
virtual void SetMaximum(Double_t maximum=-1111)
 
virtual Double_t GetBinErrorLow(Int_t bin) const
Return lower error associated to bin number bin.
 
virtual void SetMinimum(Double_t minimum=-1111)
 
virtual Double_t Integral(Option_t *option="") const
Return integral of bin contents.
 
virtual void SetBinContent(Int_t bin, Double_t content)
Set bin content see convention for numbering bins in TH1::GetBin In case the bin number is greater th...
 
virtual Double_t GetBinLowEdge(Int_t bin) const
Return bin lower edge for 1D histogram.
 
virtual Double_t GetEntries() const
Return the current number of entries.
 
TList * GetListOfFunctions() const
 
virtual Double_t GetMeanError(Int_t axis=1) const
Return standard error of mean of this histogram along the X axis.
 
virtual Double_t GetMaximumStored() const
 
virtual void GetMinimumAndMaximum(Double_t &min, Double_t &max) const
Retrieve the minimum and maximum values in the histogram.
 
@ kNormal
Errors with Normal (Wald) approximation: errorUp=errorLow= sqrt(N)
 
virtual Double_t GetBinContent(Int_t bin) const
Return content of bin number bin.
 
virtual Int_t GetContour(Double_t *levels=nullptr)
Return contour values into array levels if pointer levels is non zero.
 
const Double_t * GetBuffer() const
 
virtual Bool_t IsHighlight() const
 
virtual Double_t GetBinWidth(Int_t bin) const
Return bin width for 1D histogram.
 
virtual void SetContour(Int_t nlevels, const Double_t *levels=nullptr)
Set the number and values of contour levels.
 
virtual Double_t GetBinErrorUp(Int_t bin) const
Return upper error associated to bin number bin.
 
virtual Int_t GetSumw2N() const
 
virtual Double_t GetStdDevError(Int_t axis=1) const
Return error of standard deviation estimation for Normal distribution.
 
virtual Double_t GetMinimum(Double_t minval=-FLT_MAX) const
Return minimum value larger than minval of bins in the range, unless the value has been overridden by...
 
static Bool_t AddDirectoryStatus()
Static function: cannot be inlined on Windows/NT.
 
virtual void LabelsDeflate(Option_t *axis="X")
Reduce the number of bins for the axis passed in the option to the number of bins having a label.
 
virtual Int_t BufferEmpty(Int_t action=0)
Fill histogram with all entries in the buffer.
 
virtual Double_t GetKurtosis(Int_t axis=1) const
 
2-D histogram with a double per channel (see TH1 documentation)
 
2-D histogram with a float per channel (see TH1 documentation)
 
Helper class to represent a bin in the TH2Poly histogram.
 
2D Histogram with Polygonal Bins
 
Service class for 2-D histogram classes.
 
The 3-D histogram classes derived from the 1-D histogram classes.
 
The Histogram stack class.
 
The histogram painter class.
 
static Int_t ProjectSinusoidal2xy(Double_t l, Double_t b, Double_t &Al, Double_t &Ab)
Static function code for sinusoidal projection from Ernst-Jan Buis Source https://en....
 
void Paint(Option_t *option="") override
Control routine to paint any kind of histograms
 
TAxis * fYaxis
Pointer to Y axis.
 
std::unique_ptr< TPainter3dAlgorithms > fLego
Pointer to a TPainter3dAlgorithms object.
 
std::vector< Double_t > fXbuf
X buffer coordinates.
 
Int_t fXHighlightBin
X highlight bin.
 
TF3 * fCurrentF3
Current TF3 function.
 
virtual void PaintErrors(Option_t *option)
Draw 1D histograms error bars.
 
~THistPainter() override
destructor.
 
Int_t fShowProjection2
True if a second projection must be drawn (when calling SetShowProjectionXY on a TH2)
 
virtual void PaintTF3()
Control function to draw a 3D implicit functions.
 
virtual Int_t TableInit()
Initialize various options to draw 2D histograms.
 
virtual void PaintTH2PolyScatterPlot(Option_t *option)
Control function to draw a TH2Poly as a scatter plot.
 
static Int_t ProjectMollweide2xy(Double_t l, Double_t b, Double_t &Al, Double_t &Ab)
Static function.
 
static Int_t ProjectAitoff2xy(Double_t l, Double_t b, Double_t &Al, Double_t &Ab)
Static function.
 
virtual void PaintText(Option_t *option)
Control function to draw a 1D/2D histograms with the bin values.
 
Int_t DistancetoPrimitive(Int_t px, Int_t py) override
Compute the distance from the point px,py to a line.
 
virtual void PaintAxis(Bool_t drawGridOnly=kFALSE)
Draw axis (2D case) of an histogram.
 
virtual void PaintColorLevelsFast(Option_t *option)
[Rendering scheme for the COL2 and COLZ2 options] (HP14)
 
virtual Int_t PaintInit()
Compute histogram parameters used by the drawing routines.
 
virtual void Paint2DErrors(Option_t *option)
Draw 2D histograms errors.
 
Int_t fYHighlightBin
Y highlight bin.
 
virtual void PaintCandlePlot(Option_t *option)
Control function to draw a 2D histogram as a candle (box) plot or violin plot
 
virtual void PaintScatterPlot(Option_t *option)
Control function to draw a 2D histogram as a scatter plot.
 
void SetShowProjectionXY(const char *option, Int_t nbinsY, Int_t nbinsX) override
 
virtual void PaintLego(Option_t *option)
Control function to draw a 2D histogram as a lego plot.
 
virtual void PaintH3(Option_t *option="")
Control function to draw a 3D histograms.
 
Int_t fNcuts
Number of graphical cuts.
 
TString fShowOption
Option to draw the projection.
 
virtual void PaintHighlightBin(Option_t *option="")
Paint highlight bin as TBox object.
 
virtual void PaintTH2PolyBins(Option_t *option)
Control function to draw a TH2Poly bins' contours.
 
virtual Int_t PaintContourLine(Double_t elev1, Int_t icont1, Double_t x1, Double_t y1, Double_t elev2, Int_t icont2, Double_t x2, Double_t y2, Double_t *xarr, Double_t *yarr, Int_t *itarr, Double_t *levels)
Fill the matrix xarr and yarr for Contour Plot.
 
Int_t fShowProjection
True if a projection must be drawn.
 
virtual void PaintLegoAxis(TGaxis *axis, Double_t ang)
Draw the axis for legos and surface plots.
 
virtual void PaintTriangles(Option_t *option)
Control function to draw a table using Delaunay triangles.
 
virtual void HighlightBin(Int_t px, Int_t py)
Check on highlight bin.
 
virtual void PaintH3Box(Int_t iopt)
Control function to draw a 3D histogram with boxes.
 
Int_t MakeCuts(char *cutsopt) override
Decode string choptin and fill Graphical cuts structure.
 
TList * fFunctions
Pointer to histogram list of functions.
 
void DrawPanel() override
Display a panel with all histogram drawing options.
 
std::unique_ptr< TPie > fPie
Pointer to a TPie in case of option PIE.
 
static void PaintSpecialObjects(const TObject *obj, Option_t *option)
Static function to paint special objects like vectors and matrices.
 
virtual void PaintTitle()
new TGaxis/////////////////// Draw the histogram title
 
virtual void PaintTH2PolyColorLevels(Option_t *option)
Control function to draw a TH2Poly as a color plot.
 
virtual std::vector< THistRenderingRegion > ComputeRenderingRegions(TAxis *pAxis, Int_t nPixels, bool isLog)
Returns the rendering regions for an axis to use in the COL2 option.
 
virtual void ShowProjectionX(Int_t px, Int_t py)
Show projection onto X.
 
virtual void PaintPalette()
Paint the color palette on the right side of the pad.
 
TAxis * fXaxis
Pointer to X axis.
 
virtual void PaintStat2(Int_t dostat, TF1 *fit)
Draw the statistics box for 2D histograms.
 
virtual void PaintArrows(Option_t *option)
Control function to draw a table as an arrow plot
 
virtual void RecalculateRange()
Recompute the histogram range following graphics operations.
 
void PaintStat(Int_t dostat, TF1 *fit) override
Draw the statistics box for 1D and profile histograms.
 
static Int_t ProjectParabolic2xy(Double_t l, Double_t b, Double_t &Al, Double_t &Ab)
Static function code for parabolic projection from Ernst-Jan Buis.
 
std::unique_ptr< TGraph2DPainter > fGraph2DPainter
Pointer to a TGraph2DPainter object.
 
virtual void PaintBarH(Option_t *option)
Draw a bar char in a rotated pad (X vertical, Y horizontal)
 
virtual void PaintStat3(Int_t dostat, TF1 *fit)
Draw the statistics box for 3D histograms.
 
virtual void PaintSurface(Option_t *option)
Control function to draw a 2D histogram as a surface plot.
 
TList * fStack
Pointer to stack of histograms (if any)
 
THistPainter()
Default constructor.
 
TH1 * fH
Pointer to histogram to paint.
 
virtual void PaintTH2PolyText(Option_t *option)
Control function to draw a TH2Poly as a text plot.
 
virtual void ShowProjection3(Int_t px, Int_t py)
Show projection (specified by fShowProjection) of a TH3.
 
TAxis * fZaxis
Pointer to Z axis.
 
void SetHistogram(TH1 *h) override
Set current histogram to h
 
virtual void PaintFunction(Option_t *option)
[Paint functions associated to an histogram.](HP28")
 
virtual void PaintBar(Option_t *option)
Draw a bar-chart in a normal pad.
 
static Int_t ProjectMercator2xy(Double_t l, Double_t b, Double_t &Al, Double_t &Ab)
Static function.
 
virtual void PaintBoxes(Option_t *option)
Control function to draw a 2D histogram as a box plot
 
virtual Int_t MakeChopt(Option_t *option)
Decode string choptin and fill Hoption structure.
 
char * GetObjectInfo(Int_t px, Int_t py) const override
Display the histogram info (bin number, contents, integral up to bin corresponding to cursor position...
 
TList * GetContourList(Double_t contour) const override
Get a contour (as a list of TGraphs) using the Delaunay triangulation.
 
void ProcessMessage(const char *mess, const TObject *obj) override
Process message mess.
 
void SetShowProjection(const char *option, Int_t nbins) override
Set projection.
 
virtual void ShowProjectionY(Int_t px, Int_t py)
Show projection onto Y.
 
static const char * GetBestFormat(Double_t v, Double_t e, const char *f)
This function returns the best format to print the error value (e) knowing the parameter value (v) an...
 
virtual void PaintContour(Option_t *option)
Control function to draw a 2D histogram as a contour plot.
 
TCutG * fCuts[kMaxCuts]
Pointers to graphical cuts.
 
virtual void PaintTable(Option_t *option)
Control function to draw 2D/3D histograms (tables).
 
void ExecuteEvent(Int_t event, Int_t px, Int_t py) override
Execute the actions corresponding to event.
 
virtual Int_t PaintInitH()
Compute histogram parameters used by the drawing routines for a rotated pad.
 
virtual void PaintFrame()
Calculate range and clear pad (canvas).
 
Int_t fCutsOpt[kMaxCuts]
Sign of each cut.
 
virtual void PaintH3Iso()
Control function to draw a 3D histogram with Iso Surfaces.
 
std::vector< Double_t > fYbuf
Y buffer coordinates.
 
virtual void PaintH3BoxRaster()
Control function to draw a 3D histogram with boxes.
 
virtual void PaintHist(Option_t *option)
Control routine to draw 1D histograms
 
void SetHighlight() override
Set highlight (enable/disable) mode for fH.
 
virtual void DefineColorLevels(Int_t ndivz)
Define the color levels used to paint legos, surfaces etc..
 
virtual void PaintColorLevels(Option_t *option)
Control function to draw a 2D histogram as a color plot.
 
Bool_t IsInside(Int_t x, Int_t y) override
Return kTRUE if the cell ix, iy is inside one of the graphical cuts.
 
A class to define a conversion from pixel values to pixel color.
 
static TImagePalette * CreateCOLPalette(Int_t nContours)
Factory method to creates an image palette for histogram plotting.
 
An abstract interface to image processing library.
 
static TImage * Create()
Create an image.
 
To draw Mathematical Formula.
 
TObject * FindObject(const char *name) const override
Find an object in this list using its name.
 
void Add(TObject *obj) override
 
TObject * Remove(TObject *obj) override
Remove object from the list.
 
TObject * First() const override
Return the first object in the list. Returns 0 when list is empty.
 
virtual TObjLink * FirstLink() const
 
TObject * At(Int_t idx) const override
Returns the object at position idx. Returns 0 if idx is out of range.
 
void AddFirst(TObject *obj) override
Add object at the beginning of the list.
 
A TMultiGraph is a collection of TGraph (or derived) objects.
 
TList * GetListOfGraphs() const
 
virtual Int_t IsInside(Double_t x, Double_t y) const
Return 1 if the point (x,y) is inside one of the graphs 0 otherwise.
 
const char * GetName() const override
Returns name of object.
 
const char * GetTitle() const override
Returns title of object.
 
Mother of all ROOT objects.
 
virtual const char * GetName() const
Returns name of object.
 
R__ALWAYS_INLINE Bool_t TestBit(UInt_t f) const
 
virtual Option_t * GetDrawOption() const
Get option used by the graphics system to draw this object.
 
virtual void Warning(const char *method, const char *msgfmt,...) const
Issue warning message.
 
virtual TObject * FindObject(const char *name) const
Must be redefined in derived classes.
 
void SetBit(UInt_t f, Bool_t set)
Set or unset the user status bits as specified in f.
 
virtual Bool_t InheritsFrom(const char *classname) const
Returns kTRUE if object inherits from class "classname".
 
virtual void Error(const char *method, const char *msgfmt,...) const
Issue error message.
 
virtual const char * GetTitle() const
Returns title of object.
 
@ kCannotPick
if object in a pad cannot be picked
 
@ kCanDelete
if object in a list can be deleted
 
@ kMustCleanup
if object destructor must call RecursiveRemove()
 
void DrawFaceMove3(Int_t *icodes, Double_t *xyz, Int_t np, Int_t *iface, Double_t *tt)
Draw face - 3rd variant for "MOVING SCREEN" algorithm (draw level lines only)
 
void DrawLevelLines(Int_t *icodes, Double_t *xyz, Int_t np, Int_t *iface, Double_t *tt)
Draw level lines without hidden line removal.
 
void SurfaceFunction(Int_t ia, Int_t ib, Double_t *f, Double_t *t)
Service function for Surfaces.
 
void DrawFaceMode1(Int_t *icodes, Double_t *xyz, Int_t np, Int_t *iface, Double_t *t)
Draw face - 1st variant (2 colors: 1st for external surface, 2nd for internal)
 
void GouraudFunction(Int_t ia, Int_t ib, Double_t *f, Double_t *t)
Find part of surface with luminosity in the corners.
 
void DrawFaceMove1(Int_t *icodes, Double_t *xyz, Int_t np, Int_t *iface, Double_t *tt)
Draw face - 1st variant for "MOVING SCREEN" algorithm (draw face with level lines)
 
void DrawFaceRaster2(Int_t *icodes, Double_t *xyz, Int_t np, Int_t *iface, Double_t *tt)
Draw face - 2nd variant for "RASTER SCREEN" algorithm (draw face for stacked lego plot)
 
void LegoFunction(Int_t ia, Int_t ib, Int_t &nv, Double_t *ab, Double_t *vv, Double_t *t)
Service function for Legos.
 
void DrawFaceMove2(Int_t *icodes, Double_t *xyz, Int_t np, Int_t *iface, Double_t *tt)
Draw face - 2nd variant for "MOVING SCREEN" algorithm (draw face for stacked lego plot)
 
void DrawFaceRaster1(Int_t *icodes, Double_t *xyz, Int_t np, Int_t *iface, Double_t *tt)
Draw face - 1st variant for "RASTER SCREEN" algorithm (draw face with level lines)
 
void DrawFaceMode3(Int_t *icodes, Double_t *xyz, Int_t np, Int_t *iface, Double_t *t)
Draw face - 3rd option (draw face for stacked lego plot)
 
void DrawFaceMode2(Int_t *icodes, Double_t *xyz, Int_t np, Int_t *iface, Double_t *t)
Draw face - 2nd option (fill in correspondence with function levels)
 
The palette painting class.
 
The histogram statistics painter class.
 
Int_t GetOptStat() const
Return the stat option.
 
virtual void SetStatFormat(const char *format="6.4g")
Change (i.e. set) the format for printing statistics.
 
void SetOptStat(Int_t stat=1)
Set the stat option.
 
virtual const char * GetFitFormat() const
 
virtual void SetFitFormat(const char *format="5.4g")
Change (i.e. set) the format for printing fit parameters in statistics box.
 
Int_t GetOptFit() const
Return the fit option.
 
void SetParent(TObject *obj) override
 
void SetOptFit(Int_t fit=1)
Set the fit option.
 
virtual const char * GetStatFormat() const
 
void Paint(Option_t *option="") override
Paint the pave stat.
 
A Pave (see TPave) with text, lines or/and boxes inside.
 
virtual TText * AddText(Double_t x1, Double_t y1, const char *label)
Add a new Text line to this pavetext at given coordinates.
 
void Clear(Option_t *option="") override
Clear all lines in this pavetext.
 
virtual TText * GetLine(Int_t number) const
Get Pointer to line number in this pavetext.
 
const char * GetName() const override
Returns name of object.
 
virtual void SetName(const char *name="")
 
virtual void SetBorderSize(Int_t bordersize=4)
Sets the border size of the TPave box and shadow.
 
Option_t * GetOption() const override
 
Double_t GetX1NDC() const
 
virtual void SetX2NDC(Double_t x2)
 
Profile2D histograms are used to display the mean value of Z and its error for each cell in X,...
 
Random number generator class based on the maximally quidistributed combined Tausworthe generator by ...
 
Sequenceable collection abstract base class.
 
void ToLower()
Change string to lower-case.
 
const char * Data() const
 
static TString Format(const char *fmt,...)
Static method which formats a string using a printf style format descriptor and return a TString.
 
void Form(const char *fmt,...)
Formats a string using a printf style format descriptor.
 
Bool_t Contains(const char *pat, ECaseCompare cmp=kExact) const
 
Ssiz_t Index(const char *pat, Ssiz_t i=0, ECaseCompare cmp=kExact) const
 
Color_t GetStatTextColor() const
 
Float_t GetTitleX() const
 
Int_t GetOptTitle() const
 
Float_t GetStatFontSize() const
 
Float_t GetBarOffset() const
 
Float_t GetTitleSize(Option_t *axis="X") const
Return title size.
 
Float_t GetTitleY() const
 
Style_t GetTitleFont(Option_t *axis="X") const
Return title font.
 
Bool_t GetHistMinimumZero() const
 
Color_t GetTitleFillColor() const
 
Style_t GetTitleStyle() const
 
Color_t GetStatColor() const
 
Float_t GetBarWidth() const
 
void SetDrawBorder(Int_t drawborder=1)
 
Width_t GetTitleBorderSize() const
 
Int_t GetColorPalette(Int_t i) const
Return color number i in current palette.
 
Float_t GetErrorX() const
 
Double_t GetHistTopMargin() const
 
void SetBarOffset(Float_t baroff=0.5)
 
Float_t GetEndErrorSize() const
 
Int_t GetDrawBorder() const
 
Width_t GetStatBorderSize() const
 
Color_t GetTitleTextColor() const
 
void SetBarWidth(Float_t barwidth=0.5)
 
Float_t GetTitleH() const
 
Style_t GetStatStyle() const
 
const char * GetFitFormat() const
 
const char * GetStatFormat() const
 
Int_t GetNumberOfColors() const
Return number of colors in the color palette.
 
Int_t GetNumberContours() const
 
const char * GetPaintTextFormat() const
 
Style_t GetStatFont() const
 
Float_t GetTitleFontSize() const
 
Int_t GetTitleAlign() const
 
Float_t GetTitleW() const
 
virtual int Load(const char *module, const char *entry="", Bool_t system=kFALSE)
Load a shared library.
 
Base class for several text objects.
 
virtual Double_t GetPsi()=0
 
virtual Double_t * GetRmax()=0
 
virtual void SetAxisNDC(const Double_t *x1, const Double_t *x2, const Double_t *y1, const Double_t *y2, const Double_t *z1, const Double_t *z2)=0
 
virtual Double_t * GetRmin()=0
 
virtual void WCtoNDC(const Float_t *pw, Float_t *pn)=0
 
virtual void SetOutlineToCube()=0
 
virtual Int_t GetDistancetoAxis(Int_t axis, Int_t px, Int_t py, Double_t &ratio)=0
 
virtual Double_t * GetTnorm()=0
 
virtual void ExecuteRotateView(Int_t event, Int_t px, Int_t py)=0
 
virtual TSeqCollection * GetOutline()=0
 
virtual void PadRange(Int_t rback)=0
 
virtual void SetRange(const Double_t *min, const Double_t *max)=0
 
virtual void FindNormal(Double_t x, Double_t y, Double_t z, Double_t &zn)=0
 
virtual void AxisVertex(Double_t ang, Double_t *av, Int_t &ix1, Int_t &ix2, Int_t &iy1, Int_t &iy2, Int_t &iz1, Int_t &iz2)=0
 
virtual void SetView(Double_t longitude, Double_t latitude, Double_t psi, Int_t &irep)=0
 
Abstract base class used by ROOT graphics editor.
 
static TVirtualPadEditor * GetPadEditor(Bool_t load=kTRUE)
Returns the pad editor dialog. Static method.
 
small helper class to store/restore gPad context in TPad methods
 
TVirtualPad is an abstract base class for the Pad and Canvas classes.
 
void box(Int_t pat, Double_t x1, Double_t y1, Double_t x2, Double_t y2)
 
Int_t Nint(T x)
Round to nearest integer. Rounds half integers to the nearest even integer.
 
Short_t Max(Short_t a, Short_t b)
Returns the largest of a and b.
 
Double_t Prob(Double_t chi2, Int_t ndf)
Computation of the probability for a certain Chi-squared (chi2) and number of degrees of freedom (ndf...
 
Double_t ATan(Double_t)
Returns the principal value of the arc tangent of x, expressed in radians.
 
constexpr Double_t PiOver2()
 
Double_t Log(Double_t x)
Returns the natural logarithm of x.
 
constexpr Double_t DegToRad()
Conversion from degree to radian: .
 
Double_t Sqrt(Double_t x)
Returns the square root of x.
 
LongDouble_t Power(LongDouble_t x, LongDouble_t y)
Returns x raised to the power y.
 
Short_t Min(Short_t a, Short_t b)
Returns the smallest of a and b.
 
Double_t Cos(Double_t)
Returns the cosine of an angle of x radians.
 
Bool_t AreEqualRel(Double_t af, Double_t bf, Double_t relPrec)
Comparing floating points.
 
Double_t Sin(Double_t)
Returns the sine of an angle of x radians.
 
Double_t Tan(Double_t)
Returns the tangent of an angle of x radians.
 
Long64_t BinarySearch(Long64_t n, const T *array, T value)
Binary search in an array of n values to locate value.
 
constexpr Double_t RadToDeg()
Conversion from radian to degree: .
 
Double_t Log10(Double_t x)
Returns the common (base-10) logarithm of x.
 
Short_t Abs(Short_t d)
Returns the absolute value of parameter Short_t d.
 
Histograms' drawing options structure.
 
int Curve
"C" A smooth Curve is drawn.
 
int Proj
"AITOFF", "MERCATOR", "SINUSOIDAL" and "PARABOLIC" projections for 2d plots.
 
int Axis
"A" Axis are not drawn around the graph.
 
int Box
"BOX" Draw 2D plot with proportional Boxes.
 
int Scat
"SCAT" Draw 2D plot a Scatter plot.
 
int Text
"TEXT" Draw 2D plot with the content of each cell.
 
int Color
"COL" Draw 2D plot with Colored boxes.
 
int AxisPos
"X+" and "Y+" Axis position
 
int List
"LIST" Generate the TObjArray "contours". To be used with option "CONT"
 
int Logx
log scale in X. Also set by histogram option
 
int Zscale
"Z" Display the color palette.
 
int MinimumZero
"MIN0" or gStyle->GetHistMinimumZero()
 
int Contour
"CONTn" Draw 2D plot as a Contour plot (0 <= n <= 5).
 
int Off
"][" The first and last vertical lines are not drawn.
 
int Func
"FUNC" Draw only the function (for example in case of fit).
 
long Candle
"CANDLE" and "VIOLIN" Draw a 2D histogram as candle/box plot or violin plot.
 
int Spec
"SPEC" TSpectrum graphics
 
int FrontBox
"FB" Suppress the front box for the 3D plots.
 
int Pie
"PIE" Draw 1D plot as a pie chart.
 
int Star
"*" With option "P", a * is plotted at each point.
 
int Zero
"0" if selected with any LEGO option the empty bins are not drawn.
 
int Logz
log scale in Z. Also set by histogram option
 
int Tri
"TRI" Draw TGraph2D with Delaunay triangles.
 
int BackBox
"BB" Suppress the back box for the 3D plots.
 
int Mark
"P" The current Marker is drawn at each point.
 
int Arrow
"ARR" Draw 2D plot with Arrows.
 
int Line
"L" A simple polyline through every point is drawn.
 
int Same
"SAME" Histogram is plotted in the current pad.
 
int Lego
"LEGO" and "LEGOn" Draw as a Lego plot(1 <= n <= 4).
 
int Bar
"B", "BAR" and "HBAR" A Bar chart is drawn at each point.
 
int Fill
"F" A fill area is drawn ("CF" draw a smooth fill area).
 
int Hist
"HIST" Draw only the histogram.
 
int Surf
"SURF" and "SURFn" Draw as a Surface ((1 <= n <= 4).
 
int Logy
log scale in Y. Also set by histogram option
 
int System
"POL", "CYL", "SPH" and "PSR" Type of coordinate system for 3D plots.
 
int Error
"En" Draw Errors with current marker type and size (0 <= n <=6).
 
Histogram parameters structure.
 
Double_t baroffset
Offset of bin for bars or legos [0,1].
 
Double_t ylowedge
Low edge of axis.
 
Double_t xmin
Minimum value along X.
 
Int_t ylast
Last bin number along Y.
 
Int_t xfirst
First bin number along X.
 
Double_t zmin
Minimum value along Z.
 
Double_t xbinsize
Bin size in case of equidistant bins.
 
Double_t ymin
Minimum value along y.
 
Double_t allchan
Integrated sum of contents.
 
Double_t xlowedge
Low edge of axis.
 
Double_t ymax
Maximum value along y.
 
Double_t factor
Multiplication factor (normalization)
 
Int_t xlast
Last bin number along X.
 
Double_t ybinsize
Bin size in case of equidistant bins.
 
Double_t barwidth
Width of bin for bars and legos [0,1].
 
Double_t zmax
Maximum value along Z.
 
Double_t xmax
Maximum value along X.
 
Int_t yfirst
First bin number along Y.