12 #ifndef ROOT_TGLPadPainter
13 #define ROOT_TGLPadPainter
17 #ifndef ROOT_TVirtualPadPainter
20 #ifndef ROOT_TGLFontmanager
23 #ifndef ROOT_TGLPadUtils
43 std::vector<Double_t>
fVs;
55 template<
class Char_t>
Color_t GetFillColor() const
Delegate to gVirtualX.
void SelectDrawable(Int_t device)
For gVirtualX this means select pixmap (or window) and all subsequent drawings will go into this pixm...
void SetTextColor(Color_t tcolor)
Delegate to gVirtualX.
Rgl::Pad::PolygonStippleSet fSSet
void LockPainter()
Locked state of painter means, that GL context can be invalid, so no GL calls can be executed...
void DrawPolygonWithGradient(Int_t n, const Double_t *x, const Double_t *y)
At the moment I assume both linear and radial gradients will work the same way - using a stencil buff...
Int_t CreateDrawable(UInt_t w, UInt_t h)
Not required at the moment.
void DrawPolyLine(Int_t n, const Double_t *x, const Double_t *y)
Draw poly-line in user coordinates.
void SetTextSize(Float_t tsize)
Delegate to gVirtualX.
void ClearDrawable()
Not required at the moment.
Rgl::Pad::Tesselator fTess
void SetLineColor(Color_t lcolor)
Delegate to gVirtualX.
void DrawLineNDC(Double_t u1, Double_t v1, Double_t u2, Double_t v2)
Draw line segment in NDC coordinates.
void DrawText(Double_t x, Double_t y, const char *text, ETextMode mode)
Draw text.
Width_t GetLineWidth() const
Delegate to gVirtualX.
Bool_t IsTransparent() const
Delegate to gVirtualX.
Define a radial color gradient.
void DrawPolyLineNDC(Int_t n, const Double_t *u, const Double_t *v)
Poly line in NDC.
void DrawGradient(const TLinearGradient *gradient, Int_t n, const Double_t *x, const Double_t *y)
void SetTextSizePixels(Int_t npixels)
Delegate to gVirtualX.
void InvalidateCS()
When TPad::Range for gPad is called, projection must be changed in OpenGL.
static const double x2[5]
#define ClassDef(name, id)
void DrawBox(Double_t x1, Double_t y1, Double_t x2, Double_t y2, EBoxMode mode)
Draw filled or hollow box.
Rgl::Pad::MarkerPainter fMarker
std::vector< TPoint > fPoly
Short_t GetTextAlign() const
Delegate to gVirtualX.
void RestoreViewport()
Restore the saved viewport.
TVirtualPad is an abstract base class for the Pad and Canvas classes.
void DrawPolyMarker()
Poly-marker.
void CopyDrawable(Int_t id, Int_t px, Int_t py)
Not required at the moment.
void DrawPixels(const unsigned char *pixelData, UInt_t width, UInt_t height, Int_t dstX, Int_t dstY, Bool_t enableBlending)
void RestoreProjectionMatrix() const
Restore the projection matrix.
Float_t GetTextSize() const
Delegate to gVirtualX.
"Delegating" part of TGLPadPainter.
void DrawFillArea(Int_t n, const Double_t *x, const Double_t *y)
Draw tesselated polygon (probably, outline only).
void SaveViewport()
Extract and save the current viewport.
Color_t GetTextColor() const
Delegate to gVirtualX.
Rgl::Pad::GLLimits fLimits
void SetFillStyle(Style_t fstyle)
Delegate to gVirtualX.
void SaveModelviewMatrix() const
Save the modelview matrix.
void RestoreModelviewMatrix() const
Restore the modelview matrix.
void SetTextAlign(Short_t align)
Delegate to gVirtualX.
std::vector< Double_t > fVs
void DrawTextNDC(Double_t x, Double_t y, const char *text, ETextMode mode)
Draw text in NDC.
Define a linear color gradient.
void SetFillColor(Color_t fcolor)
Delegate to gVirtualX.
void SetTextAngle(Float_t tangle)
Delegate to gVirtualX.
static const double x1[5]
void SaveProjectionMatrix() const
Save the projection matrix.
void InitPainter()
Init gl-pad painter:
TGLPadPainter & operator=(const TGLPadPainter &rhs)
void SaveImage(TVirtualPad *pad, const char *fileName, Int_t type) const
Using TImage save frame-buffer contents as a picture.
void DrawLine(Double_t x1, Double_t y1, Double_t x2, Double_t y2)
Draw line segment.
Style_t GetLineStyle() const
Delegate to gVirtualX.
Font_t GetTextFont() const
Delegate to gVirtualX.
void DrawTextHelper(Double_t x, Double_t y, const Char_t *text, ETextMode mode)
A FreeType GL font manager.
Float_t GetTextAngle() const
Delegate to gVirtualX.
void SetTextFont(Font_t tfont)
Delegate to gVirtualX.
void SetLineStyle(Style_t lstyle)
Delegate to gVirtualX.
void SetLineWidth(Width_t lwidth)
Delegate to gVirtualX.
Style_t GetFillStyle() const
Delegate to gVirtualX.
A wrapper class for FTFont.
void DestroyDrawable()
Not required at the moment.
Color_t GetLineColor() const
Delegate to gVirtualX.
void SetOpacity(Int_t percent)
Delegate to gVirtualX.
Float_t GetTextMagnitude() const
Delegate to gVirtualX.
To make it possible to use GL for 2D graphic in a TPad/TCanvas.
void DrawTesselation(Int_t n, const Double_t *x, const Double_t *y)