Logo ROOT  
Reference Guide
 
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();
}
char timeStr[60];
gBenchmark->Show("tornado");
sprintf(timeStr, "Execution time: %g sec.", ct);
TPaveText *text = new TPaveText(0.1, 0.81, 0.9, 0.97);
text->SetFillColor(42);
text->AddText("ROOT example: tornado.C");
text->AddText(timeStr);
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
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.