Logo ROOT   6.12/07
Reference Guide
TGeoPainter.h
Go to the documentation of this file.
1 // Author: Andrei Gheata 05/03/02
2 
3 /*************************************************************************
4  * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
5  * All rights reserved. *
6  * *
7  * For the licensing terms see $ROOTSYS/LICENSE. *
8  * For the list of contributors see $ROOTSYS/README/CREDITS. *
9  *************************************************************************/
10 #ifndef ROOT_TGeoPainter
11 #define ROOT_TGeoPainter
12 
13 //////////////////////////////////////////////////////////////////////////
14 // //
15 // TGeoPainter //
16 // //
17 // Painter class utility TGeo geometries. Interfaces visualization //
18 // queries with the viewers. //
19 // //
20 //////////////////////////////////////////////////////////////////////////
21 
22 
23 #include "TVirtualGeoPainter.h"
24 
25 #include "TGeoManager.h"
26 
27 class TString;
28 class TGeoHMatrix;
29 class TGeoNode;
30 class TGeoVolume;
31 class TGeoShape;
32 class TVirtualGeoTrack;
33 class TGeoPhysicalNode;
34 class TGeoChecker;
35 class TGeoOverlap;
36 class TH2F;
37 class TGeoBatemanSol;
38 class TGeoPolygon;
39 
41 private:
42  Double_t fBombX; // bomb factor on X
43  Double_t fBombY; // bomb factor on Y
44  Double_t fBombZ; // bomb factor on Z
45  Double_t fBombR; // bomb factor on radius (cyl or sph)
46  Double_t fCheckedBox[6]; // bounding box of checked node
47  Double_t fMat[9]; // view rotation matrix
48  Int_t fNsegments; // number of segments approximating circles
49  Int_t fNVisNodes; // number of visible nodes
50  Int_t fVisLevel; // depth for drawing
51  Int_t fVisOption; // global visualization option
52  Int_t fExplodedView; // type of exploding current view
53  Bool_t fVisLock; // lock for adding visible volumes
54  Bool_t fTopVisible; // set top volume visible
55  Bool_t fPaintingOverlaps; // lock overlaps painting
56  Bool_t fIsRaytracing; // raytracing flag
57  Bool_t fIsPaintingShape; // flag for shape painting
58  TString fVisBranch; // drawn branch
59  TString fVolInfo; // volume info
60  TGeoNode *fCheckedNode; // checked node
61  TGeoOverlap *fOverlap; // current overlap
62  TGeoHMatrix *fGlobal; // current global matrix
63  TBuffer3D *fBuffer; // buffer used for painting
64  TGeoManager *fGeoManager; // geometry to which applies
65  TGeoChecker *fChecker; // geometry checker
66  TGeoShape *fClippingShape; // clipping shape
67  TGeoVolume *fTopVolume; // top drawn volume
68  TGeoVolume *fLastVolume; // last drawn volume
70  *fPlugin; // User iterator plugin for changing pain volume properties
71  TObjArray *fVisVolumes; // list of visible volumes
72  Bool_t fIsEditable; // flag that geometry is editable
73 
74  void DefineColors() const;
75  void LocalToMasterVect(const Double_t *local, Double_t *master) const;
76 
77 protected:
78  virtual void ClearVisibleVolumes();
79 
80 public:
81  TGeoPainter(TGeoManager *manager);
82  virtual ~TGeoPainter();
83  virtual void AddSize3D(Int_t numpoints, Int_t numsegs, Int_t numpolys);
84  virtual TVirtualGeoTrack *AddTrack(Int_t id, Int_t pdgcode, TObject *part);
85  virtual void AddTrackPoint(Double_t *point, Double_t *box, Bool_t reset=kFALSE);
86  virtual void BombTranslation(const Double_t *tr, Double_t *bombtr);
87  virtual void CheckBoundaryErrors(Int_t ntracks=1000000, Double_t radius=-1.);
88  virtual void CheckBoundaryReference(Int_t icheck=-1);
89  virtual void CheckGeometryFull(Bool_t checkoverlaps=kTRUE, Bool_t checkcrossings=kTRUE, Int_t nrays=10000, const Double_t *vertex=NULL);
90  virtual void CheckGeometry(Int_t nrays, Double_t startx, Double_t starty, Double_t startz) const;
91  void CheckEdit();
92  virtual void CheckPoint(Double_t x=0, Double_t y=0, Double_t z=0, Option_t *option="");
93  virtual void CheckShape(TGeoShape *shape, Int_t testNo, Int_t nsamples, Option_t *option);
94  virtual void CheckOverlaps(const TGeoVolume *vol, Double_t ovlp=0.1, Option_t *option="") const;
95  Int_t CountNodes(TGeoVolume *vol, Int_t level) const;
96  virtual Int_t CountVisibleNodes();
97  virtual void DefaultAngles();
98  virtual void DefaultColors();
99  virtual Int_t DistanceToPrimitiveVol(TGeoVolume *vol, Int_t px, Int_t py);
100  virtual void Draw(Option_t *option="");
101  virtual void DrawBatemanSol(TGeoBatemanSol *sol, Option_t *option="");
102  virtual void DrawOverlap(void *ovlp, Option_t *option="");
103  virtual void DrawCurrentPoint(Int_t color);
104  virtual void DrawOnly(Option_t *option="");
105  virtual void DrawPanel();
106  virtual void DrawPath(const char *path, Option_t *option="");
107  virtual void DrawPolygon(const TGeoPolygon *poly);
108  virtual void DrawShape(TGeoShape *shape, Option_t *option="");
109  virtual void DrawVolume(TGeoVolume *vol, Option_t *option="");
110  virtual void EditGeometry(Option_t *option="");
111  virtual void EstimateCameraMove(Double_t tmin, Double_t tmax, Double_t *start, Double_t *end);
112  virtual void ExecuteManagerEvent(TGeoManager *geom, Int_t event, Int_t px, Int_t py);
113  virtual void ExecuteShapeEvent(TGeoShape *shape, Int_t event, Int_t px, Int_t py);
114  virtual void ExecuteVolumeEvent(TGeoVolume *volume, Int_t event, Int_t px, Int_t py);
115  virtual const char*GetVolumeInfo(const TGeoVolume *volume, Int_t px, Int_t py) const;
116  virtual void GetBombFactors(Double_t &bombx, Double_t &bomby, Double_t &bombz, Double_t &bombr) const
117  {bombx=fBombX; bomby=fBombY; bombz=fBombZ; bombr=fBombR;}
118  virtual Int_t GetBombMode() const {return fExplodedView;}
119  virtual TGeoNode *GetCheckedNode() {return fCheckedNode;}
121  virtual Int_t GetColor(Int_t base, Float_t light) const;
122  virtual const char *GetDrawPath() const {return fVisBranch.Data();}
123  virtual TGeoVolume *GetDrawnVolume() const;
124  virtual TGeoVolume *GetTopVolume() const {return fTopVolume;}
125  virtual Int_t GetVisLevel() const {return fVisLevel;}
126  virtual Int_t GetVisOption() const {return fVisOption;}
127  Int_t GetNsegments() const {return fNsegments;}
128  virtual void GrabFocus(Int_t nfr=0, Double_t dlong=0, Double_t dlat=0, Double_t dpsi=0);
129  virtual Double_t *GetViewBox() {return &fCheckedBox[0];}
130  virtual void GetViewAngles(Double_t &longitude, Double_t &latitude, Double_t &psi);
131  virtual Bool_t IsExplodedView() const {return ((fExplodedView==kGeoVisDefault)?kFALSE:kTRUE);}
132  virtual Bool_t IsRaytracing() const {return fIsRaytracing;}
133  virtual Bool_t IsPaintingShape() const {return fIsPaintingShape;}
134  TH2F *LegoPlot(Int_t ntheta=60, Double_t themin=0., Double_t themax=180.,
135  Int_t nphi=90, Double_t phimin=0., Double_t phimax=360.,
136  Double_t rmin=0., Double_t rmax=9999999, Option_t *option="");
137  void Lock(Bool_t flag = kTRUE) {fVisLock = flag;}
138  virtual void ModifiedPad(Bool_t update=kFALSE) const;
139  virtual void OpProgress(const char *opname, Long64_t current, Long64_t size, TStopwatch *watch=0, Bool_t last=kFALSE, Bool_t refresh=kFALSE, const char *msg="");
140  virtual void Paint(Option_t *option="");
141  virtual void PaintNode(TGeoNode *node, Option_t *option="", TGeoMatrix* global=0);
142  Bool_t PaintShape(const TGeoShape & shape, Option_t * option) const;
143  virtual void PaintShape(TGeoShape *shape, Option_t *option="");
144  virtual void PaintOverlap(void *ovlp, Option_t *option="");
145  virtual void PaintVolume(TGeoVolume *vol, Option_t *option="", TGeoMatrix* global=0);
146  virtual void PrintOverlaps() const;
147  void PaintPhysicalNode(TGeoPhysicalNode *node, Option_t *option="");
148  virtual void RandomPoints(const TGeoVolume *vol, Int_t npoints, Option_t *option="");
149  virtual void RandomRays(Int_t nrays, Double_t startx, Double_t starty, Double_t startz, const char *target_vol=0, Bool_t check_norm=kFALSE);
150  virtual void Raytrace(Option_t *option="");
151  virtual TGeoNode *SamplePoints(Int_t npoints, Double_t &dist, Double_t epsil, const char* g3path);
152  virtual void SetBombFactors(Double_t bombx=1.3, Double_t bomby=1.3, Double_t bombz=1.3, Double_t bombr=1.3);
153  virtual void SetClippingShape(TGeoShape *shape) {fClippingShape = shape;}
154  virtual void SetExplodedView(Int_t iopt=0);
155  virtual void SetNsegments(Int_t nseg=20);
156  virtual void SetNmeshPoints(Int_t npoints);
157  virtual void SetGeoManager(TGeoManager *geom) {fGeoManager=geom;}
158  virtual void SetIteratorPlugin(TGeoIteratorPlugin *plugin) {fPlugin = plugin; ModifiedPad();}
159  virtual void SetCheckedNode(TGeoNode *node);
160  virtual void SetRaytracing(Bool_t flag=kTRUE) {fIsRaytracing = flag;}
161  virtual void SetTopVisible(Bool_t vis=kTRUE);
162  virtual void SetTopVolume(TGeoVolume *vol) {fTopVolume = vol;}
163  virtual void SetVisLevel(Int_t level=3);
164  virtual void SetVisOption(Int_t option=0);
165  virtual Int_t ShapeDistancetoPrimitive(const TGeoShape *shape, Int_t numpoints, Int_t px, Int_t py) const;
166  virtual void Test(Int_t npoints, Option_t *option);
167  virtual void TestOverlaps(const char *path);
168  virtual Bool_t TestVoxels(TGeoVolume *vol);
169  virtual void UnbombTranslation(const Double_t *tr, Double_t *bombtr);
170  virtual Double_t Weight(Double_t precision, Option_t *option="v");
171 
172  ClassDef(TGeoPainter,0) //geometry painter
173 };
174 
175 #endif
TGeoOverlap * fOverlap
Definition: TGeoPainter.h:61
double dist(Rotation3D const &r1, Rotation3D const &r2)
Definition: 3DDistances.cxx:48
virtual void Test(Int_t npoints, Option_t *option)
Check time of finding "Where am I" for n points.
Bool_t fIsPaintingShape
Definition: TGeoPainter.h:57
virtual void SetCheckedNode(TGeoNode *node)
Select a node to be checked for overlaps.
virtual TVirtualGeoTrack * AddTrack(Int_t id, Int_t pdgcode, TObject *part)
Create a primary TGeoTrack.
An array of TObjects.
Definition: TObjArray.h:37
void DefineColors() const
Define 100 colors with increasing light intensities for each basic color (1-7) Register these colors ...
virtual Int_t GetColor(Int_t base, Float_t light) const
Get index of a base color with given light intensity (0,1)
TGeoShape * fClippingShape
Definition: TGeoPainter.h:66
virtual void SetBombFactors(Double_t bombx=1.3, Double_t bomby=1.3, Double_t bombz=1.3, Double_t bombr=1.3)
Set cartesian and radial bomb factors for translations.
The manager class for any TGeo geometry.
Definition: TGeoManager.h:38
virtual void Raytrace(Option_t *option="")
Raytrace current drawn geometry.
long long Long64_t
Definition: RtypesCore.h:69
virtual void RandomPoints(const TGeoVolume *vol, Int_t npoints, Option_t *option="")
Draw random points in the bounding box of a volume.
virtual void CheckBoundaryReference(Int_t icheck=-1)
Check the boundary errors reference file created by CheckBoundaryErrors method.
float Float_t
Definition: RtypesCore.h:53
virtual void DrawPolygon(const TGeoPolygon *poly)
Draw a polygon in 3D.
const char Option_t
Definition: RtypesCore.h:62
Geometrical transformation package.
Definition: TGeoMatrix.h:40
virtual void Paint(Option_t *option="")
Paint current geometry according to option.
Int_t fVisLevel
Definition: TGeoPainter.h:50
virtual void SetRaytracing(Bool_t flag=kTRUE)
Definition: TGeoPainter.h:160
virtual void ExecuteVolumeEvent(TGeoVolume *volume, Int_t event, Int_t px, Int_t py)
Execute mouse actions on a given volume.
virtual Int_t DistanceToPrimitiveVol(TGeoVolume *vol, Int_t px, Int_t py)
Compute the closest distance of approach from point px,py to a volume.
virtual void DrawOverlap(void *ovlp, Option_t *option="")
Draw an overlap.
Bool_t fTopVisible
Definition: TGeoPainter.h:54
virtual void DrawPath(const char *path, Option_t *option="")
Draw all volumes for a given path.
TGeoVolume, TGeoVolumeMulti, TGeoVolumeAssembly are the volume classes.
Definition: TGeoVolume.h:48
virtual void PaintOverlap(void *ovlp, Option_t *option="")
Paint an overlap.
virtual Int_t ShapeDistancetoPrimitive(const TGeoShape *shape, Int_t numpoints, Int_t px, Int_t py) const
Returns distance between point px,py on the pad an a shape.
virtual void ClearVisibleVolumes()
Clear the list of visible volumes reset the kVisOnScreen bit for volumes previously in the list...
virtual void AddTrackPoint(Double_t *point, Double_t *box, Bool_t reset=kFALSE)
Average center of view of all painted tracklets and compute view box.
virtual void SetTopVisible(Bool_t vis=kTRUE)
Set top geometry volume as visible.
TGeoHMatrix * fGlobal
Definition: TGeoPainter.h:62
Int_t fVisOption
Definition: TGeoPainter.h:51
An arbitrary polygon defined by vertices.
Definition: TGeoPolygon.h:19
Basic string class.
Definition: TString.h:125
Matrix class used for computing global transformations Should NOT be used for node definition...
Definition: TGeoMatrix.h:420
int Int_t
Definition: RtypesCore.h:41
bool Bool_t
Definition: RtypesCore.h:59
virtual void DrawPanel()
TGeoPainter(TGeoManager *manager)
Default constructor.
Definition: TGeoPainter.cxx:63
virtual Int_t GetVisOption() const
Definition: TGeoPainter.h:126
virtual void DrawBatemanSol(TGeoBatemanSol *sol, Option_t *option="")
Draw the time evolution of a radionuclide.
virtual void CheckShape(TGeoShape *shape, Int_t testNo, Int_t nsamples, Option_t *option)
Test for shape navigation methods.
TGeoVolume * fTopVolume
Definition: TGeoPainter.h:67
void box(Int_t pat, Double_t x1, Double_t y1, Double_t x2, Double_t y2)
Definition: fillpatterns.C:1
virtual void UnbombTranslation(const Double_t *tr, Double_t *bombtr)
Get the new 'unbombed' translation vector according current exploded view mode.
virtual void CheckGeometryFull(Bool_t checkoverlaps=kTRUE, Bool_t checkcrossings=kTRUE, Int_t nrays=10000, const Double_t *vertex=NULL)
Geometry checking method (see: TGeoManager::CheckGeometry())
virtual void AddSize3D(Int_t numpoints, Int_t numsegs, Int_t numpolys)
Add numpoints, numsegs, numpolys to the global 3D size.
Double_t fBombX
Definition: TGeoPainter.h:42
virtual void OpProgress(const char *opname, Long64_t current, Long64_t size, TStopwatch *watch=0, Bool_t last=kFALSE, Bool_t refresh=kFALSE, const char *msg="")
Text progress bar.
Double_t x[n]
Definition: legend1.C:17
TObjArray * fVisVolumes
Definition: TGeoPainter.h:71
virtual void CheckOverlaps(const TGeoVolume *vol, Double_t ovlp=0.1, Option_t *option="") const
Check overlaps for the top volume of the geometry, within a limit OVLP.
#define ClassDef(name, id)
Definition: Rtypes.h:320
virtual void CheckPoint(Double_t x=0, Double_t y=0, Double_t z=0, Option_t *option="")
Check current point in the geometry.
virtual void PaintNode(TGeoNode *node, Option_t *option="", TGeoMatrix *global=0)
Paint recursively a node and its content according to visualization options.
virtual void DrawVolume(TGeoVolume *vol, Option_t *option="")
Draw method.
Bool_t fIsEditable
Definition: TGeoPainter.h:72
virtual void GetViewAngles(Double_t &longitude, Double_t &latitude, Double_t &psi)
Get the current view angles.
TGeoNode * fCheckedNode
Definition: TGeoPainter.h:60
virtual void SetNmeshPoints(Int_t npoints)
Set number of points to be generated on the shape outline when checking for overlaps.
virtual Int_t GetVisLevel() const
Definition: TGeoPainter.h:125
Int_t CountNodes(TGeoVolume *vol, Int_t level) const
Count number of visible nodes down to a given level.
virtual Bool_t IsExplodedView() const
Definition: TGeoPainter.h:131
virtual void RandomRays(Int_t nrays, Double_t startx, Double_t starty, Double_t startz, const char *target_vol=0, Bool_t check_norm=kFALSE)
Shoot nrays in the current drawn geometry.
virtual const char * GetVolumeInfo(const TGeoVolume *volume, Int_t px, Int_t py) const
Get some info about the current selected volume.
virtual void DrawCurrentPoint(Int_t color)
Draw current point in the same view.
Base class for user-defined tracks attached to a geometry.
Double_t fCheckedBox[6]
Definition: TGeoPainter.h:46
virtual void TestOverlaps(const char *path)
Geometry overlap checker based on sampling.
Class implementing all draw interfaces for a generic 3D viewer using TBuffer3D mechanism.
Definition: TGeoPainter.h:40
Int_t GetNsegments() const
Definition: TGeoPainter.h:127
virtual void GrabFocus(Int_t nfr=0, Double_t dlong=0, Double_t dlat=0, Double_t dpsi=0)
Move focus to current volume.
REAL * vertex
Definition: triangle.c:512
Physical nodes are the actual 'touchable' objects in the geometry, representing a path of positioned ...
Double_t fBombZ
Definition: TGeoPainter.h:44
Double_t fBombY
Definition: TGeoPainter.h:43
virtual void SetTopVolume(TGeoVolume *vol)
Definition: TGeoPainter.h:162
virtual Double_t Weight(Double_t precision, Option_t *option="v")
Compute weight [kg] of the current volume.
virtual void DrawOnly(Option_t *option="")
Draw only one volume.
void Lock(Bool_t flag=kTRUE)
Definition: TGeoPainter.h:137
Base abstract class for all shapes.
Definition: TGeoShape.h:25
virtual void PaintVolume(TGeoVolume *vol, Option_t *option="", TGeoMatrix *global=0)
Paint recursively a node and its content according to visualization options.
TGeoChecker * GetChecker()
Create/return geometry checker.
virtual void EditGeometry(Option_t *option="")
Start the geometry editor.
virtual void DefaultColors()
Set default volume colors according to tracking media.
Bool_t fPaintingOverlaps
Definition: TGeoPainter.h:55
virtual TGeoVolume * GetDrawnVolume() const
Get currently drawn volume.
virtual void ModifiedPad(Bool_t update=kFALSE) const
Check if a pad and view are present and send signal "Modified" to pad.
virtual void Draw(Option_t *option="")
Draw method.
virtual TGeoNode * SamplePoints(Int_t npoints, Double_t &dist, Double_t epsil, const char *g3path)
Shoot npoints randomly in a box of 1E-5 around current point.
2-D histogram with a float per channel (see TH1 documentation)}
Definition: TH2.h:249
virtual void CheckBoundaryErrors(Int_t ntracks=1000000, Double_t radius=-1.)
Check pushes and pulls needed to cross the next boundary with respect to the position given by FindNe...
virtual void SetClippingShape(TGeoShape *shape)
Definition: TGeoPainter.h:153
static void update(gsl_integration_workspace *workspace, double a1, double b1, double area1, double error1, double a2, double b2, double area2, double error2)
virtual void DefaultAngles()
Set default angles for the current view.
virtual void GetBombFactors(Double_t &bombx, Double_t &bomby, Double_t &bombz, Double_t &bombr) const
Definition: TGeoPainter.h:116
Double_t fBombR
Definition: TGeoPainter.h:45
Generic 3D primitive description class.
Definition: TBuffer3D.h:17
virtual void SetVisLevel(Int_t level=3)
Set default level down to which visualization is performed.
virtual Bool_t TestVoxels(TGeoVolume *vol)
Check voxels efficiency per volume.
virtual void SetExplodedView(Int_t iopt=0)
Set type of exploding view.
TGeoChecker * fChecker
Definition: TGeoPainter.h:65
virtual void EstimateCameraMove(Double_t tmin, Double_t tmax, Double_t *start, Double_t *end)
Estimate camera movement between tmin and tmax for best track display.
virtual TGeoVolume * GetTopVolume() const
Definition: TGeoPainter.h:124
virtual Double_t * GetViewBox()
Definition: TGeoPainter.h:129
TBuffer3D * fBuffer
Definition: TGeoPainter.h:63
virtual void SetVisOption(Int_t option=0)
Set drawing mode :
const Bool_t kFALSE
Definition: RtypesCore.h:88
Geometry checking package.
Definition: TGeoChecker.h:37
virtual Bool_t IsRaytracing() const
Definition: TGeoPainter.h:132
Bool_t PaintShape(const TGeoShape &shape, Option_t *option) const
Paint the supplied shape into the current 3D viewer.
void LocalToMasterVect(const Double_t *local, Double_t *master) const
Convert a local vector according view rotation matrix.
void CheckEdit()
Check if Ged library is loaded and load geometry editor classe.
TString fVolInfo
Definition: TGeoPainter.h:59
virtual const char * GetDrawPath() const
Definition: TGeoPainter.h:122
void PaintPhysicalNode(TGeoPhysicalNode *node, Option_t *option="")
Paints a physical node associated with a path.
virtual void PrintOverlaps() const
Print overlaps (see TGeoChecker::PrintOverlaps())
virtual Int_t CountVisibleNodes()
Count total number of visible nodes.
double Double_t
Definition: RtypesCore.h:55
virtual ~TGeoPainter()
Default destructor.
Double_t y[n]
Definition: legend1.C:17
TGeoIteratorPlugin * fPlugin
Definition: TGeoPainter.h:70
TH2F * LegoPlot(Int_t ntheta=60, Double_t themin=0., Double_t themax=180., Int_t nphi=90, Double_t phimin=0., Double_t phimax=360., Double_t rmin=0., Double_t rmax=9999999, Option_t *option="")
Generate a lego plot fot the top volume, according to option.
Int_t fExplodedView
Definition: TGeoPainter.h:52
virtual void ExecuteManagerEvent(TGeoManager *geom, Int_t event, Int_t px, Int_t py)
Execute mouse actions on a given volume.
TGeoVolume * fLastVolume
Definition: TGeoPainter.h:68
virtual void SetGeoManager(TGeoManager *geom)
Definition: TGeoPainter.h:157
Mother of all ROOT objects.
Definition: TObject.h:37
Base class describing geometry overlaps.
Definition: TGeoOverlap.h:37
you should not use this method at all Int_t Int_t z
Definition: TRolke.cxx:630
virtual Bool_t IsPaintingShape() const
Definition: TGeoPainter.h:133
Abstract class for geometry painters.
A node represent a volume positioned inside another.They store links to both volumes and to the TGeoM...
Definition: TGeoNode.h:39
virtual void DrawShape(TGeoShape *shape, Option_t *option="")
Draw a shape.
virtual Int_t GetBombMode() const
Definition: TGeoPainter.h:118
virtual void ExecuteShapeEvent(TGeoShape *shape, Int_t event, Int_t px, Int_t py)
Execute mouse actions on a given shape.
Bool_t fVisLock
Definition: TGeoPainter.h:53
Int_t fNVisNodes
Definition: TGeoPainter.h:49
Int_t fNsegments
Definition: TGeoPainter.h:48
virtual void CheckGeometry(Int_t nrays, Double_t startx, Double_t starty, Double_t startz) const
Geometry checking method (see TGeoChecker).
virtual void BombTranslation(const Double_t *tr, Double_t *bombtr)
Get the new 'bombed' translation vector according current exploded view mode.
TGeoManager * fGeoManager
Definition: TGeoPainter.h:64
virtual void SetIteratorPlugin(TGeoIteratorPlugin *plugin)
Definition: TGeoPainter.h:158
TString fVisBranch
Definition: TGeoPainter.h:58
virtual void SetNsegments(Int_t nseg=20)
Set number of segments to approximate circles.
const Bool_t kTRUE
Definition: RtypesCore.h:87
Double_t fMat[9]
Definition: TGeoPainter.h:47
Bool_t fIsRaytracing
Definition: TGeoPainter.h:56
virtual TGeoNode * GetCheckedNode()
Definition: TGeoPainter.h:119
const char * Data() const
Definition: TString.h:345
Stopwatch class.
Definition: TStopwatch.h:28