TGeoPainter


class description - source file - inheritance tree

class TGeoPainter : public TVirtualGeoPainter


    public:
TGeoPainter TGeoPainter() TGeoPainter TGeoPainter(const TGeoPainter&) virtual void ~TGeoPainter() virtual void AddSize3D(Int_t numpoints, Int_t numsegs, Int_t numpolys) virtual void BombTranslation(const Double_t* tr, Double_t* bombtr) virtual void CheckPoint(Double_t x = 0, Double_t y = 0, Double_t z = 0, Option_t* option) static TClass* Class() virtual void DefaultAngles() virtual void DefaultColors() virtual Int_t DistanceToPrimitiveVol(TGeoVolume* vol, Int_t px, Int_t py) virtual void Draw(Option_t* option) virtual void DrawCurrentPoint(Int_t color) virtual void DrawOnly(Option_t* option) virtual void DrawPanel() virtual void DrawPath(const char* path) virtual void ExecuteVolumeEvent(TGeoVolume* volume, Int_t event, Int_t px, Int_t py) virtual void GetBombFactors(Double_t& bombx, Double_t& bomby, Double_t& bombz, Double_t& bombr) const virtual Int_t GetBombMode() const TGeoChecker* GetChecker() virtual const char* GetDrawPath() const virtual Int_t GetNsegments() const virtual Int_t GetVisLevel() const virtual Int_t GetVisOption() const virtual char* GetVolumeInfo(TGeoVolume* volume, Int_t px, Int_t py) const virtual TClass* IsA() const virtual Bool_t IsExplodedView() const virtual Bool_t IsOnScreen(const TGeoNode* node) const virtual void ModifiedPad() const virtual void Paint(Option_t* option) virtual void PaintBox(TGeoShape* shape, Option_t* option, TGeoHMatrix* glmat = 0) virtual void PaintCompositeShape(TGeoVolume* vol, Option_t* option) virtual void PaintNode(TGeoNode* node, Option_t* option) virtual void PaintPcon(TGeoShape* shape, Option_t* option, TGeoHMatrix* glmat = 0) void PaintShape(X3DBuffer* buff, Bool_t rangeView, TGeoHMatrix* glmat) virtual void PaintSphere(TGeoShape* shape, Option_t* option, TGeoHMatrix* glmat = 0) virtual void PaintTube(TGeoShape* shape, Option_t* option, TGeoHMatrix* glmat = 0) virtual void PaintTubs(TGeoShape* shape, Option_t* option, TGeoHMatrix* glmat = 0) virtual void RandomPoints(TGeoVolume* vol, Int_t npoints, Option_t* option) virtual void RandomRays(Int_t nrays, Double_t startx, Double_t starty, Double_t startz) virtual TGeoNode* SamplePoints(Int_t npoints, Double_t& dist, Double_t epsil, const char* g3path) virtual void SetBombFactors(Double_t bombx = 1.3, Double_t bomby = 1.3, Double_t bombz = 1.3, Double_t bombr = 1.3) virtual void SetExplodedView(UInt_t iopt = 0) virtual void SetGeoManager(TGeoManager* geom) virtual void SetNsegments(Int_t nseg) virtual void SetVisLevel(Int_t level = 3) virtual void SetVisOption(Int_t option = 0) virtual Int_t ShapeDistancetoPrimitive(const TGeoShape* shape, Int_t numpoints, Int_t px, Int_t py) const virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Sizeof3D(const TGeoVolume* vol) const virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b) virtual void Test(Int_t npoints, Option_t* option) virtual void TestOverlaps(const char* path) virtual Bool_t TestVoxels(TGeoVolume* vol) virtual void UnbombTranslation(const Double_t* tr, Double_t* bombtr)

Data Members

    private:
Double_t fBombX bomb factor on X Double_t fBombY bomb factor on Y Double_t fBombZ bomb factor on Z Double_t fBombR bomb factor on radius (cyl or sph) Int_t fNsegments number of segments approximating circles Int_t fVisLevel depth for drawing Int_t fVisOption global visualization option Int_t fExplodedView type of exploding current view Bool_t fVisLock lock for adding visible volumes const char* fVisBranch drawn branch TGeoManager* fGeom geometry to which applies TGeoChecker* fChecker geometry checker TObjArray* fVisVolumes list of visible volumes

Class Description


TGeoPainter()
*-*-*-*-*-*-*-*-*-*-*Geometry painter default constructor*-*-*-*-*-*-*-*-*
*-*                  ====================================

~TGeoPainter()
*-*-*-*-*-*-*-*-*-*-*Geometry painter default destructor*-*-*-*-*-*-*-*-*
*-*                  ===================================

void AddSize3D(Int_t numpoints, Int_t numsegs, Int_t numpolys)
--- Add numpoints, numsegs, numpolys to the global 3D size.

void BombTranslation(const Double_t *tr, Double_t *bombtr)
 get the new 'bombed' translation vector according current exploded view mode

void CheckPoint(Double_t x, Double_t y, Double_t z, Option_t *option)
 check current point in the geometry

Int_t DistanceToPrimitiveVol(TGeoVolume *vol, Int_t px, Int_t py)
 compute the closest distance of approach from point px,py to a volume

void DefaultAngles()
 Set default angles for the current view.

void DefaultColors()
 Set default volume colors according to tracking media

void Draw(Option_t *option)

void DrawOnly(Option_t *option)

void DrawCurrentPoint(Int_t color)
 Draw current point in the same view.

void DrawPanel()

void DrawPath(const char *path)
 Draw all volumes for a given path.

void ExecuteVolumeEvent(TGeoVolume *volume, Int_t event, Int_t px, Int_t py)
 Execute mouse actions on a given volume.

char* GetVolumeInfo(TGeoVolume *volume, Int_t px, Int_t py) const

TGeoChecker* GetChecker()
 Create/return geometry checker.

Bool_t IsOnScreen(const TGeoNode *node) const
 check if this node is drawn. Assumes that this node is current

void ModifiedPad() const
 Check if a pad and view are present and send signal "Modified" to pad.

void Paint(Option_t *option)
 paint current geometry according to option
   printf("TGeoPainter::Paint()n");

void PaintShape(X3DBuffer *buff, Bool_t rangeView, TGeoHMatrix *glmat)
*-*-*-*-*Paint 3-D shape in current pad with its current attributes*-*-*-*-*
*-*      ==========================================================

 rangeView = kTRUE - means no real painting
                     just estimate the range
                     of this shape only

void PaintBox(TGeoShape *shape, Option_t *option, TGeoHMatrix *glmat)
 paint any type of box with 8 vertices

void PaintCompositeShape(TGeoVolume *vol, Option_t *option)
 paint a composite shape

void PaintTube(TGeoShape *shape, Option_t *option, TGeoHMatrix *glmat)
 paint tubes

void PaintTubs(TGeoShape *shape, Option_t *option, TGeoHMatrix *glmat)
 paint tubes

void PaintSphere(TGeoShape *shape, Option_t *option, TGeoHMatrix *glmat)
 paint a sphere

void PaintPcon(TGeoShape *shape, Option_t *option, TGeoHMatrix *glmat)
 paint a pcon

void PaintNode(TGeoNode *node, Option_t *option)
 paint recursively a node and its content accordind to visualization options

void RandomPoints(TGeoVolume *vol, Int_t npoints, Option_t *option)
 Draw random points in the bounding box of a volume.

void RandomRays(Int_t nrays, Double_t startx, Double_t starty, Double_t startz)
 Raytrace nrays in the current drawn geometry

TGeoNode* SamplePoints(Int_t npoints, Double_t &dist, Double_t epsil, const char* g3path)
 shoot npoints randomly in a box of 1E-5 arround current point.
 return minimum distance to points outside

void SetBombFactors(Double_t bombx, Double_t bomby, Double_t bombz, Double_t bombr)
--- Set cartesian and radial bomb factors for translations

void Sizeof3D(const TGeoVolume *vol) const
   Compute size of the 3d object "vol".

void SetExplodedView(UInt_t ibomb)
 set type of exploding view

void SetVisLevel(Int_t level)
 set default level down to which visualization is performed

void SetVisOption(Int_t option)
 set drawing mode :
 option=0 (default) all nodes drawn down to vislevel
 option=1           leaves and nodes at vislevel drawn
 option=2           path is drawn

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.

void Test(Int_t npoints, Option_t *option)
 Check time of finding "Where am I" for n points.

void TestOverlaps(const char* path)
--- Geometry overlap checker based on sampling.

Bool_t TestVoxels(TGeoVolume *vol)
 Check voxels efficiency per volume.

void UnbombTranslation(const Double_t *tr, Double_t *bombtr)
 get the new 'unbombed' translation vector according current exploded view mode



Inline Functions


               void GetBombFactors(Double_t& bombx, Double_t& bomby, Double_t& bombz, Double_t& bombr) const
              Int_t GetBombMode() const
        const char* GetDrawPath() const
              Int_t GetVisLevel() const
              Int_t GetVisOption() const
              Int_t GetNsegments() const
             Bool_t IsExplodedView() const
               void SetNsegments(Int_t nseg)
               void SetGeoManager(TGeoManager* geom)
            TClass* Class()
            TClass* IsA() const
               void ShowMembers(TMemberInspector& insp, char* parent)
               void Streamer(TBuffer& b)
               void StreamerNVirtual(TBuffer& b)
        TGeoPainter TGeoPainter(const TGeoPainter&)


Author: Andrei Gheata 05/03/02
Last update: Sat Sep 28 10:47:49 2002
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *


ROOT page - Class index - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.