Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TEvePlot3DGL.cxx
Go to the documentation of this file.
1// @(#)root/eve:$Id$
2// Author: Matevz Tadel, 2009
3
4/*************************************************************************
5 * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. *
6 * All rights reserved. *
7 * *
8 * For the licensing terms see $ROOTSYS/LICENSE. *
9 * For the list of contributors see $ROOTSYS/README/CREDITS. *
10 *************************************************************************/
11
12#include "TEvePlot3DGL.h"
13#include "TEvePlot3D.h"
14#include "TGLPlot3D.h"
15
16#include "TGLRnrCtx.h"
17#include "TGLIncludes.h"
18
19/** \class TEvePlot3DGL
20\ingroup TEve
21OpenGL renderer class for TEvePlot3D.
22*/
23
25
26////////////////////////////////////////////////////////////////////////////////
27/// Constructor.
28
30 TGLObject(), fM(nullptr), fPlotLogical(nullptr)
31{
32 fDLCache = kFALSE; // Disable display list.
33}
34
35////////////////////////////////////////////////////////////////////////////////
36/// Set model object.
37
39{
40 fM = SetModelDynCast<TEvePlot3D>(obj);
42 return kTRUE;
43}
44
45////////////////////////////////////////////////////////////////////////////////
46/// Set bounding box.
47
49{
50 // !! This ok if master sub-classed from TAttBBox
51 //SetAxisAlignedBBox(((TEvePlot3D*)fExternalObj)->AssertBBox());
53}
54
55////////////////////////////////////////////////////////////////////////////////
56/// Render with OpenGL.
57
59{
60 // printf("TEvePlot3DGL::DirectDraw LOD %d\n", rnrCtx.CombiLOD());
61 if (fPlotLogical)
62 {
63 fPlotLogical->DirectDraw(rnrCtx);
64 }
65}
constexpr Bool_t kFALSE
Definition RtypesCore.h:101
constexpr Bool_t kTRUE
Definition RtypesCore.h:100
const char Option_t
Definition RtypesCore.h:66
#define ClassImp(name)
Definition Rtypes.h:377
OpenGL renderer class for TEvePlot3D.
void DirectDraw(TGLRnrCtx &rnrCtx) const override
Render with OpenGL.
Bool_t SetModel(TObject *obj, const Option_t *opt=nullptr) override
Set model object.
void SetBBox() override
Set bounding box.
TGLPlot3D * fPlotLogical
TEvePlot3D * fM
TEvePlot3DGL()
Constructor.
Bool_t fLogY
Definition TEvePlot3D.h:31
TObject * fPlot
Definition TEvePlot3D.h:27
Bool_t fLogX
Definition TEvePlot3D.h:30
TString fPlotOption
Definition TEvePlot3D.h:28
Bool_t fLogZ
Definition TEvePlot3D.h:32
TGLBoundingBox fBoundingBox
Also plays the role of ID.
virtual void DirectDraw(TGLRnrCtx &rnrCtx) const =0
const TGLBoundingBox & BoundingBox() const
Bool_t fDLCache
display-list validity bit-field
Base-class for direct OpenGL renderers.
Definition TGLObject.h:22
static TGLPlot3D * CreatePlot(TH3 *h, TPolyMarker3D *pm)
Create GL plot for specified TH3 and polymarker.
Definition TGLPlot3D.cxx:87
The TGLRnrCtx class aggregates data for a given redering context as needed by various parts of the RO...
Definition TGLRnrCtx.h:41
Mother of all ROOT objects.
Definition TObject.h:41