ROOT
6.07/01
Reference Guide
|
Paint TH2Poly.
Definition at line 20 of file TGLH2PolyPainter.h.
Public Member Functions | |
TGLH2PolyPainter (TH1 *hist, TGLPlotCamera *camera, TGLPlotCoordinates *coord) | |
char * | GetPlotInfo (Int_t px, Int_t py) |
Show number of bin and bin contents, if bin is under the cursor. More... | |
Bool_t | InitGeometry () |
Tesselate polygons, if not done yet. More... | |
void | StartPan (Int_t px, Int_t py) |
User clicks on a lego with middle mouse button (middle for pad). More... | |
void | Pan (Int_t px, Int_t py) |
Mouse events handler. More... | |
void | AddOption (const TString &stringOption) |
No additional options. More... | |
void | ProcessEvent (Int_t event, Int_t px, Int_t py) |
No events. More... | |
Public Member Functions inherited from TGLPlotPainter | |
TGLPlotPainter (TH1 *hist, TGLPlotCamera *camera, TGLPlotCoordinates *coord, Bool_t xoySelectable, Bool_t xozSelectable, Bool_t yozSelectable) | |
TGLPlotPainter (TGL5DDataSet *data, TGLPlotCamera *camera, TGLPlotCoordinates *coord) | |
TGLPlotPainter's ctor. More... | |
TGLPlotPainter (TGLPlotCamera *camera) | |
TGLPlotPainter's ctor. More... | |
const TGLPlotBox & | RefBackBox () const |
void | SetPhysicalShapeColor (const Float_t *rgba) |
virtual void | Paint () |
Draw lego/surf/whatever you can. More... | |
virtual Bool_t | PlotSelected (Int_t px, Int_t py) |
Read color buffer content to find selected object. More... | |
void | SetPadColor (const TColor *color) |
Used in a pad. More... | |
virtual void | SetFrameColor (const TColor *frameColor) |
Set plot's back box color. More... | |
void | InvalidateSelection () |
Selection must be updated. More... | |
Bool_t | CutAxisSelected () const |
void | SetDrawFrontBox (Bool_t b) |
void | SetDrawBackBox (Bool_t b) |
void | SetDrawAxes (Bool_t s) |
Bool_t | GetDrawAxes () |
Public Member Functions inherited from TVirtualGLPainter | |
virtual | ~TVirtualGLPainter () |
ClassDef (TVirtualGLPainter, 0) | |
Private Types | |
typedef std::list < Rgl::Pad::Tesselation_t > ::const_iterator | CIter_t |
Private Member Functions | |
void | InitGL () const |
Initialize some gl state variables. More... | |
void | DeInitGL () const |
Return some gl states to original values. More... | |
void | DrawPlot () const |
Draw extruded polygons and plot's frame. More... | |
void | DrawExtrusion () const |
Extruded part of bins. More... | |
void | DrawExtrusion (const TGraph *polygon, Double_t zMin, Double_t zMax, Int_t nBin) const |
Extrude polygon, described by TGraph. More... | |
void | DrawExtrusion (const TMultiGraph *polygon, Double_t zMin, Double_t zMax, Int_t nBin) const |
Multigraph contains a list of graphs, draw them. More... | |
void | DrawCaps () const |
Caps on bins. More... | |
void | DrawCap (CIter_t cap, Int_t bin) const |
Draw a cap on top of a bin. More... | |
Bool_t | CacheGeometry () |
Cache all data for TH2Poly object. More... | |
Bool_t | BuildTesselation (Rgl::Pad::Tesselator &tess, const TGraph *g, Double_t z) |
Tesselate a polygon described by TGraph. More... | |
Bool_t | BuildTesselation (Rgl::Pad::Tesselator &tess, const TMultiGraph *mg, Double_t z) |
Iterate over multi graph contents and tesselate nested TGraphs. More... | |
Bool_t | UpdateGeometry () |
Update cap's z-coordinates for all caps. More... | |
void | SetBinColor (Int_t bin) const |
Set bin's color. More... | |
void | DrawSectionXOZ () const |
No sections. More... | |
void | DrawSectionYOZ () const |
No sections. More... | |
void | DrawSectionXOY () const |
No sections. More... | |
void | DrawPalette () const |
Not yet. More... | |
void | DrawPaletteAxis () const |
Not yet. More... | |
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. More... | |
void | MakePolygonCCW () const |
Code taken from the original TH2Poly. More... | |
Bool_t | ClampZ (Double_t &zVal) const |
Clamp z value. More... | |
ClassDef (TGLH2PolyPainter, 0) | |
Private Attributes | |
TString | fBinInfo |
std::vector< Int_t > | fBinColors |
std::vector< Double_t > | fPolygon |
std::list < Rgl::Pad::Tesselation_t > | fCaps |
Bool_t | fZLog |
Double_t | fZMin |
#include <TGLH2PolyPainter.h>
|
private |
Definition at line 43 of file TGLH2PolyPainter.h.
TGLH2PolyPainter::TGLH2PolyPainter | ( | TH1 * | hist, |
TGLPlotCamera * | camera, | ||
TGLPlotCoordinates * | coord | ||
) |
No additional options.
Implements TGLPlotPainter.
Definition at line 153 of file TGLH2PolyPainter.cxx.
|
private |
Tesselate a polygon described by TGraph.
Definition at line 425 of file TGLH2PolyPainter.cxx.
Referenced by BuildTesselation(), and CacheGeometry().
|
private |
Iterate over multi graph contents and tesselate nested TGraphs.
Definition at line 463 of file TGLH2PolyPainter.cxx.
|
private |
Cache all data for TH2Poly object.
Definition at line 371 of file TGLH2PolyPainter.cxx.
Referenced by InitGeometry().
Clamp z value.
Definition at line 626 of file TGLH2PolyPainter.cxx.
Referenced by CacheGeometry(), DrawExtrusion(), and UpdateGeometry().
|
private |
|
privatevirtual |
Return some gl states to original values.
Implements TGLPlotPainter.
Definition at line 182 of file TGLH2PolyPainter.cxx.
Draw a cap on top of a bin.
Definition at line 342 of file TGLH2PolyPainter.cxx.
Referenced by DrawCaps().
|
private |
|
private |
Extruded part of bins.
GL_QUADS, GL_QUAD_STRIP - have the same time on my laptop, so I use GL_QUADS and forgot about vertex arrays (can require more memory BTW).
Definition at line 217 of file TGLH2PolyPainter.cxx.
Referenced by DrawExtrusion(), and DrawPlot().
|
private |
Extrude polygon, described by TGraph.
Definition at line 240 of file TGLH2PolyPainter.cxx.
|
private |
Multigraph contains a list of graphs, draw them.
Definition at line 299 of file TGLH2PolyPainter.cxx.
|
private |
Not yet.
Definition at line 580 of file TGLH2PolyPainter.cxx.
|
privatevirtual |
|
privatevirtual |
Draw extruded polygons and plot's frame.
Implements TGLPlotPainter.
Definition at line 201 of file TGLH2PolyPainter.cxx.
|
privatevirtual |
|
privatevirtual |
|
privatevirtual |
|
private |
Since I probably have to re-orient polygon, I need a temporary polygon.
Definition at line 594 of file TGLH2PolyPainter.cxx.
Referenced by BuildTesselation(), and DrawExtrusion().
Show number of bin and bin contents, if bin is under the cursor.
Implements TVirtualGLPainter.
Definition at line 43 of file TGLH2PolyPainter.cxx.
|
virtual |
Tesselate polygons, if not done yet.
All pointers are validated here (and in functions called from here). If any pointer is invalid - zero, or has unexpected type (dynamic_cast fails) - InitGeometry will return false and nothing will be painted later. That's why there are no checks in other functions.
Implements TGLPlotPainter.
Definition at line 70 of file TGLH2PolyPainter.cxx.
|
privatevirtual |
Initialize some gl state variables.
Implements TGLPlotPainter.
Definition at line 167 of file TGLH2PolyPainter.cxx.
|
private |
Code taken from the original TH2Poly.
Definition at line 613 of file TGLH2PolyPainter.cxx.
Referenced by FillTemporaryPolygon().
Mouse events handler.
Implements TVirtualGLPainter.
Definition at line 114 of file TGLH2PolyPainter.cxx.
Set bin's color.
Definition at line 536 of file TGLH2PolyPainter.cxx.
Referenced by DrawCap(), and DrawExtrusion().
User clicks on a lego with middle mouse button (middle for pad).
Implements TGLPlotPainter.
Definition at line 103 of file TGLH2PolyPainter.cxx.
|
private |
Update cap's z-coordinates for all caps.
Here no pointers are checked, this was already done by InitGeometry.
Definition at line 490 of file TGLH2PolyPainter.cxx.
Referenced by InitGeometry().
|
private |
Definition at line 68 of file TGLH2PolyPainter.h.
Referenced by CacheGeometry(), and SetBinColor().
|
private |
Definition at line 66 of file TGLH2PolyPainter.h.
Referenced by GetPlotInfo().
|
private |
Definition at line 71 of file TGLH2PolyPainter.h.
Referenced by BuildTesselation(), CacheGeometry(), DrawCaps(), and UpdateGeometry().
|
mutableprivate |
Definition at line 70 of file TGLH2PolyPainter.h.
Referenced by BuildTesselation(), CacheGeometry(), DrawExtrusion(), FillTemporaryPolygon(), and MakePolygonCCW().
|
private |
Definition at line 73 of file TGLH2PolyPainter.h.
Referenced by InitGeometry().
|
private |
Definition at line 74 of file TGLH2PolyPainter.h.
Referenced by DrawExtrusion(), and InitGeometry().