110 xx =
gPad->AbsPixeltoX(px);
111 yy =
gPad->AbsPixeltoY(py);
115 if(xx > thisx-2*
fSize && xx < thisx && yy > thisy-
fSize && yy<thisy+
fSize) dist = 0;
117 if(xx > thisx-2*
fSize && xx < thisx && yy > thisy-
fSize && yy<thisy+
fSize) dist = 0;
119 if(yy > thisy-2*
fSize && yy < thisy && xx > thisx-
fSize && xx<thisx+
fSize) dist = 0;
121 if(yy > thisy-2*
fSize && yy < thisy && xx > thisx-
fSize && xx<thisx+
fSize) dist = 0;
150 : (xx > frame->
GetX1() && xx < frame->
GetX2());
155 std::vector<Double_t> tx(5), ty(5);
160 tx[1] = tx[4] = txx -
size;
161 ty[0] = ty[1] = ty[4] = tyy;
162 tx[2] = tx[3] = txx - 2 *
size;
167 ty[1] = ty[4] = tyy -
size;
168 tx[0] = tx[1] = tx[4] = txx;
169 ty[2] = ty[3] = tyy - 2 *
size;
176 parent.
PaintPolyLine(5, tx.data(), ty.data(),
"iparallelrangemarker");
181 tx[0] = tx[1] = txx - 2*
size;
187 ty[0] = ty[1] = tyy - 2*
size;
192 parent.
PaintPolyLine(2, tx.data(), ty.data(),
"iparallelrangebind");
204 auto &parent = *
gPad;
206 if (!parent.IsEditable() && entry!=
kMouseEnter)
return;
216 if (inter->GetValue(
fVar, parent, px, py)) {
217 if (inter->value < (
fMin +
fMax) /2)
220 inter->dragpoint = 2;
223 parent.FreeInteractive(
this);
228 if (inter && inter->GetValue(
fVar, parent, px, py)) {
230 parent.UpdateAsync();
235 Double_t min = inter->dragpoint == 1 ? inter->value :
fMin;
236 Double_t max = inter->dragpoint == 2 ? inter->value :
fMax;
243 parent.FreeInteractive(
this);
254 return evtval>=
fMin && evtval<=
fMax;
294 p->SetFillStyle(1001);
296 p->PaintPolyLine(4,&
x[1],&
y[1],
"f");
298 p->SetFillStyle(3001);
299 p->PaintPolyLine(4,&
x[1],&
y[1],
"f");
301 p->PaintPolyLine(5,
x,
y);
size_t size(const MatrixT &matrix)
retrieve the size of a square matrix
short Color_t
Color number (short)
short Width_t
Line width (short)
const char Option_t
Option string (const char)
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 ModifyOn(TVirtualPad &pad)
Change current line attributes on specified pad.
virtual void SetLineColor(Color_t lcolor)
Set the line color.
TObject * Remove(TObject *obj) override
Remove object from the list.
void Delete(Option_t *option="") override
Remove all objects from the list AND delete all heap based objects.
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.
Bool_t GetValue(TParallelCoordVar *var, TVirtualPad &parent, Int_t px, Int_t py)
void Paint(TParallelCoordVar *var, TVirtualPad &parent, Double_t size, Double_t currentMin, Double_t currentMax)
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.
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.
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.
bool GetVert() const
Tells if the axis is vertical or not.
Double_t GetCurrentMax() const
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.
TList * GetRanges() const
TParallelCoord * GetParallel() const
TParallelCoordSelect * GetCurrentSelection()
Return the selection currently 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.
Helper class to store interactive parameters for individual objects Should be used via MakeInteractiv...
TVirtualPad is an abstract base class for the Pad and Canvas classes.
virtual TFrame * GetFrame()=0
virtual Double_t AbsPixeltoX(Double_t px)=0
virtual void PaintPolyLine(Int_t n, Float_t *x, Float_t *y, Option_t *option="")=0
virtual Double_t AbsPixeltoY(Double_t py)=0