Logo ROOT   6.10/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 #include "TGLLogicalShape.h"
18 
19 class TBuffer3DTube;
20 
22 {
23 private:
27 
30 
31 public:
32  TGLCylinder(const TBuffer3DTube & buffer);
33  ~TGLCylinder();
34 
35  virtual UInt_t DLOffset(Short_t lod) const;
36 
37  // Cylinders support LOD (tesselation quality) adjustment along
38  // X/Y axes (round the cylinder radius), but not along length (Z)
39  virtual ELODAxes SupportedLODAxes() const { return ELODAxes(kLODAxesX | kLODAxesY); }
40  virtual Short_t QuantizeShapeLOD(Short_t shapeLOD, Short_t combiLOD) const;
41  virtual void DirectDraw(TGLRnrCtx & rnrCtx) const;
42 
43 private:
44  ClassDef(TGLCylinder,0); // a cylinderical logical shape
45 };
46 
47 #endif
48 
Double_t fPhi1
Definition: TGLCylinder.h:26
Complete tube description class - see TBuffer3DTypes for producer classes.
Definition: TBuffer3D.h:155
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:25
virtual ELODAxes SupportedLODAxes() const
Definition: TGLCylinder.h:39
Double_t fR3
Definition: TGLCylinder.h:24
Implements a native ROOT-GL cylinder that can be rendered at different levels of detail.
Definition: TGLCylinder.h:21
virtual UInt_t DLOffset(Short_t lod) const
Return display-list offset for given LOD.
bool Bool_t
Definition: RtypesCore.h:59
TGLCylinder(const TBuffer3DTube &buffer)
Copy out relevant parts of buffer - we create and delete mesh parts on demand in DirectDraw() and the...
#define ClassDef(name, id)
Definition: Rtypes.h:297
virtual void DirectDraw(TGLRnrCtx &rnrCtx) const
Debug tracing.
Double_t fR2
Definition: TGLCylinder.h:24
TGLVector3 fHighPlaneNorm
Definition: TGLCylinder.h:28
3 component (x/y/z) vector class.
Definition: TGLUtil.h:246
~TGLCylinder()
destructor
Bool_t fSegMesh
Definition: TGLCylinder.h:29
unsigned int UInt_t
Definition: RtypesCore.h:42
short Short_t
Definition: RtypesCore.h:35
virtual Short_t QuantizeShapeLOD(Short_t shapeLOD, Short_t combiLOD) const
Factor in scene/viewer LOD and quantize.
Abstract logical shape - a GL 'drawable' - base for all shapes - faceset sphere etc.
double Double_t
Definition: RtypesCore.h:55
TGLVector3 fLowPlaneNorm
Definition: TGLCylinder.h:28
Double_t fPhi2
Definition: TGLCylinder.h:26
Double_t fR1
Definition: TGLCylinder.h:24
Double_t fR4
Definition: TGLCylinder.h:24