library: libTable #include "TPoints3D.h"

# TPoints3D

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

## class TPoints3D : public TPoints3DABC

| Inheritance Chart:
`TObject`
| <- | `TPoints3DABC`
| <- | `TPoints3D` |

        protected:

          Bool_t DoOwner(Bool_t done = kTRUE)
          Bool_t IsOwner() const

        public:

                                 TPoints3D(TPoints3DABC* points = 0)
                                 TPoints3D(Int_t n, Option_t* option = "")
                                 TPoints3D(Int_t n, Float_t* p, Option_t* option = "")
                                 TPoints3D(Int_t n, Float_t* x, Float_t* y, Float_t* z, Option_t* option = "")
                                 TPoints3D(const TPoints3D& points)
                         virtual ~TPoints3D()
                  static TClass* Class()
                    virtual void Copy(TObject& points) const
                    virtual void Delete(Option_t* opt)
                    virtual void Delete()
                   virtual Int_t DistancetoPrimitive(Int_t px, Int_t py)
                    virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py)
                   virtual Int_t GetLastPosition() const
                   virtual Int_t GetN() const
               virtual Option_t* GetOption() const
                virtual Float_t* GetP() const
                 virtual Float_t GetX(Int_t idx) const
                virtual Float_t* GetXYZ(Float_t* xyz, Int_t idx, Int_t num = 1) const
          virtual const Float_t* GetXYZ(Int_t idx) const
                 virtual Float_t GetY(Int_t idx) const
                 virtual Float_t GetZ(Int_t idx) const
                 virtual TClass* IsA() const
                    virtual void ls(Option_t* option = "") const
                      TPoints3D& operator=(const TPoints3D&)
                    virtual void PaintPoints(Int_t, Float_t*, Option_t*)
                    virtual void Print(Option_t* option = "") const
                   virtual Int_t SetLastPosition(Int_t idx)
                    virtual void SetOption(Option_t* option = "")
                   virtual Int_t SetPoint(Int_t point, Float_t x, Float_t y, Float_t z)
                   virtual Int_t SetPoints(Int_t n, Float_t* p = 0, Option_t* option = "")
                    virtual void ShowMembers(TMemberInspector& insp, char* parent)
                   virtual Int_t Size() const
                    virtual void Streamer(TBuffer& b)
                            void StreamerNVirtual(TBuffer& b)

### Data Members

        protected:

          TPoints3DABC* fPoints

        public:

          static const TPoints3D::EOwnerBits kIsOwner

## Class Description

     TPoints3D is an abstract class of the array of 3-dimensional points.
     It has 4 different constructors.

     This class has no implemenatation for Paint, Draw, and SavePrimitive methods

       First one, without any parameters TPoints3D(), we call 'default
     constructor' and it's used in a case that just an initialisation is
     needed (i.e. pointer declaration).

           Example:
                     TPoints3D *pl1 = new TPoints3D;

       Second one is 'normal constructor' with, usually, one parameter
     n (number of points), and it just allocates a space for the points.

           Example:
                     TPoints3D pl1(150);

       Third one allocates a space for the points, and also makes
     initialisation from the given array.

           Example:
                     TPoints3D pl1(150, pointerToAnArray);

       Fourth one is, almost, similar to the constructor above, except
     initialisation is provided with three independent arrays (array of
     x coordinates, y coordinates and z coordinates).

           Example:
                     TPoints3D pl1(150, xArray, yArray, zArray);

TPoints3D(TPoints3DABC *points) : fPoints(points)

    *-*-*-*-*-*-*-*-*-*-*-*-*3-D PolyLine default constructor*-*-*-*-*-*-*-*-*-*-*
    *-*                      ================================

TPoints3D(Int_t n, Option_t *option) : fPoints( new TPointsArray3D(n,option))

    *-*-*-*-*-*3-D PolyLine normal constructor without initialisation*-*-*-*-*-*-*
    *-*        ======================================================
    *-*  If n < 0 the default size (2 points) is set
    *-*

TPoints3D(Int_t n, Float_t *p, Option_t *option) : fPoints(new TPointsArray3D(n,p,option))

    *-*-*-*-*-*-*-*-*-*-*-*-*3-D Point3D normal constructor*-*-*-*-*-*-*-*-*-*-*-*
    *-*                      ===============================
    *-*  If n < 0 the default size (2 points) is set
    *-*

TPoints3D(Int_t n, Float_t *x, Float_t *y, Float_t *z, Option_t *option) : fPoints(new TPointsArray3D(n,x,y,z,option))

    *-*-*-*-*-*-*-*-*-*-*-*-*3-D PolyLine normal constructor*-*-*-*-*-*-*-*-*-*-*-*
    *-*                      ===============================
    *-*  If n < 0 the default size (2 points) is set
    *-*

~TPoints3D()

    *-*-*-*-*-*-*-*-*-*-*-*-*3-D PolyLine default destructor*-*-*-*-*-*-*-*-*-*-*-*
    *-*                      ===============================

TPoints3D(const TPoints3D &point) : TPoints3DABC(point)

void Copy(TObject &obj) const

    *-*-*-*-*-*-*-*-*-*-*-*-*Copy this TPoints3D to another *-*-*-*-*-*-*-*-*-*-*-*
    *-*                      ==============================

void Delete()

     Delete only own object

Bool_t DoOwner(Bool_t done)

void ExecuteEvent(Int_t event, Int_t px, Int_t py)

    *-*-*-*-*-*-*-*-*-*Execute action corresponding to one event*-*-*-*-*-*-*-*-*-*
    *-*                =========================================

void ls(Option_t *option) const

    *-*-*-*-*-*-*-*-*-*List this 3-D polyline with its attributes*-*-*-*-*-*-*
    *-*                ==========================================

void Print(Option_t *option) const

    *-*-*-*-*-*-*-*-*-*Dump this 3-D polyline with its attributes*-*-*-*-*-*-*-*-*
    *-*                ==========================================

### Inline Functions

                    Bool_t IsOwner() const
                      void Delete()
                     Int_t DistancetoPrimitive(Int_t px, Int_t py)
                     Int_t GetLastPosition() const
                     Int_t GetN() const
                  Float_t* GetP() const
                   Float_t GetX(Int_t idx) const
                   Float_t GetY(Int_t idx) const
                   Float_t GetZ(Int_t idx) const
                  Float_t* GetXYZ(Float_t* xyz, Int_t idx, Int_t num = 1) const
            const Float_t* GetXYZ(Int_t idx) const
                 Option_t* GetOption() const
                      void PaintPoints(Int_t, Float_t*, Option_t*)
                     Int_t SetLastPosition(Int_t idx)
                      void SetOption(Option_t* option = "")
                     Int_t SetPoint(Int_t point, Float_t x, Float_t y, Float_t z)
                     Int_t SetPoints(Int_t n, Float_t* p = 0, Option_t* option = "")
                     Int_t Size() const
                   TClass* Class()
                   TClass* IsA() const
                      void ShowMembers(TMemberInspector& insp, char* parent)
                      void Streamer(TBuffer& b)
                      void StreamerNVirtual(TBuffer& b)
                TPoints3D& operator=(const TPoints3D&)

Author: Valery Fine(fine@mail.cern.ch) 24/04/99
Last update: root/star:$Name: $:$Id: TPoints3D.cxx,v 1.5 2003/02/11 12:17:19 rdm Exp $