Logo ROOT  
Reference Guide
Loading...
Searching...
No Matches

Detailed Description

Macro illustrating how to animate a picture using a Timer.

#include "TStyle.h"
#include "TCanvas.h"
#include "TF2.h"
#include "TTimer.h"
TF2 *f2;
Float_t t = 0;
Float_t phi = 30;
void anim()
{
gStyle->SetCanvasPreferGL(true);
gStyle->SetFrameFillColor(42);
TCanvas *c1 = new TCanvas("c1");
c1->SetFillColor(17);
pi = TMath::Pi();
f2 = new TF2("f2", "sin(2*x)*sin(2*y)*[0]", 0, pi, 0, pi);
f2->SetParameter(0, 1);
f2->SetNpx(15);
f2->SetNpy(15);
f2->SetMaximum(1);
f2->SetMinimum(-1);
f2->Draw("glsurf1");
TTimer *timer = new TTimer(20);
timer->SetCommand("Animate()");
timer->TurnOn();
}
void Animate()
{
// just in case the canvas has been deleted
if (!gROOT->GetListOfCanvases()->FindObject("c1"))
return;
t += 0.05 * pi;
phi += 2;
gPad->SetPhi(phi);
gPad->Modified();
gPad->Update();
}
double Double_t
Double 8 bytes.
Definition RtypesCore.h:73
float Float_t
Float 4 bytes (float).
Definition RtypesCore.h:71
#define gROOT
Definition TROOT.h:417
externTStyle * gStyle
Definition TStyle.h:442
#define gPad
The Canvas class.
Definition TCanvas.h:23
virtual void SetNpx(Int_t npx=100)
virtual void SetMaximum(Double_t maximum=-1111)
virtual void SetMinimum(Double_t minimum=-1111)
virtual void SetParameter(Int_t param, Double_t value)
Definition TF1.h:608
Definition TF2.h:29
void Draw(Option_t *option="") override
Default Draw method for all objects.
virtual void SetNpy(Int_t npy=100)
Handles synchronous and a-synchronous timer events.
Definition TTimer.h:51
virtual void TurnOn()
Add the timer to the system timer list.
Definition TTimer.cxx:246
void SetCommand(const char *command)
Set the interpreter command to be executed at time out.
Definition TTimer.cxx:179
return c1
Definition legend1.C:41
Double_t Cos(Double_t)
Returns the cosine of an angle of x radians.
Definition TMath.h:605
constexpr Double_t Pi()
Definition TMath.h:40
Author
Rene Brun

Definition in file anim.C.