ROOT  6.07/01
Reference Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Private Attributes | Friends | List of all members
TGLPlotPainter Class Referenceabstract

Base class for plot-painters that provide GL rendering of various 2D and 3D histograms, functions and parametric surfaces.

Definition at line 191 of file TGLPlotPainter.h.

Public Types

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

Public Member Functions

 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 TGLPlotBoxRefBackBox () const
 
void SetPhysicalShapeColor (const Float_t *rgba)
 
virtual void InitGL () const =0
 
virtual void DeInitGL () const =0
 
virtual void DrawPlot () const =0
 
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...
 
virtual Bool_t InitGeometry ()=0
 
virtual void StartPan (Int_t px, Int_t py)=0
 
virtual void AddOption (const TString &stringOption)=0
 
virtual void ProcessEvent (Int_t event, Int_t px, Int_t py)=0
 
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 ()
 
virtual void Pan (Int_t px, Int_t py)=0
 
virtual char * GetPlotInfo (Int_t px, Int_t py)=0
 
 ClassDef (TVirtualGLPainter, 0)
 

Protected Types

enum  ESelectionBase { kHighColorSelectionBase = 7, kTrueColorSelectionBase = 10 }
 

Protected Member Functions

const TColorGetPadColor () const
 Get pad color. More...
 
void MoveSection (Int_t px, Int_t py)
 Create dynamic profile using selected plane. More...
 
void DrawSections () const
 Draw sections (if any). More...
 
virtual void DrawSectionXOZ () const =0
 
virtual void DrawSectionYOZ () const =0
 
virtual void DrawSectionXOY () const =0
 
virtual void DrawPaletteAxis () const
 Draw. Palette. Axis. More...
 
virtual void ClearBuffers () const
 
void PrintPlot () const
 Generate PS using gl2ps. More...
 
void SaveModelviewMatrix () const
 
void SaveProjectionMatrix () const
 
void RestoreModelviewMatrix () const
 
void RestoreProjectionMatrix () const
 

Protected Attributes

const Float_tfPhysicalShapeColor
 
Double_t fPadPhi
 
Double_t fPadTheta
 
TH1fHist
 
TAxisfXAxis
 
TAxisfYAxis
 
TAxisfZAxis
 
TGLPlotCoordinatesfCoord
 
TGLPlotCamerafCamera
 
TGLSelectionBuffer fSelection
 
Bool_t fUpdateSelection
 
Bool_t fSelectionPass
 
Int_t fSelectedPart
 
TPoint fMousePosition
 
Double_t fXOZSectionPos
 
Double_t fYOZSectionPos
 
Double_t fXOYSectionPos
 
TGLPlotBox fBackBox
 
TGLBoxCut fBoxCut
 
std::vector< Double_tfZLevels
 
Bool_t fHighColor
 
Int_t fSelectionBase
 
Bool_t fDrawPalette
 
Bool_t fDrawAxes
 

Private Attributes

const TColorfPadColor
 

Friends

class Rgl::PlotTranslation
 

#include <TGLPlotPainter.h>

Inheritance diagram for TGLPlotPainter:
[legend]

Member Enumeration Documentation

Enumerator
kXAxis 
kYAxis 
kZAxis 

Definition at line 272 of file TGLPlotPainter.h.

Enumerator
kHighColorSelectionBase 
kTrueColorSelectionBase 

Definition at line 223 of file TGLPlotPainter.h.

Constructor & Destructor Documentation

TGLPlotPainter::TGLPlotPainter ( TH1 hist,
TGLPlotCamera camera,
TGLPlotCoordinates coord,
Bool_t  xoySelectable,
Bool_t  xozSelectable,
Bool_t  yozSelectable 
)
TGLPlotPainter::TGLPlotPainter ( TGL5DDataSet data,
TGLPlotCamera camera,
TGLPlotCoordinates coord 
)

TGLPlotPainter's ctor.

Definition at line 86 of file TGLPlotPainter.cxx.

TGLPlotPainter::TGLPlotPainter ( TGLPlotCamera camera)

TGLPlotPainter's ctor.

Definition at line 119 of file TGLPlotPainter.cxx.

Member Function Documentation

virtual void TGLPlotPainter::AddOption ( const TString stringOption)
pure virtual
void TGLPlotPainter::ClearBuffers ( ) const
protectedvirtual

Definition at line 569 of file TGLPlotPainter.cxx.

Bool_t TGLPlotPainter::CutAxisSelected ( ) const
inline

Definition at line 278 of file TGLPlotPainter.h.

virtual void TGLPlotPainter::DeInitGL ( ) const
pure virtual
void TGLPlotPainter::DrawPaletteAxis ( ) const
protectedvirtual

Draw. Palette. Axis.

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

Definition at line 584 of file TGLPlotPainter.cxx.

Referenced by Paint().

virtual void TGLPlotPainter::DrawPlot ( ) const
pure virtual
void TGLPlotPainter::DrawSections ( ) const
protected
virtual void TGLPlotPainter::DrawSectionXOY ( ) const
protectedpure virtual
virtual void TGLPlotPainter::DrawSectionXOZ ( ) const
protectedpure virtual
virtual void TGLPlotPainter::DrawSectionYOZ ( ) const
protectedpure virtual
Bool_t TGLPlotPainter::GetDrawAxes ( )
inline

Definition at line 283 of file TGLPlotPainter.h.

Referenced by TH2GL::DirectDraw(), and TH3GL::DirectDraw().

const TColor * TGLPlotPainter::GetPadColor ( ) const
protected

Get pad color.

Definition at line 365 of file TGLPlotPainter.cxx.

virtual Bool_t TGLPlotPainter::InitGeometry ( )
pure virtual
virtual void TGLPlotPainter::InitGL ( ) const
pure virtual
void TGLPlotPainter::InvalidateSelection ( )

Selection must be updated.

Definition at line 357 of file TGLPlotPainter.cxx.

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

Create dynamic profile using selected plane.

Definition at line 373 of file TGLPlotPainter.cxx.

Referenced by TGLVoxelPainter::Pan(), TGLLegoPainter::Pan(), TGLBoxPainter::Pan(), and TGLSurfacePainter::Pan().

void TGLPlotPainter::Paint ( )
virtual
Bool_t TGLPlotPainter::PlotSelected ( Int_t  px,
Int_t  py 
)
virtual

Read color buffer content to find selected object.

Implements TVirtualGLPainter.

Definition at line 276 of file TGLPlotPainter.cxx.

void TGLPlotPainter::PrintPlot ( ) const
protected

Generate PS using gl2ps.

Definition at line 234 of file TGLPlotPainter.cxx.

Referenced by Paint().

virtual void TGLPlotPainter::ProcessEvent ( Int_t  event,
Int_t  px,
Int_t  py 
)
pure virtual
const TGLPlotBox& TGLPlotPainter::RefBackBox ( ) const
inline
void TGLPlotPainter::RestoreModelviewMatrix ( ) const
protected
void TGLPlotPainter::RestoreProjectionMatrix ( ) const
protected
void TGLPlotPainter::SaveModelviewMatrix ( ) const
protected
void TGLPlotPainter::SaveProjectionMatrix ( ) const
protected
void TGLPlotPainter::SetDrawAxes ( Bool_t  s)
inline

Definition at line 282 of file TGLPlotPainter.h.

Referenced by TH2GL::SetModel(), and TH3GL::SetModel().

void TGLPlotPainter::SetDrawBackBox ( Bool_t  b)
inline

Definition at line 281 of file TGLPlotPainter.h.

Referenced by TH2GL::SetModel(), and TH3GL::SetModel().

void TGLPlotPainter::SetDrawFrontBox ( Bool_t  b)
inline

Definition at line 280 of file TGLPlotPainter.h.

Referenced by TH2GL::SetModel(), and TH3GL::SetModel().

void TGLPlotPainter::SetFrameColor ( const TColor frameColor)
virtual

Set plot's back box color.

Definition at line 349 of file TGLPlotPainter.cxx.

void TGLPlotPainter::SetPadColor ( const TColor color)

Used in a pad.

Definition at line 341 of file TGLPlotPainter.cxx.

void TGLPlotPainter::SetPhysicalShapeColor ( const Float_t rgba)
inline

Definition at line 242 of file TGLPlotPainter.h.

Referenced by TH3GL::DirectDraw().

virtual void TGLPlotPainter::StartPan ( Int_t  px,
Int_t  py 
)
pure virtual

Friends And Related Function Documentation

friend class Rgl::PlotTranslation
friend

Definition at line 192 of file TGLPlotPainter.h.

Member Data Documentation

TGLPlotBox TGLPlotPainter::fBackBox
protected

Definition at line 217 of file TGLPlotPainter.h.

Referenced by TGLH2PolyPainter::ClampZ(), TGLLegoPainter::ClampZ(), TGLSurfacePainter::ClampZ(), TGLBoxPainter::DrawCloud(), TGLSurfacePainter::DrawContoursProjection(), TGLLegoPainter::DrawLegoCartesian(), TGLBoxPainter::DrawPalette(), TGLH2PolyPainter::DrawPlot(), TGLVoxelPainter::DrawPlot(), TGLTF3Painter::DrawPlot(), TGLBoxPainter::DrawPlot(), TGLSurfacePainter::DrawPlot(), TGLTH3CompositionPainter::DrawPlot(), TGL5DPainter::DrawPlot(), TGLIsoPainter::DrawPlot(), TGLSurfacePainter::DrawProjections(), DrawSections(), TGLTF3Painter::HasSections(), TGLBoxPainter::HasSections(), TGLSurfacePainter::HasSections(), TGLIsoPainter::HasSections(), TGLH2PolyPainter::InitGeometry(), TGLVoxelPainter::InitGeometry(), TGLTF3Painter::InitGeometry(), TGLLegoPainter::InitGeometry(), TGLBoxPainter::InitGeometry(), TGLSurfacePainter::InitGeometry(), TGLTH3CompositionPainter::InitGeometry(), TGL5DPainter::InitGeometry(), TGLParametricPlot::InitGeometry(), TGLIsoPainter::InitGeometry(), TGLLegoPainter::InitGeometryCartesian(), TGLSurfacePainter::InitGeometryCartesian(), TGLLegoPainter::InitGeometryCylindrical(), TGLSurfacePainter::InitGeometryCylindrical(), TGLLegoPainter::InitGeometryPolar(), TGLSurfacePainter::InitGeometryPolar(), TGLLegoPainter::InitGeometrySpherical(), TGLSurfacePainter::InitGeometrySpherical(), MoveSection(), Paint(), Rgl::PlotTranslation::PlotTranslation(), TGLTF3Painter::ProcessEvent(), TGLLegoPainter::ProcessEvent(), TGLBoxPainter::ProcessEvent(), TGLSurfacePainter::ProcessEvent(), TGLIsoPainter::ProcessEvent(), RefBackBox(), TGL5DPainter::ResetGeometryRanges(), SetDrawBackBox(), SetDrawFrontBox(), and SetFrameColor().

TGLBoxCut TGLPlotPainter::fBoxCut
protected
TGLPlotCamera* TGLPlotPainter::fCamera
protected
TGLPlotCoordinates* TGLPlotPainter::fCoord
protected

Definition at line 206 of file TGLPlotPainter.h.

Referenced by TGLSurfacePainter::AddOption(), TGL5DPainter::AddSurface(), TGLH2PolyPainter::ClampZ(), TGLSurfacePainter::ClampZ(), TGLLegoPainter::ClampZ(), TGL5DPainter::DrawCloud(), TGLSurfacePainter::DrawContoursProjection(), TGLLegoPainter::DrawLegoCartesian(), TGLLegoPainter::DrawLegoCylindrical(), TGLLegoPainter::DrawLegoPolar(), TGLLegoPainter::DrawLegoSpherical(), TGLBoxPainter::DrawPaletteAxis(), TGLLegoPainter::DrawPaletteAxis(), TGLSurfacePainter::DrawPaletteAxis(), TGLVoxelPainter::DrawPlot(), TGLBoxPainter::DrawPlot(), TGLSurfacePainter::DrawPlot(), TGLLegoPainter::DrawPlot(), TGLTH3CompositionPainter::DrawPlot(), TGLTF3Painter::DrawSectionXOY(), TGLBoxPainter::DrawSectionXOY(), TGLSurfacePainter::DrawSectionXOY(), TGLIsoPainter::DrawSectionXOY(), TGLTF3Painter::DrawSectionXOZ(), TGLBoxPainter::DrawSectionXOZ(), TGLSurfacePainter::DrawSectionXOZ(), TGLLegoPainter::DrawSectionXOZ(), TGLIsoPainter::DrawSectionXOZ(), TGLTF3Painter::DrawSectionYOZ(), TGLBoxPainter::DrawSectionYOZ(), TGLSurfacePainter::DrawSectionYOZ(), TGLLegoPainter::DrawSectionYOZ(), TGLIsoPainter::DrawSectionYOZ(), TGL5DPainter::DrawSubCloud(), TGLH2PolyPainter::FillTemporaryPolygon(), TGLSurfacePainter::GenTexMap(), TGLVoxelPainter::GetPlotInfo(), TGLLegoPainter::GetPlotInfo(), TGLBoxPainter::GetPlotInfo(), TGLH2PolyPainter::InitGeometry(), TGLVoxelPainter::InitGeometry(), TGLTF3Painter::InitGeometry(), TGLLegoPainter::InitGeometry(), TGLBoxPainter::InitGeometry(), TGLSurfacePainter::InitGeometry(), TGLTH3CompositionPainter::InitGeometry(), TGL5DPainter::InitGeometry(), TGLParametricPlot::InitGeometry(), TGLIsoPainter::InitGeometry(), TGLLegoPainter::InitGeometryCartesian(), TGLSurfacePainter::InitGeometryCartesian(), TGLLegoPainter::InitGeometryCylindrical(), TGLSurfacePainter::InitGeometryCylindrical(), TGLLegoPainter::InitGeometryPolar(), TGLSurfacePainter::InitGeometryPolar(), TGLLegoPainter::InitGeometrySpherical(), TGLSurfacePainter::InitGeometrySpherical(), Paint(), TGL5DPainter::ResetGeometryRanges(), TGLIsoPainter::SetMesh(), TGLSurfacePainter::SetNormals(), and TGLSurfacePainter::WindowPointTo3DPoint().

Bool_t TGLPlotPainter::fDrawAxes
protected

Definition at line 230 of file TGLPlotPainter.h.

Referenced by GetDrawAxes(), Paint(), and SetDrawAxes().

Bool_t TGLPlotPainter::fDrawPalette
mutableprotected
Bool_t TGLPlotPainter::fHighColor
protected
TH1* TGLPlotPainter::fHist
protected

Definition at line 201 of file TGLPlotPainter.h.

Referenced by TGLH2PolyPainter::CacheGeometry(), ClassImp(), TGLH2PolyPainter::DrawCaps(), TGLH2PolyPainter::DrawExtrusion(), TGLLegoPainter::DrawLegoCartesian(), TGLLegoPainter::DrawLegoCylindrical(), TGLLegoPainter::DrawLegoPolar(), TGLLegoPainter::DrawLegoSpherical(), TGLVoxelPainter::DrawPalette(), TGLVoxelPainter::DrawPlot(), TGLBoxPainter::DrawPlot(), TGLLegoPainter::DrawSectionXOZ(), TGLLegoPainter::DrawSectionYOZ(), TGLIsoPainter::FindMinMax(), TGLSurfacePainter::GenTexMap(), TGLH2PolyPainter::GetPlotInfo(), TGLVoxelPainter::GetPlotInfo(), TGLLegoPainter::GetPlotInfo(), TGLBoxPainter::GetPlotInfo(), TGLH2PolyPainter::InitGeometry(), TGLVoxelPainter::InitGeometry(), TGLTF3Painter::InitGeometry(), TGLBoxPainter::InitGeometry(), TGLTH3CompositionPainter::InitGeometry(), TGLIsoPainter::InitGeometry(), TGLLegoPainter::InitGeometryCartesian(), TGLSurfacePainter::InitGeometryCartesian(), TGLLegoPainter::InitGeometryCylindrical(), TGLSurfacePainter::InitGeometryCylindrical(), TGLLegoPainter::InitGeometryPolar(), TGLSurfacePainter::InitGeometryPolar(), TGLLegoPainter::InitGeometrySpherical(), TGLSurfacePainter::InitGeometrySpherical(), TGLVoxelPainter::PreparePalette(), TGLLegoPainter::PreparePalette(), TGLSurfacePainter::PreparePalette(), TGLLegoPainter::SetLegoColor(), TGLIsoPainter::SetMesh(), TGLBoxPainter::SetPlotColor(), TGLSurfacePainter::SetSurfaceColor(), TGLIsoPainter::SetSurfaceColor(), and TGLH2PolyPainter::UpdateGeometry().

TPoint TGLPlotPainter::fMousePosition
protected
const TColor* TGLPlotPainter::fPadColor
private

Definition at line 194 of file TGLPlotPainter.h.

Referenced by GetPadColor(), and SetPadColor().

Double_t TGLPlotPainter::fPadPhi
protected
Double_t TGLPlotPainter::fPadTheta
protected
const Float_t* TGLPlotPainter::fPhysicalShapeColor
protected
Int_t TGLPlotPainter::fSelectedPart
protected
TGLSelectionBuffer TGLPlotPainter::fSelection
protected

Definition at line 208 of file TGLPlotPainter.h.

Referenced by PlotSelected().

Int_t TGLPlotPainter::fSelectionBase
protected
Bool_t TGLPlotPainter::fSelectionPass
protected
Bool_t TGLPlotPainter::fUpdateSelection
protected
TAxis* TGLPlotPainter::fXAxis
protected
Double_t TGLPlotPainter::fXOYSectionPos
mutableprotected
Double_t TGLPlotPainter::fXOZSectionPos
mutableprotected
TAxis* TGLPlotPainter::fYAxis
protected
Double_t TGLPlotPainter::fYOZSectionPos
mutableprotected
TAxis* TGLPlotPainter::fZAxis
protected
std::vector<Double_t> TGLPlotPainter::fZLevels
protected
Collaboration diagram for TGLPlotPainter:
[legend]

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