library: libGraf3d
#include "TPCON.h"

TPCON


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

class TPCON : public TShape

Inheritance Chart:
TObject
<-
TNamed
TAttLine
TAttFill
TAtt3D
<-
TShape
<-
TPCON
<-
TPGON

    protected:
virtual void FillTableOfCoSin(Double_t phi, Double_t angstep, Int_t n) const virtual void MakeTableOfCoSin() const virtual void SetPoints(Double_t* points) const virtual Bool_t SetSegsAndPols(TBuffer3D& buffer) const public:
TPCON() TPCON(const char* name, const char* title, const char* material, Float_t phi1, Float_t dphi1, Int_t nz) TPCON(const TPCON&) virtual ~TPCON() static TClass* Class() virtual void DefineSection(Int_t secNum, Float_t z, Float_t rmin, Float_t rmax) virtual Int_t DistancetoPrimitive(Int_t px, Int_t py) virtual const TBuffer3D& GetBuffer3D(Int_t reqSections) const virtual Float_t GetDhi1() const virtual Float_t* GetDz() const virtual Int_t GetNdiv() const virtual Int_t GetNumberOfDivisions() const virtual Int_t GetNz() const virtual Float_t GetPhi1() const virtual Float_t* GetRmax() const virtual Float_t* GetRmin() const virtual TClass* IsA() const TPCON& operator=(const TPCON&) virtual void SetNumberOfDivisions(Int_t p) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Sizeof3D() const virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members


    protected:
Double_t* fSiTab ! Table of sin(fPhi1) .... sin(fPhil+fDphi1) Double_t* fCoTab ! Table of cos(fPhi1) .... cos(fPhil+fDphi1) Float_t fPhi1 lower phi limit Float_t fDphi1 range in phi Int_t fNdiv number of divisions Int_t fNz number of z segments Float_t* fRmin [fNz] pointer to array of inside radiuses Float_t* fRmax [fNz] pointer to array of outside radiuses Float_t* fDz [fNz] pointer to array of half lengths in z

Class Description

 

 PCON is a polycone. It has the following parameters:

     - name       name of the shape
     - title      shape's title
     - material  (see TMaterial)
     - phi1       the azimuthal angle phi at which the volume begins (angles
                  are counted counterclockwise)
     - dphi       opening angle of the volume, which extends from
                  phi1 to phi1+dphi
     - nz         number of planes perpendicular to the z axis where
                  the dimension of the section is given -- this number
                  should be at least 2
     - rmin       array of dimension nz with minimum radius at a given plane
     - rmax       array of dimension nz with maximum radius at a given plane
     - z          array of dimension nz with z position of given plane

TPCON()
 PCON shape default constructor

TPCON(const char *name, const char *title, const char *material, Float_t phi1, Float_t dphi1, Int_t nz) : TShape(name, title,material)
 PCON shape normal constructor

 Parameters of the nz positions must be entered via TPCON::DefineSection.

void MakeTableOfCoSin() const

~TPCON()
 PCON shape default destructor

void DefineSection(Int_t secNum, Float_t z, Float_t rmin, Float_t rmax)
 Defines section secNum of the polycone

     - rmin  radius of the inner circle in the cross-section

     - rmax  radius of the outer circle in the cross-section

     - z     z coordinate of the section

Int_t DistancetoPrimitive(Int_t px, Int_t py)
 Compute distance from point px,py to a PCON

 Compute the closest distance of approach from point px,py to each
 computed outline point of the PCON.

void FillTableOfCoSin(Double_t phi, Double_t angstep,Int_t n) const
 Fill the table of cos and sin to prepare drawing

void SetNumberOfDivisions (Int_t p)

void SetPoints(Double_t *points) const
 Create PCON points

void Sizeof3D() const
 Return total X3D needed by TNode::ls (when called with option "x")

void Streamer(TBuffer &b)
 Stream a class object

const TBuffer3D& GetBuffer3D(Int_t reqSections) const

Bool_t SetSegsAndPols(TBuffer3D & buffer) const



Inline Functions


              Int_t GetNumberOfDivisions() const
            Float_t GetPhi1() const
            Float_t GetDhi1() const
              Int_t GetNz() const
           Float_t* GetRmin() const
           Float_t* GetRmax() const
           Float_t* GetDz() const
              Int_t GetNdiv() const
            TClass* Class()
            TClass* IsA() const
               void ShowMembers(TMemberInspector& insp, char* parent)
               void StreamerNVirtual(TBuffer& b)
              TPCON TPCON(const TPCON&)
             TPCON& operator=(const TPCON&)


Author: Nenad Buncic 29/09/95
Last update: root/g3d:$Name: $:$Id: TPCON.cxx,v 1.11 2005/09/04 14:53:18 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.