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

Definition at line 96 of file TGLParametric.h.

Classes

struct  Vertex_t
 

Public Member Functions

 TGLParametricPlot (TGLParametricEquation *equation, TGLPlotCamera *camera)
 
Bool_t InitGeometry ()
 Build mesh. More...
 
void StartPan (Int_t px, Int_t py)
 User clicks right mouse button (in a pad). More...
 
void Pan (Int_t px, Int_t py)
 User's moving mouse cursor, with middle mouse button pressed (for pad). More...
 
char * GetPlotInfo (Int_t px, Int_t py)
 No object info yet. More...
 
void AddOption (const TString &option)
 No additional options for parametric surfaces. More...
 
void ProcessEvent (Int_t event, Int_t px, Int_t py)
 Change color/mesh size or switch on/off mesh/box cut. More...
 
- Public Member Functions inherited from TGLPlotPainter
 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 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...
 
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 ()
 
 ClassDef (TVirtualGLPainter, 0)
 

Private Types

enum  EMeshSize { kLow = 30, kHigh = 150 }
 

Private Member Functions

void InitGL () const
 Initialize gl state. More...
 
void DeInitGL () const
 Initialize gl state. More...
 
void DrawPlot () const
 Draw parametric surface. More...
 
void InitColors ()
 Calculate colors for vertices, using one of 20 color themes. More...
 
void DrawSectionXOZ () const
 No such sections. More...
 
void DrawSectionYOZ () const
 No such sections. More...
 
void DrawSectionXOY () const
 No such sections. More...
 
void SetSurfaceColor () const
 Set material properties. More...
 
 TGLParametricPlot (const TGLParametricPlot &)
 
TGLParametricPlotoperator= (const TGLParametricPlot &)
 

Private Attributes

Int_t fMeshSize
 
TGL2DArray< Vertex_tfMesh
 
Bool_t fShowMesh
 
Int_t fColorScheme
 
TGLParametricEquationfEquation
 
TAxis fCartesianXAxis
 
TAxis fCartesianYAxis
 
TAxis fCartesianZAxis
 
TGLPlotCoordinates fCartesianCoord
 

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
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 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 inherited from TGLPlotPainter
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
 

#include <TGLParametric.h>

Inheritance diagram for TGLParametricPlot:
[legend]

Member Enumeration Documentation

Enumerator
kLow 
kHigh 

Definition at line 104 of file TGLParametric.h.

Constructor & Destructor Documentation

TGLParametricPlot::TGLParametricPlot ( TGLParametricEquation equation,
TGLPlotCamera camera 
)
TGLParametricPlot::TGLParametricPlot ( const TGLParametricPlot )
private

Member Function Documentation

void TGLParametricPlot::AddOption ( const TString option)
virtual

No additional options for parametric surfaces.

Implements TGLPlotPainter.

Definition at line 464 of file TGLParametric.cxx.

void TGLParametricPlot::DeInitGL ( ) const
privatevirtual

Initialize gl state.

Implements TGLPlotPainter.

Definition at line 516 of file TGLParametric.cxx.

void TGLParametricPlot::DrawPlot ( ) const
privatevirtual

Draw parametric surface.

Implements TGLPlotPainter.

Definition at line 528 of file TGLParametric.cxx.

void TGLParametricPlot::DrawSectionXOY ( ) const
privatevirtual

No such sections.

Implements TGLPlotPainter.

Definition at line 675 of file TGLParametric.cxx.

void TGLParametricPlot::DrawSectionXOZ ( ) const
privatevirtual

No such sections.

Implements TGLPlotPainter.

Definition at line 661 of file TGLParametric.cxx.

void TGLParametricPlot::DrawSectionYOZ ( ) const
privatevirtual

No such sections.

Implements TGLPlotPainter.

Definition at line 668 of file TGLParametric.cxx.

char * TGLParametricPlot::GetPlotInfo ( Int_t  px,
Int_t  py 
)
virtual

No object info yet.

Implements TVirtualGLPainter.

Definition at line 455 of file TGLParametric.cxx.

void TGLParametricPlot::InitColors ( )
private

Calculate colors for vertices, using one of 20 color themes.

-1 simple 'metal' surface.

Definition at line 641 of file TGLParametric.cxx.

Referenced by ProcessEvent().

Bool_t TGLParametricPlot::InitGeometry ( )
virtual

Build mesh.

The surface is 'immutable': the only reason to rebuild it - the change in size or if one of equations contain reference to TF2 function, whose parameters were changed.

Implements TGLPlotPainter.

Definition at line 322 of file TGLParametric.cxx.

Referenced by ProcessEvent().

void TGLParametricPlot::InitGL ( ) const
privatevirtual

Initialize gl state.

Implements TGLPlotPainter.

Definition at line 504 of file TGLParametric.cxx.

TGLParametricPlot& TGLParametricPlot::operator= ( const TGLParametricPlot )
private
void TGLParametricPlot::Pan ( Int_t  px,
Int_t  py 
)
virtual

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 431 of file TGLParametric.cxx.

void TGLParametricPlot::ProcessEvent ( Int_t  event,
Int_t  px,
Int_t  py 
)
virtual

Change color/mesh size or switch on/off mesh/box cut.

Left double click - remove box cut.

Implements TGLPlotPainter.

Definition at line 472 of file TGLParametric.cxx.

void TGLParametricPlot::SetSurfaceColor ( ) const
private

Set material properties.

Definition at line 682 of file TGLParametric.cxx.

Referenced by DrawPlot().

void TGLParametricPlot::StartPan ( Int_t  px,
Int_t  py 
)
virtual

User clicks right mouse button (in a pad).

Implements TGLPlotPainter.

Definition at line 419 of file TGLParametric.cxx.

Member Data Documentation

TGLPlotCoordinates TGLParametricPlot::fCartesianCoord
private

Definition at line 118 of file TGLParametric.h.

TAxis TGLParametricPlot::fCartesianXAxis
private

Definition at line 114 of file TGLParametric.h.

Referenced by InitGeometry().

TAxis TGLParametricPlot::fCartesianYAxis
private

Definition at line 115 of file TGLParametric.h.

Referenced by InitGeometry().

TAxis TGLParametricPlot::fCartesianZAxis
private

Definition at line 116 of file TGLParametric.h.

Referenced by InitGeometry().

Int_t TGLParametricPlot::fColorScheme
private

Definition at line 110 of file TGLParametric.h.

Referenced by DrawPlot(), InitColors(), ProcessEvent(), and SetSurfaceColor().

TGLParametricEquation* TGLParametricPlot::fEquation
private

Definition at line 112 of file TGLParametric.h.

Referenced by InitColors(), and InitGeometry().

TGL2DArray<Vertex_t> TGLParametricPlot::fMesh
private

Definition at line 107 of file TGLParametric.h.

Referenced by DrawPlot(), InitColors(), and InitGeometry().

Int_t TGLParametricPlot::fMeshSize
private

Definition at line 106 of file TGLParametric.h.

Referenced by DrawPlot(), InitColors(), InitGeometry(), and ProcessEvent().

Bool_t TGLParametricPlot::fShowMesh
private

Definition at line 109 of file TGLParametric.h.

Referenced by DrawPlot(), and ProcessEvent().

Collaboration diagram for TGLParametricPlot:
[legend]

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