12#ifndef ROOT_TEveGeoShape
13#define ROOT_TEveGeoShape
#define ClassDef(name, id)
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.
TEveGeoShapeProjected()
Constructor.
virtual TEveElement * GetProjectedAsElement()
Returns this projected dynamic-casted to TEveElement.
virtual void ComputeBBox()
Override of virtual method from TAttBBox.
virtual void UpdateProjection()
This is virtual method from base-class TEveProjected.
virtual void SetProjection(TEveProjectionManager *proj, TEveProjectable *model)
This is virtual method from base-class TEveProjected.
virtual void SetDepthLocal(Float_t d)
This should never be called as this class is only used for 3D projections.
TEveGeoShapeProjected & operator=(const TEveGeoShapeProjected &)
virtual ~TEveGeoShapeProjected()
Destructor.
TEveGeoShapeProjected(const TEveGeoShapeProjected &)
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.
TEveGeoShapeExtract * DumpShapeTree(TEveGeoShape *geon, TEveGeoShapeExtract *parent=0)
Export this shape and its descendants into a geoshape-extract.
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.
virtual void ComputeBBox()
Compute bounding-box.
virtual void Paint(Option_t *option="")
Paint object.
virtual TObject * GetObject(const TEveException &) const
Get a TObject associated with this render-element.
TEveGeoShape & operator=(const TEveGeoShape &)
TGeoCompositeShape * fCompositeShape
virtual TClass * ProjectedClass(const TEveProjection *p) const
Return class for projected objects:
void SaveExtract(const char *file, const char *name)
Save the shape tree as TEveGeoShapeExtract.
static TGeoHMatrix * GetGeoHMatrixIdentity()
Return static identity matrix in homogeneous representation.
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).
TGeoShape * MakePolyShape()
Create derived TEveGeoShape form a TGeoCompositeShape.
static TEveGeoShape * ImportShapeExtract(TEveGeoShapeExtract *gse, TEveElement *parent=0)
Import a shape extract 'gse' under element 'parent'.
TGeoShape * GetShape() const
virtual ~TEveGeoShape()
Destructor.
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.
Class handling Boolean composition of shapes.
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.
static constexpr double s