12#ifndef ROOT_TEveGeoShape
13#define ROOT_TEveGeoShape
#define ClassDefOverride(name, id)
winID h TVirtualViewer3D TVirtualGLPainter p
Generic 3D primitive description class.
TClass instances represent classes, structs and namespaces in the ROOT type system.
Base class for TEveUtil visualization elements, providing hierarchy management, rendering control and...
Exception class thrown by TEve classes and macros.
A 3D projected TEveGeoShape.
void UpdateProjection() override
This is virtual method from base-class TEveProjected.
TEveElement * GetProjectedAsElement() override
Returns this projected dynamic-casted to TEveElement.
TEveGeoShapeProjected()
Constructor.
void SetDepthLocal(Float_t d) override
This should never be called as this class is only used for 3D projections.
void ComputeBBox() override
Override of virtual method from TAttBBox.
TEveGeoShapeProjected & operator=(const TEveGeoShapeProjected &)
TEveGeoShapeProjected(const TEveGeoShapeProjected &)
~TEveGeoShapeProjected() override
Destructor.
void SetProjection(TEveProjectionManager *proj, TEveProjectable *model) override
This is virtual method from base-class TEveProjected.
Wrapper for TGeoShape with absolute positioning and color attributes allowing display of extracted TG...
TEveGeoShape(const TEveGeoShape &)
virtual TBuffer3D * MakeBuffer3D()
Create a TBuffer3D suitable for presentation of the shape.
void SetShape(TGeoShape *s)
Set TGeoShape shown by this object.
void SetNSegments(Int_t s)
Set number of segments.
void Save(const char *file, const char *name="Extract")
Save the shape tree as TEveGeoShapeExtract.
static TGeoManager * GetGeoMangeur()
Return static geo-manager that is used internally to make shapes lead a happy life.
TEveGeoShape & operator=(const TEveGeoShape &)
TGeoCompositeShape * fCompositeShape
void SaveExtract(const char *file, const char *name)
Save the shape tree as TEveGeoShapeExtract.
TClass * ProjectedClass(const TEveProjection *p) const override
Return class for projected objects:
static TGeoHMatrix * GetGeoHMatrixIdentity()
Return static identity matrix in homogeneous representation.
static TEveGeoShape * ImportShapeExtract(TEveGeoShapeExtract *gse, TEveElement *parent=nullptr)
Import a shape extract 'gse' under element 'parent'.
Int_t GetNSegments() const
static TEveGeoShape * SubImportShapeExtract(TEveGeoShapeExtract *gse, TEveElement *parent)
Recursive version for importing a shape extract tree.
static TGeoManager * fgGeoMangeur
Temporary holder (if passed shape is composite shape).
~TEveGeoShape() override
Destructor.
void ComputeBBox() override
Compute bounding-box.
void Paint(Option_t *option="") override
Paint object.
TGeoShape * MakePolyShape()
Create derived TEveGeoShape form a TGeoCompositeShape.
TObject * GetObject(const TEveException &) const override
Get a TObject associated with this render-element.
TEveGeoShapeExtract * DumpShapeTree(TEveGeoShape *geon, TEveGeoShapeExtract *parent=nullptr)
Export this shape and its descendants into a geoshape-extract.
TGeoShape * GetShape() const
void WriteExtract(const char *name)
Write the shape tree as TEveGeoShapeExtract to current directory.
Abstract base-class for non-linear projectable objects.
Abstract base class for classes that hold results of a non-linear projection transformation.
Manager class for steering of projections and managing projected objects.
Base-class for non-linear projections.
Abstract base-class for 2D/3D shapes.
Composite shapes are Boolean combinations of two or more shape components.
Matrix class used for computing global transformations Should NOT be used for node definition.
The manager class for any TGeo geometry.
Base abstract class for all shapes.
Mother of all ROOT objects.