54 "Static geo manager used for wrapped TGeoShapes.");
83TGeoManager *REveGeoShape::fgGeoManager = init_geo_mangeur();
104 return &localGeoHMatrixIdentity;
152 std::unique_ptr<REveGeoPolyShape> tmp_egps;
158 tmp_egps = std::make_unique<REveGeoPolyShape>();
160 egps = tmp_egps.get();
165 fRenderData = std::make_unique<REveRenderData>(
"makeEveGeoShape");
242 TFile f(file,
"RECREATE");
272 rgba[0] =
c->GetRed();
273 rgba[1] =
c->GetGreen();
274 rgba[2] =
c->GetBlue();
281 Float_t rgba[4] = { 1, 0, 0, 1 };
284 rgba[0] =
c->GetRed();
285 rgba[1] =
c->GetGreen();
286 rgba[2] =
c->GetBlue();
364 return TClass::GetClass<REvePolygonSetProjected>();
366 return TClass::GetClass<REveGeoShapeProjected>();
376 std::unique_ptr<TBuffer3D> buff;
427 Warning(
"SetDepthLocal",
"This function only exists to fulfill an abstract interface.");
float Float_t
Float 4 bytes (float)
void Warning(const char *location, const char *msgfmt,...)
Use this function in warning situations.
winID h TVirtualViewer3D TVirtualGLPainter p
R__EXTERN TGeoManager * gGeoManager
R__EXTERN TGeoIdentity * gGeoIdentity
const char * GetCTitle() const
virtual REveTrans & RefMainTrans()
Return reference to main transformation.
void SetMainColorRGB(UChar_t r, UChar_t g, UChar_t b)
Convert RGB values to Color_t and call SetMainColor.
void SetMainAlpha(Float_t alpha)
Set main-transparency via float alpha variable.
void BBoxCheckPoint(const REveVector &v)
const char * GetCName() const
virtual void AddElement(REveElement *el)
Add el to the list of children.
virtual Bool_t GetRnrSelf() const
virtual Bool_t SetRnrChildren(Bool_t rnr)
Set render state of this element's children, i.e.
virtual void InitMainTrans(Bool_t can_edit=kTRUE)
Initialize the main transformation to identity matrix, without motion.
std::unique_ptr< REveRenderData > fRenderData
! Vertex / normal / triangle index information for rendering.
Bool_t HasChildren() const
virtual Char_t GetMainTransparency() const
virtual Bool_t SetRnrSelf(Bool_t rnr)
Set render state of this element, i.e.
virtual Bool_t GetRnrChildren() const
void BBoxInit()
Start filling the bounding box with BBoxCheckPoint(): min at +infinity, max at -infinity,...
void BBoxCheckBox(const REveVector &c, const REveVector &h)
Grow the box to hold the axis-aligned box with centre c and half sizes h.
virtual void BuildRenderData()
Build fRenderData, what the client draws.
REveGeoManagerHolder Exception-safe global variable holders.
void FillRenderData(REveRenderData &rd)
Int_t GetNumFaces() const
void ComputeBBox() override
Fill the bounding box (virtual from REveElement).
std::unique_ptr< TBuffer3D > fBuff
! 3d buffer
void SetProjection(REveProjectionManager *proj, REveProjectable *model) override
This is virtual method from base-class REveProjected.
void UpdateProjection() override
This is virtual method from base-class REveProjected.
~REveGeoShapeProjected() override
Destructor.
REveGeoShapeProjected()
Constructor.
void SetDepthLocal(Float_t d) override
This should never be called as this class is only used for 3D projections.
static REveGeoShape * ImportShapeExtract(REveGeoShapeExtract *gse, REveElement *parent=nullptr)
Import a shape extract 'gse' under element 'parent'.
TGeoShape * MakePolyShape()
Create derived REveGeoShape form a TGeoCompositeShape.
~REveGeoShape() override
Destructor.
static TGeoManager * fgGeoManager
void SetNSegments(Int_t s)
Set number of segments.
void SaveExtract(const char *file, const char *name)
Save the shape tree as REveGeoShapeExtract.
TGeoShape * GetShape() const
TClass * ProjectedClass(const REveProjection *p) const override
Return class for projected objects:
static REveGeoShape * SubImportShapeExtract(REveGeoShapeExtract *gse, REveElement *parent)
Recursive version for importing a shape extract tree.
Int_t WriteCoreJson(nlohmann::json &j, Int_t rnr_offset) override
Fill core part of JSON representation.
void ComputeBBox() override
Compute bounding-box.
void WriteExtract(const char *name)
Write the shape tree as REveGeoShapeExtract to current directory.
void SetShape(TGeoShape *s)
Set TGeoShape shown by this object.
virtual std::unique_ptr< TBuffer3D > MakeBuffer3D()
Create a TBuffer3D suitable for presentation of the shape, in the shape's own frame.
void BuildRenderData() override
Crates 3D point array for rendering.
static TGeoHMatrix * GetGeoHMatrixIdentity()
Return static identity matrix in homogeneous representation.
REveGeoShape(const REveGeoShape &)=delete
TGeoCompositeShape * fCompositeShape
! Temporary holder (if passed shape is composite shape).
REveGeoShapeExtract * DumpShapeTree(REveGeoShape *geon, REveGeoShapeExtract *parent=nullptr)
Export this shape and its descendants into a geoshape-extract.
virtual void SetProjection(REveProjectionManager *mng, REveProjectable *model)
Sets projection manager and reference in the projectable object.
REveProjectable * fProjectable
REveProjectionManager * fManager
REveProjectionManager Manager class for steering of projections and managing projected objects.
REveProjection * GetProjection()
const REveTrans * GetModelTrans(REveElement *model, REveTrans &t)
Return the matrix that takes the coordinates of model into the frame of this manager,...
REveProjection Base for specific classes that implement non-linear projections.
void ProjectPointdv(Double_t *v, Float_t d)
Project double array.
Bool_t GetDrawFrame() const
Color_t GetLineColor() const
void CopyVizParams(const REveElement *el) override
Copy visualization parameters from element el.
void SetLineColor(Color_t c)
void SetMiniFrame(Bool_t r)
Bool_t GetMiniFrame() const
Int_t WriteCoreJson(nlohmann::json &j, Int_t rnr_offset) override
Fill core part of JSON representation.
void SetDrawFrame(Bool_t f)
Color_t GetFillColor() const
void SetFromArray(const Double_t arr[16])
Set matrix from Double_t array.
TClass instances represent classes, structs and namespaces in the ROOT type system.
virtual void SetOwner(Bool_t enable=kTRUE)
Set whether this collection is the owner (enable==true) of its content.
The color creation and management class.
static Int_t GetColor(const char *hexcolor)
Static method returning color number for color specified by hex color string of form: "#rrggbb",...
A file, usually with extension .root, that stores data and code in the form of serialized objects in ...
virtual const Double_t * GetOrigin() const
virtual Double_t GetDX() const
virtual Double_t GetDZ() const
virtual Double_t GetDY() const
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.
An identity transformation.
The manager class for any TGeo geometry.
The shape encapsulating an assembly (union) of volumes.
Base abstract class for all shapes.
virtual TBuffer3D * MakeBuffer3D() const
void Add(TObject *obj) override
const char * GetName() const override
Returns name of object.
const char * GetTitle() const override
Returns title of object.
virtual void SetNameTitle(const char *name, const char *title)
Set all the TNamed parameters (name and title).
virtual UInt_t GetUniqueID() const
Return the unique object id.
virtual Int_t Write(const char *name=nullptr, Int_t option=0, Int_t bufsize=0)
Write this object to the current directory.
virtual void SetUniqueID(UInt_t uid)
Set the unique object id.
Namespace for ROOT features in testing.
REveVectorT< Float_t > REveVector