41typedef std::map<Int_t, SurfIter_t> IterMap_t;
42typedef IterMap_t::iterator IterMapIter_t;
128 fShowBoxCut->
Connect(
"Toggled(Bool_t)",
"TGL5DDataSetEditor",
this,
"BoxCutToggled()");
129 fAlpha->
Connect(
"ValueChanged(Long_t)",
"TGL5DDataSetEditor",
this,
"AlphaChanged()");
130 fAlpha->
Connect(
"ValueSet(Long_t)",
"TGL5DDataSetEditor",
this,
"AlphaChanged()");
137 fNCellsXEntry->
Connect(
"ValueSet(Long_t)",
"TGL5DDataSetEditor",
this,
"GridParametersChanged()");
138 fNCellsXEntry->
Connect(
"ValueChanged(Long_t)",
"TGL5DDataSetEditor",
this,
"GridParametersChanged()");
140 fNCellsYEntry->
Connect(
"ValueSet(Long_t)",
"TGL5DDataSetEditor",
this,
"GridParametersChanged()");
141 fNCellsZEntry->
Connect(
"ValueSet(Long_t)",
"TGL5DDataSetEditor",
this,
"GridParametersChanged()");
156 fOkGridBtn->
Connect(
"Pressed()",
"TGL5DDataSetEditor",
this,
"ApplyGridParameters()");
159 fIsoList->
Connect(
"Selected(Int_t)",
"TGL5DDataSetEditor",
this,
"SurfaceSelected(Int_t)");
285 const UInt_t min = 10, max = 300;
295 frame = make_labeled_hframe(gridGroup,
"Cells along Y:");
302 frame = make_labeled_hframe(gridGroup,
"Cells along Z:");
314 make_slider_range_entries(rangeGroup,
fXRangeSliderMin,
"Set the minimum value of the x-axis",
317 make_slider_range_entries(rangeGroup,
fYRangeSliderMin,
"Set the minimum value of the y-axis",
320 make_slider_range_entries(rangeGroup,
fZRangeSliderMin,
"Set the minimum value of the z-axis",
344 make_slider_range_entries(v4Group,
fV4MinEntry,
"Minimum value of V4",
427 if (needUpdate &&
gPad)
437 slider->
SetPosition(
a->GetBinLowEdge(1),
a->GetBinUpEdge(
a->GetLast()));
499 curr->fHighlight =
kFALSE;
734 Error(
"SurfaceSelected",
"Got wrong index %d",
id);
const Mask_t kKeyPressMask
ULong_t Pixel_t
Pixel value.
void Error(const char *location, const char *msgfmt,...)
Use this function in case an error occurred.
winID h TVirtualViewer3D TVirtualGLPainter p
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void pixel
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 TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t index
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize id
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t height
Option_t Option_t TPoint TPoint const char text
Class to manage histogram axis.
virtual void Set(Int_t nbins, Double_t xmin, Double_t xmax)
Initialize axis with fix bins.
static ULong_t Number2Pixel(Int_t ci)
Static method that given a color index number, returns the corresponding pixel value.
static Int_t GetColor(const char *hexcolor)
Static method returning color number for color specified by hex color string of form: "#rrggbb",...
Like a checkbutton but instead of the check mark there is color area with a little down arrow.
void SetColor(Pixel_t color, Bool_t emit=kTRUE)
Set color.
The base class for composite widgets (menu bars, list boxes, etc.).
virtual void AddFrame(TGFrame *f, TGLayoutHints *l=nullptr)
Add frame to the composite frame using the specified layout hints.
Dragging the slider will generate the event:
virtual Float_t GetMaxPosition() const
virtual Float_t GetMinPosition() const
virtual void SetRange(Float_t min, Float_t max)
virtual void SetPosition(Float_t min, Float_t max)
void Resize(UInt_t w=0, UInt_t h=0) override
Resize the frame.
void RemoveInput(UInt_t emask)
Remove events specified in emask from the events the frame should handle.
A composite frame with a border and a title.
Concrete class for horizontal slider.
A composite frame that layout their children in horizontal way.
Bool_t IsValid(Int_t index) const
GUI editor for OpenGL 5D Painter.
void VisibleClicked()
Hide/show selected surface.
void ColorChanged(Pixel_t pixelColor)
Change the color of the selected surface.
TGTextButton * fOkGridBtn
TGDoubleHSlider * fYRangeSlider
void ApplyPlanes()
Slot connected to the Apply Planes button.
void AddNewSurface()
Add new iso-surface.
void XSliderSetMax()
Value in a number entry was modified.
TGCheckButton * fShowCloud
TGNumberEntryField * fV4MaxEntry
void SurfaceSelected(Int_t id)
Surface was selected in a list box.
TGColorSelect * fSurfColorSelect
TGCheckButton * fLogScale
TGDoubleHSlider * fXRangeSlider
TGCheckButton * fShowBoxCut
TGTextButton * fCancelGridBtn
TGNumberEntry * fNewIsoEntry
void ZSliderChanged()
Z slider in a "Grid" tab.
void XSliderChanged()
X slider in a "Grid" tab.
TGNumberEntryField * fZRangeSliderMax
void SetStyleTabWidgets()
Set "Style" tab's controls from model.
void AlphaChanged()
Slot connected to the Alpha entry.
TGL5DDataSetEditor(const TGL5DDataSetEditor &)
void DisableSurfaceControls()
Disable surface controls.
void ApplyGridParameters()
"Apply" button was pressed in a "Grid" tab.
void RemoveSurface()
Remove selected surface.
void BoxCutToggled()
Slot connected to the Show BoxCut check button.
TGTextButton * fAddNewIsoBtn
virtual void SetModel(TObject *obj)
Set model or disables/hides viewer.
void ZSliderSetMin()
Value in a number entry was modified.
TGNumberEntryField * fZRangeSliderMin
TGNumberEntryField * fYRangeSliderMin
TGNumberEntry * fNCellsZEntry
TGNumberEntry * fNCellsXEntry
TGDoubleHSlider * fSlideRange
TGCheckButton * fVisibleCheck
TGTextButton * fApplyAlpha
TGNumberEntry * fNumberOfPlanes
void EnableSurfaceControls()
Surface was selected in a list box, enable some controls.
void YSliderChanged()
Y slider in a "Grid" tab.
TGNumberEntryField * fYRangeSliderMax
TGNumberEntryField * fV4MinEntry
TGTextButton * fApplyPlanes
void ApplyAlpha()
Slot connected to the "Apply" button for alpha value.
void CreateStyleTab()
Creates "Style" tab.
void RollbackGridParameters()
"Cancel" button was pressed in a "Grid" tab.
void ConnectSignals2Slots()
Connect signals to slots.
void CreateIsoTab()
Tab, containing controls to work with iso-surfaces.
void ZSliderSetMax()
Value in a number entry was modified.
void GridParametersChanged()
Some of controls in a "Grid" tab was modified.
void NContoursChanged()
Slot connected to the Number of Planes value-entry.
TGDoubleHSlider * fZRangeSlider
TGHSlider * fSurfAlphaSlider
TGNumberEntryField * fXRangeSliderMin
TGTextButton * fSurfRemoveBtn
void EnableGridTabButtons()
Grid parameters were changed, enable "Cancel" and "Apply" buttons.
TGL5DEditorPrivate * fHidden
void CreateGridTab()
Tab, containing controls to set the ranges and number of cells in a grid.
void SetIsoTabWidgets()
Set "Surfaces" tab's controls from model.
TGNumberEntryField * fXRangeSliderMax
TGCheckButton * fHighlightCheck
void XSliderSetMin()
Value in a number entry was modified.
void YSliderSetMin()
Value in a number entry was modified.
void DisableGridTabButtons()
Disable "Cancel" and "Apply" buttons.
void HighlightClicked()
Check, if selected surface must be highlighted.
void SetGridTabWidgets()
Set "Grid" tab's controls from model.
void YSliderSetMax()
Value in a number entry was modified.
TGNumberEntry * fNCellsYEntry
TAxis * GetZAxis() const
Z axis for plot.
const Rgl::Range_t & GetZRange() const
V3 range (Z).
const Rgl::Range_t & GetYRange() const
V2 range (Y).
TGL5DPainter * GetRealPainter() const
Get access to painter (for GUI-editor).
TAxis * GetYAxis() const
Y axis for plot.
TAxis * GetXAxis() const
X axis for plot.
const Rgl::Range_t & GetXRange() const
V1 range (X).
const Rgl::Range_t & GetV4Range() const
V4 range.
void ShowBoxCut(Bool_t show)
Bool_t IsBoxCutShown() const
void SetNContours(Int_t num)
Set the number of predefined contours.
void ResetGeometryRanges()
No need to create or delete meshes, number of meshes (iso-levels) are the same, but meshes must be re...
SurfList_t::iterator SurfIter_t
SurfIter_t SurfacesBegin()
std::list::begin.
void RemoveSurface(SurfIter_t surf)
Remove iso-surface.
SurfIter_t SurfacesEnd()
std::list::end.
Double_t GetAlpha() const
void SetAlpha(Double_t newAlpha)
Set selection range parameter.
SurfIter_t AddSurface(Double_t v4, Color_t ci, Double_t isoVal=1., Double_t sigma=1., Double_t range=1e-3, Int_t lowNumOfPoints=kNLowPts)
Try to add new iso-surface.
Int_t GetNContours() const
This class handles GUI labels.
This class describes layout hints used by the layout classes.
A listbox is a box, possibly with scrollbar, containing entries.
virtual void RemoveEntry(Int_t id=-1)
remove entry with id.
void Resize(UInt_t w, UInt_t h) override
Resize the listbox widget.
virtual void AddEntry(TGString *s, Int_t id)
Add entry with specified string and id to listbox.
void Layout() override
Layout the listbox components.
virtual TGFrame * GetContainer() const
void RemoveAll() override
Remove all entries.
virtual void SetNumber(Double_t val, Bool_t emit=kTRUE)
Set the numeric value (floating point representation).
virtual Double_t GetNumber() const
Get the numeric value (floating point representation).
void SetState(Bool_t state) override
Set the active state.
virtual void SetLimits(ELimit limits=kNELNoLimits, Double_t min=0, Double_t max=1)
Set the numerical limits.
TGNumberEntry is a number entry input widget with up/down buttons.
TGNumberEntryField * GetNumberEntry() const
Get the number entry field.
virtual void SetLimits(ELimit limits=TGNumberFormat::kNELNoLimits, Double_t min=0, Double_t max=1)
virtual void SetIntNumber(Long_t val, Bool_t emit=kTRUE)
virtual Long_t GetIntNumber() const
virtual Double_t GetNumber() const
virtual void SetNumber(Double_t val, Bool_t emit=kTRUE)
virtual void SetPosition(Int_t pos)
Set slider position.
virtual void SetRange(Int_t min, Int_t max)
Set slider range.
Yield an action as soon as it is clicked.
virtual void SetToolTipText(const char *text, Long_t delayms=500)
Set tool tip text associated with this text entry.
ROOT GUI Window base class.
Base frame for implementing GUI - a service class.
virtual TGVerticalFrame * CreateEditorTabSubFrame(const char *name)
Create a vertical frame to be used by 'owner' in extra tab 'name'.
Bool_t fInit
init flag for setting signals/slots
virtual void MakeTitle(const char *title)
Create attribute frame title.
Mother of all ROOT objects.
Bool_t Connect(const char *signal, const char *receiver_class, void *receiver, const char *slot)
Non-static method is used to connect from the signal of this object to the receiver slot.
const char * Data() const
static TString Format(const char *fmt,...)
Static method which formats a string using a printf style format descriptor and return a TString.
std::pair< Double_t, Double_t > Range_t