Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
surfaces.C
Go to the documentation of this file.
1/// \file
2/// \ingroup tutorial_graphics
3/// \notebook
4/// \preview Draw 2-Dim functions.
5///
6/// \macro_image
7/// \macro_code
8///
9/// \author Rene Brun
10
11void surfaces()
12{
13 TCanvas *c1 = new TCanvas("c1", "Surfaces Drawing Options", 200, 10, 700, 900);
14 TPaveText *title = new TPaveText(.2, 0.96, .8, .995);
15 title->AddText("Examples of Surface options");
16 title->Draw();
17
18 TPad *pad1 = new TPad("pad1", "Gouraud shading", 0.03, 0.50, 0.98, 0.95);
19 TPad *pad2 = new TPad("pad2", "Color mesh", 0.03, 0.02, 0.98, 0.48);
20 pad1->Draw();
21 pad2->Draw();
22 //
23 // We generate a 2-D function
24 TF2 *f2 = new TF2("f2", "x**2 + y**2 - x**3 -8*x*y**4", -1, 1.2, -1.5, 1.5);
25 f2->SetContour(48);
26 f2->SetFillColor(45);
27
28 // Draw this function in pad1 with Gouraud shading option
29 pad1->cd();
30 pad1->SetPhi(-80);
31 pad1->SetLogz();
32 f2->Draw("surf4");
33
34 // Draw this function in pad2 with color mesh option
35 pad2->cd();
36 pad2->SetTheta(25);
37 pad2->SetPhi(-110);
38 pad2->SetLogz();
39 f2->SetLineWidth(1);
40 f2->SetLineColor(5);
41 f2->Draw("surf1");
42
43 // add axis titles. The titles are set on the intermediate
44 // histogram used for visualisation. We must force this histogram
45 // to be created, then force the redrawing of the two pads
46 pad2->Update();
47 f2->GetHistogram()->GetXaxis()->SetTitle("x title");
48 f2->GetHistogram()->GetYaxis()->SetTitle("y title");
49 f2->GetHistogram()->GetXaxis()->SetTitleOffset(1.4);
50 f2->GetHistogram()->GetYaxis()->SetTitleOffset(1.4);
51 pad1->Modified();
52 pad2->Modified();
53}
virtual void SetFillColor(Color_t fcolor)
Set the fill area color.
Definition TAttFill.h:38
virtual void SetLineWidth(Width_t lwidth)
Set the line width.
Definition TAttLine.h:45
virtual void SetLineColor(Color_t lcolor)
Set the line color.
Definition TAttLine.h:42
The Canvas class.
Definition TCanvas.h:23
virtual TH1 * GetHistogram() const
Return a pointer to the histogram used to visualise the function Note that this histogram is managed ...
Definition TF1.cxx:1584
A 2-Dim function with parameters.
Definition TF2.h:29
virtual void SetContour(Int_t nlevels=20, const Double_t *levels=nullptr)
Set the number and values of contour levels.
Definition TF2.cxx:940
void Draw(Option_t *option="") override
Draw this function with its current attributes.
Definition TF2.cxx:269
The most important graphics class in the ROOT system.
Definition TPad.h:28
A Pave (see TPave) with text, lines or/and boxes inside.
Definition TPaveText.h:21
virtual TText * AddText(Double_t x1, Double_t y1, const char *label)
Add a new Text line to this pavetext at given coordinates.
void Draw(Option_t *option="") override
Draw this pavetext with its current attributes.
return c1
Definition legend1.C:41