library: libGeom
#include "TGeoVoxelFinder.h"

TGeoCylVoxels


class description - source file - inheritance tree (.pdf)

class TGeoCylVoxels : public TGeoVoxelFinder

Inheritance Chart:
TObject
<-
TGeoVoxelFinder
<-
TGeoCylVoxels

    public:
TGeoCylVoxels() TGeoCylVoxels(TGeoVolume* vol) TGeoCylVoxels(const TGeoCylVoxels&) virtual ~TGeoCylVoxels() virtual void BuildVoxelLimits() static TClass* Class() virtual Double_t Efficiency() virtual void FindOverlaps(Int_t inode) const virtual Int_t* GetCheckList(Double_t* point, Int_t& nelem) virtual Int_t* GetNextVoxel(Double_t* point, Double_t* dir, Int_t& ncheck) Int_t IntersectIntervals(Double_t vox1, Double_t vox2, Double_t phi1, Double_t phi2) const virtual TClass* IsA() const TGeoCylVoxels& operator=(const TGeoCylVoxels&) virtual void Print(Option_t* option = "") const virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void SortAll(Option_t* option = "") virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b) virtual void Voxelize(Option_t* option)

Data Members




Class Description

 Full description with examples and pictures




/* */

TGeoCylVoxels()
 Default constructor

TGeoCylVoxels(TGeoVolume *vol) :TGeoVoxelFinder(vol)
 Constructor

~TGeoCylVoxels()
 Destructor

void BuildVoxelLimits()
--- Compute boundary limits in R, Phi and Z coordinates for all daughters
 of fVolume

Double_t Efficiency()
--- Compute voxelization efficiency.

void FindOverlaps(Int_t inode) const
 create the list of nodes for which the bboxes overlap with inode's bbox

Int_t* GetCheckList(Double_t *point, Int_t &nelem)
--- Get the list of nodes possibly containing a given point.
 convert the point to cylindrical coordinates

Int_t* GetNextVoxel(Double_t * /*point*/, Double_t * /*dir*/, Int_t & /*ncheck*/)
--- Get the list of nodes possibly crossed by a given ray.

Int_t IntersectIntervals(Double_t vox1, Double_t vox2, Double_t phi1, Double_t phi2) const
 Intersect a phi voxel interval in range (0,360) with a node phi interval of
 extended range. Returns 0 if no intersection, 1 if they do intersect and
 2 if they are identical.

void Print(Option_t *) const
 Print info about voxels.

void SortAll(Option_t *)
 Order voxels along R, Phi, Z.
   printf("Sorting voxels for %s\n", fVolume->GetName());

void Voxelize(Option_t *)
--- Voxelize fVolume.
   printf("Voxelizing %s\n", fVolume->GetName());



Inline Functions


               TClass* Class()
               TClass* IsA() const
                  void ShowMembers(TMemberInspector& insp, char* parent)
                  void Streamer(TBuffer& b)
                  void StreamerNVirtual(TBuffer& b)
         TGeoCylVoxels TGeoCylVoxels(const TGeoCylVoxels&)
        TGeoCylVoxels& operator=(const TGeoCylVoxels&)


Author: Andrei Gheata 04/02/02
Last update: root/geom:$Name: $:$Id: TGeoVoxelFinder.cxx,v 1.25 2005/09/04 15:12:08 brun Exp $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *


ROOT page - Class index - Class Hierarchy - 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.