Logo ROOT  
Reference Guide
geom_alias.C
Go to the documentation of this file.
1/// \file
2/// \ingroup tutorial_eve
3/// Demonstrates usage of geometry aliases - merge ALICE ITS with ATLAS MUON.
4///
5/// \image html eve_geom_alias.png
6/// \macro_code
7///
8/// \author Matevz Tadel
9
10void geom_alias()
11{
13
14 gEve->RegisterGeometryAlias("ALICE", "http://root.cern.ch/files/alice.root");
15 gEve->RegisterGeometryAlias("ATLAS", "http://root.cern.ch/files/atlas.root");
16
17
19
20 auto node1 = gGeoManager->GetTopVolume()->FindNode("ITSV_1");
21 auto its = new TEveGeoTopNode(gGeoManager, node1);
23
25
26 auto node2 = gGeoManager->GetTopVolume()->FindNode("OUTE_1");
27 auto atlas = new TEveGeoTopNode(gGeoManager, node2);
28 gEve->AddGlobalElement(atlas);
29
31
32 // EClipType not exported to CINT (see TGLUtil.h):
33 // 0 - no clip, 1 - clip plane, 2 - clip box
34 auto v = gEve->GetDefaultGLViewer();
35 v->GetClipSet()->SetClipType(TGLClip::EType(2));
36 v->RefreshPadEditor(v);
37
38 v->CurrentCamera().RotateRad(-0.5, -2.4);
39 v->DoDraw();
40}
const Bool_t kTRUE
Definition: RtypesCore.h:89
R__EXTERN TEveManager * gEve
Definition: TEveManager.h:243
R__EXTERN TGeoManager * gGeoManager
Definition: TGeoManager.h:600
A wrapper over a TGeoNode, possibly displaced with a global trasformation stored in TEveElement.
Definition: TEveGeoNode.h:93
void AddGlobalElement(TEveElement *element, TEveElement *parent=0)
Add a global element, i.e.
TGeoManager * GetGeometryByAlias(const TString &alias)
Get geometry with given alias.
TGLViewer * GetDefaultGLViewer() const
Get TGLViewer of the default TEveViewer.
void RegisterGeometryAlias(const TString &alias, const TString &filename)
Register 'name' as an alias for geometry file 'filename'.
static TEveManager * Create(Bool_t map_window=kTRUE, Option_t *opt="FIV")
If global TEveManager* gEve is not set initialize it.
void FullRedraw3D(Bool_t resetCameras=kFALSE, Bool_t dropLogicals=kFALSE)
Perform 3D redraw of all scenes and viewers.
TGeoVolume * GetTopVolume() const
Definition: TGeoManager.h:530
TGeoNode * FindNode(const char *name) const
search a daughter inside the list of nodes