00001 {
00002 gROOT->Reset();
00003 c1 = new TCanvas("c1","ROOT Environment Canvas",720,840);
00004 c1->Range(0,-0.25,19,29);
00005 TPaveLabel title(3,27.1,15,28.7,"ROOT Environment and Tools");
00006 title.SetFillColor(42);
00007 title.SetTextColor(5);
00008 title.SetTextFont(62);
00009 title.Draw();
00010
00011
00012 TArrow ardash(2,15,2,3.5,0.015,"|>");
00013 ardash.SetLineStyle(2);
00014 ardash.SetFillColor(1);
00015 ardash.Draw();
00016 TLine l1(2.5,4.5,15.5,4.5);
00017 l1.Draw();
00018 l1.DrawLine(4.5,15,4.5,11);
00019 l1.DrawLine(13,10,13,15.5);
00020 l1.DrawLine(14,10,13,10);
00021 l1.DrawLine(14,15.5,13,15.5);
00022 TArrow ar(9,23,9,21.6,0.015,"|>");
00023 ar.SetFillColor(1);
00024
00025 TPavesText UserChtml(0.5,0.5,4.5,3,5,"tr");
00026 UserChtml.AddText("Files with hyperlinks");
00027 TText *t1=UserChtml.AddText("*User.C.html");
00028 TText *t2=UserChtml.AddText("*User.mac.html");
00029 t1.SetTextColor(4);
00030 t2.SetTextColor(4);
00031 UserChtml.Draw();
00032 ar.DrawArrow(2.5,4.5,2.5,3.5,0.015,"|>");
00033
00034 TPavesText UserTree(7,0.5,11,3,5,"tr");
00035 UserTree.AddText("Dictionary");
00036 UserTree.AddText("Inheritance graphs");
00037 TText *t3=UserTree.AddText("*User_Tree.ps");
00038 t3.SetTextColor(4);
00039 UserTree.Draw();
00040 ar.DrawArrow(9,5.5,9,3.5,0.015,"|>");
00041
00042 TPavesText Userhtml(13.5,0.5,17.5,3,5,"tr");
00043 Userhtml.AddText("Class Description");
00044 Userhtml.AddText("with references");
00045 TText *t4=Userhtml.AddText("*User.html");
00046 t4.SetTextColor(4);
00047 Userhtml.Draw();
00048 ar.DrawArrow(15.5,4.5,15.5,3.5,0.015,"|>");
00049
00050 TPavesText Macros(0.5,8,3.5,11,5,"tr");
00051 Macros.AddText("Macros");
00052 Macros.AddText("Log files");
00053 TText *t5=Macros.AddText("*User.mac");
00054 TText *t5a=Macros.AddText("*User.log");
00055 t5.SetTextColor(4);
00056 t5a.SetTextColor(4);
00057 Macros.Draw();
00058
00059 TPavesText UserC(1,15,5,18,5,"tr");
00060 UserC.AddText("C++ application");
00061 UserC.AddText("source code");
00062 TText *t6=UserC.AddText("*User.C");
00063 t6.SetTextColor(4);
00064 UserC.Draw();
00065 ar.DrawArrow(4.5,11,5.8,11,0.015,"|>");
00066
00067 TPavesText Userh(6,23,12,26,5,"tr");
00068 Userh.AddText("C++ header files");
00069 TText *t7=Userh.AddText("*User.h");
00070 t7.SetTextColor(4);
00071 Userh.SetFillColor(11);
00072 Userh.Draw();
00073 ar.DrawArrow(9,23,9,21.6,0.015,"|>");
00074
00075 TPavesText UserUI(6.5,14,11.5,17,5,"tr");
00076 UserUI.AddText("C++ code for");
00077 UserUI.AddText("User Interface and I/O");
00078 TText *t8=UserUI.AddText("*UserUI.C");
00079 t8.SetTextColor(4);
00080 UserUI.Draw();
00081 ar.DrawArrow(9,18.5,9,17.3,0.015,"|>");
00082 ar.DrawArrow(9,14,9,12.6,0.015,"|>");
00083
00084 TPavesText Usersl(14,14,17.5,17,5,"tr");
00085 Usersl.AddText("User");
00086 Usersl.AddText("Libraries");
00087 TText *t9=Usersl.AddText("*User.sl");
00088 t9.SetTextColor(4);
00089 Usersl.Draw();
00090 ar.DrawArrow(13,11,12.1,11,0.015,"|>");
00091
00092 TPavesText Rootlib(14,8.5,17.5,11.5,5,"tr");
00093 Rootlib.AddText("Root Library");
00094 Rootlib.AddText("and Includes");
00095 TText *t10=Rootlib.AddText("Root.sl");
00096 TText *t11=Rootlib.AddText("Root/include");
00097 t10.SetTextColor(4);
00098 t11.SetTextColor(4);
00099 Rootlib.Draw();
00100
00101 TEllipse dict(9,20,3,1.5);
00102 dict.SetFillColor(43);
00103 dict.SetFillStyle(1001);
00104 dict.SetLineColor(1);
00105 dict.SetLineWidth(3);
00106 dict.Draw();
00107 TText gen(9,20.7,"rootcint");
00108 gen.SetTextAlign(22);
00109 gen.SetTextSize(0.025);
00110 gen.Draw();
00111 gen.DrawText(9,19.5,"ROOT compiler");
00112 ar.DrawArrow(9,18.5,9,17.3,0.015,"|>");
00113
00114 TEllipse compiler(9,11,3,1.5);
00115 compiler.SetFillColor(43);
00116 compiler.SetFillStyle(1001);
00117 compiler.SetLineColor(1);
00118 compiler.SetLineWidth(3);
00119 compiler.Draw();
00120 TText gen2(9,11.4,"C++ compiler");
00121 gen2.SetTextAlign(22);
00122 gen2.SetTextSize(0.025);
00123 gen2.Draw();
00124 gen2.DrawText(9,10.3,"and Linker");
00125 ar.DrawArrow(9,9.5,9,8.2,0.015,"|>");
00126
00127 TPaveText exe(6,5.5,12,8);
00128 exe.SetFillColor(41);
00129 exe.AddText("ROOT-based Application");
00130 exe.AddText("Interactive or Batch");
00131 TText *t12=exe.AddText("User.exe");
00132 t12.SetTextColor(2);
00133 exe.Draw();
00134
00135 c1->Modified();
00136 c1->Print("rootenv.ps");
00137 }