TCurlyArc


class description - source file - inheritance tree

class TCurlyArc : public TCurlyLine


    public:
TCurlyArc TCurlyArc() TCurlyArc TCurlyArc(Float_t x1, Float_t y1, Float_t rad, Float_t phimin, Float_t phimax, Float_t tl = .05, Float_t trad = .02) TCurlyArc TCurlyArc(TCurlyArc&) virtual void ~TCurlyArc() virtual void Build() TClass* Class() virtual Int_t DistancetoPrimitive(Int_t px, Int_t py) virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py) Float_t GetPhimax() Float_t GetPhimin() Float_t GetRadius() virtual TClass* IsA() const virtual void SavePrimitive(ofstream& out, Option_t*) virtual void SetCenter(Float_t x1, Float_t y1) virtual void SetPhimax(Float_t phimax) virtual void SetPhimin(Float_t phimin) virtual void SetRadius(Float_t radius) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b)

Data Members

private:
Float_t fR1 Radius of arc Float_t fPhimin start phi (degrees) Float_t fPhimax end phi (degrees) Float_t fTheta used internally

Class Description

 This class implements curly or wavy arcs typically used to draw Feynman diagrams.
 Amplitudes and wavelengths may be specified in the constructors,
 via commands or interactively from popup menus.
 The class make use of TCurlyLine by inheritance, ExecuteEvent methods
 are highly inspired from the methods used in TPolyLine and TArc.
 The picture below has been generated by the tutorial feynman.

/*

*/

________________________________________________________________________

TCurlyArc(Float_t x1, Float_t y1, Float_t rad, Float_t phimin, Float_t phimax, Float_t tl, Float_t trad) : fR1(rad), fPhimin(phimin),fPhimax(phimax)
 create a new TCurlyarc with center (x1, y1) and radius rad.
 The wavelength and amplitude are given in percent of the line length
 phimin and phimax are given in degrees.

void Build()
*-*-*-*-*-*-*-*-*-*-*Create a curly (Gluon) or wavy (Gamma) arc*-*-*-*-*-*
*-*                  ===========================================

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


void ExecuteEvent(Int_t event, Int_t px, Int_t py)
*-*-*-*-*-*-*-*-*-*-*Execute action corresponding to one event*-*-*-*
*-*                  =========================================
  This member function is called when a TCurlyArc 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 SavePrimitive(ofstream &out, Option_t *)
 Save primitive as a C++ statement(s) on output stream out

void SetCenter(Float_t x, Float_t y)

void SetRadius(Float_t x)

void SetPhimin(Float_t x)

void SetPhimax(Float_t x)



Inline Functions


          TCurlyArc TCurlyArc(Float_t x1, Float_t y1, Float_t rad, Float_t phimin, Float_t phimax, Float_t tl = .05, Float_t trad = .02)
            Float_t GetRadius()
            Float_t GetPhimin()
            Float_t GetPhimax()
            TClass* Class()
            TClass* IsA() const
               void ShowMembers(TMemberInspector& insp, char* parent)
               void Streamer(TBuffer& b)
          TCurlyArc TCurlyArc(TCurlyArc&)
               void ~TCurlyArc()


Author: Otto Schaile 20/11/99
Last update: 2.23/10 04/12/99 18.25.05 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.