/usr/include/root/TGLFaceSet.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 | // @(#)root/gl:$Id$
// Author: Timur Pocheptsov 03/08/2004
// NOTE: This code moved from obsoleted TGLSceneObject.h / .cxx - see these
// attic files for previous CVS history
/*************************************************************************
* 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_TGLFaceSet
#define ROOT_TGLFaceSet
#ifndef ROOT_TGLLogicalShape
#include "TGLLogicalShape.h"
#endif
#ifndef ROOT_CsgOps
#include "CsgOps.h"
#endif
///////////////////////////////////////////////////////////////////////
class TGLFaceSet : public TGLLogicalShape
{
private:
std::vector<Double_t> fVertices;
std::vector<Double_t> fNormals;
std::vector<Int_t> fPolyDesc;
UInt_t fNbPols;
static Bool_t fgEnforceTriangles;
public:
TGLFaceSet(const TBuffer3D & buffer);
virtual void DirectDraw(TGLRnrCtx & rnrCtx) const;
void SetFromMesh(const RootCsg::TBaseMesh *m);
void CalculateNormals();
void EnforceTriangles();
std::vector<Double_t>& GetVertices() { return fVertices; }
std::vector<Double_t>& GetNormals() { return fNormals; }
std::vector<Int_t>& GetPolyDesc() { return fPolyDesc; }
UInt_t GetNbPols() { return fNbPols; }
static Bool_t GetEnforceTriangles();
static void SetEnforceTriangles(Bool_t e);
private:
void GLDrawPolys() const;
Int_t CheckPoints(const Int_t *source, Int_t *dest) const;
static Bool_t Eq(const Double_t *p1, const Double_t *p2);
ClassDef(TGLFaceSet,0) // a faceset logical shape
};
#endif
|