ROOT logo

From $ROOTSYS/tutorials/graphics/feynman.C

void feynman()
{
   //Draw Feynman diagrams
   // To see the output of this macro, click begin_html <a href="gif/feynman.gif">here</a>. end_html
   //Author: Otto Schaile
   
   TCanvas *c1 = new TCanvas("c1", "A canvas", 10,10, 600, 300);
   c1->Range(0, 0, 140, 60);
   Int_t linsav = gStyle->GetLineWidth();
   gStyle->SetLineWidth(3);
   TLatex t;
   t.SetTextAlign(22);
   t.SetTextSize(0.1);
   TLine * l;
   l = new TLine(10, 10, 30, 30); l->Draw();
   l = new TLine(10, 50, 30, 30); l->Draw();
   TCurlyArc *ginit = new TCurlyArc(30, 30, 12.5*sqrt(2), 135, 225);
   ginit->SetWavy();
   ginit->Draw();
   t.DrawLatex(7,6,"e^{-}");
   t.DrawLatex(7,55,"e^{+}");
   t.DrawLatex(7,30,"#gamma");

   TCurlyLine *gamma = new TCurlyLine(30, 30, 55, 30);
   gamma->SetWavy();
   gamma->Draw();
   t.DrawLatex(42.5,37.7,"#gamma");

   TArc *a = new TArc(70, 30, 15);
   a->Draw();
   t.DrawLatex(55, 45,"#bar{q}");
   t.DrawLatex(85, 15,"q");
   TCurlyLine *gluon = new TCurlyLine(70, 45, 70, 15);
   gluon->Draw();
   t.DrawLatex(77.5,30,"g");

   TCurlyLine *z0 = new TCurlyLine(85, 30, 110, 30);
   z0->SetWavy();
   z0->Draw();
   t.DrawLatex(100, 37.5,"Z^{0}");

   l = new TLine(110, 30, 130, 10); l->Draw();
   l = new TLine(110, 30, 130, 50); l->Draw();

   TCurlyArc *gluon1 = new TCurlyArc(110, 30, 12.5*sqrt(2), 315, 45);
   gluon1->Draw();

   t.DrawLatex(135,6,"#bar{q}");
   t.DrawLatex(135,55,"q");
   t.DrawLatex(135,30,"g");
   c1->Update();
   gStyle->SetLineWidth(linsav);
}
 feynman.C:1
 feynman.C:2
 feynman.C:3
 feynman.C:4
 feynman.C:5
 feynman.C:6
 feynman.C:7
 feynman.C:8
 feynman.C:9
 feynman.C:10
 feynman.C:11
 feynman.C:12
 feynman.C:13
 feynman.C:14
 feynman.C:15
 feynman.C:16
 feynman.C:17
 feynman.C:18
 feynman.C:19
 feynman.C:20
 feynman.C:21
 feynman.C:22
 feynman.C:23
 feynman.C:24
 feynman.C:25
 feynman.C:26
 feynman.C:27
 feynman.C:28
 feynman.C:29
 feynman.C:30
 feynman.C:31
 feynman.C:32
 feynman.C:33
 feynman.C:34
 feynman.C:35
 feynman.C:36
 feynman.C:37
 feynman.C:38
 feynman.C:39
 feynman.C:40
 feynman.C:41
 feynman.C:42
 feynman.C:43
 feynman.C:44
 feynman.C:45
 feynman.C:46
 feynman.C:47
 feynman.C:48
 feynman.C:49
 feynman.C:50
 feynman.C:51
 feynman.C:52
 feynman.C:53
 feynman.C:54