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

"gliso" option for TH3.

Definition at line 93 of file TGLTF3Painter.h.

Public Types

enum  ECutAxisID { kXAxis = 7 , kYAxis = 8 , kZAxis = 9 }

Public Member Functions

 TGLIsoPainter (TH1 *hist, TGLPlotCamera *camera, TGLPlotCoordinates *coord)
 Constructor.
void AddOption (const TString &option) override
 No additional options for TGLIsoPainter.
Bool_t CutAxisSelected () const
Bool_t GetDrawAxes ()
char * GetPlotInfo (Int_t px, Int_t py) override
 Return info for plot part under cursor.
Bool_t InitGeometry () override
 Initializes meshes for 3d iso contours.
void InvalidateSelection ()
 Selection must be updated.
TClassIsA () 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
 Change color scheme.
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 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 TClassClass ()
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
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

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

Private Types

typedef std::list< Mesh_t >::const_iterator ConstMeshIter_t
typedef Rgl::Mc::TIsoMesh< Float_tMesh_t
typedef std::list< Mesh_t >::iterator MeshIter_t
typedef std::list< Mesh_tMeshList_t

Private Member Functions

 TGLIsoPainter (const TGLIsoPainter &)
void DeInitGL () const override
 Initialize OpenGL state variables.
void DrawMesh (const Mesh_t &mesh, Int_t level) const
 Draw TF3 surface.
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 FindMinMax ()
 Find max/min bin contents for TH3.
Bool_t HasSections () const
 Any section exists.
void InitGL () const override
 Initialize OpenGL state variables.
TGLIsoPainteroperator= (const TGLIsoPainter &)
void SetMesh (Mesh_t &mesh, Double_t isoValue)
 Grid geometry.
void SetSurfaceColor (Int_t ind) const
 Set color for surface.

Private Attributes

MeshList_t fCache
std::vector< Double_tfColorLevels
Mesh_t fDummyMesh
Bool_t fInit
MeshList_t fIsos
Rgl::Range_t fMinMax
const TColorfPadColor
TGLLevelPalette fPalette
TGLTH3Slice fXOYSlice
TGLTH3Slice fXOZSlice
TGLTH3Slice fYOZSlice

#include <TGLTF3Painter.h>

Inheritance diagram for TGLIsoPainter:
TGLPlotPainter TVirtualGLPainter

Member Typedef Documentation

◆ ConstMeshIter_t

typedef std::list<Mesh_t>::const_iterator TGLIsoPainter::ConstMeshIter_t
private

Definition at line 98 of file TGLTF3Painter.h.

◆ Mesh_t

Definition at line 95 of file TGLTF3Painter.h.

◆ MeshIter_t

typedef std::list<Mesh_t>::iterator TGLIsoPainter::MeshIter_t
private

Definition at line 97 of file TGLTF3Painter.h.

◆ MeshList_t

typedef std::list<Mesh_t> TGLIsoPainter::MeshList_t
private

Definition at line 96 of file TGLTF3Painter.h.

Member Enumeration Documentation

◆ ECutAxisID

Enumerator
kXAxis 
kYAxis 
kZAxis 

Definition at line 262 of file TGLPlotPainter.h.

◆ ESelectionBase

enum TGLPlotPainter::ESelectionBase
protectedinherited
Enumerator
kHighColorSelectionBase 
kTrueColorSelectionBase 

Definition at line 213 of file TGLPlotPainter.h.

Constructor & Destructor Documentation

◆ TGLIsoPainter() [1/2]

TGLIsoPainter::TGLIsoPainter ( TH1 * hist,
TGLPlotCamera * camera,
TGLPlotCoordinates * coord )

Constructor.

Definition at line 388 of file TGLTF3Painter.cxx.

◆ TGLIsoPainter() [2/2]

TGLIsoPainter::TGLIsoPainter ( const TGLIsoPainter & )
private

Member Function Documentation

◆ AddOption()

void TGLIsoPainter::AddOption ( const TString & option)
overridevirtual

No additional options for TGLIsoPainter.

Implements TGLPlotPainter.

Definition at line 558 of file TGLTF3Painter.cxx.

◆ Class()

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

◆ Class_Name()

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

◆ Class_Version()

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

Definition at line 150 of file TGLTF3Painter.h.

◆ ClearBuffers()

void TGLPlotPainter::ClearBuffers ( ) const
protectedvirtualinherited

Definition at line 564 of file TGLPlotPainter.cxx.

◆ CutAxisSelected()

Bool_t TGLPlotPainter::CutAxisSelected ( ) const
inlineinherited

Definition at line 268 of file TGLPlotPainter.h.

◆ DeclFileName()

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

Definition at line 150 of file TGLTF3Painter.h.

◆ DeInitGL()

void TGLIsoPainter::DeInitGL ( ) const
overrideprivatevirtual

Initialize OpenGL state variables.

Implements TGLPlotPainter.

Definition at line 606 of file TGLTF3Painter.cxx.

◆ DrawMesh()

void TGLIsoPainter::DrawMesh ( const Mesh_t & mesh,
Int_t level ) const
private

Draw TF3 surface.

Definition at line 753 of file TGLTF3Painter.cxx.

◆ DrawPaletteAxis()

void TGLPlotPainter::DrawPaletteAxis ( ) const
protectedvirtualinherited

Draw. Palette. Axis.

Reimplemented in TGLBoxPainter, TGLH2PolyPainter, TGLLegoPainter, TGLSurfacePainter, and TGLVoxelPainter.

Definition at line 579 of file TGLPlotPainter.cxx.

◆ DrawPlot()

void TGLIsoPainter::DrawPlot ( ) const
overrideprivatevirtual

Draw mesh.

Implements TGLPlotPainter.

Definition at line 618 of file TGLTF3Painter.cxx.

◆ DrawSections()

void TGLPlotPainter::DrawSections ( ) const
protectedinherited

Draw sections (if any).

Definition at line 440 of file TGLPlotPainter.cxx.

◆ DrawSectionXOY()

void TGLIsoPainter::DrawSectionXOY ( ) const
overrideprivatevirtual

Draw XOY parallel section.

Implements TGLPlotPainter.

Definition at line 680 of file TGLTF3Painter.cxx.

◆ DrawSectionXOZ()

void TGLIsoPainter::DrawSectionXOZ ( ) const
overrideprivatevirtual

Draw XOZ parallel section.

Implements TGLPlotPainter.

Definition at line 660 of file TGLTF3Painter.cxx.

◆ DrawSectionYOZ()

void TGLIsoPainter::DrawSectionYOZ ( ) const
overrideprivatevirtual

Draw YOZ parallel section.

Implements TGLPlotPainter.

Definition at line 670 of file TGLTF3Painter.cxx.

◆ FindMinMax()

void TGLIsoPainter::FindMinMax ( )
private

Find max/min bin contents for TH3.

Definition at line 778 of file TGLTF3Painter.cxx.

◆ GetDrawAxes()

Bool_t TGLPlotPainter::GetDrawAxes ( )
inlineinherited

Definition at line 273 of file TGLPlotPainter.h.

◆ GetPadColor()

const TColor * TGLPlotPainter::GetPadColor ( ) const
protectedinherited

Get pad color.

Definition at line 360 of file TGLPlotPainter.cxx.

◆ GetPlotInfo()

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

Return info for plot part under cursor.

Implements TVirtualGLPainter.

Definition at line 402 of file TGLTF3Painter.cxx.

◆ HasSections()

Bool_t TGLIsoPainter::HasSections ( ) const
private

Any section exists.

Definition at line 690 of file TGLTF3Painter.cxx.

◆ InitGeometry()

Bool_t TGLIsoPainter::InitGeometry ( )
overridevirtual

Initializes meshes for 3d iso contours.

Implements TGLPlotPainter.

Definition at line 411 of file TGLTF3Painter.cxx.

◆ InitGL()

void TGLIsoPainter::InitGL ( ) const
overrideprivatevirtual

Initialize OpenGL state variables.

Implements TGLPlotPainter.

Definition at line 594 of file TGLTF3Painter.cxx.

◆ InvalidateSelection()

void TGLPlotPainter::InvalidateSelection ( )
inherited

Selection must be updated.

Definition at line 352 of file TGLPlotPainter.cxx.

◆ IsA()

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

Reimplemented from TVirtualGLPainter.

Definition at line 150 of file TGLTF3Painter.h.

◆ MoveSection()

void TGLPlotPainter::MoveSection ( Int_t px,
Int_t py )
protectedinherited

Create dynamic profile using selected plane.

Definition at line 368 of file TGLPlotPainter.cxx.

◆ operator=()

TGLIsoPainter & TGLIsoPainter::operator= ( const TGLIsoPainter & )
private

◆ Paint()

void TGLPlotPainter::Paint ( )
overridevirtualinherited

Draw lego/surf/whatever you can.

Implements TVirtualGLPainter.

Definition at line 149 of file TGLPlotPainter.cxx.

◆ Pan()

void TGLIsoPainter::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. 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 513 of file TGLTF3Painter.cxx.

◆ PlotSelected()

Bool_t TGLPlotPainter::PlotSelected ( Int_t px,
Int_t py )
overridevirtualinherited

Read color buffer content to find selected object.

Implements TVirtualGLPainter.

Definition at line 271 of file TGLPlotPainter.cxx.

◆ PrintPlot()

void TGLPlotPainter::PrintPlot ( ) const
protectedinherited

Generate PS using gl2ps.

Definition at line 231 of file TGLPlotPainter.cxx.

◆ ProcessEvent()

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

Change color scheme.

Implements TGLPlotPainter.

Definition at line 565 of file TGLTF3Painter.cxx.

◆ RefBackBox()

const TGLPlotBox & TGLPlotPainter::RefBackBox ( ) const
inlineinherited

Definition at line 231 of file TGLPlotPainter.h.

◆ RestoreModelviewMatrix()

void TGLPlotPainter::RestoreModelviewMatrix ( ) const
protectedinherited

Definition at line 601 of file TGLPlotPainter.cxx.

◆ RestoreProjectionMatrix()

void TGLPlotPainter::RestoreProjectionMatrix ( ) const
protectedinherited

Definition at line 609 of file TGLPlotPainter.cxx.

◆ SaveModelviewMatrix()

void TGLPlotPainter::SaveModelviewMatrix ( ) const
protectedinherited

Definition at line 585 of file TGLPlotPainter.cxx.

◆ SaveProjectionMatrix()

void TGLPlotPainter::SaveProjectionMatrix ( ) const
protectedinherited

Definition at line 593 of file TGLPlotPainter.cxx.

◆ SetDrawAxes()

void TGLPlotPainter::SetDrawAxes ( Bool_t s)
inlineinherited

Definition at line 272 of file TGLPlotPainter.h.

◆ SetDrawBackBox()

void TGLPlotPainter::SetDrawBackBox ( Bool_t b)
inlineinherited

Definition at line 271 of file TGLPlotPainter.h.

◆ SetDrawFrontBox()

void TGLPlotPainter::SetDrawFrontBox ( Bool_t b)
inlineinherited

Definition at line 270 of file TGLPlotPainter.h.

◆ SetFrameColor()

void TGLPlotPainter::SetFrameColor ( const TColor * frameColor)
virtualinherited

Set plot's back box color.

Definition at line 344 of file TGLPlotPainter.cxx.

◆ SetMesh()

void TGLIsoPainter::SetMesh ( Mesh_t & mesh,
Double_t isoValue )
private

Grid geometry.

Definition at line 725 of file TGLTF3Painter.cxx.

◆ SetPadColor()

void TGLPlotPainter::SetPadColor ( const TColor * color)
inherited

Used in a pad.

Definition at line 336 of file TGLPlotPainter.cxx.

◆ SetPhysicalShapeColor()

void TGLPlotPainter::SetPhysicalShapeColor ( const Float_t * rgba)
inlineinherited

Definition at line 232 of file TGLPlotPainter.h.

◆ SetSurfaceColor()

void TGLIsoPainter::SetSurfaceColor ( Int_t ind) const
private

Set color for surface.

Definition at line 699 of file TGLTF3Painter.cxx.

◆ StartPan()

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

User clicks right mouse button (in a pad).

Implements TGLPlotPainter.

Definition at line 499 of file TGLTF3Painter.cxx.

◆ Streamer()

void TGLIsoPainter::Streamer ( TBuffer & )
overridevirtual

Reimplemented from TVirtualGLPainter.

◆ StreamerNVirtual()

void TGLIsoPainter::StreamerNVirtual ( TBuffer & ClassDef_StreamerNVirtual_b)
inline

Definition at line 150 of file TGLTF3Painter.h.

Member Data Documentation

◆ fBackBox

TGLPlotBox TGLPlotPainter::fBackBox
protectedinherited

Definition at line 207 of file TGLPlotPainter.h.

◆ fBoxCut

TGLBoxCut TGLPlotPainter::fBoxCut
protectedinherited

Definition at line 208 of file TGLPlotPainter.h.

◆ fCache

MeshList_t TGLIsoPainter::fCache
private

Definition at line 109 of file TGLTF3Painter.h.

◆ fCamera

TGLPlotCamera* TGLPlotPainter::fCamera
protectedinherited

Definition at line 197 of file TGLPlotPainter.h.

◆ fColorLevels

std::vector<Double_t> TGLIsoPainter::fColorLevels
private

Definition at line 115 of file TGLTF3Painter.h.

◆ fCoord

TGLPlotCoordinates* TGLPlotPainter::fCoord
protectedinherited

Definition at line 196 of file TGLPlotPainter.h.

◆ fDrawAxes

Bool_t TGLPlotPainter::fDrawAxes
protectedinherited

Definition at line 220 of file TGLPlotPainter.h.

◆ fDrawPalette

Bool_t TGLPlotPainter::fDrawPalette
mutableprotectedinherited

Definition at line 219 of file TGLPlotPainter.h.

◆ fDummyMesh

Mesh_t TGLIsoPainter::fDummyMesh
private

Definition at line 104 of file TGLTF3Painter.h.

◆ fHighColor

Bool_t TGLPlotPainter::fHighColor
protectedinherited

Definition at line 211 of file TGLPlotPainter.h.

◆ fHist

TH1* TGLPlotPainter::fHist
protectedinherited

Definition at line 191 of file TGLPlotPainter.h.

◆ fInit

Bool_t TGLIsoPainter::fInit
private

Definition at line 118 of file TGLTF3Painter.h.

◆ fIsos

MeshList_t TGLIsoPainter::fIsos
private

Definition at line 106 of file TGLTF3Painter.h.

◆ fMinMax

Rgl::Range_t TGLIsoPainter::fMinMax
private

Definition at line 111 of file TGLTF3Painter.h.

◆ fMousePosition

TPoint TGLPlotPainter::fMousePosition
protectedinherited

Definition at line 203 of file TGLPlotPainter.h.

◆ fPadColor

const TColor* TGLPlotPainter::fPadColor
privateinherited

Definition at line 184 of file TGLPlotPainter.h.

◆ fPadPhi

Double_t TGLPlotPainter::fPadPhi
protectedinherited

Definition at line 189 of file TGLPlotPainter.h.

◆ fPadTheta

Double_t TGLPlotPainter::fPadTheta
protectedinherited

Definition at line 190 of file TGLPlotPainter.h.

◆ fPalette

TGLLevelPalette TGLIsoPainter::fPalette
private

Definition at line 113 of file TGLTF3Painter.h.

◆ fPhysicalShapeColor

const Float_t* TGLPlotPainter::fPhysicalShapeColor
protectedinherited

Definition at line 187 of file TGLPlotPainter.h.

◆ fSelectedPart

Int_t TGLPlotPainter::fSelectedPart
protectedinherited

Definition at line 202 of file TGLPlotPainter.h.

◆ fSelection

TGLSelectionBuffer TGLPlotPainter::fSelection
protectedinherited

Definition at line 198 of file TGLPlotPainter.h.

◆ fSelectionBase

Int_t TGLPlotPainter::fSelectionBase
protectedinherited

Definition at line 218 of file TGLPlotPainter.h.

◆ fSelectionPass

Bool_t TGLPlotPainter::fSelectionPass
protectedinherited

Definition at line 201 of file TGLPlotPainter.h.

◆ fUpdateSelection

Bool_t TGLPlotPainter::fUpdateSelection
protectedinherited

Definition at line 200 of file TGLPlotPainter.h.

◆ fXAxis

TAxis* TGLPlotPainter::fXAxis
protectedinherited

Definition at line 192 of file TGLPlotPainter.h.

◆ fXOYSectionPos

Double_t TGLPlotPainter::fXOYSectionPos
mutableprotectedinherited

Definition at line 206 of file TGLPlotPainter.h.

◆ fXOYSlice

TGLTH3Slice TGLIsoPainter::fXOYSlice
private

Definition at line 102 of file TGLTF3Painter.h.

◆ fXOZSectionPos

Double_t TGLPlotPainter::fXOZSectionPos
mutableprotectedinherited

Definition at line 204 of file TGLPlotPainter.h.

◆ fXOZSlice

TGLTH3Slice TGLIsoPainter::fXOZSlice
private

Definition at line 100 of file TGLTF3Painter.h.

◆ fYAxis

TAxis* TGLPlotPainter::fYAxis
protectedinherited

Definition at line 193 of file TGLPlotPainter.h.

◆ fYOZSectionPos

Double_t TGLPlotPainter::fYOZSectionPos
mutableprotectedinherited

Definition at line 205 of file TGLPlotPainter.h.

◆ fYOZSlice

TGLTH3Slice TGLIsoPainter::fYOZSlice
private

Definition at line 101 of file TGLTF3Painter.h.

◆ fZAxis

TAxis* TGLPlotPainter::fZAxis
protectedinherited

Definition at line 194 of file TGLPlotPainter.h.

◆ fZLevels

std::vector<Double_t> TGLPlotPainter::fZLevels
protectedinherited

Definition at line 210 of file TGLPlotPainter.h.


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