ROOT logo
ROOT » GRAF3D » G3D » TPoints3DABC

class TPoints3DABC: public TObject


The TPoints3DABC class

Abstract class to define Arrays of 3D points.
 

Function Members (Methods)

 
    This is an abstract class, constructors will not be documented.
    Look at the header to check for available constructors.

public:
virtual~TPoints3DABC()
voidTObject::AbstractMethod(const char* method) const
virtual Int_tAdd(Float_t x, Float_t y, Float_t z)
virtual Int_tAddLast(Float_t x, Float_t y, Float_t z)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
virtual voidTObject::Delete(Option_t* option = "")MENU
static Int_tDistancetoLine(Int_t px, Int_t py, Float_t x1, Float_t y1, Float_t x2, Float_t y2, Int_t lineWidth = 1)
virtual Int_tDistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
virtual Int_tGetLastPosition() const
virtual Int_tGetN() const
virtual const char*TObject::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*GetOption() const
virtual Float_t*GetP() const
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Float_tGetX(Int_t idx) const
virtual const Float_t*GetXYZ(Int_t idx)
virtual Float_t*GetXYZ(Float_t* xyz, Int_t idx, Int_t num = 1) const
virtual Float_tGetY(Int_t idx) const
virtual Float_tGetZ(Int_t idx) const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
TPoints3DABC&operator=(const TPoints3DABC&)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidPaintPoints(Int_t n, Float_t* p, Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
virtual Int_tSetLastPosition(Int_t idx)
virtual Int_tSetNextPoint(Float_t x, Float_t y, Float_t z)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidSetOption(Option_t* option = "")
virtual Int_tSetPoint(Int_t point, Float_t x, Float_t y, Float_t z)
virtual Int_tSetPoints(Int_t n, Float_t* p = 0, Option_t* option = "")
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual Int_tSize() const
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()

Data Members

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

Int_t Add(Float_t x, Float_t y, Float_t z)
 Add one 3D point defined by x,y,z to the array of the points
 as its last element
Int_t AddLast(Float_t x, Float_t y, Float_t z)
 Add one 3D point defined by x,y,z to the array of the points
 as its last element
Int_t DistancetoLine(Int_t px, Int_t py, Float_t x1, Float_t y1, Float_t x2, Float_t y2, Int_t lineWidth = 1)
 Compute distance from point px,py to an axis of the band defined.
  by pair points  (x1,y1),(x2,y2) where lineWidth is the width of the band

  Compute the closest distance of approach from point px,py to this line.
  The distance is computed in pixels units.


  Algorithm:

    A(x1,y1)         P                             B(x2,y2)

                     I
                     I
                     I
                     I
                    M(x,y)

  Let us call  a = distance AM     a2=a**2
               b = distance BM     b2=b**2
               c = distance AB     c2=c**2
               d = distance PM     d2=d**2
               u = distance AP     u2=u**2
               v = distance BP     v2=v**2     c = u + v

  d2 = a2 - u2
  d2 = b2 - v2  = b2 -(c-u)**2
     ==> u = (a2 -b2 +c2)/2c

   Float_t x1    = gPad->XtoAbsPixel(xp1);
   Float_t y1    = gPad->YtoAbsPixel(yp1);
   Float_t x2    = gPad->XtoAbsPixel(xp2);
   Float_t y2    = gPad->YtoAbsPixel(yp2);
Int_t SetNextPoint(Float_t x, Float_t y, Float_t z)
 Add one 3D point defined by x,y,z to the array of the points
 as its last element
Int_t GetN() const
 GetN()  returns the number of allocated cells if any.
         GetN() > 0 shows how many cells
         can be available via GetP() method.
         GetN() == 0 then GetP() must return 0 as well
Float_t * GetP() const
 GetP()  returns the pointer to the float point array
         of points if available
         The number of the available celss can be found via
         GetN() method.
         GetN() > 0 shows how many cells
Float_t * GetXYZ(Float_t* xyz, Int_t idx, Int_t num = 1) const
 GetXYZ(Float_t *xyz,Int_t idx,Int_t num=1) fills the buffer supplied
 by the calling code with the points information.

  Input parameters:

   Float_t *xyz - an external user supplied floating point array.
   Int_t    num - the total number of the points to be copied
                  the dimension of that array the size of the
                  array is num*sizeof(Float_t) at least
   Int_t    idx - The index of the first copy to be taken.

  Return: The pointer to the buffer array supplied
virtual ~TPoints3DABC()
{;}
Int_t DistancetoPrimitive(Int_t px, Int_t py)
Int_t GetLastPosition() const
 GetN()  returns the number of allocated cells if any.
         GetN() > 0 shows how many cells
         can be available via GetP() method.
         GetN() == 0 then GetP() must return 0 as well
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
Option_t * GetOption() const
void PaintPoints(Int_t n, Float_t* p, Option_t* option = "")
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