76 x0 =
gPad->AbsPixeltoX(px);
79 y0 =
gPad->AbsPixeltoY(py);
85 xold =
gPad->AbsPixeltoX(px);
86 yold =
gPad->AbsPixeltoY(py);
127 x1 =
gPad->AbsPixeltoX(px);
128 y1 =
gPad->AbsPixeltoY(py);
143 gROOT->SetEditorMode();
158 static Int_t pxold, pyold;
159 static Int_t px0, py0;
165 x0 =
gPad->AbsPixeltoX(px);
166 y0 =
gPad->AbsPixeltoY(py);
168 pxold = px; pyold = py;
177 x1 =
gPad->AbsPixeltoX(pxold);
178 y1 =
gPad->AbsPixeltoY(pyold);
257 gROOT->SetEditorMode();
272 static Int_t px1old, py1old, px2old, py2old;
273 static Int_t px1, py1, px2, py2, pxl, pyl, pxt, pyt;
274 static TPad *padsav =
nullptr;
282 while ((obj = next())) {
293 px1 =
gPad->XtoAbsPixel(
gPad->GetX1());
294 py1 =
gPad->YtoAbsPixel(
gPad->GetY1());
295 px2 =
gPad->XtoAbsPixel(
gPad->GetX2());
296 py2 =
gPad->YtoAbsPixel(
gPad->GetY2());
297 px1old = px; py1old = py;
333 gROOT->SetEditorMode();
334 if (xup <= xlow || yup <= ylow)
return;
335 newpad =
new TPad(
Form(
"%s_%d",
gPad->GetName(),
n+1),
"newpad",xlow, ylow, xup, yup);
374 gROOT->SetEditorMode();
386 }
else if (isprint(py)) {
398 x0 =
gPad->AbsPixeltoX(px);
399 y0 =
gPad->AbsPixeltoY(py);
403 xold =
gPad->AbsPixeltoX(px);
404 yold =
gPad->AbsPixeltoY(py);
406 xp0 =
gPad->PadtoX(x0);
407 xp1 =
gPad->PadtoX(xold);
408 yp0 =
gPad->PadtoY(y0);
409 yp1 =
gPad->PadtoY(yold);
560 gROOT->SetEditorMode();
573 static Int_t pxnew, pynew, pxold, pyold, dp;
575 static Int_t npoints = 0;
586 gPad->PadtoY(
gPad->AbsPixeltoY(pynew)));
589 xnew =
gPad->PadtoX(
gPad->AbsPixeltoX(pxnew));
590 ynew =
gPad->PadtoY(
gPad->AbsPixeltoY(pynew));
592 pxold =
gPad->XtoAbsPixel(xold);
593 pyold =
gPad->YtoAbsPixel(yold);
607 gROOT->SetEditorMode();
618 gPad->PadtoY(
gPad->AbsPixeltoY(pynew)));
636 gROOT->SetEditorMode();
646 gPad->PadtoY(
gPad->AbsPixeltoY(pynew)));
674 gROOT->SetEditorMode();
687 }
else if (isprint(py)) {
705 x =
gPad->AbsPixeltoX(px);
706 y =
gPad->AbsPixeltoY(py);
715 gROOT->SetEditorMode();
static const double x1[5]
char * Form(const char *fmt,...)
R__EXTERN TStyle * gStyle
R__EXTERN TSystem * gSystem
Draw all kinds of Arrows.
static Option_t * GetDefaultOption()
Get default option.
virtual void Draw(Option_t *option="")
Draw this arrow with its current attributes.
static Float_t GetDefaultArrowSize()
Get default arrow size.
virtual void SetFillColor(Color_t fcolor)
Set the fill area color.
virtual void SetY2(Double_t y2)
virtual void SetX1(Double_t x1)
virtual void Draw(Option_t *option="")
Draw this box with its current attributes.
virtual void SetX2(Double_t x2)
virtual void SetY1(Double_t y1)
virtual void Selected(TVirtualPad *pad, TObject *obj, Int_t event)
Emit Selected() signal.
static void Pave(Int_t event, Int_t px, Int_t py, Int_t mode)
Create a new pavetext in gPad.
static TPavesText * fgPavesText
static TCurlyLine * fgCLine
static void Line(Int_t event, Int_t px, Int_t py, Int_t mode)
Create a new line/arrow in this gPad.
static TEllipse * fgEllipse
static void PolyLine(Int_t event, Int_t px, Int_t py, Int_t mode)
Create a new PolyLine in gPad.
static void Text(Int_t event, Int_t px, Int_t py, Int_t mode)
Create a new TLatex at the cursor position in gPad.
virtual ~TCreatePrimitives()
TCreatePrimitives destructor.
static void Ellipse(Int_t event, Int_t px, Int_t py, Int_t mode)
Create a new arc/ellipse in this gPad.
static TCurlyArc * fgCArc
static TGraph * fgPolyLine
static TPaveText * fgPaveText
static TPaveLabel * fgPaveLabel
TCreatePrimitives()
TCreatePrimitives default constructor.
static void Pad(Int_t event, Int_t px, Int_t py, Int_t)
Create a new pad in gPad.
static TDiamond * fgDiamond
Implements curly or wavy arcs used to draw Feynman diagrams.
virtual void SetRadius(Double_t radius)
Set Curly Arc radius.
static Double_t GetDefaultWaveLength()
Get default wave length.
static Double_t GetDefaultAmplitude()
Get default wave amplitude.
Implements curly or wavy polylines used to draw Feynman diagrams.
virtual void SetStartPoint(Double_t x1, Double_t y1)
Set start point.
static Double_t GetDefaultWaveLength()
Get default wave length.
static Double_t GetDefaultAmplitude()
Get default amplitude.
virtual void SetEndPoint(Double_t x2, Double_t y2)
Set end point.
virtual void Draw(Option_t *option="")
Draw this diamond with its current attributes.
virtual void SetR1(Double_t r1)
virtual void SetX1(Double_t x1)
virtual void Draw(Option_t *option="")
Draw this ellipse with its current attributes.
virtual void SetY1(Double_t y1)
virtual void SetR2(Double_t r2)
A TGraph is an object made of two arrays X and Y with npoints each.
virtual void SetPoint(Int_t i, Double_t x, Double_t y)
Set x and y values for point number i.
@ kClipFrame
Clip to the frame boundary.
virtual void Draw(Option_t *chopt="")
Draw this graph with its current attributes.
virtual void Set(Int_t n)
Set number of points in the graph Existing coordinates are preserved New coordinates above fNpoints a...
virtual Int_t GetPoint(Int_t i, Double_t &x, Double_t &y) const
Get x and y values for point number i.
To draw Mathematical Formula.
Use the TLine constructor to create a simple line.
virtual void SetY2(Double_t y2)
virtual void SetX2(Double_t x2)
virtual void Draw(Option_t *option="")
Draw this marker with its current attributes.
virtual const char * GetTitle() const
Returns title of object.
Mother of all ROOT objects.
R__ALWAYS_INLINE Bool_t IsZombie() const
virtual void Delete(Option_t *option="")
Delete this object.
virtual Bool_t InheritsFrom(const char *classname) const
Returns kTRUE if object inherits from class "classname".
virtual void Draw(Option_t *option="")
Default Draw method for all objects.
The most important graphics class in the ROOT system.
TCanvas * GetCanvas() const override
TVirtualPad * cd(Int_t subpadnumber=0) override
Set Current pad.
void Draw(Option_t *option="") override
Draw Pad in Current pad (re-parent pad if necessary).
A Pave (see TPave) with a text centered in the Pave.
const char * GetTitle() const
Returns title of object.
virtual void Draw(Option_t *option="")
Draw this pavelabel with its current attributes.
virtual void SetLabel(const char *label)
A Pave (see TPave) with text, lines or/and boxes inside.
virtual void Draw(Option_t *option="")
Draw this pavetext with its current attributes.
A TBox with a bordersize and a shadow option.
virtual void SetX2(Double_t x2)
Set the X2 value.
virtual void SetY2(Double_t y2)
Set the Y2 value.
virtual void Draw(Option_t *option="")
Draw this pave with its current attributes.
virtual void SetX1(Double_t x1)
Set the X1 value.
virtual void SetY1(Double_t y1)
Set the Y1 value.
A PaveText (see TPaveText) with several stacked paves.
virtual void Draw(Option_t *option="")
Draw this pavestext with its current attributes.
virtual void Draw(Option_t *option="")
Draw this polyline with its current attributes.
TString & Insert(Ssiz_t pos, const char *s)
TString & Replace(Ssiz_t pos, Ssiz_t n, const char *s)
const char * Data() const
TString & Remove(Ssiz_t pos)
Color_t GetPadColor() const
virtual Bool_t ProcessEvents()
Process pending events (GUI, timers, sockets).
virtual void SetText(Double_t x, Double_t y, const char *text)
Short_t Max(Short_t a, Short_t b)
Double_t Sqrt(Double_t x)
LongDouble_t Power(LongDouble_t x, LongDouble_t y)
Short_t Min(Short_t a, Short_t b)