127 if (!
gPad->IsEditable())
return;
233 x[0] =
x[2] =
x[4] = (px1+px2)/2;
238 y[1] =
y[3] = (py1+py2)/2;
240 for (i=0;i<4;i++)
gVirtualX->DrawLine(
x[i],
y[i],
x[i+1],
y[i+1]);
245 y[1] =
y[3] = (py1+py2)/2;
246 for (i=0;i<4;i++)
gVirtualX->DrawLine(
x[i],
y[i],
x[i+1],
y[i+1]);
249 for (i=0;i<4;i++)
gVirtualX->DrawLine(
x[i],
y[i],
x[i+1],
y[i+1]);
254 y[1] =
y[3] = (py1+py2)/2;
255 for (i=0;i<4;i++)
gVirtualX->DrawLine(
x[i],
y[i],
x[i+1],
y[i+1]);
258 for (i=0;i<4;i++)
gVirtualX->DrawLine(
x[i],
y[i],
x[i+1],
y[i+1]);
263 x[0] =
x[2] =
x[4] = (px1+px2)/2;
264 for (i=0;i<4;i++)
gVirtualX->DrawLine(
x[i],
y[i],
x[i+1],
y[i+1]);
267 for (i=0;i<4;i++)
gVirtualX->DrawLine(
x[i],
y[i],
x[i+1],
y[i+1]);
272 x[0] =
x[2] =
x[4] = (px1+px2)/2;
273 for (i=0;i<4;i++)
gVirtualX->DrawLine(
x[i],
y[i],
x[i+1],
y[i+1]);
276 for (i=0;i<4;i++)
gVirtualX->DrawLine(
x[i],
y[i],
x[i+1],
y[i+1]);
279 px1 +=
dx; py1 +=
dy; px2 +=
dx; py2 +=
dy;
284 x[0] =
x[2] =
x[4] = (px1+px2)/2;
289 y[1] =
y[3] = (py1+py2)/2;
290 for (i=0;i<4;i++)
gVirtualX->DrawLine(
x[i],
y[i],
x[i+1],
y[i+1]);
319 if (
pINSIDE)
gPad->ShowGuidelines(
this, event,
'i',
true);
320 if (
pTop)
gPad->ShowGuidelines(
this, event,
't',
true);
321 if (
pBot)
gPad->ShowGuidelines(
this, event,
'b',
true);
322 if (
pL)
gPad->ShowGuidelines(
this, event,
'l',
true);
323 if (
pR)
gPad->ShowGuidelines(
this, event,
'r',
true);
334 gPad->ShowGuidelines(
this, event);
365 event =
gVirtualX->RequestLocator(1, 1, px, py);
434 x[4] =
x[0];
y[4] =
y[0];
438 gPad->PaintFillArea(4,
x,
y);
446 x[4] =
x[0];
y[4] =
y[0];
451 gPad->PaintFillArea(4,
x,
y);
452 gPad->PaintPolyLine(5,
x,
y);
469 out<<
"diamond = new TDiamond("<<
fX1<<
","<<
fY1<<
","<<
fX2<<
","<<
fY2<<
");"<<std::endl;
476 out<<
" diamond->Draw();"<<std::endl;
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
winID h TVirtualViewer3D TVirtualGLPainter p
Option_t Option_t SetFillStyle
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 y2
Option_t Option_t SetFillColor
Option_t Option_t TPoint TPoint const char y1
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 SetLineColor(Color_t lcolor)
Set the line color.
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 SaveTextAttributes(std::ostream &out, const char *name, Int_t alidef=12, Float_t angdef=0, Int_t coldef=1, Int_t fondef=61, Float_t sizdef=1)
Save text attributes as C++ statement(s) on output stream out.
Double_t fX1
X of 1st point.
Double_t fY2
Y of 2nd point.
Double_t fX2
X of 2nd point.
Double_t fY1
Y of 1st point.
Bool_t fResizing
! True if box is being resized
The concrete implementation of TBuffer for writing/reading to/from a ROOT file or socket.
TDiamond()
Diamond default constructor.
void Draw(Option_t *option="") override
Draw this diamond with its current attributes.
void ExecuteEvent(Int_t event, Int_t px, Int_t py) override
Execute action corresponding to one event.
void SavePrimitive(std::ostream &out, Option_t *option="") override
Save primitive as a C++ statement(s) on output stream out.
void Paint(Option_t *option="") override
Paint this diamond with its current attributes.
void Streamer(TBuffer &) override
Stream an object of class TBox.
Int_t IsInside(Double_t x, Double_t y) const override
Return 1 if the point (x,y) is inside the polygon defined by the diamond 0 otherwise.
Int_t DistancetoPrimitive(Int_t px, Int_t py) override
Compute distance from point px,py to a diamond.
~TDiamond() override
Diamond destructor.
virtual Int_t DistancetoPrimitive(Int_t px, Int_t py)
Computes distance from point (px,py) to the object.
virtual void AppendPad(Option_t *option="")
Append graphics object to current pad.
A Pave (see TPave) with text, lines or/and boxes inside.
virtual void PaintPrimitives(Int_t mode)
Paint list of primitives in this pavetext.
virtual void SaveLines(std::ostream &out, const char *name, Bool_t saved)
Save lines of this pavetext as C++ statements on output stream out.
Int_t fBorderSize
window box bordersize in pixels
TVirtualPad is an abstract base class for the Pad and Canvas classes.
virtual Int_t YtoAbsPixel(Double_t y) const =0
virtual Double_t GetX2() const =0
virtual Int_t XtoAbsPixel(Double_t x) const =0
virtual Double_t GetY1() const =0
virtual Double_t GetY2() const =0
virtual Short_t GetBorderSize() const =0
virtual Double_t GetX1() const =0
Bool_t IsInside(T xp, T yp, Int_t np, T *x, T *y)
Function which returns kTRUE if point xp,yp lies inside the polygon defined by the np points in array...
Short_t Abs(Short_t d)
Returns the absolute value of parameter Short_t d.