127 xv[0] = 0;
yv[0] = 0;
132 for(i = 2; i <
fNsteps-1; i++){
261 px1 +=
dx; py1 +=
dy; px2 +=
dx; py2 +=
dy;
276 gPad->ShowGuidelines(
this, event,
'2',
true);
278 gPad->ShowGuidelines(
this, event,
'3',
true);
282 gPad->ShowGuidelines(
this, event,
'1',
true);
284 gPad->ShowGuidelines(
this, event,
'4',
true);
291 gPad->ShowGuidelines(
this, event,
'4',
true);
293 gPad->ShowGuidelines(
this, event,
'1',
true);
297 gPad->ShowGuidelines(
this, event,
'3',
true);
299 gPad->ShowGuidelines(
this, event,
'2',
true);
303 gPad->ShowGuidelines(
this, event,
'i',
true);
313 gPad->ShowGuidelines(
this, event);
342 TString::Format(
"%g, %g, %g, %g, %g, %g",
fX1,
fY1,
fX2,
fY2,
fWaveLength,
fAmplitude));
347 out <<
" curlyline->SetWavy();\n";
481 BBox.fWidth = px2 - px1;
482 BBox.fHeight = py2 - py1;
511 x1 =
gPad->PixeltoX(
p.GetX())-0.5*
w;
512 x2 =
gPad->PixeltoX(
p.GetX())+0.5*
w;
514 x2 =
gPad->PixeltoX(
p.GetX())-0.5*
w;
515 x1 =
gPad->PixeltoX(
p.GetX())+0.5*
w;
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 TPoint TPoint const char x2
Option_t Option_t TPoint TPoint const char x1
Option_t Option_t TPoint TPoint angle
Option_t Option_t TPoint TPoint const char y2
Option_t Option_t TPoint TPoint const char y1
virtual void Modify()
Change current line attributes if necessary.
Int_t DistancetoLine(Int_t px, Int_t py, Double_t xp1, Double_t yp1, Double_t xp2, Double_t yp2)
Compute distance from point px,py to a line.
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.
Implements curly or wavy polylines used to draw Feynman diagrams.
TCurlyLine()
Default constructor.
virtual void SetWaveLength(Double_t WaveLength)
Set wave length.
virtual void SetCurly()
Set curly.
Double_t fY1
start y, center for arc
virtual void SetAmplitude(Double_t x)
Set amplitude.
Double_t fWaveLength
wavelength of sinusoid in percent of pad height
Double_t fAmplitude
amplitude of sinusoid in percent of pad height
void SetBBoxY1(const Int_t y) override
Set top of BoundingBox to a value (resize in y direction on top)
virtual void SetStartPoint(Double_t x1, Double_t y1)
Set start point.
void SetBBoxX2(const Int_t x) override
Set right hands ide of BoundingBox to a value (resize in x direction on right)
Int_t fNsteps
used internally (controls precision)
void SetBBoxCenter(const TPoint &p) override
Set center of the BoundingBox.
void SetBBoxY2(const Int_t y) override
Set bottom of BoundingBox to a value (resize in y direction on bottom)
Rectangle_t GetBBox() override
Return the bounding Box of the CurlyLine.
TPoint GetBBoxCenter() override
Return the center of the BoundingBox as TPoint in pixels.
static Double_t GetDefaultWaveLength()
Get default wave length.
static Bool_t GetDefaultIsCurly()
Get default "IsCurly".
virtual void Build()
Create a curly (Gluon) or wavy (Gamma) line.
void SavePrimitive(std::ostream &out, Option_t *="") override
Save primitive as a C++ statement(s) on output stream out.
static void SetDefaultAmplitude(Double_t Amplitude)
Set default amplitude.
static void SetDefaultWaveLength(Double_t WaveLength)
Set default wave length.
static Bool_t fgDefaultIsCurly
default curly type
static Double_t GetDefaultAmplitude()
Get default amplitude.
virtual void SetEndPoint(Double_t x2, Double_t y2)
Set end point.
void SetBBoxX1(const Int_t x) override
Set left hand side of BoundingBox to a value (resize in x direction on left)
Double_t fX1
start x, center for arc
static Double_t fgDefaultWaveLength
default wavelength
void SetBBoxCenterX(const Int_t x) override
Set X coordinate of the center of the BoundingBox.
static void SetDefaultIsCurly(Bool_t IsCurly)
Set default "IsCurly".
virtual void SetWavy()
Set wavy.
static Double_t fgDefaultAmplitude
default amplitude
Int_t DistancetoPrimitive(Int_t px, Int_t py) override
Compute distance from point px,py to a line.
void ExecuteEvent(Int_t event, Int_t px, Int_t py) override
Execute action corresponding to one event.
Bool_t fIsCurly
true: Gluon, false: Gamma
void SetBBoxCenterY(const Int_t y) override
Set Y coordinate of the center of the BoundingBox.
virtual Bool_t InheritsFrom(const char *classname) const
Returns kTRUE if object inherits from class "classname".
static void SavePrimitiveDraw(std::ostream &out, const char *variable_name, Option_t *option=nullptr)
Save invocation of primitive Draw() method Skipped if option contains "nodraw" string.
static void SavePrimitiveConstructor(std::ostream &out, TClass *cl, const char *variable_name, const char *constructor_agrs="", Bool_t empty_line=kTRUE)
Save object constructor in the output stream "out".
virtual void SetPolyLine(Int_t n)
Resize this polyline to size n.
static TString Format(const char *fmt,...)
Static method which formats a string using a printf style format descriptor and return a TString.
Short_t Max(Short_t a, Short_t b)
Returns the largest of a and b.
Double_t ATan2(Double_t y, Double_t x)
Returns the principal value of the arc tangent of y/x, expressed in radians.
Double_t Sqrt(Double_t x)
Returns the square root of x.
Short_t Min(Short_t a, Short_t b)
Returns the smallest of a and b.
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.
Short_t Abs(Short_t d)
Returns the absolute value of parameter Short_t d.
Rectangle structure (maps to the X11 XRectangle structure)