12#ifndef ROOT7_REveGeoPolyShape
13#define ROOT7_REveGeoPolyShape
24namespace Experimental {
53 if (i <=
j) {
fI = i;
fJ =
j; }
54 else {
fI =
j;
fJ = i; }
59 if (
fI ==
e.fI)
return fJ <
e.fJ;
60 else return fI <
e.fI;
bool Bool_t
Boolean (0=false, 1=true) (bool)
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t dest
void FillRenderData(REveRenderData &rd)
REveGeoPolyShape()=default
static Bool_t fgAutoCalculateNormals
static void SetAutoEnforceTriangles(Bool_t f)
const TBuffer3D & GetBuffer3D(Int_t reqSections, Bool_t localFrame) const override
Fill static buffer 3D.
~REveGeoPolyShape() override=default
std::vector< UInt_t > fPolyDesc
static void SetAutoCalculateNormals(Bool_t f)
void EnforceTriangles()
Use GLU tesselator to replace all polygons with N > 3 with triangles.
void BuildFromShape(TGeoShape *shape, Int_t n_seg=60)
Produce all polygons from normal shape.
void BuildFromComposite(TGeoCompositeShape *cshp, Int_t n_seg=60)
Produce all polygons from composite shape.
std::vector< Double_t > fNormals
ClassDefOverride(REveGeoPolyShape, 1)
REveGeoPolyShape(const REveGeoPolyShape &)=delete
REveGeoPolyShape & operator=(const REveGeoPolyShape &)=delete
void FillBuffer3D(TBuffer3D &buffer, Int_t reqSections, Bool_t localFrame) const override
Fill the passed buffer 3D.
std::vector< Double_t > fVertices
static Bool_t GetAutoCalculateNormals()
Int_t GetNumFaces() const
void CalculateNormals()
CalculateNormals per polygon (flat shading)
static Bool_t GetAutoEnforceTriangles()
static Bool_t fgAutoEnforceTriangles
TBuffer3D * MakeBuffer3D() const override
Create buffer 3D and fill it with point/segment/poly data.
Int_t CheckPoints(const UInt_t *source, UInt_t *dest) const
CheckPoints.
void SetFromBuff3D(const TBuffer3D &buffer)
Set data-members from a Csg mesh.
static Bool_t Eq(const Double_t *p1, const Double_t *p2)
Test equality of points with epsilon 1e-10.
Generic 3D primitive description class.
Composite shapes are Boolean combinations of two or more shape components.
Base abstract class for all shapes.
Namespace for new ROOT classes and functions.
bool operator<(const Edge_t &e) const