123 pave.TPave::Copy(*
this);
131 src.TPave::Copy(*
this);
162 if (
gPad->GetLogx()) {
166 if (
gPad->GetLogy()) {
210 if (!
gPad)
return 9999;
216 if (px1 < px2) {
pxl = px1;
pxt = px2;}
217 else {
pxl = px2;
pxt = px1;}
218 if (py1 < py2) {
pyl = py1;
pyt = py2;}
219 else {
pyl = py2;
pyt = py1;}
222 if ( (px >=
pxl && px <=
pxt) && (py >=
pyl && py <=
pyt) )
return 0;
259 if (!
gPad->IsEditable())
return;
329 if (opt.
Length() == 0) opt =
"br";
355 x[3] =
x[2];
y[3] =
y1 + 1.5*
wy;
356 x[4] =
x2;
y[4] =
y[3];
357 x[5] =
x[4];
y[5] =
y2;
364 x[2] =
x2 - 1.5*
wx;
y[2] =
y[1];
365 x[3] =
x[2];
y[3] =
y2;
366 x[4] =
x1;
y[4] =
y[3];
367 x[5] =
x1;
y[5] =
y[0];
375 x[3] =
x[2];
y[3] =
y2 - 1.5*
wy;
376 x[4] =
x2;
y[4] =
y[3];
377 x[5] =
x[4];
y[5] =
y1;
384 x[2] =
x2 - 1.5*
wx;
y[2] =
y[1];
385 x[3] =
x[2];
y[3] =
y1;
386 x[4] =
x1;
y[4] =
y[3];
387 x[5] =
x[4];
y[5] =
y[0];
390 for (
Int_t i=0;i<6;i++) {
391 if (
x[i] <
gPad->GetX1())
x[i] =
gPad->GetX1();
392 if (
x[i] >
gPad->GetX2())
x[i] =
gPad->GetX2();
393 if (
y[i] <
gPad->GetY1())
y[i] =
gPad->GetY1();
394 if (
y[i] >
gPad->GetY2())
y[i] =
gPad->GetY2();
396 x[6] =
x[0];
y[6] =
y[0];
400 gPad->PaintFillArea(6,
x,
y);
406 gPad->PaintPolyLine(5,
x,
y);
424 if (opt.
Length() == 0) opt =
"br";
454 px[0] = px2; py[0] = py1 -
r;
455 px[1] = px2; py[1] = py2 +
r;
462 px[
np] = px2 -
r; py[
np] = py2;
463 px[
np+1] = px1 +
r; py[
np+1] = py2;
465 for (i=
kNPARC-1;i>=0;i--) {
470 px[
np] = px1; py[
np] = py2 +
r;
471 px[
np+1] = px1; py[
np+1] = py1 -
r;
478 px[
np] = px1 +
r; py[
np] = py1;
479 px[
np+1] = px2 -
r; py[
np+1] = py1;
481 for (i=
kNPARC-1;i>=0;i--) {
486 px[
np] = px[0]; py[
np] =py[0];
489 for (i=0;i<=
np;i++) {
503 px[0] = px2; py[0] = py1 -
r;
504 px[1] = px2; py[1] = py2 +
r;
511 px[
np] = px2 -
r; py[
np] = py2;
512 px[
np+1] = px1 +
r; py[
np+1] = py2;
513 px[
np+2] = px1 +
r; py[
np+2] = py2 -
wy;
514 px[
np+3] = px2 -
r; py[
np+3] = py2 -
wy;
516 for (i=
kNPARC-1;i>=0;i--) {
521 px[
np] = px2 +
wx; py[
np] = py2 +
r;
522 px[
np+1] = px2 +
wx; py[
np+1] = py1 -
r;
523 px[
np+2] = px[0]; py[
np+2] = py[0];
528 px[0] = px2 -
r; py[0] = py2;
529 px[1] = px1 +
r; py[1] = py2;
531 for (i=
kNPARC-1;i>=0;i--) {
536 px[
np] = px1; py[
np] = py2 +
r;
537 px[
np+1] = px1; py[
np+1] = py1 -
r;
538 px[
np+2] = px1 -
wx; py[
np+2] = py1 -
r;
539 px[
np+3] = px1 -
wx; py[
np+3] = py2 +
r;
546 px[
np] = px1 +
r; py[
np] = py2 -
wy;
547 px[
np+1] = px2 -
r; py[
np+1] = py2 -
wy;
548 px[
np+2] = px[0]; py[
np+2] =
y[0];
553 px[0] = px1 +
r; py[0] = py1;
554 px[1] = px2 -
r; py[1] = py1;
556 for (i=
kNPARC-1;i>=0;i--) {
561 px[
np] = px2; py[
np] = py1 -
r;
562 px[
np+1] = px2; py[
np+1] = py2 +
r;
563 px[
np+2] = px2 +
wx; py[
np+2] = py2 +
r;
564 px[
np+3] = px2 +
wx; py[
np+3] = py1 -
r;
571 px[
np] = px2 -
r; py[
np] = py1 +
wy;
572 px[
np+1] = px[0]; py[
np+1] = py[0] +
wy;
573 px[
np+2] = px[0]; py[
np+2] = py[0];
578 px[0] = px1; py[0] = py2 +
r;
579 px[1] = px1; py[1] = py1 -
r;
586 px[
np] = px1 +
r; py[
np] = py1;
587 px[
np+1] = px2 -
r; py[
np+1] = py1;
588 px[
np+2] = px2 -
r; py[
np+2] = py1 +
wy;
589 px[
np+3] = px1 +
r; py[
np+3] = py1 +
wy;
591 for (i=
kNPARC-1;i>=0;i--) {
596 px[
np] = px1 -
wx; py[
np] = py1 -
r;
597 px[
np+1] = px1 -
wx; py[
np+1] = py[0];
598 px[
np+2] = px[0]; py[
np+2] = py[0];
604 for (i=0;i<=
np;i++) {
636 out<<
"pave = new TPave("<<
fX1<<
","<<
fY1<<
","<<
fX2<<
","<<
fY2
643 out<<
" pave->SetCornerRadius("<<
fCornerRadius<<
");"<<std::endl;
647 out<<
" pave->Draw();"<<std::endl;
707 if (
R__b.IsReading()) {
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
Option_t Option_t SetFillStyle
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t np
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t r
Option_t Option_t SetLineColor
Option_t Option_t TPoint TPoint const char x2
Option_t Option_t TPoint TPoint const char x1
Option_t Option_t TPoint TPoint const char mode
Option_t Option_t TPoint TPoint const char y2
Option_t Option_t SetFillColor
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t src
Option_t Option_t TPoint TPoint const char y1
R__EXTERN TStyle * gStyle
virtual Color_t GetFillColor() const
Return the fill area color.
virtual Style_t GetFillStyle() const
Return the fill area style.
virtual void Modify()
Change current fill area attributes if necessary.
virtual void SaveFillAttributes(std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1001)
Save fill attributes as C++ statement(s) on output stream out.
virtual Color_t GetLineColor() const
Return the line color.
virtual void SetLineStyle(Style_t lstyle)
Set the line style.
virtual Style_t GetLineStyle() const
Return the line style.
virtual void Modify()
Change current line attributes if necessary.
virtual void SaveLineAttributes(std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1, Int_t widdef=1)
Save line attributes as C++ statement(s) on output stream out.
virtual void PaintBox(Double_t x1, Double_t y1, Double_t x2, Double_t y2, Option_t *option="")
Draw this box with new coordinates.
void Streamer(TBuffer &) override
Stream an object of class TBox.
Double_t fX1
X of 1st point.
void ExecuteEvent(Int_t event, Int_t px, Int_t py) override
Execute action corresponding to one event.
void Print(Option_t *option="") const override
Dump this box with its attributes.
Double_t fY2
Y of 2nd point.
Double_t fX2
X of 2nd point.
Double_t fY1
Y of 1st point.
void Copy(TObject &box) const override
Copy a Box.
Buffer base class used for serializing objects.
Mother of all ROOT objects.
R__ALWAYS_INLINE Bool_t TestBit(UInt_t f) const
virtual const char * ClassName() const
Returns name of class to which the object belongs.
virtual void AppendPad(Option_t *option="")
Append graphics object to current pad.
@ kCanDelete
if object in a list can be deleted
A TBox with a bordersize and a shadow option.
TPave()
Pave default constructor.
void Print(Option_t *option="") const override
Dump this pave with its attributes.
void SetX2(Double_t x2) override
Set the X2 value.
TPave & operator=(const TPave &src)
Assignment operator.
virtual void ConvertNDCtoPad()
Convert pave coordinates from NDC to Pad coordinates.
virtual void PaintPaveArc(Double_t x1, Double_t y1, Double_t x2, Double_t y2, Int_t bordersize=4, Option_t *option="br")
Draw this pave with rounded corners.
const char * GetName() const override
Returns name of object.
void Copy(TObject &pave) const override
Copy this pave to pave.
void Streamer(TBuffer &) override
Stream an object of class TPave.
void ExecuteEvent(Int_t event, Int_t px, Int_t py) override
Execute action corresponding to one event.
Int_t fBorderSize
window box bordersize in pixels
TClass * IsA() const override
void Draw(Option_t *option="") override
Draw this pave with its current attributes.
void ls(Option_t *option="") const override
List this pave with its attributes.
virtual void SetName(const char *name="")
void SetX1(Double_t x1) override
Set the X1 value.
Double_t fX2NDC
X2 point in NDC coordinates.
void SavePrimitive(std::ostream &out, Option_t *option="") override
Save primitive as a C++ statement(s) on output stream out.
Int_t fShadowColor
Color of the pave's shadow.
void SetY1(Double_t y1) override
Set the Y1 value.
Int_t fInit
(=0 if transformation to NDC not yet done)
TString fOption
Pave style.
Double_t fY2NDC
Y2 point in NDC coordinates.
Int_t DistancetoPrimitive(Int_t px, Int_t py) override
Compute distance from point px,py to a pave.
Double_t fX1NDC
X1 point in NDC coordinates.
void SetY2(Double_t y2) override
Set the Y2 value.
@ kNameIsAction
double clicking on TPave will execute action
Double_t fCornerRadius
Corner radius in case of option arc.
Option_t * GetOption() const override
Double_t fY1NDC
Y1 point in NDC coordinates.
void Paint(Option_t *option="") override
Paint this pave with its current attributes.
~TPave() override
Pave default destructor.
virtual TPave * DrawPave(Double_t x1, Double_t y1, Double_t x2, Double_t y2, Int_t bordersize=4, Option_t *option="br")
Draw this pave with new coordinates.
Int_t GetShadowColor() const
virtual void PaintPave(Double_t x1, Double_t y1, Double_t x2, Double_t y2, Int_t bordersize=4, Option_t *option="br")
Draw this pave with new coordinates.
static void IndentLevel()
Functions used by ls() to indent an object hierarchy.
void ToLower()
Change string to lower-case.
virtual void Streamer(TBuffer &)
Stream a string object.
Bool_t Contains(const char *pat, ECaseCompare cmp=kExact) const
void CallRecursiveRemoveIfNeeded(TObject &obj)
call RecursiveRemove for obj if gROOT is valid and obj.TestBit(kMustCleanup) is true.
Double_t Cos(Double_t)
Returns the cosine of an angle of x radians.
Double_t Sin(Double_t)
Returns the sine of an angle of x radians.
Double_t Log10(Double_t x)
Returns the common (base-10) logarithm of x.
Short_t Abs(Short_t d)
Returns the absolute value of parameter Short_t d.