Implements painting of TH2 with "SURF" option.
Definition at line 25 of file TGLSurfacePainter.h.
Classes | |
| struct | Projection_t |
Public Types | |
| enum | ECutAxisID { kXAxis = 7 , kYAxis = 8 , kZAxis = 9 } |
Public Member Functions | |
| TGLSurfacePainter (TH1 *hist, TGLPlotCamera *camera, TGLPlotCoordinates *coord) | |
| Constructor. | |
| void | AddOption (const TString &stringOption) override |
| Additional options for surfaces. | |
| Bool_t | CutAxisSelected () const |
| Bool_t | GetDrawAxes () |
| char * | GetPlotInfo (Int_t px, Int_t py) override |
| Coords for point on surface under cursor. | |
| Bool_t | InitGeometry () override |
| Set mesh, normals. | |
| 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 |
| User's moving mouse cursor, with middle mouse button pressed (for pad). | |
| 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 |
| Remove all profiles/sections. | |
| 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 right mouse button (in a 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 | |
| enum | ESurfaceType { kSurf , kSurf1 , kSurf2 , kSurf3 , kSurf4 , kSurf5 } |
Private Member Functions | |
| void | ClampZ (Double_t &zVal) const |
| Clamp z value. | |
| void | DeInitGL () const override |
| Initialize some OpenGL state variables. | |
| void | DrawContoursProjection () const |
| Draw flat textured surface. | |
| void | DrawPalette () const |
| Draw. | |
| void | DrawPaletteAxis () const override |
| Draw. Palette. Axis. | |
| void | DrawPlot () const override |
| Draw surf/surf1/surf2/surf4. | |
| void | DrawProjections () const |
| Draw projections. | |
| void | DrawSectionXOY () const override |
| Draw section Z. | |
| void | DrawSectionXOZ () const override |
| Draw section X. | |
| void | DrawSectionYOZ () const override |
| Draw section Y. | |
| void | GenTexMap () const |
| Find texture coordinates. | |
| Bool_t | HasProjections () const |
| Any projection exists. | |
| Bool_t | HasSections () const |
| Any section exists. | |
| Bool_t | InitGeometryCartesian () |
| Find bin ranges for X and Y axes, axes ranges for X, Y and Z. | |
| Bool_t | InitGeometryCylindrical () |
| Find bin ranges for X and Y axes, axes ranges for X, Y and Z. | |
| Bool_t | InitGeometryPolar () |
| Find bin ranges for X and Y axes, axes ranges for X, Y and Z. | |
| Bool_t | InitGeometrySpherical () |
| Find bin ranges for X and Y axes, axes ranges for X, Y and Z. | |
| void | InitGL () const override |
| Initialize some OpenGL state variables. | |
| Bool_t | PreparePalette () const |
| Generate palette. | |
| void | SetNormals () |
| One normal per vertex; this normal is average of neighbouring triangles normals. | |
| void | SetSurfaceColor () const |
| Set color for surface. | |
| Bool_t | Textured () const |
| Checks, if surf requires texture. | |
| char * | WindowPointTo3DPoint (Int_t px, Int_t py) const |
| Find 3d coords using mouse cursor coords. | |
Private Attributes | |
| TGL2DArray< TGLVector3 > | fAverageNormals |
| std::vector< Double_t > | fColorLevels |
| TGL2DArray< std::pair< TGLVector3, TGLVector3 > > | fFaceNormals |
| TGL2DArray< TGLVertex3 > | fMesh |
| Rgl::Range_t | fMinMaxVal |
| TString | fObjectInfo |
| const TColor * | fPadColor |
| TGLLevelPalette | fPalette |
| Projection_t | fProj |
| Bool_t | fSectionPass |
| TGL2DArray< Double_t > | fTexMap |
| ESurfaceType | fType |
| Bool_t | fUpdateTexMap |
| std::list< Projection_t > | fXOYProj |
| std::list< Projection_t > | fXOZProj |
| std::list< Projection_t > | fYOZProj |
Static Private Attributes | |
| static TRandom * | fgRandom = new TRandom(0) |
|
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.
|
private |
| Enumerator | |
|---|---|
| kSurf | |
| kSurf1 | |
| kSurf2 | |
| kSurf3 | |
| kSurf4 | |
| kSurf5 | |
Definition at line 27 of file TGLSurfacePainter.h.
| TGLSurfacePainter::TGLSurfacePainter | ( | TH1 * | hist, |
| TGLPlotCamera * | camera, | ||
| TGLPlotCoordinates * | coord ) |
Constructor.
Definition at line 53 of file TGLSurfacePainter.cxx.
|
overridevirtual |
Additional options for surfaces.
Implements TGLPlotPainter.
Definition at line 155 of file TGLSurfacePainter.cxx.
|
private |
Clamp z value.
Definition at line 1058 of file TGLSurfacePainter.cxx.
|
static |
|
static |
|
inlinestaticconstexpr |
Definition at line 111 of file TGLSurfacePainter.h.
|
protectedvirtualinherited |
Definition at line 564 of file TGLPlotPainter.cxx.
|
inlineinherited |
Definition at line 268 of file TGLPlotPainter.h.
|
inlinestatic |
Definition at line 111 of file TGLSurfacePainter.h.
|
overrideprivatevirtual |
Initialize some OpenGL state variables.
Implements TGLPlotPainter.
Definition at line 244 of file TGLSurfacePainter.cxx.
|
private |
Draw flat textured surface.
Definition at line 1176 of file TGLSurfacePainter.cxx.
|
private |
Draw.
Palette. Originally, fCamera was never null. It can be a null now because of gl-viewer.
Definition at line 1231 of file TGLSurfacePainter.cxx.
|
overrideprivatevirtual |
Draw. Palette. Axis.
Reimplemented from TGLPlotPainter.
Definition at line 1249 of file TGLSurfacePainter.cxx.
|
overrideprivatevirtual |
Draw surf/surf1/surf2/surf4.
Implements TGLPlotPainter.
Definition at line 325 of file TGLSurfacePainter.cxx.
|
private |
Draw projections.
Definition at line 773 of file TGLSurfacePainter.cxx.
|
protectedinherited |
Draw sections (if any).
Definition at line 440 of file TGLPlotPainter.cxx.
|
overrideprivatevirtual |
|
overrideprivatevirtual |
|
overrideprivatevirtual |
|
private |
Find texture coordinates.
Definition at line 1155 of file TGLSurfacePainter.cxx.
|
inlineinherited |
Definition at line 273 of file TGLPlotPainter.h.
|
protectedinherited |
Get pad color.
Definition at line 360 of file TGLPlotPainter.cxx.
Coords for point on surface under cursor.
Implements TVirtualGLPainter.
Definition at line 64 of file TGLSurfacePainter.cxx.
|
private |
Any projection exists.
Definition at line 1221 of file TGLSurfacePainter.cxx.
|
private |
Any section exists.
Definition at line 1212 of file TGLSurfacePainter.cxx.
|
overridevirtual |
|
private |
Find bin ranges for X and Y axes, axes ranges for X, Y and Z.
Function returns false, if logarithmic scale for some axis was requested, but we cannot find correct range.
Definition at line 490 of file TGLSurfacePainter.cxx.
|
private |
Find bin ranges for X and Y axes, axes ranges for X, Y and Z.
Function returns false, if logarithmic scale for some axis was requested, but we cannot find correct range.
Definition at line 625 of file TGLSurfacePainter.cxx.
|
private |
Find bin ranges for X and Y axes, axes ranges for X, Y and Z.
Function returns false, if logarithmic scale for some axis was requested, but we cannot find correct range.
Definition at line 558 of file TGLSurfacePainter.cxx.
|
private |
Find bin ranges for X and Y axes, axes ranges for X, Y and Z.
Function returns false, if logarithmic scale for some axis was requested, but we cannot find correct range.
Definition at line 698 of file TGLSurfacePainter.cxx.
|
overrideprivatevirtual |
Initialize some OpenGL state variables.
Implements TGLPlotPainter.
Definition at line 232 of file TGLSurfacePainter.cxx.
|
inherited |
Selection must be updated.
Definition at line 352 of file TGLPlotPainter.cxx.
|
inlineoverridevirtual |
Reimplemented from TGLPlotPainter.
Definition at line 111 of file TGLSurfacePainter.h.
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.
User's moving mouse cursor, with middle mouse button pressed (for pad).
Calculate 3d shift related to 2d mouse movement.
Implements TVirtualGLPainter.
Definition at line 112 of file TGLSurfacePainter.cxx.
Read color buffer content to find selected object.
Implements TVirtualGLPainter.
Definition at line 271 of file TGLPlotPainter.cxx.
|
private |
Generate palette.
Definition at line 1126 of file TGLSurfacePainter.cxx.
|
protectedinherited |
Generate PS using gl2ps.
Definition at line 231 of file TGLPlotPainter.cxx.
Remove all profiles/sections.
Implements TGLPlotPainter.
Definition at line 191 of file TGLSurfacePainter.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.
|
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.
|
private |
One normal per vertex; this normal is average of neighbouring triangles normals.
Definition at line 259 of file TGLSurfacePainter.cxx.
|
inherited |
Used in a pad.
Definition at line 336 of file TGLPlotPainter.cxx.
|
inlineinherited |
Definition at line 232 of file TGLPlotPainter.h.
|
private |
Set color for surface.
Definition at line 308 of file TGLSurfacePainter.cxx.
User clicks right mouse button (in a pad).
Implements TGLPlotPainter.
Definition at line 100 of file TGLSurfacePainter.cxx.
|
overridevirtual |
Reimplemented from TGLPlotPainter.
|
inline |
Definition at line 111 of file TGLSurfacePainter.h.
|
private |
Checks, if surf requires texture.
Definition at line 1195 of file TGLSurfacePainter.cxx.
Find 3d coords using mouse cursor coords.
Definition at line 1079 of file TGLSurfacePainter.cxx.
|
private |
Definition at line 41 of file TGLSurfacePainter.h.
|
protectedinherited |
Definition at line 207 of file TGLPlotPainter.h.
|
protectedinherited |
Definition at line 208 of file TGLPlotPainter.h.
|
protectedinherited |
Definition at line 197 of file TGLPlotPainter.h.
|
mutableprivate |
Definition at line 58 of file TGLSurfacePainter.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.
|
private |
Definition at line 40 of file TGLSurfacePainter.h.
Definition at line 109 of file TGLSurfacePainter.h.
|
protectedinherited |
Definition at line 211 of file TGLPlotPainter.h.
|
protectedinherited |
Definition at line 191 of file TGLPlotPainter.h.
|
private |
Definition at line 38 of file TGLSurfacePainter.h.
|
private |
Definition at line 59 of file TGLSurfacePainter.h.
|
protectedinherited |
Definition at line 203 of file TGLPlotPainter.h.
|
mutableprivate |
Definition at line 43 of file TGLSurfacePainter.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.
|
mutableprivate |
Definition at line 57 of file TGLSurfacePainter.h.
|
protectedinherited |
Definition at line 187 of file TGLPlotPainter.h.
|
mutableprivate |
Definition at line 51 of file TGLSurfacePainter.h.
|
private |
Definition at line 61 of file TGLSurfacePainter.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.
|
mutableprivate |
Definition at line 39 of file TGLSurfacePainter.h.
|
mutableprivate |
Definition at line 36 of file TGLSurfacePainter.h.
|
protectedinherited |
Definition at line 200 of file TGLPlotPainter.h.
|
mutableprivate |
Definition at line 62 of file TGLSurfacePainter.h.
|
protectedinherited |
Definition at line 192 of file TGLPlotPainter.h.
|
mutableprivate |
Definition at line 55 of file TGLSurfacePainter.h.
|
mutableprotectedinherited |
Definition at line 206 of file TGLPlotPainter.h.
|
mutableprivate |
Definition at line 53 of file TGLSurfacePainter.h.
|
mutableprotectedinherited |
Definition at line 204 of file TGLPlotPainter.h.
|
protectedinherited |
Definition at line 193 of file TGLPlotPainter.h.
|
mutableprivate |
Definition at line 54 of file TGLSurfacePainter.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.