library: libGraf3d #include "TShape.h"

# TShape

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

## class TShape : public TNamed, public TAttLine, public TAttFill, public TAtt3D

| Inheritance Chart:

`TObject`

<-

`TNamed`

`TAttLine`

`TAttFill`

`TAtt3D`

<-

`TShape`

<-

`TBRIK`

<-

`TGTRA` |

`TPARA` |

`TTRAP` |

`TTRD1` |

`TTRD2` |

`TPCON`

<-

`TPGON` |

`TPolyLineShape` |

`TSPHE` |

[more...]

        protected:

          Int_t ShapeDistancetoPrimitive(Int_t numPoints, Int_t px, Int_t py)

        public:

                          TShape()
                          TShape(const char* name, const char* title, const char* material)
                          TShape(const TShape&)
                  virtual ~TShape()
           static TClass* Class()
               TMaterial* GetMaterial() const
            virtual Int_t GetNumber() const
                    Int_t GetVisibility() const
          virtual TClass* IsA() const
                  TShape& operator=(const TShape&)
             virtual void Paint(Option_t* option)
             virtual void PaintGLPoints(Float_t* vertex)
             virtual void PaintShape(X3DBuffer* buff, Bool_t rangeView = kFALSE)
             virtual void SetName(const char* name)
             virtual void SetPoints(Float_t* buffer)
             virtual void SetVisibility(Int_t vis)
             virtual void ShowMembers(TMemberInspector& insp, char* parent)
             virtual void Streamer(TBuffer& b)
                     void StreamerNVirtual(TBuffer& b)

### Data Members

        protected:

               Int_t fNumber      Shape number
               Int_t fVisibility  Visibility flag
          TMaterial* fMaterial    Pointer to material

## Class Description

    *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
    *-*
    *-*  This is the base class for all geometry shapes.
    *-*  The list of shapes currently supported correspond to the shapes
    *-*  in Geant version 3:
    *-*     TBRIK,TCONE,TCONS,TGTRA,TPARA,TPCON,TPGON
    *-*    ,TTRAP,TTRD1,TTRD2,THYPE, TTUBE and TTUBS.
    *-*
    *-*  The figure below shows instances of all these shapes. This figure
    *-*  is generated by the ROOT 3-D viewer.

/* */

/* */

    *-*
    *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

TShape()

    *-*-*-*-*-*-*-*-*-*-*-*-*Shape default constructor-*-*-*-*-*-*-*-*-*-*-*-*-*
    *-*                      =========================

TShape(const char *name,const char *title, const char *materialname) : TNamed (name, title), TAttLine(), TAttFill()

    *-*-*-*-*-*-*-*-*-*-*-*-*Shape normal constructor-*-*-*-*-*-*-*-*-*-*-*-*-*
    *-*                      ========================

~TShape()

    *-*-*-*-*-*-*-*-*-*-*-*-*Shape default destructor-*-*-*-*-*-*-*-*-*-*-*-*-*
    *-*                      ========================

Int_t ShapeDistancetoPrimitive(Int_t numPoints, Int_t px, Int_t py)

void Paint(Option_t *)

     This method must be overridden by the real shape implementation.

void PaintShape(X3DBuffer *buff, Bool_t rangeView)

    *-*-*-*-*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 SetPoints(Float_t *)

void Streamer(TBuffer &R__b)

     Stream an object of class TShape.

### Inline Functions

             TMaterial* GetMaterial() const
                  Int_t GetNumber() const
                  Int_t GetVisibility() const
                   void PaintGLPoints(Float_t* vertex)
                   void SetName(const char* name)
                   void SetVisibility(Int_t vis)
                TClass* Class()
                TClass* IsA() const
                   void ShowMembers(TMemberInspector& insp, char* parent)
                   void StreamerNVirtual(TBuffer& b)
                 TShape TShape(const TShape&)
                TShape& operator=(const TShape&)

Author: Nenad Buncic 17/09/95
Last update: root/g3d:$Name: $:$Id: TShape.cxx,v 1.5 2003/08/23 00:08:12 rdm Exp $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *