267 py =
gPad->GetWh() - py;
271 const Int_t glContext =
gPad->GetGLDevice();
273 if (glContext != -1) {
280 Error(
"DistancetoPrimitive",
281 "Attempt to use TGLHistPainter, while the current pad (gPad) does not support gl");
321 const Int_t glContext =
gPad->GetGLDevice();
323 if (glContext == -1) {
324 Error(
"ExecuteEvent",
325 "Attempt to use TGLHistPainter, while the current pad (gPad) does not support gl");
412 }
else if (event == 5 || py ==
kKey_K || py ==
kKey_k) {
453 static char errMsg[] = {
"TGLHistPainter::GetObjectInfo: Error in a hist painter\n" };
516 if (!std::strcmp(
m,
"SetF3"))
610 if (glContext != -1) {
632Bool_t FindAndRemoveOption(
TString &options,
const char *toFind)
634 const UInt_t len = std::strlen(toFind);
637 if (index !=
kNPOS) {
638 options.
Remove(index, len);
662 if (FindAndRemoveOption(options,
"pol"))
664 if (FindAndRemoveOption(options,
"cyl"))
666 if (FindAndRemoveOption(options,
"sph"))
670 if (FindAndRemoveOption(options,
"lego"))
672 if (FindAndRemoveOption(options,
"surf"))
674 if (FindAndRemoveOption(options,
"tf3"))
676 if (FindAndRemoveOption(options,
"box"))
678 if (FindAndRemoveOption(options,
"iso"))
680 if (FindAndRemoveOption(options,
"col"))
684 if (FindAndRemoveOption(options,
"bb"))
686 if (FindAndRemoveOption(options,
"fb"))
690 if (FindAndRemoveOption(options,
"a"))
779 vp.
X() =
Int_t(vp.
X() * scale);
780 vp.
Y() =
Int_t(vp.
Y() * scale);
int Int_t
Signed integer 4 bytes (int).
int Ssiz_t
String size (currently int).
unsigned int UInt_t
Unsigned integer 4 bytes (unsigned int).
bool Bool_t
Boolean (0=false, 1=true) (bool).
double Double_t
Double 8 bytes.
constexpr Ssiz_t kNPOS
The equivalent of std::string::npos for the ROOT class TString.
float Float_t
Float 4 bytes (float).
const char Option_t
Option string (const char).
void SetHistogram(TH1 *hist) override
Set histogram.
void PaintStat(Int_t dostat, TF1 *fit) override
Paint statistics.
TGLPlotCoordinates fCoord
void SetHighlight() override
Set highlight mode.
PlotOption_t ParsePaintOption(const TString &option) const
In principle, we can have several conflicting options: "lego surf pol sph", surfbb: surf,...
void CreatePainter(const PlotOption_t &parsed, const TString &option)
Create painter.
void ExecuteEvent(Int_t event, Int_t px, Int_t py) override
Execute event.
void ProcessMessage(const char *message, const TObject *obj) override
Process message.
Int_t DistancetoPrimitive(Int_t px, Int_t py) override
Selects plot or axis.
void SetShowProjection(const char *option, Int_t nbins) override
Set show projection.
void PadToViewport(Bool_t selectionPass=kFALSE)
void SetStack(TList *stack) override
Set stack.
void SetShowProjectionXY(const char *option, Int_t nbinsY, Int_t nbinsX) override
Set show projectionXY.
TList * GetStack() const override
Get stack.
std::unique_ptr< TGLPlotPainter > fGLPainter
std::unique_ptr< TVirtualHistPainter > fDefaultPainter
void Paint(Option_t *option) override
Final-overrider for TObject::Paint.
void DrawPanel() override
Default implementation is OK This function is called from a context menu after right click on a plot'...
Int_t MakeCuts(char *cutsOpt) override
Make cuts.
TGLHistPainter(TH1 *hist)
ROOT does not use exceptions, so, if default painter's creation failed, fDefaultPainter is 0.
TList * GetContourList(Double_t contour) const override
Get contour list.
TGLParametricEquation * fEq
Bool_t IsInside(Int_t x, Int_t y) override
Returns kTRUE if the cell ix, iy is inside one of the graphical cuts.
char * GetObjectInfo(Int_t px, Int_t py) const override
Overrides TObject::GetObjectInfo.
A parametric surface is a surface defined by a parametric equation, involving two parameters (u,...
Viewport (pixel base) 2D rectangle class.
static void InitializeIfNeeded()
Initialize globals that require other libraries to be initialized.
static Float_t GetScreenScalingFactor()
Returns scaling factor between screen points and GL viewport pixels.
TH1 is the base class of all histogram classes in ROOT.
2D Histogram with Polygonal Bins
virtual void Error(const char *method, const char *msgfmt,...) const
Issue error message.
TObject()
TObject constructor.
void ToLower()
Change string to lower-case.
const char * Data() const
TString & Remove(Ssiz_t pos)
Ssiz_t Index(const char *pat, Ssiz_t i=0, ECaseCompare cmp=kExact) const
static TVirtualHistPainter * HistPainter(TH1 *obj)
Static function returning a pointer to the current histogram painter.