1 #ifndef ROOT_TGLH2PolyPainter 2 #define ROOT_TGLH2PolyPainter 37 typedef std::list<Rgl::Pad::Tesselation_t>::const_iterator
CIter_t;
39 void DrawCap(CIter_t cap,
Int_t bin,
bool bottomCap)
const;
65 std::list<Rgl::Pad::Tesselation_t>
fCaps;
Camera for TGLPlotPainter and sub-classes.
char * GetPlotInfo(Int_t px, Int_t py)
Show number of bin and bin contents, if bin is under the cursor.
void DrawPaletteAxis() const
Not yet.
void DrawPlot() const
Draw extruded polygons and plot's frame.
std::vector< Int_t > fBinColors
A TMultiGraph is a collection of TGraph (or derived) objects.
Bool_t ClampZ(Double_t &zVal) const
Clamp z value.
TGLH2PolyPainter(TH1 *hist, TGLPlotCamera *camera, TGLPlotCoordinates *coord)
Ctor.
static constexpr double mg
void MakePolygonCCW() const
Code taken from the original TH2Poly.
Bool_t CacheGeometry()
Cache all data for TH2Poly object.
#define ClassDef(name, id)
void DrawSectionXOZ() const
No sections.
std::list< Rgl::Pad::Tesselation_t >::const_iterator CIter_t
void DrawCaps() const
Caps on bins.
void DrawSectionXOY() const
No sections.
void DeInitGL() const
Return some gl states to original values.
void DrawCap(CIter_t cap, Int_t bin, bool bottomCap) const
Draw a cap on top of a bin.
Bool_t UpdateGeometry()
Update cap's z-coordinates for all caps.
void StartPan(Int_t px, Int_t py)
User clicks on a lego with middle mouse button (middle for pad).
void AddOption(const TString &stringOption)
No additional options.
Bool_t BuildTesselation(Rgl::Pad::Tesselator &tess, const TGraph *g, Double_t z)
Tesselate a polygon described by TGraph.
Helper class for plot-painters holding information about axis ranges, numbers of bins and flags if ce...
void FillTemporaryPolygon(const Double_t *xs, const Double_t *ys, Double_t z, Int_t n) const
Since I probably have to re-orient polygon, I need a temporary polygon.
void Pan(Int_t px, Int_t py)
Mouse events handler.
Base class for plot-painters that provide GL rendering of various 2D and 3D histograms, functions and parametric surfaces.
std::vector< Double_t > fPolygon
Bool_t InitGeometry()
Tesselate polygons, if not done yet.
void DrawSectionYOZ() const
No sections.
you should not use this method at all Int_t Int_t z
void SetBinColor(Int_t bin) const
Set bin's color.
void InitGL() const
Initialize some gl state variables.
void ProcessEvent(Int_t event, Int_t px, Int_t py)
No events.
A Graph is a graphics object made of two arrays X and Y with npoints each.
void DrawExtrusion() const
Extruded part of bins.
std::list< Rgl::Pad::Tesselation_t > fCaps
void DrawPalette() const
Not yet.
static constexpr double g