/usr/include/root/TGLPlotBox.h is in libroot-graf3d-gl-dev 5.34.19+dfsg-1.2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 | // @(#)root/gl:$Id$
// Author: Timur Pocheptsov 31/08/2006
/*************************************************************************
* Copyright (C) 1995-2006, Rene Brun and Fons Rademakers. *
* All rights reserved. *
* *
* For the licensing terms see $ROOTSYS/LICENSE. *
* For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/
#ifndef ROOT_TGLPlotFrame
#define ROOT_TGLPlotFrame
#include <vector>
#ifndef ROOT_Rtypes
#include "Rtypes.h"
#endif
#ifndef ROOT_TGLUtil
#include "TGLUtil.h"
#endif
class TColor;
/*
TGLPlotBox draws a box behind a plot.
*/
class TGLPlotBox {
private:
const TColor *fFrameColor;
const Bool_t fXOYSelectable;
const Bool_t fXOZSelectable;
const Bool_t fYOZSelectable;
Bool_t fSelectablePairs[4][2];
TGLVertex3 f3DBox[8];
mutable TGLVertex3 f2DBox[8];
mutable TGLVertex3 f2DBoxU[8];
mutable Int_t fFrontPoint;
//The sizes of a "unit" cube.
Double_t fRangeXU;
Double_t fRangeYU;
Double_t fRangeZU;
Bool_t fDrawBack;
Bool_t fDrawFront;
public:
TGLPlotBox(Bool_t xoySelectable, Bool_t xozSelectable, Bool_t yozSelectable);
//ClassDef macro adds some virtual functions,
//so, to supress g++ warnings virtual destructor declared.
virtual ~TGLPlotBox();
void DrawBox(Int_t selectedPart, Bool_t selectionPass,
const std::vector<Double_t> &zLevels,
Bool_t highColor)const;
void SetPlotBox(const Rgl::Range_t &xRange,
const Rgl::Range_t &yRange,
const Rgl::Range_t &zRange);
void SetPlotBox(const Rgl::Range_t &xRange, Double_t rangeXU,
const Rgl::Range_t &yRange, Double_t rangeYU,
const Rgl::Range_t &zRange, Double_t rangeZU);
void SetFrameColor(const TColor *color);
Int_t FindFrontPoint()const;
Int_t GetFrontPoint()const;
const TGLVertex3 *Get3DBox()const;
const TGLVertex3 *Get2DBox()const;
static const Int_t fgFramePlanes[][4];
static const Int_t fgBackPairs[][2];
static const Int_t fgFrontPairs[][2];
static const Double_t fgNormals[][3];
void SetDrawFront(Bool_t d) {fDrawFront = d;}
Bool_t GetDrawFront() const {return fDrawFront;}
void SetDrawBack(Bool_t d) {fDrawBack = d;}
Bool_t GetDrawBack() const {return fDrawBack;}
private:
void DrawBack(Int_t selectedPart, Bool_t selectionPass, const std::vector<Double_t> &zLevels, Bool_t highColor)const;
void DrawFront()const;
void DrawBackPlane(Int_t plane, Bool_t selectionPass,
const std::vector<Double_t> &zLevels)const;
ClassDef(TGLPlotBox, 0)//Back box for plot.
};
#endif
|