23 auto c =
new TCanvas(
"composite shape",
"A * B - C");
36 auto box1 =
new TGeoBBox(
"box1", 5., 5., 5.);
49 tr->RegisterYourself();
50 tr1->RegisterYourself();
51 tr2->RegisterYourself();
52 tr3->RegisterYourself();
55 (
"mir",
"(sph * box) + (sph1:tr - box1:tr1)");
72 en->GetNode()->GetVolume()->SetVisibility(
kFALSE);
78 en->ExpandIntoListTreesRecursively();
79 en->SaveExtract(
"csg.root",
"CSG Demo",
kFALSE);
R__EXTERN TEveManager * gEve
R__EXTERN TGeoManager * gGeoManager
R__EXTERN TSystem * gSystem
static void SetCSGExportNSeg(Int_t nseg)
Sets number of segments used for CSG export.
A wrapper over a TGeoNode, possibly displaced with a global trasformation stored in TEveElement.
void AddGlobalElement(TEveElement *element, TEveElement *parent=nullptr)
Add a global element, i.e.
static TEveManager * Create(Bool_t map_window=kTRUE, Option_t *opt="FIV")
If global TEveManager* gEve is not set initialize it.
void Redraw3D(Bool_t resetCameras=kFALSE, Bool_t dropLogicals=kFALSE)
static void SetEnforceTriangles(Bool_t e)
Set state of static flag EnforceTriangles.
Composite shapes are Boolean combinations of two or more shape components.
The manager class for any TGeo geometry.
void CloseGeometry(Option_t *option="d")
Closing geometry implies checking the geometry validity, fixing shapes with negative parameters (run-...
TGeoVolume * MakeBox(const char *name, TGeoMedium *medium, Double_t dx, Double_t dy, Double_t dz)
Make in one step a volume pointing to a box shape with given medium.
void SetTopVolume(TGeoVolume *vol)
Set the top volume and corresponding node as starting point of the geometry.
TGeoNode * GetTopNode() const
void SetNsegments(Int_t nseg)
Set number of segments for approximating circles in drawing.
Base class describing materials.
Media are used to store properties related to tracking and which are useful only when using geometry ...
Class describing translations.
TGeoVolume, TGeoVolumeMulti, TGeoVolumeAssembly are the volume classes.
virtual int Load(const char *module, const char *entry="", Bool_t system=kFALSE)
Load a shared library.
void box(Int_t pat, Double_t x1, Double_t y1, Double_t x2, Double_t y2)