TEllipse


class description - source file - inheritance tree

class TEllipse : public TObject, public TAttLine, public TAttFill


    public:
TEllipse TEllipse() TEllipse TEllipse(Float_t x1, Float_t y1, Float_t r1, Float_t r2 = 0, Float_t phimin = 0, Float_t phimax = 360, Float_t theta = 0) TEllipse TEllipse(const TEllipse& ellipse) virtual void ~TEllipse() TClass* Class() virtual void Copy(TObject& ellipse) virtual Int_t DistancetoPrimitive(Int_t px, Int_t py) virtual void Draw(Option_t* option) virtual void DrawEllipse(Float_t x1, Float_t y1, Float_t r1, Float_t r2, Float_t phimin, Float_t phimax, Float_t theta) virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py) Float_t GetPhimax() Float_t GetPhimin() Float_t GetR1() Float_t GetR2() Float_t GetTheta() Float_t GetX1() Float_t GetY1() virtual TClass* IsA() const virtual void ls(Option_t* option) virtual void Paint(Option_t* option) virtual void PaintEllipse(Float_t x1, Float_t y1, Float_t r1, Float_t r2, Float_t phimin, Float_t phimax, Float_t theta) virtual void Print(Option_t* option) virtual void SavePrimitive(ofstream& out, Option_t* option) virtual void SetPhimax(Float_t phi = 360) virtual void SetPhimin(Float_t phi = 0) virtual void SetR1(Float_t r1) virtual void SetR2(Float_t r2) virtual void SetTheta(Float_t theta = 0) virtual void SetX1(Float_t x1) virtual void SetY1(Float_t y1) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b)

Data Members

protected:
Float_t fX1 X coordinate of centre Float_t fY1 Y coordinate of centre Float_t fR1 first radius Float_t fR2 second radius Float_t fPhimin Minimum angle (degrees) Float_t fPhimax Maximum angle (degrees) Float_t fTheta Rotation angle (degrees)


See also

TArc

Class Description

*-*-*-*-*-*-*-*-*-*-*-*-*-*-*Ellipse class*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
*-*                          =============
  Ellipse is a general ellipse that can be truncated and rotated.
  An Ellipse is defined by its center (x1,y1) and two radius r1 and r2.
  A minimum and maximum angle may be specified (phimin, phimax).
  The Ellipse may be rotated with an angle theta.
  The attributes of the outline line are given via TAttLine.
  The attributes of the fill area are given via TAttFill.
  The picture below illustrates different types of ellipses.

/*

*/



TEllipse(): TObject(), TAttLine(), TAttFill()
*-*-*-*-*-*-*-*-*-*-*Ellipse default constructor*-*-*-*-*-*-*-*-*-*-*-*-*-*
*-*                  ===========================

TEllipse(Float_t x1, Float_t y1,Float_t r1,Float_t r2,Float_t phimin,Float_t phimax,Float_t theta) :TObject(), TAttLine(), TAttFill(0,1001)
*-*-*-*-*-*-*-*-*-*-*Ellipse normal constructor*-*-*-*-*-*-*-*-*-*-*-*-*-*
*-*                  ==========================

~TEllipse()
*-*-*-*-*-*-*-*-*-*-*Ellipse default destructor*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
*-*                  ==========================

TEllipse(const TEllipse &ellipse)

void Copy(TObject &obj)
*-*-*-*-*-*-*-*-*-*-*Copy this ellipse to ellipse*-*-*-*-*-*-*-*-*-*-*-*-*-*
*-*                  ============================

Int_t DistancetoPrimitive(Int_t px, Int_t py)
*-*-*-*-*-*-*-*-*-*-*Compute distance from point px,py to an ellipse*-*-*-*
*-*                  ===========================================
  Compute the closest distance of approach from point px,py to this ellipse.
  The distance is computed in pixels units.


void Draw(Option_t *option)
*-*-*-*-*-*-*-*-*-*-*Draw this ellipse with its current attributes*-*-*-*-*
*-*                  ==========================================

void DrawEllipse(Float_t x1, Float_t y1,Float_t r1,Float_t r2,Float_t phimin,Float_t phimax,Float_t theta)
*-*-*-*-*-*-*-*-*-*-*Draw this ellipse with new coordinates*-*-*-*-*-*-*-*-*
*-*                  ======================================

void ExecuteEvent(Int_t event, Int_t px, Int_t py)
*-*-*-*-*-*-*-*-*-*-*Execute action corresponding to one event*-*-*-*
*-*                  =========================================
  This member function is called when a line is clicked with the locator

  If Left button clicked on one of the line end points, this point
     follows the cursor until button is released.

  if Middle button clicked, the line is moved parallel to itself
     until the button is released.


void ls(Option_t *)
*-*-*-*-*-*-*-*-*-*-*-*List this ellipse with its attributes*-*-*-*-*-*-*-*
*-*                    =====================================

void Paint(Option_t *)
*-*-*-*-*-*-*-*-*-*-*Paint this ellipse with its current attributes*-*-*-*-*
*-*                  ==============================================

void PaintEllipse(Float_t, Float_t, Float_t, Float_t, Float_t phimin,Float_t phimax, Float_t theta)
*-*-*-*-*-*-*-*-*-*-*Draw this ellipse with new coordinates*-*-*-*-*-*-*-*-*
*-*                  ======================================

void Print(Option_t *)
*-*-*-*-*-*-*-*-*-*-*Dump this ellipse with its attributes*-*-*-*-*-*-*-*-*
*-*                  =====================================

void SavePrimitive(ofstream &out, Option_t *)
 Save primitive as a C++ statement(s) on output stream out



Inline Functions


            Float_t GetX1()
            Float_t GetY1()
            Float_t GetR1()
            Float_t GetR2()
            Float_t GetPhimin()
            Float_t GetPhimax()
            Float_t GetTheta()
               void SetPhimin(Float_t phi = 0)
               void SetPhimax(Float_t phi = 360)
               void SetR1(Float_t r1)
               void SetR2(Float_t r2)
               void SetTheta(Float_t theta = 0)
               void SetX1(Float_t x1)
               void SetY1(Float_t y1)
            TClass* Class()
            TClass* IsA() const
               void ShowMembers(TMemberInspector& insp, char* parent)
               void Streamer(TBuffer& b)


Author: Rene Brun 16/10/95
Last update: 2.23/04 04/10/99 14.46.17 by Rene Brun
Copyright (c) 1995-1999, The ROOT System, All rights reserved. *


ROOT page - Class index - 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.