14 #ifndef ROOT_TGLFaceSet
15 #define ROOT_TGLFaceSet
17 #ifndef ROOT_TGLLogicalShape
The TGLRnrCtx class aggregates data for a given redering context as needed by various parts of the RO...
void SetFromMesh(const RootCsg::TBaseMesh *m)
Should only be done on an empty faceset object.
std::vector< Int_t > & GetPolyDesc()
virtual void DirectDraw(TGLRnrCtx &rnrCtx) const
Debug tracing.
Implements a native ROOT-GL representation of an arbitrary set of polygons.
#define ClassDef(name, id)
static double p2(double t, double a, double b, double c)
std::vector< Int_t > fPolyDesc
static void SetEnforceTriangles(Bool_t e)
Set state of static flag EnforceTriangles.
std::vector< Double_t > & GetVertices()
static Bool_t GetEnforceTriangles()
Get current state of static flag EnforceTriangles.
std::vector< Double_t > & GetNormals()
Generic 3D primitive description class.
static Bool_t Eq(const Double_t *p1, const Double_t *p2)
test equality
static double p1(double t, double a, double b)
Abstract logical shape - a GL 'drawable' - base for all shapes - faceset sphere etc.
std::vector< Double_t > fVertices
static Bool_t fgEnforceTriangles
void EnforceTriangles()
Use GLU tesselator to replace all polygons with N > 3 with triangles.
void CalculateNormals()
CalculateNormals.
Int_t CheckPoints(const Int_t *source, Int_t *dest) const
CheckPoints.
TGLFaceSet(const TBuffer3D &buffer)
constructor
#define dest(otri, vertexptr)
std::vector< Double_t > fNormals