Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TGLTF3Painter Class Reference

Plot-painter for TF3 functions.

Definition at line 29 of file TGLTF3Painter.h.

Public Member Functions

 TGLTF3Painter (TF3 *fun, TH1 *hist, TGLPlotCamera *camera, TGLPlotCoordinates *coord)
 Constructor.
 
void AddOption (const TString &stringOption) override
 No options for tf3.
 
char * GetPlotInfo (Int_t px, Int_t py) override
 Coords for point on surface under cursor.
 
Bool_t InitGeometry () override
 Create mesh.
 
TClassIsA () const override
 
void Pan (Int_t px, Int_t py) override
 User's moving mouse cursor, with middle mouse button pressed (for pad).
 
void ProcessEvent (Int_t event, Int_t px, Int_t py) override
 Change color scheme.
 
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)
 
- Public Member Functions inherited from TGLPlotPainter
 TGLPlotPainter (TGL5DDataSet *data, TGLPlotCamera *camera, TGLPlotCoordinates *coord)
 TGLPlotPainter's ctor.
 
 TGLPlotPainter (TGLPlotCamera *camera)
 TGLPlotPainter's ctor.
 
 TGLPlotPainter (TH1 *hist, TGLPlotCamera *camera, TGLPlotCoordinates *coord, Bool_t xoySelectable, Bool_t xozSelectable, Bool_t yozSelectable)
 TGLPlotPainter's ctor.
 
Bool_t CutAxisSelected () const
 
Bool_t GetDrawAxes ()
 
void InvalidateSelection ()
 Selection must be updated.
 
void Paint () override
 Draw lego/surf/whatever you can.
 
Bool_t PlotSelected (Int_t px, Int_t py) override
 Read color buffer content to find selected object.
 
const TGLPlotBoxRefBackBox () 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 StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
- Public Member Functions inherited from TVirtualGLPainter
virtual ~TVirtualGLPainter ()
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 

Static Public Member Functions

static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
- Static Public Member Functions inherited from TGLPlotPainter
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
- Static Public Member Functions inherited from TVirtualGLPainter
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 

Private Types

enum  ETF3Style { kDefault , kMaple0 , kMaple1 , kMaple2 }
 

Private Member Functions

void DeInitGL () const override
 Initialize OpenGL state variables.
 
void DrawDefaultPlot () const
 Surface with material properties and lighting.
 
void DrawMaplePlot () const
 Colored surface, without lighting and material properties.
 
void DrawPlot () const override
 Draw mesh.
 
void DrawSectionXOY () const override
 Draw XOY parallel section.
 
void DrawSectionXOZ () const override
 Draw XOZ parallel section.
 
void DrawSectionYOZ () const override
 Draw YOZ parallel section.
 
void DrawToSelectionBuffer () const
 Draw triangles, no normals, no lighting.
 
Bool_t HasSections () const
 Any section exists.
 
void InitGL () const override
 Initialize OpenGL state variables.
 
void SetSurfaceColor () const
 Set color for surface.
 

Private Attributes

TF3fF3
 
Rgl::Mc::TIsoMesh< Double_tfMesh
 
ETF3Style fStyle
 
TGLTH3Slice fXOYSlice
 
TGLTH3Slice fXOZSlice
 
TGLTH3Slice fYOZSlice
 

Additional Inherited Members

- Public Types inherited from TGLPlotPainter
enum  ECutAxisID { kXAxis = 7 , kYAxis = 8 , kZAxis = 9 }
 
- Protected Types inherited from TGLPlotPainter
enum  ESelectionBase { kHighColorSelectionBase = 7 , kTrueColorSelectionBase = 10 }
 
- Protected Member Functions inherited from TGLPlotPainter
virtual void ClearBuffers () const
 
virtual void DrawPaletteAxis () const
 Draw. Palette. Axis.
 
void DrawSections () const
 Draw sections (if any).
 
const TColorGetPadColor () 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
 
- Protected Attributes inherited from TGLPlotPainter
TGLPlotBox fBackBox
 
TGLBoxCut fBoxCut
 
TGLPlotCamerafCamera
 
TGLPlotCoordinatesfCoord
 
Bool_t fDrawAxes
 
Bool_t fDrawPalette
 
Bool_t fHighColor
 
TH1fHist
 
TPoint fMousePosition
 
Double_t fPadPhi
 
Double_t fPadTheta
 
const Float_tfPhysicalShapeColor
 
Int_t fSelectedPart
 
TGLSelectionBuffer fSelection
 
Int_t fSelectionBase
 
Bool_t fSelectionPass
 
Bool_t fUpdateSelection
 
TAxisfXAxis
 
Double_t fXOYSectionPos
 
Double_t fXOZSectionPos
 
TAxisfYAxis
 
Double_t fYOZSectionPos
 
TAxisfZAxis
 
std::vector< Double_tfZLevels
 

#include <TGLTF3Painter.h>

Inheritance diagram for TGLTF3Painter:
[legend]

Member Enumeration Documentation

◆ ETF3Style

Enumerator
kDefault 
kMaple0 
kMaple1 
kMaple2 

Definition at line 31 of file TGLTF3Painter.h.

Constructor & Destructor Documentation

◆ TGLTF3Painter()

TGLTF3Painter::TGLTF3Painter ( TF3 fun,
TH1 hist,
TGLPlotCamera camera,
TGLPlotCoordinates coord 
)

Constructor.

Definition at line 39 of file TGLTF3Painter.cxx.

Member Function Documentation

◆ AddOption()

void TGLTF3Painter::AddOption ( const TString stringOption)
overridevirtual

No options for tf3.

Implements TGLPlotPainter.

Definition at line 154 of file TGLTF3Painter.cxx.

◆ Class()

static TClass * TGLTF3Painter::Class ( )
static
Returns
TClass describing this class

◆ Class_Name()

static const char * TGLTF3Painter::Class_Name ( )
static
Returns
Name of this class

◆ Class_Version()

static constexpr Version_t TGLTF3Painter::Class_Version ( )
inlinestaticconstexpr
Returns
Version of this class

Definition at line 75 of file TGLTF3Painter.h.

◆ DeclFileName()

static const char * TGLTF3Painter::DeclFileName ( )
inlinestatic
Returns
Name of the file containing the class declaration

Definition at line 75 of file TGLTF3Painter.h.

◆ DeInitGL()

void TGLTF3Painter::DeInitGL ( ) const
overrideprivatevirtual

Initialize OpenGL state variables.

Implements TGLPlotPainter.

Definition at line 204 of file TGLTF3Painter.cxx.

◆ DrawDefaultPlot()

void TGLTF3Painter::DrawDefaultPlot ( ) const
private

Surface with material properties and lighting.

Definition at line 229 of file TGLTF3Painter.cxx.

◆ DrawMaplePlot()

void TGLTF3Painter::DrawMaplePlot ( ) const
private

Colored surface, without lighting and material properties.

Definition at line 255 of file TGLTF3Painter.cxx.

◆ DrawPlot()

void TGLTF3Painter::DrawPlot ( ) const
overrideprivatevirtual

Draw mesh.

Implements TGLPlotPainter.

Definition at line 300 of file TGLTF3Painter.cxx.

◆ DrawSectionXOY()

void TGLTF3Painter::DrawSectionXOY ( ) const
overrideprivatevirtual

Draw XOY parallel section.

Implements TGLPlotPainter.

Definition at line 372 of file TGLTF3Painter.cxx.

◆ DrawSectionXOZ()

void TGLTF3Painter::DrawSectionXOZ ( ) const
overrideprivatevirtual

Draw XOZ parallel section.

Implements TGLPlotPainter.

Definition at line 352 of file TGLTF3Painter.cxx.

◆ DrawSectionYOZ()

void TGLTF3Painter::DrawSectionYOZ ( ) const
overrideprivatevirtual

Draw YOZ parallel section.

Implements TGLPlotPainter.

Definition at line 362 of file TGLTF3Painter.cxx.

◆ DrawToSelectionBuffer()

void TGLTF3Painter::DrawToSelectionBuffer ( ) const
private

Draw triangles, no normals, no lighting.

Definition at line 216 of file TGLTF3Painter.cxx.

◆ GetPlotInfo()

char * TGLTF3Painter::GetPlotInfo ( Int_t  px,
Int_t  py 
)
overridevirtual

Coords for point on surface under cursor.

Implements TVirtualGLPainter.

Definition at line 52 of file TGLTF3Painter.cxx.

◆ HasSections()

Bool_t TGLTF3Painter::HasSections ( ) const
private

Any section exists.

Definition at line 342 of file TGLTF3Painter.cxx.

◆ InitGeometry()

Bool_t TGLTF3Painter::InitGeometry ( )
overridevirtual

Create mesh.

Implements TGLPlotPainter.

Definition at line 61 of file TGLTF3Painter.cxx.

◆ InitGL()

void TGLTF3Painter::InitGL ( ) const
overrideprivatevirtual

Initialize OpenGL state variables.

Implements TGLPlotPainter.

Definition at line 192 of file TGLTF3Painter.cxx.

◆ IsA()

TClass * TGLTF3Painter::IsA ( ) const
inlineoverridevirtual
Returns
TClass describing current object

Reimplemented from TGLPlotPainter.

Definition at line 75 of file TGLTF3Painter.h.

◆ Pan()

void TGLTF3Painter::Pan ( Int_t  px,
Int_t  py 
)
overridevirtual

User's moving mouse cursor, with middle mouse button pressed (for pad).

Calculate 3d shift related to 2d mouse movement. Slicing is disabled (since somebody has broken it).

Implements TVirtualGLPainter.

Definition at line 110 of file TGLTF3Painter.cxx.

◆ ProcessEvent()

void TGLTF3Painter::ProcessEvent ( Int_t  event,
Int_t  px,
Int_t  py 
)
overridevirtual

Change color scheme.

Implements TGLPlotPainter.

Definition at line 161 of file TGLTF3Painter.cxx.

◆ SetSurfaceColor()

void TGLTF3Painter::SetSurfaceColor ( ) const
private

Set color for surface.

Definition at line 323 of file TGLTF3Painter.cxx.

◆ StartPan()

void TGLTF3Painter::StartPan ( Int_t  px,
Int_t  py 
)
overridevirtual

User clicks right mouse button (in a pad).

Implements TGLPlotPainter.

Definition at line 97 of file TGLTF3Painter.cxx.

◆ Streamer()

void TGLTF3Painter::Streamer ( TBuffer )
overridevirtual

Reimplemented from TGLPlotPainter.

◆ StreamerNVirtual()

void TGLTF3Painter::StreamerNVirtual ( TBuffer ClassDef_StreamerNVirtual_b)
inline

Definition at line 75 of file TGLTF3Painter.h.

Member Data Documentation

◆ fF3

TF3* TGLTF3Painter::fF3
private

Definition at line 41 of file TGLTF3Painter.h.

◆ fMesh

Rgl::Mc::TIsoMesh<Double_t> TGLTF3Painter::fMesh
private

Definition at line 40 of file TGLTF3Painter.h.

◆ fStyle

ETF3Style TGLTF3Painter::fStyle
private

Definition at line 38 of file TGLTF3Painter.h.

◆ fXOYSlice

TGLTH3Slice TGLTF3Painter::fXOYSlice
private

Definition at line 45 of file TGLTF3Painter.h.

◆ fXOZSlice

TGLTH3Slice TGLTF3Painter::fXOZSlice
private

Definition at line 43 of file TGLTF3Painter.h.

◆ fYOZSlice

TGLTH3Slice TGLTF3Painter::fYOZSlice
private

Definition at line 44 of file TGLTF3Painter.h.

Libraries for TGLTF3Painter:

The documentation for this class was generated from the following files: