library: libGraf3d #include "TSPHE.h"

# TSPHE

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

## class TSPHE : public TShape

| Inheritance Chart:

`TObject`

<-

`TNamed`

`TAttLine`

`TAttFill`

`TAtt3D`

<-

`TShape`

<-

`TSPHE`

        protected:

          virtual void MakeTableOfCoSin()
          virtual void PaintGLPoints(Float_t* vertex)

        public:

                          TSPHE()
                          TSPHE(const char* name, const char* title, const char* material, Float_t rmin, Float_t rmax, Float_t themin, Float_t themax, Float_t phimin, Float_t phimax)
                          TSPHE(const char* name, const char* title, const char* material, Float_t rmax)
                          TSPHE(const TSPHE&)
                  virtual ~TSPHE()
           static TClass* Class()
            virtual Int_t DistancetoPrimitive(Int_t px, Int_t py)
          virtual Float_t GetAspectRatio() const
            virtual Int_t GetNumberOfDivisions() const
          virtual Float_t GetPhimax() const
          virtual Float_t GetPhimin() const
          virtual Float_t GetRmax() const
          virtual Float_t GetRmin() const
          virtual Float_t GetThemax() const
          virtual Float_t GetThemin() const
          virtual TClass* IsA() const
                   TSPHE& operator=(const TSPHE&)
             virtual void Paint(Option_t* option)
             virtual void SetAspectRatio(Float_t factor = 1.0)
             virtual void SetEllipse(const Float_t* factors)
             virtual void SetNumberOfDivisions(Int_t p)
             virtual void SetPoints(Float_t* buff)
             virtual void ShowMembers(TMemberInspector& insp, char* parent)
             virtual void Sizeof3D() const
             virtual void Streamer(TBuffer& b)
                     void StreamerNVirtual(TBuffer& b)

### Data Members

        private:

          Double_t* fSiTab        ! Table of sin(fPhimin) .... sin(Phi)
          Double_t* fCoTab        ! Table of cos(fPhimin) .... cos(Phi)
          Double_t* fCoThetaTab   ! Table of sin(gThemin) .... cos(Theta)
              Int_t fNdiv         number of divisions
              Int_t fNz           ! number of sections
            Float_t fAspectRatio  Relation between asumth and grid size (by default 1.0)

        protected:

          Float_t fRmin    minimum radius
          Float_t fRmax    maximum radius
          Float_t fThemin  minimum theta
          Float_t fThemax  maximum theta
          Float_t fPhimin  minimum phi
          Float_t fPhimax  maximum phi
          Float_t faX      Coeff along Ox
          Float_t faY      Coeff along Oy
          Float_t faZ      Coeff along Oz

## Class Description

     SPHE is a Sphere. It has 9 parameters:

         - name       name of the shape
         - title      shape's title
         - material  (see TMaterial)
         - rmin       minimum radius
         - rmax       maximum radius
         - themin     theta min
         - themax     theta max
         - phimin     phi min
         - phimax     phi max

TSPHE()

    *-*-*-*-*-*-*-*-*-*-*-*-*SPHE shape default constructor*-*-*-*-*-*-*-*-*-*-*-*
    *-*                      ==============================

TSPHE(const char *name, const char *title, const char *material, Float_t rmin, Float_t rmax, Float_t themin, Float_t themax, Float_t phimin, Float_t phimax) : TShape(name, title,material)

    *-*-*-*-*-*-*-*-*-*-*-*-*SPHE shape normal constructor*-*-*-*-*-*-*-*-*-*-*-*-*
    *-*                      =============================

TSPHE(const char *name, const char *title, const char *material, Float_t rmax) : TShape(name, title,material)

    *-*-*-*-*-*-*-*-*-*-*-*-*SPHE shape "simplified" constructor*-*-*-*-*-*-*-*-*-*-*-*-*
    *-*                      ===================================

~TSPHE()

    *-*-*-*-*-*-*-*-*-*-*-*-*SPHE shape default destructor*-*-*-*-*-*-*-*-*-*-*-*-*
    *-*                      =============================

Int_t DistancetoPrimitive(Int_t px, Int_t py)

    *-*-*-*-*-*-*-*Compute distance from point px,py to a PSPHE-*-*-*-*-*-*-*-*-*-*
    *-*            ===========================================
    *-*
    *-*  Compute the closest distance of approach from point px,py to each
    *-*  computed outline point of the PSPHE (stolen from PCON).
    *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

void Paint(Option_t *option)

    *-*-*-*-*-*-*-*Paint this 3-D shape with its current attributes*-*-*-*-*-*-*-*
    *-*            ================================================

void SetEllipse(const Float_t *factors)

void SetNumberOfDivisions (Int_t p)

void SetPoints(Float_t *buff)

    *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*Create SPHE points*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
    *-*                            ==================

void MakeTableOfCoSin()

void PaintGLPoints(Float_t *vertex)

void Sizeof3D() const

    *-*-*-*-*-*-*Return total X3D size of this shape with its attributes*-*-*-*-*-*
    *-*          =======================================================

void Streamer(TBuffer &b)

    *-*-*-*-*-*-*-*-*Stream a class object*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
    *-*              =========================================

### Inline Functions

                Float_t GetRmin() const
                Float_t GetRmax() const
                Float_t GetThemin() const
                Float_t GetThemax() const
                Float_t GetPhimin() const
                Float_t GetPhimax() const
                Float_t GetAspectRatio() const
                  Int_t GetNumberOfDivisions() const
                   void SetAspectRatio(Float_t factor = 1.0)
                TClass* Class()
                TClass* IsA() const
                   void ShowMembers(TMemberInspector& insp, char* parent)
                   void StreamerNVirtual(TBuffer& b)
                  TSPHE TSPHE(const TSPHE&)
                 TSPHE& operator=(const TSPHE&)

Author: Rene Brun 13/06/97
Last update: root/g3d:$Name: $:$Id: TSPHE.cxx,v 1.7 2004/03/05 17:48:30 brun Exp $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *