ROOT logo
ROOT » GRAF3D » GL » TGLLegoPainter

class TGLLegoPainter: public TGLPlotPainter


 Plot-painter implementing LEGO rendering of TH2 histograms in
 cartesian, polar, cylindrical and spherical coordinates.

Function Members (Methods)

private:
TGLLegoPainter(const TGLLegoPainter&)
Bool_tClampZ(Double_t& zVal) const
virtual voidDeInitGL() const
voidDrawLegoCartesian() const
voidDrawLegoCylindrical() const
voidDrawLegoPolar() const
voidDrawLegoSpherical() const
voidDrawPalette() const
virtual voidDrawPaletteAxis() const
virtual voidDrawPlot() const
virtual voidDrawSectionXOY() const
virtual voidDrawSectionXOZ() const
virtual voidDrawSectionYOZ() const
Bool_tInitGeometryCartesian()
Bool_tInitGeometryCylindrical()
Bool_tInitGeometryPolar()
Bool_tInitGeometrySpherical()
virtual voidInitGL() const
TGLLegoPainter&operator=(const TGLLegoPainter&)
Bool_tPreparePalette() const
voidSetLegoColor() const

Data Members

public:
enum ELegoType { kColorSimple
kColorLevel
kCylindricBars
};
enum TGLPlotPainter::ESelectionBase { kHighColorSelectionBase
kTrueColorSelectionBase
};
enum TGLPlotPainter::ECutAxisID { kXAxis
kYAxis
kZAxis
};
private:
TStringfBinInfo
vector<Double_t>fColorLevels
vector<pair<double,double> >fCosSinTableX
vector<pair<double,double> >fCosSinTableY
Bool_tfDrawErrors
TGLLegoPainter::ELegoTypefLegoType
pair<double,double>fMinMaxValFor texture coordinates generation.
Double_tfMinZ
TGLLevelPalettefPalette
TGLQuadricfQuadric
vector<Rgl::Range_t>fXEdges
vector<Rgl::Range_t>fYEdges

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

TGLLegoPainter(TH1* hist, TGLPlotCamera* camera, TGLPlotCoordinates* coord)
Ctor.
char * GetPlotInfo(Int_t px, Int_t py)
Obtain bin's info (i, j, value).
Bool_t InitGeometry()
Select method.
Bool_t InitGeometryCartesian()
Geometry for lego in cartesian coords.
Bool_t InitGeometryPolar()
Geometry for lego in polar coords.
Bool_t InitGeometryCylindrical()
Geometry for lego in cylindrical coords.
Bool_t InitGeometrySpherical()
Geometry for lego in spherical coords.
void StartPan(Int_t px, Int_t py)
User clicks on a lego with middle mouse button (middle for pad).
void Pan(Int_t px, Int_t py)
Move lego or section.
void AddOption(const TString& stringOption)
Parse additional options.
void InitGL() const
Initialize some gl state variables.
void DeInitGL() const
Return some gl states to original values.
void DrawPlot() const
Select method corresponding to coordinate system.
void DrawLegoCartesian() const
Lego in cartesian system.
void DrawLegoPolar() const
Lego in polar system.
void DrawLegoCylindrical() const
Lego in cylindrical system.
void DrawLegoSpherical() const
Lego in spherical system.
void SetLegoColor() const
Set lego's color.
void DrawSectionXOZ() const
XOZ plane parallel section.
void DrawSectionYOZ() const
YOZ plane parallel section.
void DrawSectionXOY() const
Empty. No such sections for lego.
void ProcessEvent(Int_t event, Int_t px, Int_t py)
Remove all sections and repaint.
Bool_t ClampZ(Double_t& zVal) const
Clamp z value.
Bool_t PreparePalette() const
Initialize color palette.
void DrawPalette() const
Draw. Palette.
Originally, fCamera was never null.
It can be a null now because of gl-viewer.
void DrawPaletteAxis() const
Draw. Palette. Axis.
TGLLegoPainter(const TGLLegoPainter& )