Logo ROOT  
Reference Guide
Loading...
Searching...
No Matches
TCurlyArc.h
Go to the documentation of this file.
1// @(#)root/graf:$Id$
2// Author: Otto Schaile 20/11/99
3
4/*************************************************************************
5 * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
6 * All rights reserved. *
7 * *
8 * For the licensing terms see $ROOTSYS/LICENSE. *
9 * For the list of contributors see $ROOTSYS/README/CREDITS. *
10 *************************************************************************/
11#ifndef ROOT_TCurlyArc
12#define ROOT_TCurlyArc
13
14#include "TCurlyLine.h"
15
16class TCurlyArc : public TCurlyLine {
17
18private:
19 Double_t fR1; ///< Radius of arc
20 Double_t fPhimin; ///< start phi (degrees)
21 Double_t fPhimax; ///< end phi (degrees)
22 Double_t fTheta; ///< used internally
23
24 static Double_t fgDefaultWaveLength; ///< default wavelength
25 static Double_t fgDefaultAmplitude; ///< default amplitude
26 static Bool_t fgDefaultIsCurly; ///< default curly type
27
28public:
31 Double_t phimin, Double_t phimax,
32 Double_t wl = .02, Double_t amp = .01);
33 ~TCurlyArc() override {}
34
35 void Build() override;
37 void ExecuteEvent(Int_t event, Int_t px, Int_t py) override;
38 Double_t GetRadius() const {return fR1;}
39 Double_t GetPhimin() const {return fPhimin;}
40 Double_t GetPhimax() const {return fPhimax;}
41 virtual void SetCenter(Double_t x1, Double_t y1); // *MENU* *ARGS={x1=>fX1,y1=>fY1}
42 virtual void SetRadius(Double_t radius); // *MENU* *ARGS={radius=>fR1}
43 virtual void SetPhimin(Double_t phimin); // *MENU* *ARGS={phimin=>fPhimin}
44 virtual void SetPhimax(Double_t phimax); // *MENU* *ARGS={phimax=>fPhimax}
45 void SavePrimitive(std::ostream &out, Option_t * = "") override;
46
47 static void SetDefaultWaveLength(Double_t WaveLength);
48 static void SetDefaultAmplitude (Double_t Amplitude );
49 static void SetDefaultIsCurly (Bool_t IsCurly );
53
54 Rectangle_t GetBBox() override;
56 void SetBBoxCenter(const TPoint &p) override;
57 void SetBBoxCenterX(const Int_t x) override;
58 void SetBBoxCenterY(const Int_t y) override;
59 void SetBBoxX1(const Int_t x) override;
60 void SetBBoxX2(const Int_t x) override;
61 void SetBBoxY1(const Int_t y) override;
62 void SetBBoxY2(const Int_t y) override;
63
64 ClassDefOverride(TCurlyArc,3) // A curly arc
65};
66
67#endif
68
int Int_t
Signed integer 4 bytes (int).
Definition RtypesCore.h:59
bool Bool_t
Boolean (0=false, 1=true) (bool).
Definition RtypesCore.h:77
double Double_t
Double 8 bytes.
Definition RtypesCore.h:73
const char Option_t
Option string (const char).
Definition RtypesCore.h:80
#define ClassDefOverride(name, id)
Definition Rtypes.h:348
Rectangle_t GetBBox() override
static void SetDefaultIsCurly(Bool_t IsCurly)
static Double_t GetDefaultWaveLength()
static Bool_t GetDefaultIsCurly()
Double_t GetPhimax() const
Definition TCurlyArc.h:40
Int_t DistancetoPrimitive(Int_t px, Int_t py) override
Computes distance from point (px,py) to the object.
void SetBBoxX1(const Int_t x) override
virtual void SetPhimax(Double_t phimax)
void Build() override
virtual void SetRadius(Double_t radius)
Double_t fTheta
used internally
Definition TCurlyArc.h:22
Double_t fPhimax
end phi (degrees)
Definition TCurlyArc.h:21
void SetBBoxY2(const Int_t y) override
virtual void SetCenter(Double_t x1, Double_t y1)
Double_t GetRadius() const
Definition TCurlyArc.h:38
void SetBBoxX2(const Int_t x) override
static Double_t fgDefaultWaveLength
default wavelength
Definition TCurlyArc.h:24
virtual void SetPhimin(Double_t phimin)
Double_t fPhimin
start phi (degrees)
Definition TCurlyArc.h:20
Double_t fR1
Radius of arc.
Definition TCurlyArc.h:19
static Double_t fgDefaultAmplitude
default amplitude
Definition TCurlyArc.h:25
~TCurlyArc() override
Definition TCurlyArc.h:33
void ExecuteEvent(Int_t event, Int_t px, Int_t py) override
Execute action corresponding to an event at (px,py).
TPoint GetBBoxCenter() override
static Bool_t fgDefaultIsCurly
default curly type
Definition TCurlyArc.h:26
void SavePrimitive(std::ostream &out, Option_t *="") override
Save a primitive as a C++ statement(s) on output stream "out".
static Double_t GetDefaultAmplitude()
void SetBBoxCenter(const TPoint &p) override
void SetBBoxCenterY(const Int_t y) override
void SetBBoxY1(const Int_t y) override
TCurlyArc(Double_t x1, Double_t y1, Double_t rad, Double_t phimin, Double_t phimax, Double_t wl=.02, Double_t amp=.01)
Double_t GetPhimin() const
Definition TCurlyArc.h:39
static void SetDefaultAmplitude(Double_t Amplitude)
static void SetDefaultWaveLength(Double_t WaveLength)
void SetBBoxCenterX(const Int_t x) override
Double_t y[n]
Definition legend1.C:17
Double_t x[n]
Definition legend1.C:17
Rectangle structure (maps to the X11 XRectangle structure).
Definition GuiTypes.h:362