112 xx =
gPad->AbsPixeltoX(px);
113 yy =
gPad->AbsPixeltoY(py);
117 if(xx > thisx-2*
fSize && xx < thisx && yy > thisy-
fSize && yy<thisy+
fSize) dist = 0;
119 if(xx > thisx-2*
fSize && xx < thisx && yy > thisy-
fSize && yy<thisy+
fSize) dist = 0;
121 if(yy > thisy-2*
fSize && yy < thisy && xx > thisx-
fSize && xx<thisx+
fSize) dist = 0;
123 if(yy > thisy-2*
fSize && yy < thisy && xx > thisx-
fSize && xx<thisx+
fSize) dist = 0;
146 static Int_t pxold, pyold;
147 static Int_t mindragged = -1;
148 Int_t plx1,plx2,ply1,ply2;
150 Double_t xx,yy,txxmin=0,txxmax=0,tyymin=0,tyymax=0;
152 xx =
gPad->AbsPixeltoX(px);
153 yy =
gPad->AbsPixeltoY(py);
157 plx1 =
gPad->XtoAbsPixel(txxmin-2*
fSize);
158 plx2 =
gPad->XtoAbsPixel(txxmax-2*
fSize);
164 ply1 =
gPad->YtoAbsPixel(tyymin-2*
fSize);
165 ply2 =
gPad->YtoAbsPixel(tyymax-2*
fSize);
176 if ((vert && yy<tyymax-
fSize) || (!vert && xx < txxmax-
fSize)) {
187 gVirtualX->DrawLine(plx1,ply1,plx2,ply2);
211 if((vert && yy > frame->
GetY1() && yy < frame->GetY2()) ||
212 (!vert && xx > frame->
GetX1() && xx < frame->GetX2())){
263 tyy =
gPad->AbsPixeltoY(pos);
266 txx =
gPad->AbsPixeltoX(pos);
302 tx[0]=
gPad->XtoAbsPixel(txx);
303 tx[1]=tx[4]=
gPad->XtoAbsPixel(txx-
fSize);
304 ty[0]=ty[1]=ty[4]=
gPad->YtoAbsPixel(tyy);
305 tx[2]=tx[3]=
gPad->XtoAbsPixel(txx-2*
fSize);
309 ty[0]=
gPad->YtoAbsPixel(tyy);
310 ty[1]=ty[4]=
gPad->YtoAbsPixel(tyy-
fSize);
311 tx[0]=tx[1]=tx[4]=
gPad->XtoAbsPixel(txx);
312 ty[2]=ty[3]=
gPad->YtoAbsPixel(tyy-2*
fSize);
317 for(
UInt_t ui=0;ui<5;++ui) slider[ui] =
TPoint(tx[ui],ty[ui]);
329 tyy =
gPad->AbsPixeltoY(pos);
332 txx =
gPad->AbsPixeltoX(pos);
338 tx[0]=
gPad->XtoAbsPixel(txx);
339 tx[1]=tx[4]=
gPad->XtoAbsPixel(txx-
fSize);
340 ty[0]=ty[1]=ty[4]=
gPad->YtoAbsPixel(tyy);
341 tx[2]=tx[3]=
gPad->XtoAbsPixel(txx-2*
fSize);
345 ty[0]=
gPad->YtoAbsPixel(tyy);
346 ty[1]=ty[4]=
gPad->YtoAbsPixel(tyy-
fSize);
347 tx[0]=tx[1]=tx[4]=
gPad->XtoAbsPixel(txx);
348 ty[2]=ty[3]=
gPad->YtoAbsPixel(tyy-2*
fSize);
353 for(
UInt_t ui=0;ui<5;++ui) slider[ui] =
TPoint(tx[ui],ty[ui]);
362 return evtval>=
fMin && evtval<=
fMax;
402 p->SetFillStyle(1001);
404 p->PaintPolyLine(4,&
x[1],&
y[1],
"f");
406 p->SetFillStyle(3001);
407 p->PaintPolyLine(4,&
x[1],&
y[1],
"f");
409 p->PaintPolyLine(5,
x,
y);
winID h TVirtualViewer3D TVirtualGLPainter p
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 winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t sel
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize wid
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void on
Option_t Option_t SetLineColor
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void value
virtual Color_t GetLineColor() const
Return the line color.
virtual void SetLineWidth(Width_t lwidth)
Set the line width.
virtual void SetLineColor(Color_t lcolor)
Set the line color.
TObject * Remove(TObject *obj) override
Remove object from the list.
void AddLast(TObject *obj) override
Add object at the end of the list.
void Delete(Option_t *option="") override
Remove all objects from the list AND delete all heap based objects.
void AddFirst(TObject *obj) override
Add object at the beginning of the list.
The TNamed class is the base class for all named ROOT classes.
const char * GetTitle() const override
Returns title of object.
R__ALWAYS_INLINE Bool_t TestBit(UInt_t f) const
virtual void AppendPad(Option_t *option="")
Append graphics object to current pad.
void SetBit(UInt_t f, Bool_t set)
Set or unset the user status bits as specified in f.
A TParallelCoordRange is a range used for parallel coordinates plots.
void SetLineWidth(Width_t wid) override
Set the selection line width.
void Draw(Option_t *options="") override
Draw a TParallelCoordRange.
void SetLineColor(Color_t col) override
Set the selection line color.
void Paint(Option_t *options) override
Paint a TParallelCoordRange.
TParallelCoordSelect * fSelect
Selection owning the range.
TParallelCoordVar * GetVar()
TParallelCoordVar * fVar
Variable owning the range.
virtual void SendToBack()
Make the selection which owns the range to be drawn under all the others.
virtual void BringOnTop()
Make the selection which owns the range to be drawn on top of the others.
Int_t DistancetoPrimitive(Int_t px, Int_t py) override
Compute the distance to the primitive.
~TParallelCoordRange() override
Destructor.
const Double_t fSize
Size of the painted range.
void PaintSlider(Double_t value, bool fill=false)
Paint a slider.
TPoint * GetBindingLinePoints(Int_t pos, Int_t mindragged)
Return the points of the line binding the two needles of the range.
void Print(Option_t *options) const override
Print info about the range.
void Delete(const Option_t *options="") override
Delete the range.
Double_t fMin
Min value for the range.
void ExecuteEvent(Int_t entry, Int_t px, Int_t py) override
Execute the entry.
Double_t fMax
Max value for the range.
bool IsIn(Double_t evtval)
Evaluate if the given value is within the range or not.
TParallelCoordRange()
Default constructor.
TPoint * GetSliderPoints(Double_t value)
Return the points to paint the needles at "value".
A TParallelCoordSelect is a specialised TList to hold TParallelCoordRanges used by TParallelCoord.
void SetShowRanges(bool s)
Show the ranges needles.
~TParallelCoordSelect() override
Destructor.
TParallelCoordSelect()
Default constructor.
void SetActivated(bool on)
Activate the selection.
Double_t GetValuefromXY(Double_t x, Double_t y)
Get the value corresponding to the position.
Double_t GetCurrentMax() const
TParallelCoord * GetParallel()
Double_t GetCurrentMin() const
void GetXYfromValue(Double_t value, Double_t &x, Double_t &y)
Get a position corresponding to the value on the axis.
TParallelCoordSelect * GetCurrentSelection()
Return the selection currently being edited.
TParallelCoordSelect * SetCurrentSelection(const char *title)
Set the selection being edited.
void CleanUpSelections(TParallelCoordRange *range)
Clean up the selections from the ranges which could have been deleted when a variable has been delete...
@ kLiveUpdate
To paint the entries when being modified.
Defined by an array on N points in a 2-D space.