library: libGraf3d
#include "TPCON.h"


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

class TPCON : public TShape

Inheritance Chart:

virtual void FillTableOfCoSin(Double_t phi, Double_t angstep, Int_t n) virtual void MakeTableOfCoSin() 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 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 Paint(Option_t* option) virtual void SetNumberOfDivisions(Int_t p) virtual void SetPoints(Double_t* buff) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Sizeof3D() const virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members

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

 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()

 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)
 Fill the table of cos and sin to prepare drawing

void Paint(Option_t *option)
 Paint this 3-D shape with its current attributes

void SetNumberOfDivisions (Int_t p)

void SetPoints(Double_t *buff)
 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

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.8 2004/11/16 13:17:21 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.