Logo ROOT  
Reference Guide
Go to the documentation of this file.
1 /// \file
2 /// \ingroup tutorial_gl
3 /// Menu for running GL demos.
4 ///
5 /// \macro_code
6 ///
7 /// \author Timur Pocheptsov
9 void gldemos()
10 {
11  TControlBar *bar = new TControlBar("vertical", "GL painter demo",20,20);
12  bar->AddButton("Help on demos", "help()", "Description");
13  bar->AddButton("glsurfaces", ".x $ROOTSYS/tutorials/gl/glsurfaces.C", "Surface painter example");
14  bar->AddButton("glrose", ".x $ROOTSYS/tutorials/gl/glrose.C", "Surface in polar system");
15  bar->AddButton("gltf3", ".x $ROOTSYS/tutorials/gl/gltf3.C", "TF3 painter");
16  bar->AddButton("glbox", ".x $ROOTSYS/tutorials/gl/glbox.C", "BOX painter");
17  bar->AddButton("glparametric", ".x $ROOTSYS/tutorials/gl/glparametric.C", "Parametric surface");
18  bar->Show();
19 }
21 void help()
22 {
23  new TCanvas("chelp","Help on gldemos",200,10,700,600);
25  TPaveLabel *title = new TPaveLabel(0.04, 0.86, 0.96, 0.98, "These demos show different gl painters.");
26  title->SetFillColor(32);
27  title->Draw();
29  TPaveText *hdemo = new TPaveText(0.04, 0.04, 0.96, 0.8);
30  hdemo->SetTextAlign(12);
31  hdemo->SetTextFont(52);
32  hdemo->SetTextColor(kBlue);
33  hdemo->AddText("1. Glsurfaces demo shows glsurf4, glsurf1, glsurf3, glsurf1cyl, glsurfpol, gltf3 options.");
34  hdemo->AddText("2. Glrose demontrates \"glsurf2pol\" drawing option and user-defined palette.");
35  hdemo->AddText("3. Gltf3 demo shows \"gltf3\" option.");
36  hdemo->AddText("4. Glbox demo shows \"glbox\" and \"glbox1\" options for TH3.");
37  hdemo->AddText("5. Glparametric demo shows how to define and display parametric surfaces.");
38  hdemo->AddText("You can zoom any plot: press 'J', 'K', 'j', 'k' keys, or use mouse wheel.");
39  hdemo->AddText("Rotate any plot:");
40  hdemo->AddText(" ---select plot with mouse cursor,");
41  hdemo->AddText(" ---move mouse cursor, pressing and holding left mouse button ");
42  hdemo->AddText("Pan plot:");
43  hdemo->AddText(" ---select with mouse cursor a part of a plot, other than back box planes ,");
44  hdemo->AddText(" ---move mouse cursor, pressing and holding middle mouse button ");
45  hdemo->AddText("Selected part of a plot is higlighted (TF3 higlighting is not implemented yet.)");
46  hdemo->AddText("You can select one of back box planes, press middle mouse button and move cursor-");
47  hdemo->AddText("this will create \"slice\" (TF does not support yet).");
48  hdemo->AddText("After the slice was created, you can project it on a back box");
49  hdemo->AddText(" ---press key 'p' (now implemented only for surf options ).");
50  hdemo->AddText("Left double click removes all slices/projections.");
52  hdemo->Draw();
54 }
virtual void SetTextColor(Color_t tcolor=1)
Set the text color.
Definition: TAttText.h:43
static constexpr double bar
Definition: TGeant4SystemOfUnits.h:221
A Control Bar is a fully user configurable tool which provides fast access to frequently used operati...
Definition: TControlBar.h:26
virtual void Draw(Option_t *option="")
Draw this pavelabel with its current attributes.
Definition: TPaveLabel.cxx:77
virtual void Draw(Option_t *option="")
Draw this pavetext with its current attributes.
Definition: TPaveText.cxx:234
virtual TText * AddText(Double_t x1, Double_t y1, const char *label)
Add a new Text line to this pavetext at given coordinates.
Definition: TPaveText.cxx:183
A Pave (see TPave) with a text centered in the Pave.
Definition: TPaveLabel.h:20
virtual void SetTextAlign(Short_t align=11)
Set the text alignment.
Definition: TAttText.h:41
The Canvas class.
Definition: TCanvas.h:23
virtual void SetFillColor(Color_t fcolor)
Set the fill area color.
Definition: TAttFill.h:37
@ kBlue
Definition: Rtypes.h:66
A Pave (see TPave) with text, lines or/and boxes inside.
Definition: TPaveText.h:21
virtual void SetTextFont(Font_t tfont=62)
Set the text font.
Definition: TAttText.h:45