74 paintComponents =
gPad->GetViewer3D()->OpenComposite(buff);
85 gPad->GetViewer3D()->CloseComposite();
92 ::Warning(
"TEveGeoPolyShape::Construct",
"Failed extracting CSG tesselation for shape '%s'.", cshape->
GetName());
126 b.ClearSectionsValid();
142 std::map<Edge_t, Int_t> edges;
148 for (
UInt_t j = 0; j < nv; ++j)
150 Edge_t e(pd[j], (j != nv - 1) ? pd[j+1] : pd[0]);
151 if (edges.find(
e) == edges.end())
153 edges.insert(std::make_pair(
e, 0));
164 Int_t si = 0, scnt = 0;
165 for (std::map<Edge_t, Int_t>::iterator i = edges.begin(); i != edges.end(); ++i)
168 b.fSegs[si++] = i->first.fI;
169 b.fSegs[si++] = i->first.fJ;
180 for (
UInt_t j = 0; j < nv; ++j)
182 b.fPols[pi++] = edges[
Edge_t(pd[j], (j != nv - 1) ? pd[j+1] : pd[0])];
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize fs
Generic 3D primitive description class.
void SetLocalMasterIdentity()
Set kRaw tessellation section of buffer with supplied sizes.
static UInt_t DecCSLevel()
Decrement CS level.
static UInt_t GetCSLevel()
Return CS level.
void SetSectionsValid(UInt_t mask)
static void IncCSLevel()
Increment CS level.
void SetAABoundingBox(const Double_t origin[3], const Double_t halfLengths[3])
Set fBBVertex in kBoundingBox section to a axis aligned (local) BB using supplied origin and box half...
Exception safe wrapper for setting gGeoManager.
Description of TEveGeoPolyShape.
void FillBuffer3D(TBuffer3D &buffer, Int_t reqSections, Bool_t localFrame) const override
Fill the passed buffer 3D.
const TBuffer3D & GetBuffer3D(Int_t reqSections, Bool_t localFrame) const override
Fill static buffer 3D.
static TEveGeoPolyShape * Construct(TGeoCompositeShape *cshp, Int_t n_seg)
Static constructor from a composite shape.
TBuffer3D * MakeBuffer3D() const override
Create buffer 3D and fill it with point/segment/poly data.
std::vector< Double_t > fVertices
TEveGeoPolyShape()
Constructor.
void SetFromFaceSet(TGLFaceSet *fs)
Set data-members from a face-set.
std::vector< Int_t > fPolyDesc
static TGeoManager * GetGeoMangeur()
Return static geo-manager that is used internally to make shapes lead a happy life.
static TGeoHMatrix * GetGeoHMatrixIdentity()
Return static identity matrix in homogeneous representation.
Exception safe wrapper for setting gPad.
This was intended as a TPad wrapper to allow smart updates of groups of pads.
Implements a native ROOT-GL representation of an arbitrary set of polygons.
Implements VirtualViewer3D interface and fills the base-class visualization structures from pad conte...
void EndScene() override
End building of the scene.
void BeginScene() override
Start building of the scene.
TGLLogicalShape * FindLogical(TObject *logid) const override
Find and return logical shape identified by unique logid.
virtual const Double_t * GetOrigin() const
virtual Double_t GetDX() const
virtual Double_t GetDZ() const
virtual Double_t GetDY() const
void Paint(Option_t *option) override
Special schema for feeding the 3D buffers to the painter client.
Composite shapes are Boolean combinations of two or more shape components.
TGeoBoolNode * GetBoolNode() const
Geometrical transformation package.
static void SetTransform(TGeoMatrix *matrix)
Set current transformation matrix that applies to shape.
const char * GetName() const override
Get the shape name.
static TGeoMatrix * GetTransform()
Returns current transformation matrix that applies to shape.
void Add(TObject *obj) override
virtual void Warning(const char *method, const char *msgfmt,...) const
Issue warning message.
void SetViewer3D(TVirtualViewer3D *viewer3d) override
TList * GetListOfPrimitives() const override