ROOT  6.06/09
Reference Guide
TGLCylinder.h
Go to the documentation of this file.
1 // @(#)root/gl:$Id$
2 // Author: Timur Pocheptsov 03/08/2004
3 // NOTE: This code moved from obsoleted TGLSceneObject.h / .cxx - see these
4 // attic files for previous CVS history
5 
6 /*************************************************************************
7  * Copyright (C) 1995-2006, Rene Brun and Fons Rademakers. *
8  * All rights reserved. *
9  * *
10  * For the licensing terms see $ROOTSYS/LICENSE. *
11  * For the list of contributors see $ROOTSYS/README/CREDITS. *
12  *************************************************************************/
13 
14 #ifndef ROOT_TGLCylinder
15 #define ROOT_TGLCylinder
16 
17 #ifndef ROOT_TGLLogicalShape
18 #include "TGLLogicalShape.h"
19 #endif
20 
21 class TBuffer3DTube;
22 
24 {
25 private:
29 
32 
33 public:
34  TGLCylinder(const TBuffer3DTube & buffer);
35  ~TGLCylinder();
36 
37  virtual UInt_t DLOffset(Short_t lod) const;
38 
39  // Cylinders support LOD (tesselation quality) adjustment along
40  // X/Y axes (round the cylinder radius), but not along length (Z)
41  virtual ELODAxes SupportedLODAxes() const { return ELODAxes(kLODAxesX | kLODAxesY); }
42  virtual Short_t QuantizeShapeLOD(Short_t shapeLOD, Short_t combiLOD) const;
43  virtual void DirectDraw(TGLRnrCtx & rnrCtx) const;
44 
45 private:
46  ClassDef(TGLCylinder,0); // a cylinderical logical shape
47 };
48 
49 #endif
50 
Double_t fPhi1
Definition: TGLCylinder.h:28
Complete tube description class - see TBuffer3DTypes for producer classes.
Definition: TBuffer3D.h:157
The TGLRnrCtx class aggregates data for a given redering context as needed by various parts of the RO...
Definition: TGLRnrCtx.h:40
Double_t fDz
Definition: TGLCylinder.h:27
Double_t fR3
Definition: TGLCylinder.h:26
Implements a native ROOT-GL cylinder that can be rendered at different levels of detail.
Definition: TGLCylinder.h:23
bool Bool_t
Definition: RtypesCore.h:59
ClassDef(TGLCylinder, 0)
TGLCylinder(const TBuffer3DTube &buffer)
Copy out relevant parts of buffer - we create and delete mesh parts on demand in DirectDraw() and the...
Double_t fR2
Definition: TGLCylinder.h:26
virtual ELODAxes SupportedLODAxes() const
Definition: TGLCylinder.h:41
TGLVector3 fHighPlaneNorm
Definition: TGLCylinder.h:30
3 component (x/y/z) vector class.
Definition: TGLUtil.h:250
~TGLCylinder()
destructor
Bool_t fSegMesh
Definition: TGLCylinder.h:31
unsigned int UInt_t
Definition: RtypesCore.h:42
short Short_t
Definition: RtypesCore.h:35
Abstract logical shape - a GL 'drawable' - base for all shapes - faceset sphere etc.
virtual UInt_t DLOffset(Short_t lod) const
Return display-list offset for given LOD.
double Double_t
Definition: RtypesCore.h:55
TGLVector3 fLowPlaneNorm
Definition: TGLCylinder.h:30
virtual Short_t QuantizeShapeLOD(Short_t shapeLOD, Short_t combiLOD) const
Factor in scene/viewer LOD and quantize.
Double_t fPhi2
Definition: TGLCylinder.h:28
virtual void DirectDraw(TGLRnrCtx &rnrCtx) const
Debug tracing.
Double_t fR1
Definition: TGLCylinder.h:26
Double_t fR4
Definition: TGLCylinder.h:26