Logo ROOT  
Reference Guide
 
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Loading...
Searching...
No Matches

Detailed Description

View in nbviewer Open in SWAN
Show 3-d polymarker.

void tornado()
{
gBenchmark->Start("tornado");
double PI = 3.141592653;
int d = 16;
int numberOfPoints = 200;
int numberOfCircles = 40;
// create and open a canvas
TCanvas *sky = new TCanvas("sky", "Tornado", 300, 10, 700, 500);
sky->SetFillColor(14);
// creating view
TView *view = TView::CreateView(1, 0, 0);
float range = numberOfCircles * d;
view->SetRange(0, 0, 0, 4.0 * range, 2.0 * range, range);
for (int j = d; j < numberOfCircles * d; j += d) {
// create a PolyMarker3D
float x, y, z;
// set points
for (int i = 1; i < numberOfPoints; i++) {
float csin = sin(2 * PI / (double)numberOfPoints * (double)i) + 1;
float ccos = cos(2 * PI / (double)numberOfPoints * (double)i) + 1;
float esin = sin(2 * PI / (double)(numberOfCircles * d) * (double)j) + 1;
x = j * (csin + esin);
y = j * ccos;
z = j;
pm3d->SetPoint(i, x, y, z);
}
// set marker size, color & style
pm3d->SetMarkerSize(1);
pm3d->SetMarkerColor(2 + (d == (j & d)));
pm3d->SetMarkerStyle(3);
// draw
pm3d->Draw();
}
gBenchmark->Show("tornado");
TPaveText *text = new TPaveText(0.1, 0.81, 0.9, 0.97);
text->SetFillColor(42);
text->AddText("ROOT example: tornado.C");
text->AddText(Form("Execution time: %g sec.", ct));
text->Draw();
sky->Update();
}
#define d(i)
Definition RSha256.hxx:102
float Float_t
Definition RtypesCore.h:57
#define PI
R__EXTERN TBenchmark * gBenchmark
Definition TBenchmark.h:59
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
Option_t Option_t TPoint TPoint const char text
char * Form(const char *fmt,...)
Formats a string in a circular formatting buffer.
Definition TString.cxx:2489
virtual void Start(const char *name)
Starts Benchmark with the specified name.
virtual void Show(const char *name)
Stops Benchmark name and Prints results.
Float_t GetCpuTime(const char *name)
Returns Cpu time used by Benchmark name.
The Canvas class.
Definition TCanvas.h:23
A Pave (see TPave) with text, lines or/and boxes inside.
Definition TPaveText.h:21
A 3D polymarker.
See TView3D.
Definition TView.h:25
static TView * CreateView(Int_t system=1, const Double_t *rmin=nullptr, const Double_t *rmax=nullptr)
Create a concrete default 3-d view via the plug-in manager.
Definition TView.cxx:27
virtual void SetRange(const Double_t *min, const Double_t *max)=0
Double_t y[n]
Definition legend1.C:17
Double_t x[n]
Definition legend1.C:17
Author
Rene Brun

Definition in file tornado.C.