Paint TH2Poly.
Definition at line 14 of file TGLH2PolyPainter.h.
Public Types | |
| enum | ECutAxisID { kXAxis = 7 , kYAxis = 8 , kZAxis = 9 } |
Public Member Functions | |
| TGLH2PolyPainter (TH1 *hist, TGLPlotCamera *camera, TGLPlotCoordinates *coord) | |
| Ctor. | |
| void | AddOption (const TString &stringOption) override |
| No additional options. | |
| Bool_t | CutAxisSelected () const |
| Bool_t | GetDrawAxes () |
| char * | GetPlotInfo (Int_t px, Int_t py) override |
| Show number of bin and bin contents, if bin is under the cursor. | |
| Bool_t | InitGeometry () override |
| Tesselate polygons, if not done yet. | |
| void | InvalidateSelection () |
| Selection must be updated. | |
| TClass * | IsA () const override |
| void | Paint () override |
| Draw lego/surf/whatever you can. | |
| void | Pan (Int_t px, Int_t py) override |
| Mouse events handler. | |
| Bool_t | PlotSelected (Int_t px, Int_t py) override |
| Read color buffer content to find selected object. | |
| void | ProcessEvent (Int_t event, Int_t px, Int_t py) override |
| No events. | |
| const TGLPlotBox & | RefBackBox () const |
| void | SetDrawAxes (Bool_t s) |
| void | SetDrawBackBox (Bool_t b) |
| void | SetDrawFrontBox (Bool_t b) |
| virtual void | SetFrameColor (const TColor *frameColor) |
| Set plot's back box color. | |
| void | SetPadColor (const TColor *color) |
| Used in a pad. | |
| void | SetPhysicalShapeColor (const Float_t *rgba) |
| void | StartPan (Int_t px, Int_t py) override |
| User clicks on a lego with middle mouse button (middle for pad). | |
| void | Streamer (TBuffer &) override |
| void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
Static Public Member Functions | |
| static TClass * | Class () |
| static const char * | Class_Name () |
| static constexpr Version_t | Class_Version () |
| static const char * | DeclFileName () |
Protected Types | |
| enum | ESelectionBase { kHighColorSelectionBase = 7 , kTrueColorSelectionBase = 10 } |
Protected Member Functions | |
| virtual void | ClearBuffers () const |
| void | DrawSections () const |
| Draw sections (if any). | |
| const TColor * | GetPadColor () const |
| Get pad color. | |
| void | MoveSection (Int_t px, Int_t py) |
| Create dynamic profile using selected plane. | |
| void | PrintPlot () const |
| Generate PS using gl2ps. | |
| void | RestoreModelviewMatrix () const |
| void | RestoreProjectionMatrix () const |
| void | SaveModelviewMatrix () const |
| void | SaveProjectionMatrix () const |
Private Types | |
| typedef std::list< Rgl::Pad::Tesselation_t >::const_iterator | CIter_t |
Private Member Functions | |
| Bool_t | BuildTesselation (Rgl::Pad::Tesselator &tess, const TGraph *g, Double_t z) |
| Tesselate a polygon described by TGraph. | |
| Bool_t | BuildTesselation (Rgl::Pad::Tesselator &tess, const TMultiGraph *mg, Double_t z) |
| Iterate over multi graph contents and tesselate nested TGraphs. | |
| Bool_t | CacheGeometry () |
| Cache all data for TH2Poly object. | |
| Bool_t | ClampZ (Double_t &zVal) const |
| Clamp z value. | |
| void | DeInitGL () const override |
| 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. | |
| void | DrawCaps () const |
| Caps on bins. | |
| void | DrawExtrusion () const |
| Extruded part of bins. | |
| void | DrawExtrusion (const TGraph *polygon, Double_t zMin, Double_t zMax, Int_t nBin) const |
| Extrude polygon, described by TGraph. | |
| void | DrawExtrusion (const TMultiGraph *polygon, Double_t zMin, Double_t zMax, Int_t nBin) const |
| Multigraph contains a list of graphs, draw them. | |
| void | DrawPalette () const |
| Not yet. | |
| void | DrawPaletteAxis () const override |
| Not yet. | |
| void | DrawPlot () const override |
| Draw extruded polygons and plot's frame. | |
| void | DrawSectionXOY () const override |
| No sections. | |
| void | DrawSectionXOZ () const override |
| No sections. | |
| void | DrawSectionYOZ () const override |
| No sections. | |
| 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 | InitGL () const override |
| Initialize some gl state variables. | |
| void | MakePolygonCCW () const |
| Code taken from the original TH2Poly. | |
| void | SetBinColor (Int_t bin) const |
| Set bin's color. | |
| Bool_t | UpdateGeometry () |
| Update cap's z-coordinates for all caps. | |
Private Attributes | |
| std::vector< Int_t > | fBinColors |
| TString | fBinInfo |
| std::list< Rgl::Pad::Tesselation_t > | fCaps |
| const TColor * | fPadColor |
| std::vector< Double_t > | fPolygon |
| Bool_t | fZLog |
| Double_t | fZMin |
#include <TGLH2PolyPainter.h>
|
private |
Definition at line 37 of file TGLH2PolyPainter.h.
|
inherited |
| Enumerator | |
|---|---|
| kXAxis | |
| kYAxis | |
| kZAxis | |
Definition at line 262 of file TGLPlotPainter.h.
|
protectedinherited |
| Enumerator | |
|---|---|
| kHighColorSelectionBase | |
| kTrueColorSelectionBase | |
Definition at line 213 of file TGLPlotPainter.h.
| TGLH2PolyPainter::TGLH2PolyPainter | ( | TH1 * | hist, |
| TGLPlotCamera * | camera, | ||
| TGLPlotCoordinates * | coord ) |
Ctor.
Definition at line 28 of file TGLH2PolyPainter.cxx.
|
overridevirtual |
No additional options.
Implements TGLPlotPainter.
Definition at line 152 of file TGLH2PolyPainter.cxx.
|
private |
Tesselate a polygon described by TGraph.
Definition at line 444 of file TGLH2PolyPainter.cxx.
|
private |
Iterate over multi graph contents and tesselate nested TGraphs.
Definition at line 482 of file TGLH2PolyPainter.cxx.
|
private |
Cache all data for TH2Poly object.
Definition at line 390 of file TGLH2PolyPainter.cxx.
Clamp z value.
Definition at line 645 of file TGLH2PolyPainter.cxx.
|
static |
|
static |
|
inlinestaticconstexpr |
Definition at line 70 of file TGLH2PolyPainter.h.
|
protectedvirtualinherited |
Definition at line 564 of file TGLPlotPainter.cxx.
|
inlineinherited |
Definition at line 268 of file TGLPlotPainter.h.
|
inlinestatic |
Definition at line 70 of file TGLH2PolyPainter.h.
|
overrideprivatevirtual |
Return some gl states to original values.
Implements TGLPlotPainter.
Definition at line 181 of file TGLH2PolyPainter.cxx.
Draw a cap on top of a bin.
Definition at line 342 of file TGLH2PolyPainter.cxx.
|
private |
Caps on bins.
Definition at line 308 of file TGLH2PolyPainter.cxx.
|
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 216 of file TGLH2PolyPainter.cxx.
|
private |
Extrude polygon, described by TGraph.
Definition at line 239 of file TGLH2PolyPainter.cxx.
|
private |
Multigraph contains a list of graphs, draw them.
Definition at line 298 of file TGLH2PolyPainter.cxx.
|
private |
Not yet.
Definition at line 599 of file TGLH2PolyPainter.cxx.
|
overrideprivatevirtual |
|
overrideprivatevirtual |
Draw extruded polygons and plot's frame.
Implements TGLPlotPainter.
Definition at line 200 of file TGLH2PolyPainter.cxx.
|
protectedinherited |
Draw sections (if any).
Definition at line 440 of file TGLPlotPainter.cxx.
|
overrideprivatevirtual |
|
overrideprivatevirtual |
|
overrideprivatevirtual |
|
private |
Since I probably have to re-orient polygon, I need a temporary polygon.
Definition at line 613 of file TGLH2PolyPainter.cxx.
|
inlineinherited |
Definition at line 273 of file TGLPlotPainter.h.
|
protectedinherited |
Get pad color.
Definition at line 360 of file TGLPlotPainter.cxx.
Show number of bin and bin contents, if bin is under the cursor.
Implements TVirtualGLPainter.
Definition at line 42 of file TGLH2PolyPainter.cxx.
|
overridevirtual |
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 69 of file TGLH2PolyPainter.cxx.
|
overrideprivatevirtual |
Initialize some gl state variables.
Implements TGLPlotPainter.
Definition at line 166 of file TGLH2PolyPainter.cxx.
|
inherited |
Selection must be updated.
Definition at line 352 of file TGLPlotPainter.cxx.
|
inlineoverridevirtual |
Reimplemented from TVirtualGLPainter.
Definition at line 70 of file TGLH2PolyPainter.h.
|
private |
Code taken from the original TH2Poly.
Definition at line 632 of file TGLH2PolyPainter.cxx.
Create dynamic profile using selected plane.
Definition at line 368 of file TGLPlotPainter.cxx.
|
overridevirtualinherited |
Draw lego/surf/whatever you can.
Implements TVirtualGLPainter.
Definition at line 149 of file TGLPlotPainter.cxx.
Mouse events handler.
Implements TVirtualGLPainter.
Definition at line 113 of file TGLH2PolyPainter.cxx.
Read color buffer content to find selected object.
Implements TVirtualGLPainter.
Definition at line 271 of file TGLPlotPainter.cxx.
|
protectedinherited |
Generate PS using gl2ps.
Definition at line 231 of file TGLPlotPainter.cxx.
|
inlineinherited |
Definition at line 231 of file TGLPlotPainter.h.
|
protectedinherited |
Definition at line 601 of file TGLPlotPainter.cxx.
|
protectedinherited |
Definition at line 609 of file TGLPlotPainter.cxx.
|
protectedinherited |
Definition at line 585 of file TGLPlotPainter.cxx.
|
protectedinherited |
Definition at line 593 of file TGLPlotPainter.cxx.
|
private |
Set bin's color.
Definition at line 555 of file TGLH2PolyPainter.cxx.
|
inlineinherited |
Definition at line 272 of file TGLPlotPainter.h.
|
inlineinherited |
Definition at line 271 of file TGLPlotPainter.h.
|
inlineinherited |
Definition at line 270 of file TGLPlotPainter.h.
|
virtualinherited |
Set plot's back box color.
Definition at line 344 of file TGLPlotPainter.cxx.
|
inherited |
Used in a pad.
Definition at line 336 of file TGLPlotPainter.cxx.
|
inlineinherited |
Definition at line 232 of file TGLPlotPainter.h.
User clicks on a lego with middle mouse button (middle for pad).
Implements TGLPlotPainter.
Definition at line 102 of file TGLH2PolyPainter.cxx.
|
overridevirtual |
Reimplemented from TVirtualGLPainter.
|
inline |
Definition at line 70 of file TGLH2PolyPainter.h.
|
private |
Update cap's z-coordinates for all caps.
Here no pointers are checked, this was already done by InitGeometry.
Definition at line 509 of file TGLH2PolyPainter.cxx.
|
protectedinherited |
Definition at line 207 of file TGLPlotPainter.h.
|
private |
Definition at line 62 of file TGLH2PolyPainter.h.
|
private |
Definition at line 60 of file TGLH2PolyPainter.h.
|
protectedinherited |
Definition at line 208 of file TGLPlotPainter.h.
|
protectedinherited |
Definition at line 197 of file TGLPlotPainter.h.
|
private |
Definition at line 65 of file TGLH2PolyPainter.h.
|
protectedinherited |
Definition at line 196 of file TGLPlotPainter.h.
|
protectedinherited |
Definition at line 220 of file TGLPlotPainter.h.
|
mutableprotectedinherited |
Definition at line 219 of file TGLPlotPainter.h.
|
protectedinherited |
Definition at line 211 of file TGLPlotPainter.h.
|
protectedinherited |
Definition at line 191 of file TGLPlotPainter.h.
|
protectedinherited |
Definition at line 203 of file TGLPlotPainter.h.
|
privateinherited |
Definition at line 184 of file TGLPlotPainter.h.
|
protectedinherited |
Definition at line 189 of file TGLPlotPainter.h.
|
protectedinherited |
Definition at line 190 of file TGLPlotPainter.h.
|
protectedinherited |
Definition at line 187 of file TGLPlotPainter.h.
|
mutableprivate |
Definition at line 64 of file TGLH2PolyPainter.h.
|
protectedinherited |
Definition at line 202 of file TGLPlotPainter.h.
|
protectedinherited |
Definition at line 198 of file TGLPlotPainter.h.
|
protectedinherited |
Definition at line 218 of file TGLPlotPainter.h.
|
protectedinherited |
Definition at line 201 of file TGLPlotPainter.h.
|
protectedinherited |
Definition at line 200 of file TGLPlotPainter.h.
|
protectedinherited |
Definition at line 192 of file TGLPlotPainter.h.
|
mutableprotectedinherited |
Definition at line 206 of file TGLPlotPainter.h.
|
mutableprotectedinherited |
Definition at line 204 of file TGLPlotPainter.h.
|
protectedinherited |
Definition at line 193 of file TGLPlotPainter.h.
|
mutableprotectedinherited |
Definition at line 205 of file TGLPlotPainter.h.
|
protectedinherited |
Definition at line 194 of file TGLPlotPainter.h.
|
protectedinherited |
Definition at line 210 of file TGLPlotPainter.h.
|
private |
Definition at line 67 of file TGLH2PolyPainter.h.
|
private |
Definition at line 68 of file TGLH2PolyPainter.h.