TGL5DPainter implements "gl5d" option for TTree::Draw.
Data (4D) is visualized as a set of iso-surfaces. 5D.
Definition at line 32 of file TGL5DPainter.h.
Classes | |
struct | Surf_t |
Public Types | |
typedef SurfList_t::const_iterator | ConstSurfIter_t |
enum | EDefaults { kNContours = 4 , kNLowPts = 50 } |
typedef Rgl::Mc::TIsoMesh< Float_t > | Mesh_t |
typedef SurfList_t::iterator | SurfIter_t |
typedef std::list< Surf_t > | SurfList_t |
Public Types inherited from TGLPlotPainter | |
enum | ECutAxisID { kXAxis = 7 , kYAxis = 8 , kZAxis = 9 } |
Public Member Functions | |
TGL5DPainter (TGL5DDataSet *data, TGLPlotCamera *camera, TGLPlotCoordinates *coord) | |
Constructor. | |
void | AddOption (const TString &option) |
No additional options for TGL5DPainter. | |
void | AddSurface (Double_t v4) |
Add new surface. Simplified version for ged. | |
SurfIter_t | AddSurface (Double_t v4, Color_t ci, Double_t isoVal=1., Double_t sigma=1., Double_t range=1e-3, Int_t lowNumOfPoints=kNLowPts) |
Try to add new iso-surface. | |
Double_t | GetAlpha () const |
Int_t | GetNContours () const |
char * | GetPlotInfo (Int_t px, Int_t py) |
Return info for plot part under cursor. | |
Bool_t | InitGeometry () |
Create mesh. | |
Bool_t | IsBoxCutShown () const |
void | Pan (Int_t px, Int_t py) |
Mouse events handler. | |
void | ProcessEvent (Int_t event, Int_t px, Int_t py) |
void | RemoveSurface (SurfIter_t surf) |
Remove iso-surface. | |
void | ResetGeometryRanges () |
No need to create or delete meshes, number of meshes (iso-levels) are the same, but meshes must be rebuilt in new ranges. | |
void | SetAlpha (Double_t newAlpha) |
Set selection range parameter. | |
void | SetNContours (Int_t num) |
Set the number of predefined contours. | |
void | ShowBoxCut (Bool_t show) |
void | StartPan (Int_t px, Int_t py) |
User clicks right mouse button (in a pad). | |
SurfIter_t | SurfacesBegin () |
std::list::begin. | |
SurfIter_t | SurfacesEnd () |
std::list::end. | |
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. | |
virtual void | Paint () |
Draw lego/surf/whatever you can. | |
virtual Bool_t | PlotSelected (Int_t px, Int_t py) |
Read color buffer content to find selected object. | |
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) |
Public Member Functions inherited from TVirtualGLPainter | |
virtual | ~TVirtualGLPainter () |
Private Types | |
typedef std::vector< Double_t >::size_type | size_type |
Private Member Functions | |
TGL5DPainter (const TGL5DPainter &) | |
void | DeInitGL () const |
Return some gl states to original values. | |
void | DrawCloud () const |
Draw full cloud of points. | |
void | DrawMesh (ConstSurfIter_t surf) const |
Draw one iso-surface. | |
void | DrawPlot () const |
Draw a set of meshes. | |
void | DrawSectionXOY () const |
void | DrawSectionXOZ () const |
void | DrawSectionYOZ () const |
void | DrawSubCloud (Double_t v4, Double_t range, Color_t ci) const |
Draw cloud for selected iso-surface. | |
void | InitGL () const |
Initialize OpenGL state variables. | |
TGL5DPainter & | operator= (const TGL5DPainter &) |
void | SetSurfaceColor (ConstSurfIter_t surf) const |
Set the color for iso-surface. | |
Private Attributes | |
Double_t | fAlpha |
TGL5DDataSet * | fData |
const Surf_t | fDummy |
Bool_t | fInit |
SurfList_t | fIsos |
TKDEFGT | fKDE |
Rgl::Mc::TMeshBuilder< TKDEFGT, Float_t > | fMeshBuilder |
Int_t | fNContours |
Bool_t | fShowSlider |
Rgl::Range_t | fV5PredictedRange |
Rgl::Range_t | fV5SliderRange |
#include <TGL5DPainter.h>
typedef SurfList_t::const_iterator TGL5DPainter::ConstSurfIter_t |
Definition at line 62 of file TGL5DPainter.h.
typedef Rgl::Mc::TIsoMesh<Float_t> TGL5DPainter::Mesh_t |
Definition at line 39 of file TGL5DPainter.h.
|
private |
Definition at line 74 of file TGL5DPainter.h.
typedef SurfList_t::iterator TGL5DPainter::SurfIter_t |
Definition at line 61 of file TGL5DPainter.h.
typedef std::list<Surf_t> TGL5DPainter::SurfList_t |
Definition at line 60 of file TGL5DPainter.h.
Enumerator | |
---|---|
kNContours | |
kNLowPts |
Definition at line 34 of file TGL5DPainter.h.
TGL5DPainter::TGL5DPainter | ( | TGL5DDataSet * | data, |
TGLPlotCamera * | camera, | ||
TGLPlotCoordinates * | coord | ||
) |
Constructor.
Definition at line 35 of file TGL5DPainter.cxx.
|
private |
No additional options for TGL5DPainter.
Implements TGLPlotPainter.
Definition at line 240 of file TGL5DPainter.cxx.
Add new surface. Simplified version for ged.
Definition at line 101 of file TGL5DPainter.cxx.
TGL5DPainter::SurfIter_t TGL5DPainter::AddSurface | ( | Double_t | v4, |
Color_t | ci, | ||
Double_t | iso = 1. , |
||
Double_t | sigma = 1. , |
||
Double_t | range = 1e-3 , |
||
Int_t | lownps = kNLowPts |
||
) |
Try to add new iso-surface.
If something goes wrong, return iterator to the end of fIsos.
Definition at line 53 of file TGL5DPainter.cxx.
|
privatevirtual |
Return some gl states to original values.
Implements TGLPlotPainter.
Definition at line 368 of file TGL5DPainter.cxx.
|
private |
Draw full cloud of points.
Definition at line 464 of file TGL5DPainter.cxx.
|
private |
Draw one iso-surface.
Definition at line 517 of file TGL5DPainter.cxx.
|
privatevirtual |
|
inlineprivatevirtual |
Implements TGLPlotPainter.
Definition at line 126 of file TGL5DPainter.h.
|
inlineprivatevirtual |
Implements TGLPlotPainter.
Definition at line 124 of file TGL5DPainter.h.
|
inlineprivatevirtual |
Implements TGLPlotPainter.
Definition at line 125 of file TGL5DPainter.h.
Draw cloud for selected iso-surface.
Definition at line 489 of file TGL5DPainter.cxx.
|
inline |
Definition at line 106 of file TGL5DPainter.h.
|
inline |
Definition at line 109 of file TGL5DPainter.h.
Return info for plot part under cursor.
Implements TVirtualGLPainter.
Definition at line 130 of file TGL5DPainter.cxx.
|
virtual |
Create mesh.
InitGeometry creates surfaces for auto-iso levels. Called the first time and each time number of auto-levels is reset via the editor.
Implements TGLPlotPainter.
Definition at line 142 of file TGL5DPainter.cxx.
|
privatevirtual |
Initialize OpenGL state variables.
Implements TGLPlotPainter.
Definition at line 356 of file TGL5DPainter.cxx.
|
inline |
Definition at line 103 of file TGL5DPainter.h.
|
private |
Mouse events handler.
Implements TVirtualGLPainter.
Definition at line 201 of file TGL5DPainter.cxx.
Implements TGLPlotPainter.
Definition at line 246 of file TGL5DPainter.cxx.
void TGL5DPainter::RemoveSurface | ( | SurfIter_t | surf | ) |
Remove iso-surface.
Definition at line 117 of file TGL5DPainter.cxx.
void TGL5DPainter::ResetGeometryRanges | ( | ) |
No need to create or delete meshes, number of meshes (iso-levels) are the same, but meshes must be rebuilt in new ranges.
Only in cartesian.
Definition at line 305 of file TGL5DPainter.cxx.
Set selection range parameter.
Definition at line 271 of file TGL5DPainter.cxx.
Set the number of predefined contours.
Definition at line 286 of file TGL5DPainter.cxx.
|
private |
Set the color for iso-surface.
Definition at line 449 of file TGL5DPainter.cxx.
Definition at line 102 of file TGL5DPainter.h.
User clicks right mouse button (in a pad).
Implements TGLPlotPainter.
Definition at line 190 of file TGL5DPainter.cxx.
TGL5DPainter::SurfIter_t TGL5DPainter::SurfacesBegin | ( | ) |
std::list::begin.
Definition at line 340 of file TGL5DPainter.cxx.
TGL5DPainter::SurfIter_t TGL5DPainter::SurfacesEnd | ( | ) |
std::list::end.
Definition at line 348 of file TGL5DPainter.cxx.
|
private |
Definition at line 80 of file TGL5DPainter.h.
|
private |
Definition at line 72 of file TGL5DPainter.h.
|
private |
Definition at line 68 of file TGL5DPainter.h.
|
private |
Definition at line 69 of file TGL5DPainter.h.
|
private |
Definition at line 71 of file TGL5DPainter.h.
|
private |
Definition at line 65 of file TGL5DPainter.h.
|
private |
Definition at line 66 of file TGL5DPainter.h.
|
private |
Definition at line 81 of file TGL5DPainter.h.
|
private |
Definition at line 78 of file TGL5DPainter.h.
|
private |
Definition at line 76 of file TGL5DPainter.h.
|
private |
Definition at line 77 of file TGL5DPainter.h.