lego.C: Drawing a figure, made of lego block, using ROOT geometry class. | Geometry package | robot.C: Drawing a famous Korean robot, TaekwonV, using ROOT geometry class. |
#include "TCanvas.h" #include "TPaveText.h" #include "TImage.h" #include "TLine.h" #include "TLatex.h" #include "TButton.h" #include "TGeoManager.h" void mp3player() { // Drawing a mp3 type music player, using ROOT geometry class. // Name: mp3player.C // Author: Eun Young Kim, Dept. of Physics, Univ. of Seoul // Reviewed by Sunman Kim (sunman98@hanmail.net) // Supervisor: Prof. Inkyu Park (icpark@physics.uos.ac.kr) // // How to run: .x mp3player.C in ROOT terminal, then use OpenGL // // This macro was created for the evaluation of Computational Physics course in 2006. // We thank to Prof. Inkyu Park for his special lecture on ROOT and to all of ROOT team // TGeoManager *geom=new TGeoManager("geom","My first 3D geometry"); //materials TGeoMaterial *vacuum=new TGeoMaterial("vacuum",0,0,0); TGeoMaterial *Fe=new TGeoMaterial("Fe",55.845,26,7.87); //create media TGeoMedium *Iron=new TGeoMedium("Iron",1,Fe); TGeoMedium *Air=new TGeoMedium("Vacuum",0,vacuum); //create volume TGeoVolume *top=geom->MakeBox("top",Air,800,800,800); geom->SetTopVolume(top); geom->SetTopVisible(0); // If you want to see the boundary, please input the number, 1 instead of 0. // Like this, geom->SetTopVisible(1); TGeoVolume *b1=geom->MakeBox("b1",Iron,100,200,600); b1->SetLineColor(2); TGeoVolume *b2=geom->MakeTubs("b2",Iron,0,50,200,0,90); b2->SetLineColor(10); TGeoVolume *b3=geom->MakeTubs("b3",Iron,0,50,200,90,180); b3->SetLineColor(10); TGeoVolume *b4=geom->MakeTubs("b4",Iron,0,50,200,180,270); b4->SetLineColor(10); TGeoVolume *b5=geom->MakeTubs("b5",Iron,0,50,200,270,360); b5->SetLineColor(10); TGeoVolume *b6=geom->MakeTubs("b6",Iron,0,50,600,0,90); b6->SetLineColor(10); TGeoVolume *b7=geom->MakeTubs("b7",Iron,0,50,600,90,180); b7->SetLineColor(10); TGeoVolume *b8=geom->MakeTubs("b8",Iron,0,50,600,180,270); b8->SetLineColor(10); TGeoVolume *b9=geom->MakeTubs("b9",Iron,0,50,600,270,360); b9->SetLineColor(10); TGeoVolume *b10=geom->MakeTubs("b10",Iron,0,50,100,0,90); b10->SetLineColor(10); TGeoVolume *b11=geom->MakeTubs("b11",Iron,0,50,100,90,180); b11->SetLineColor(10); TGeoVolume *b12=geom->MakeTubs("b12",Iron,0,50,100,180,270); b12->SetLineColor(10); TGeoVolume *b13=geom->MakeTubs("b13",Iron,0,50,100,270,360); b13->SetLineColor(10); TGeoVolume *b14=geom->MakeBox("b14",Iron,100,50,450); b14->SetLineColor(10); TGeoVolume *b15=geom->MakeBox("b15",Iron,50,200,600); b15->SetLineColor(10); TGeoVolume *b16=geom->MakeSphere("b16",Iron,0,50,0,90,0,90); b16->SetLineColor(10); TGeoVolume *b17=geom->MakeSphere("b17",Iron,0,50,0,90,270,360); b17->SetLineColor(10); TGeoVolume *b18=geom->MakeSphere("b18",Iron,0,50,0,90,180,270); b18->SetLineColor(10); TGeoVolume *b19=geom->MakeSphere("b19",Iron,0,50,0,90,90,180); b19->SetLineColor(10); TGeoVolume *b20=geom->MakeTube("b20",Iron,50,150,150); b20->SetLineColor(17); TGeoVolume *b21=geom->MakeSphere("b21",Iron,0,50,90,180,0,90); b21->SetLineColor(10); TGeoVolume *b22=geom->MakeSphere("b22",Iron,0,50,90,180,270,360); b22->SetLineColor(10); TGeoVolume *b23=geom->MakeSphere("b23",Iron,0,50,90,180,180,270); b23->SetLineColor(10); TGeoVolume *b24=geom->MakeSphere("b24",Iron,0,50,90,180,90,180); b24->SetLineColor(10); TGeoVolume *b25=geom->MakeTube("b25",Iron,51,54,150); b25->SetLineColor(17); TGeoVolume *b26=geom->MakeTube("b26",Iron,56,59,150); b26->SetLineColor(17); TGeoVolume *b27=geom->MakeTube("b27",Iron,61,64,150); b27->SetLineColor(17); TGeoVolume *b28=geom->MakeTube("b28",Iron,66,69,150); b28->SetLineColor(17); TGeoVolume *b29=geom->MakeTube("b29",Iron,71,74,150); b29->SetLineColor(17); TGeoVolume *b30=geom->MakeTube("b30",Iron,76,79,150); b30->SetLineColor(17); TGeoVolume *b31=geom->MakeTube("b31",Iron,81,84,150); b31->SetLineColor(17); TGeoVolume *b32=geom->MakeTube("b32",Iron,86,89,150); b32->SetLineColor(17); TGeoVolume *b33=geom->MakeTube("b33",Iron,91,94,150); b33->SetLineColor(17); TGeoVolume *b34=geom->MakeTube("b34",Iron,96,99,150); b34->SetLineColor(17); TGeoVolume *b35=geom->MakeTube("b35",Iron,101,104,150); b35->SetLineColor(17); TGeoVolume *b36=geom->MakeTube("b36",Iron,106,109,150); b36->SetLineColor(17); TGeoVolume *b37=geom->MakeTube("b37",Iron,111,114,150); b37->SetLineColor(17); TGeoVolume *b38=geom->MakeTube("b38",Iron,116,119,150); b38->SetLineColor(17); TGeoVolume *b39=geom->MakeTube("b39",Iron,121,124,150); b39->SetLineColor(17); TGeoVolume *b40=geom->MakeTube("b40",Iron,126,129,150); b40->SetLineColor(17); TGeoVolume *b41=geom->MakeTube("b41",Iron,131,134,150); b41->SetLineColor(17); TGeoVolume *b42=geom->MakeTube("b42",Iron,136,139,150); b42->SetLineColor(17); TGeoVolume *b43=geom->MakeTube("b43",Iron,141,144,150); b43->SetLineColor(17); TGeoVolume *b44=geom->MakeTube("b44",Iron,146,149,150); b44->SetLineColor(17); TGeoVolume *b45=geom->MakeTube("b45",Iron,0,25,150); b45->SetLineColor(10); TGeoVolume *b46=geom->MakeTube("b46",Iron,25,30,150); b46->SetLineColor(17); TGeoVolume *b47=geom->MakeBox("b47",Iron,140,194,504); b47->SetLineColor(32); TGeoVolume *b48=geom->MakeBox("b48",Iron,150,176,236); b48->SetLineColor(37); TGeoVolume *b49=geom->MakeBox("b49",Iron,150,2,236); b49->SetLineColor(20); top->AddNodeOverlap(b49,49,new TGeoTranslation(-2,179,-150)); TGeoVolume *b50=geom->MakeBox("b50",Iron,150,2,236); b50->SetLineColor(20); top->AddNodeOverlap(b50,50,new TGeoTranslation(-2,-179,-150)); TGeoVolume *b51=geom->MakeBox("b51",Iron,150,176,2); b51->SetLineColor(20); top->AddNodeOverlap(b51,51,new TGeoTranslation(-2,0,89)); TGeoVolume *b52=geom->MakeBox("b52",Iron,150,176,2); b52->SetLineColor(20); top->AddNodeOverlap(b52,52,new TGeoTranslation(-2,0,-389)); TGeoVolume *b53=geom->MakeBox("b53",Iron,150,200,90); b53->SetLineColor(10); top->AddNodeOverlap(b53,53,new TGeoTranslation(0,0,-510)); TGeoVolume *b54=geom->MakeBox("b54",Iron,15,254,600); b54->SetLineColor(37); top->AddNodeOverlap(b54,54,new TGeoTranslation(25,0,0)); TGeoVolume *b55=geom->MakeTubs("b55",Iron,0,54,15,270,360); b55->SetLineColor(37); top->AddNodeOverlap(b55,55,new TGeoCombiTrans(25,200,-600,new TGeoRotation("r1",90,90,0))); TGeoVolume *b56=geom->MakeTubs("b56",Iron,0,54,15,180,270); b56->SetLineColor(37); top->AddNodeOverlap(b56,56,new TGeoCombiTrans(25,-200,-600,new TGeoRotation("r1",90,90,0))); TGeoVolume *b57=geom->MakeTubs("b57",Iron,0,54,15,0,90); b57->SetLineColor(37); top->AddNodeOverlap(b57,57,new TGeoCombiTrans(25,200,600,new TGeoRotation("r1",90,90,0))); TGeoVolume *b58=geom->MakeTubs("b58",Iron,0,54,15,90,180); b58->SetLineColor(37); top->AddNodeOverlap(b58,58,new TGeoCombiTrans(25,-200,600,new TGeoRotation("r1",90,90,0))); //TGeoVolume *b59=geom->MakePgon("b59",Iron,100,100,100,100); //b59->SetLineColor(37); //top->AddNodeOverlap(b59,59,new TGeoCombiTrans(200,200,100,new TGeoRotation("r1",90,90,0))); //IAudid TGeoVolume *b61=geom->MakeBox("b61",Iron,5,19,150); b61->SetLineColor(38); top->AddNodeOverlap(b61,61,new TGeoCombiTrans(-4,-87,-495,new TGeoRotation("r1",90,90,30))); TGeoVolume *b62=geom->MakeBox("b62",Iron,5,19,150); b62->SetLineColor(38); top->AddNodeOverlap(b62,62,new TGeoCombiTrans(-4,-65,-495,new TGeoRotation("r1",90,90,330))); //u TGeoVolume *b63=geom->MakeBox("b63",Iron,5,15,150); b63->SetLineColor(38); top->AddNodeOverlap(b63,63,new TGeoCombiTrans(-4,-40,-497,new TGeoRotation("r1",90,90,0))); TGeoVolume *b64=geom->MakeBox("b64",Iron,5,15,150); b64->SetLineColor(38); top->AddNodeOverlap(b64,64,new TGeoCombiTrans(-4,-10,-497,new TGeoRotation("r1",90,90,0))); TGeoVolume *b65=geom->MakeTubs("b65",Iron,7,17,150,0,180); b65->SetLineColor(38); top->AddNodeOverlap(b65,65,new TGeoCombiTrans(-4,-25,-490,new TGeoRotation("r1",90,90,0))); //D TGeoVolume *b66=geom->MakeBox("b66",Iron,5,19,150); b66->SetLineColor(38); top->AddNodeOverlap(b66,66,new TGeoCombiTrans(-4,10,-495,new TGeoRotation("r1",90,90,0))); TGeoVolume *b67=geom->MakeTubs("b67",Iron,10,20,150,230,480); b67->SetLineColor(38); top->AddNodeOverlap(b67,67,new TGeoCombiTrans(-4,23,-495,new TGeoRotation("r1",90,90,0))); //I TGeoVolume *b68=geom->MakeBox("b68",Iron,5,20,150); b68->SetLineColor(38); top->AddNodeOverlap(b68,68,new TGeoCombiTrans(-4,53,-495,new TGeoRotation("r1",90,90,0))); //O TGeoVolume *b69=geom->MakeTubs("b69",Iron,10,22,150,0,360); b69->SetLineColor(38); top->AddNodeOverlap(b69,69,new TGeoCombiTrans(-4,85,-495,new TGeoRotation("r1",90,90,0))); // I TGeoVolume *b60=geom->MakeTube("b60",Iron,0,10,150); b60->SetLineColor(38); top->AddNodeOverlap(b60,60,new TGeoCombiTrans(-4,-120,-550,new TGeoRotation("r1",90,90,0))); TGeoVolume *b70=geom->MakeBox("b70",Iron,2,19,150); b70->SetLineColor(38); top->AddNodeOverlap(b70,70,new TGeoCombiTrans(-4,-114,-495,new TGeoRotation("r1",90,90,0))); TGeoVolume *b71=geom->MakeBox("b71",Iron,2,19,150); b71->SetLineColor(38); top->AddNodeOverlap(b71,71,new TGeoCombiTrans(-4,-126,-495,new TGeoRotation("r1",90,90,0))); TGeoVolume *b72=geom->MakeBox("b72",Iron,8,2,150); b72->SetLineColor(38); top->AddNodeOverlap(b72,72,new TGeoCombiTrans(-4,-120,-515,new TGeoRotation("r1",90,90,0))); TGeoVolume *b73=geom->MakeBox("b73",Iron,8,2,150); b73->SetLineColor(38); top->AddNodeOverlap(b73,73,new TGeoCombiTrans(-4,-120,-475,new TGeoRotation("r1",90,90,0))); // button TGeoVolume *b74=geom->MakeBox("b74",Iron,35,250,70); b74->SetLineColor(38); top->AddNodeOverlap(b74,74,new TGeoCombiTrans(-25,10,-60,new TGeoRotation("r1",0,0,0))); TGeoVolume *b75=geom->MakeBox("b75",Iron,35,250,35); b75->SetLineColor(38); top->AddNodeOverlap(b75,75,new TGeoCombiTrans(-25,10,-175,new TGeoRotation("r1",0,0,0))); TGeoVolume *b76=geom->MakeBox("b76",Iron,35,250,35); b76->SetLineColor(38); top->AddNodeOverlap(b76,76,new TGeoCombiTrans(-25,10,55,new TGeoRotation("r1",0,0,0))); TGeoVolume *b77=geom->MakeTubs("b77",Iron,0,70,250,180,270); b77->SetLineColor(38); top->AddNodeOverlap(b77,77,new TGeoCombiTrans(10,10,-210,new TGeoRotation("r1",0,90,0))); TGeoVolume *b78=geom->MakeTubs("b78",Iron,0,70,250,90,180); b78->SetLineColor(38); top->AddNodeOverlap(b78,78,new TGeoCombiTrans(10,10,90,new TGeoRotation("r1",0,90,0))); //Hold TGeoVolume *b79=geom->MakeBox("b79",Iron,40,250,150); b79->SetLineColor(10); top->AddNodeOverlap(b79,79,new TGeoCombiTrans(60,0,450,new TGeoRotation("r1",0,0,0))); TGeoVolume *b80=geom->MakeTubs("b80",Iron,50,100,250,180,270); b80->SetLineColor(10); top->AddNodeOverlap(b80,80,new TGeoCombiTrans(10,0,350,new TGeoRotation("r1",0,90,0))); TGeoVolume *b81=geom->MakeTubs("b81",Iron,50,100,250,90,180); b81->SetLineColor(10); top->AddNodeOverlap(b81,81,new TGeoCombiTrans(10,0,400,new TGeoRotation("r1",0,90,0))); TGeoVolume *b82=geom->MakeBox("b82",Iron,30,250,150); b82->SetLineColor(10); top->AddNodeOverlap(b82,82,new TGeoCombiTrans(-70,0,450,new TGeoRotation("r1",0,0,0))); TGeoVolume *b83=geom->MakeBox("b83",Iron,30,250,60); b83->SetLineColor(10); top->AddNodeOverlap(b83,83,new TGeoCombiTrans(-20,0,540,new TGeoRotation("r1",0,0,0))); TGeoVolume *b85=geom->MakeTubs("b85",Iron,0,40,240,180,270); b85->SetLineColor(38); top->AddNodeOverlap(b85,85,new TGeoCombiTrans(10,10,370,new TGeoRotation("r1",0,90,0))); TGeoVolume *b84=geom->MakeTubs("b84",Iron,0,40,240,90,180); b84->SetLineColor(38); top->AddNodeOverlap(b84,84,new TGeoCombiTrans(10,10,400,new TGeoRotation("r1",0,90,0))); TGeoVolume *b86=geom->MakeBox("b86",Iron,20,240,20); b86->SetLineColor(38); top->AddNodeOverlap(b86,86,new TGeoCombiTrans(-10,10,380,new TGeoRotation("r1",0,0,0))); TGeoVolume *b87=geom->MakeBox("b87",Iron,20,250,10); b87->SetLineColor(35); top->AddNodeOverlap(b87,87,new TGeoCombiTrans(-10,20,385,new TGeoRotation("r1",0,0,0))); TGeoVolume *b88=geom->MakeBox("b88",Iron,100,220,600); b88->SetLineColor(10); top->AddNodeOverlap(b88,88,new TGeoCombiTrans(0,-30,0,new TGeoRotation("r1",0,0,0))); TGeoVolume *b89=geom->MakeTube("b89",Iron,25,95,650); b89->SetLineColor(10); top->AddNodeOverlap(b89,89,new TGeoCombiTrans(0,-60,0,new TGeoRotation("r1",0,0,0))); TGeoVolume *b90=geom->MakeTube("b90",Iron,25,95,650); b90->SetLineColor(10); top->AddNodeOverlap(b90,90,new TGeoCombiTrans(0,60,0,new TGeoRotation("r1",0,0,0))); TGeoVolume *b91=geom->MakeBox("b91",Iron,40,200,650); b91->SetLineColor(10); top->AddNodeOverlap(b91,91,new TGeoCombiTrans(70,0,0,new TGeoRotation("r1",0,0,0))); TGeoVolume *b92=geom->MakeBox("b92",Iron,100,50,650); b92->SetLineColor(10); top->AddNodeOverlap(b92,92,new TGeoCombiTrans(0,150,0,new TGeoRotation("r1",0,0,0))); TGeoVolume *b93=geom->MakeBox("b93",Iron,100,50,650); b93->SetLineColor(10); top->AddNodeOverlap(b93,93,new TGeoCombiTrans(0,-150,0,new TGeoRotation("r1",0,0,0))); TGeoVolume *b94=geom->MakeBox("b94",Iron,40,200,650); b94->SetLineColor(10); top->AddNodeOverlap(b94,94,new TGeoCombiTrans(-70,0,0,new TGeoRotation("r1",0,0,0))); TGeoVolume *b95=geom->MakeTube("b95",Iron,25,35,650); b95->SetLineColor(1); top->AddNodeOverlap(b95,95,new TGeoCombiTrans(0,-60,-10,new TGeoRotation("r1",0,0,0))); TGeoVolume *b96=geom->MakeTube("b96",Iron,25,35,650); b96->SetLineColor(1); top->AddNodeOverlap(b96,96,new TGeoCombiTrans(0,60,-10,new TGeoRotation("r1",0,0,0))); //usb TGeoVolume *b97=geom->MakeBox("b97",Iron,70,70,600); b97->SetLineColor(17); top->AddNodeOverlap(b97,97,new TGeoCombiTrans(0,0,57,new TGeoRotation("r1",0,0,0))); TGeoVolume *b98=geom->MakeTubs("b98",Iron,0,50,600,0,90); b98->SetLineColor(17); top->AddNodeOverlap(b98,98,new TGeoCombiTrans(20,60,57,new TGeoRotation("r1",0,0,0))); TGeoVolume *b99=geom->MakeTubs("b99",Iron,0,50,600,180,270); b99->SetLineColor(17); top->AddNodeOverlap(b99,99,new TGeoCombiTrans(-20,-60,57,new TGeoRotation("r1",0,0,0))); TGeoVolume *b100=geom->MakeTubs("b100",Iron,0,50,600,90,180); b100->SetLineColor(17); top->AddNodeOverlap(b100,100,new TGeoCombiTrans(-20,60,57,new TGeoRotation("r1",0,0,0))); TGeoVolume *b101=geom->MakeTubs("b101",Iron,0,50,600,270,360); b101->SetLineColor(17); top->AddNodeOverlap(b101,101,new TGeoCombiTrans(20,-60,57,new TGeoRotation("r1",0,0,0))); TGeoVolume *b102=geom->MakeBox("b102",Iron,20,110,600); b102->SetLineColor(17); top->AddNodeOverlap(b102,102,new TGeoCombiTrans(0,0,57,new TGeoRotation("r1",0,0,0))); TGeoVolume *b103=geom->MakeBox("b103",Iron,15,200,600); b103->SetLineColor(37); top->AddNodeOverlap(b103,103,new TGeoCombiTrans(25,0,57,new TGeoRotation("r1",0,0,0))); //AddNode top->AddNodeOverlap(b1,1,new TGeoTranslation(0,0,0)); top->AddNodeOverlap(b2,2,new TGeoCombiTrans(100,0,600,new TGeoRotation("r1",0,90,0))); top->AddNodeOverlap(b3,3,new TGeoCombiTrans(-100,0,600,new TGeoRotation("r1",0,90,0))); top->AddNodeOverlap(b4,4,new TGeoCombiTrans(-100,0,-600,new TGeoRotation("r1",0,90,0))); top->AddNodeOverlap(b5,5,new TGeoCombiTrans(100,0,-600,new TGeoRotation("r1",0,90,0))); top->AddNodeOverlap(b6,6,new TGeoCombiTrans(100,200,0,new TGeoRotation("r1",0,0,0))); top->AddNodeOverlap(b7,7,new TGeoCombiTrans(-100,200,0,new TGeoRotation("r1",0,0,0))); top->AddNodeOverlap(b8,8,new TGeoCombiTrans(-100,-200,0,new TGeoRotation("r1",0,0,0))); top->AddNodeOverlap(b9,9,new TGeoCombiTrans(100,-200,0,new TGeoRotation("r1",0,0,0))); top->AddNodeOverlap(b10,10,new TGeoCombiTrans(0,200,600,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b11,11,new TGeoCombiTrans(0,-200,600,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b12,12,new TGeoCombiTrans(0,-200,-600, new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b13,13,new TGeoCombiTrans(0,200,-600,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b14,14,new TGeoTranslation(0,200,-150)); top->AddNodeOverlap(b15,15,new TGeoTranslation(100,0,0)); top->AddNodeOverlap(b16,16,new TGeoCombiTrans(100,200,600,new TGeoRotation("r2",0,0,0))); top->AddNodeOverlap(b17,17,new TGeoCombiTrans(100,-200,600,new TGeoRotation("r2",0,0,0))); top->AddNodeOverlap(b18,18,new TGeoCombiTrans(-100,-200,600,new TGeoRotation("r2",0,0,0))); top->AddNodeOverlap(b19,19,new TGeoCombiTrans(-100,200,600,new TGeoRotation("r2",0,0,0))); top->AddNodeOverlap(b20,20,new TGeoCombiTrans(-3,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b21,21,new TGeoCombiTrans(100,200,-600,new TGeoRotation("r2",0,0,0))); top->AddNodeOverlap(b22,22,new TGeoCombiTrans(100,-200,-600,new TGeoRotation("r2",0,0,0))); top->AddNodeOverlap(b23,23,new TGeoCombiTrans(-100,-200,-600,new TGeoRotation("r2",0,0,0))); top->AddNodeOverlap(b24,24,new TGeoCombiTrans(-100,200,-600,new TGeoRotation("r2",0,0,0))); top->AddNodeOverlap(b25,25,new TGeoCombiTrans(-9,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b26,26,new TGeoCombiTrans(-9,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b27,27,new TGeoCombiTrans(-9,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b28,28,new TGeoCombiTrans(-9,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b29,29,new TGeoCombiTrans(-9,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b30,30,new TGeoCombiTrans(-9,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b31,31,new TGeoCombiTrans(-9,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b32,32,new TGeoCombiTrans(-9,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b33,33,new TGeoCombiTrans(-9,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b34,34,new TGeoCombiTrans(-9,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b35,35,new TGeoCombiTrans(-9,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b36,36,new TGeoCombiTrans(-9,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b37,37,new TGeoCombiTrans(-9,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b38,38,new TGeoCombiTrans(-9,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b39,39,new TGeoCombiTrans(-9,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b40,40,new TGeoCombiTrans(-9,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b41,41,new TGeoCombiTrans(-9,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b42,42,new TGeoCombiTrans(-9,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b43,43,new TGeoCombiTrans(-9,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b44,44,new TGeoCombiTrans(-9,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b45,45,new TGeoCombiTrans(-20,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b46,46,new TGeoCombiTrans(-25,0,350,new TGeoRotation("r2",90,90,0))); top->AddNodeOverlap(b47,47,new TGeoTranslation(5,0,85)); top->AddNodeOverlap(b48,48,new TGeoTranslation(-2,0,-150)); geom->CloseGeometry(); TCanvas *can=new TCanvas("can","My virtual laboratory",800,800); //Mp3 TPad *pad=new TPad("pad","Pad",0,0.5,0.5,1); pad->SetFillColor(1); pad->Draw(); pad->cd(); top->Draw(); //Sound can->cd(); TPad *pad2=new TPad("pad2","Pad2",0.5,0.5,1,1); pad2->SetFillColor(10); pad2->Draw(); pad2->cd(); TPaveText *pt = new TPaveText(0.4,0.90,0.6,0.95,"br"); pt->SetFillColor(30); pt->AddText(0.5,0.5,"Musics"); pt->Draw(); TLatex Tex; Tex.SetTextSize(0.04); Tex.SetTextColor(31); Tex.DrawLatex(0.3,0.81,"Mariah Carey - Shake it off"); Tex.SetTextSize(0.04); Tex.SetTextColor(31); Tex.DrawLatex(0.3,0.71,"Alicia keys - If I ain't got you"); Tex.SetTextSize(0.04); Tex.SetTextColor(31); Tex.DrawLatex(0.3,0.61,"Michael Jackson - Billie Jean"); Tex.SetTextSize(0.04); Tex.SetTextColor(31); Tex.DrawLatex(0.3,0.51,"Christina Milian - Am to Pm"); Tex.SetTextSize(0.04); Tex.SetTextColor(31); Tex.DrawLatex(0.3,0.41,"Zapp&Roger - Slow and Easy"); Tex.SetTextSize(0.04); Tex.SetTextColor(31); Tex.DrawLatex(0.3,0.31,"Black Eyes Peas - Let's get retarded"); Tex.SetTextSize(0.04); Tex.SetTextColor(31); Tex.DrawLatex(0.3,0.21,"Bosson - One in a Millin"); Tex.SetTextSize(0.04); Tex.SetTextColor(15); Tex.DrawLatex(0.2,0.11,"Click Button!! You Can Listen to Musics"); TButton *but1=new TButton("","Sound(1)",0.2,0.8,0.25,0.85); but1->Draw(); but1->SetFillColor(29); TButton *but2=new TButton("","Sound(2)",0.2,0.7,0.25,.75); but2->Draw(); but2->SetFillColor(29); TButton *but3=new TButton("","Sound(3)",0.2,0.6,0.25,0.65); but3->Draw(); but3->SetFillColor(29); TButton *but4=new TButton("","Sound(4)",0.2,0.5,0.25,0.55); but4->Draw(); but4->SetFillColor(29); TButton *but5=new TButton("","Sound(5)",0.2,0.4,0.25,0.45); but5->Draw(); but5->SetFillColor(29); TButton *but6=new TButton("","Sound(6)",0.2,0.3,0.25,0.35); but6->Draw(); but6->SetFillColor(29); TButton *but7=new TButton("","Sound(7)",0.2,0.2,0.25,0.25); but7->Draw(); but7->SetFillColor(29); pad->cd(); //introduction can->cd(); TPad *pad3=new TPad("pad3","Pad3",0,0,1,0.5); pad3->SetFillColor(10); pad3->Draw(); pad3->cd(); TImage *image=TImage::Open("mp3.jpg"); image->Draw(); TPad *pad4=new TPad("pad4","Pad4",0.6,0.1,0.9,0.9); pad4->SetFillColor(1); pad4->Draw(); pad4->cd(); TLine L; Tex.SetTextSize(0.08); Tex.SetTextColor(10); Tex.DrawLatex(0.06,0.85,"IAudio U3 Mp3 Player"); L.SetLineColor(10); L.SetLineWidth(3); L.DrawLine(0.05, 0.83,0.90, 0.83); Tex.SetTextSize(0.06); Tex.SetTextColor(10); Tex.DrawLatex(0.06,0.75,"+ Color LCD"); Tex.SetTextSize(0.06); Tex.SetTextColor(10); Tex.DrawLatex(0.06,0.65,"+ 60mW High Generating Power"); Tex.SetTextSize(0.06); Tex.SetTextColor(10); Tex.DrawLatex(0.06,0.55,"+ GUI Theme Skin"); Tex.SetTextSize(0.06); Tex.SetTextColor(10); Tex.DrawLatex(0.06,0.45,"+ Noble White&Black"); Tex.SetTextSize(0.06); Tex.SetTextColor(10); Tex.DrawLatex(0.06,0.35,"+ Text Viewer+Image Viewer"); Tex.SetTextSize(0.06); Tex.SetTextColor(10); Tex.DrawLatex(0.06,0.25,"+ 20 Hours Playing"); Tex.SetTextSize(0.06); Tex.SetTextColor(10); Tex.DrawLatex(0.06,0.15,"+ The Best Quality of Sound"); pad->cd(); } void Sound(int i) { char sound[128]; sprintf(sound,"cat sound%d.wav > /dev/audio",i); gSystem->Exec(sound); } mp3player.C:1 mp3player.C:2 mp3player.C:3 mp3player.C:4 mp3player.C:5 mp3player.C:6 mp3player.C:7 mp3player.C:8 mp3player.C:9 mp3player.C:10 mp3player.C:11 mp3player.C:12 mp3player.C:13 mp3player.C:14 mp3player.C:15 mp3player.C:16 mp3player.C:17 mp3player.C:18 mp3player.C:19 mp3player.C:20 mp3player.C:21 mp3player.C:22 mp3player.C:23 mp3player.C:24 mp3player.C:25 mp3player.C:26 mp3player.C:27 mp3player.C:28 mp3player.C:29 mp3player.C:30 mp3player.C:31 mp3player.C:32 mp3player.C:33 mp3player.C:34 mp3player.C:35 mp3player.C:36 mp3player.C:37 mp3player.C:38 mp3player.C:39 mp3player.C:40 mp3player.C:41 mp3player.C:42 mp3player.C:43 mp3player.C:44 mp3player.C:45 mp3player.C:46 mp3player.C:47 mp3player.C:48 mp3player.C:49 mp3player.C:50 mp3player.C:51 mp3player.C:52 mp3player.C:53 mp3player.C:54 mp3player.C:55 mp3player.C:56 mp3player.C:57 mp3player.C:58 mp3player.C:59 mp3player.C:60 mp3player.C:61 mp3player.C:62 mp3player.C:63 mp3player.C:64 mp3player.C:65 mp3player.C:66 mp3player.C:67 mp3player.C:68 mp3player.C:69 mp3player.C:70 mp3player.C:71 mp3player.C:72 mp3player.C:73 mp3player.C:74 mp3player.C:75 mp3player.C:76 mp3player.C:77 mp3player.C:78 mp3player.C:79 mp3player.C:80 mp3player.C:81 mp3player.C:82 mp3player.C:83 mp3player.C:84 mp3player.C:85 mp3player.C:86 mp3player.C:87 mp3player.C:88 mp3player.C:89 mp3player.C:90 mp3player.C:91 mp3player.C:92 mp3player.C:93 mp3player.C:94 mp3player.C:95 mp3player.C:96 mp3player.C:97 mp3player.C:98 mp3player.C:99 mp3player.C:100 mp3player.C:101 mp3player.C:102 mp3player.C:103 mp3player.C:104 mp3player.C:105 mp3player.C:106 mp3player.C:107 mp3player.C:108 mp3player.C:109 mp3player.C:110 mp3player.C:111 mp3player.C:112 mp3player.C:113 mp3player.C:114 mp3player.C:115 mp3player.C:116 mp3player.C:117 mp3player.C:118 mp3player.C:119 mp3player.C:120 mp3player.C:121 mp3player.C:122 mp3player.C:123 mp3player.C:124 mp3player.C:125 mp3player.C:126 mp3player.C:127 mp3player.C:128 mp3player.C:129 mp3player.C:130 mp3player.C:131 mp3player.C:132 mp3player.C:133 mp3player.C:134 mp3player.C:135 mp3player.C:136 mp3player.C:137 mp3player.C:138 mp3player.C:139 mp3player.C:140 mp3player.C:141 mp3player.C:142 mp3player.C:143 mp3player.C:144 mp3player.C:145 mp3player.C:146 mp3player.C:147 mp3player.C:148 mp3player.C:149 mp3player.C:150 mp3player.C:151 mp3player.C:152 mp3player.C:153 mp3player.C:154 mp3player.C:155 mp3player.C:156 mp3player.C:157 mp3player.C:158 mp3player.C:159 mp3player.C:160 mp3player.C:161 mp3player.C:162 mp3player.C:163 mp3player.C:164 mp3player.C:165 mp3player.C:166 mp3player.C:167 mp3player.C:168 mp3player.C:169 mp3player.C:170 mp3player.C:171 mp3player.C:172 mp3player.C:173 mp3player.C:174 mp3player.C:175 mp3player.C:176 mp3player.C:177 mp3player.C:178 mp3player.C:179 mp3player.C:180 mp3player.C:181 mp3player.C:182 mp3player.C:183 mp3player.C:184 mp3player.C:185 mp3player.C:186 mp3player.C:187 mp3player.C:188 mp3player.C:189 mp3player.C:190 mp3player.C:191 mp3player.C:192 mp3player.C:193 mp3player.C:194 mp3player.C:195 mp3player.C:196 mp3player.C:197 mp3player.C:198 mp3player.C:199 mp3player.C:200 mp3player.C:201 mp3player.C:202 mp3player.C:203 mp3player.C:204 mp3player.C:205 mp3player.C:206 mp3player.C:207 mp3player.C:208 mp3player.C:209 mp3player.C:210 mp3player.C:211 mp3player.C:212 mp3player.C:213 mp3player.C:214 mp3player.C:215 mp3player.C:216 mp3player.C:217 mp3player.C:218 mp3player.C:219 mp3player.C:220 mp3player.C:221 mp3player.C:222 mp3player.C:223 mp3player.C:224 mp3player.C:225 mp3player.C:226 mp3player.C:227 mp3player.C:228 mp3player.C:229 mp3player.C:230 mp3player.C:231 mp3player.C:232 mp3player.C:233 mp3player.C:234 mp3player.C:235 mp3player.C:236 mp3player.C:237 mp3player.C:238 mp3player.C:239 mp3player.C:240 mp3player.C:241 mp3player.C:242 mp3player.C:243 mp3player.C:244 mp3player.C:245 mp3player.C:246 mp3player.C:247 mp3player.C:248 mp3player.C:249 mp3player.C:250 mp3player.C:251 mp3player.C:252 mp3player.C:253 mp3player.C:254 mp3player.C:255 mp3player.C:256 mp3player.C:257 mp3player.C:258 mp3player.C:259 mp3player.C:260 mp3player.C:261 mp3player.C:262 mp3player.C:263 mp3player.C:264 mp3player.C:265 mp3player.C:266 mp3player.C:267 mp3player.C:268 mp3player.C:269 mp3player.C:270 mp3player.C:271 mp3player.C:272 mp3player.C:273 mp3player.C:274 mp3player.C:275 mp3player.C:276 mp3player.C:277 mp3player.C:278 mp3player.C:279 mp3player.C:280 mp3player.C:281 mp3player.C:282 mp3player.C:283 mp3player.C:284 mp3player.C:285 mp3player.C:286 mp3player.C:287 mp3player.C:288 mp3player.C:289 mp3player.C:290 mp3player.C:291 mp3player.C:292 mp3player.C:293 mp3player.C:294 mp3player.C:295 mp3player.C:296 mp3player.C:297 mp3player.C:298 mp3player.C:299 mp3player.C:300 mp3player.C:301 mp3player.C:302 mp3player.C:303 mp3player.C:304 mp3player.C:305 mp3player.C:306 mp3player.C:307 mp3player.C:308 mp3player.C:309 mp3player.C:310 mp3player.C:311 mp3player.C:312 mp3player.C:313 mp3player.C:314 mp3player.C:315 mp3player.C:316 mp3player.C:317 mp3player.C:318 mp3player.C:319 mp3player.C:320 mp3player.C:321 mp3player.C:322 mp3player.C:323 mp3player.C:324 mp3player.C:325 mp3player.C:326 mp3player.C:327 mp3player.C:328 mp3player.C:329 mp3player.C:330 mp3player.C:331 mp3player.C:332 mp3player.C:333 mp3player.C:334 mp3player.C:335 mp3player.C:336 mp3player.C:337 mp3player.C:338 mp3player.C:339 mp3player.C:340 mp3player.C:341 mp3player.C:342 mp3player.C:343 mp3player.C:344 mp3player.C:345 mp3player.C:346 mp3player.C:347 mp3player.C:348 mp3player.C:349 mp3player.C:350 mp3player.C:351 mp3player.C:352 mp3player.C:353 mp3player.C:354 mp3player.C:355 mp3player.C:356 mp3player.C:357 mp3player.C:358 mp3player.C:359 mp3player.C:360 mp3player.C:361 mp3player.C:362 mp3player.C:363 mp3player.C:364 mp3player.C:365 mp3player.C:366 mp3player.C:367 mp3player.C:368 mp3player.C:369 mp3player.C:370 mp3player.C:371 mp3player.C:372 mp3player.C:373 mp3player.C:374 mp3player.C:375 mp3player.C:376 mp3player.C:377 mp3player.C:378 mp3player.C:379 mp3player.C:380 mp3player.C:381 mp3player.C:382 mp3player.C:383 mp3player.C:384 mp3player.C:385 mp3player.C:386 mp3player.C:387 mp3player.C:388 mp3player.C:389 mp3player.C:390 mp3player.C:391 mp3player.C:392 mp3player.C:393 mp3player.C:394 mp3player.C:395 mp3player.C:396 mp3player.C:397 mp3player.C:398 mp3player.C:399 mp3player.C:400 mp3player.C:401 mp3player.C:402 mp3player.C:403 mp3player.C:404 mp3player.C:405 mp3player.C:406 mp3player.C:407 mp3player.C:408 mp3player.C:409 mp3player.C:410 mp3player.C:411 mp3player.C:412 mp3player.C:413 mp3player.C:414 mp3player.C:415 mp3player.C:416 mp3player.C:417 mp3player.C:418 mp3player.C:419 mp3player.C:420 mp3player.C:421 mp3player.C:422 mp3player.C:423 mp3player.C:424 mp3player.C:425 mp3player.C:426 mp3player.C:427 mp3player.C:428 mp3player.C:429 mp3player.C:430 mp3player.C:431 mp3player.C:432 mp3player.C:433 mp3player.C:434 mp3player.C:435 mp3player.C:436 mp3player.C:437 mp3player.C:438 mp3player.C:439 mp3player.C:440 mp3player.C:441 mp3player.C:442 mp3player.C:443 mp3player.C:444 mp3player.C:445 mp3player.C:446 mp3player.C:447 mp3player.C:448 mp3player.C:449 mp3player.C:450 mp3player.C:451 mp3player.C:452 mp3player.C:453 mp3player.C:454 mp3player.C:455 mp3player.C:456 mp3player.C:457 mp3player.C:458 mp3player.C:459 mp3player.C:460 mp3player.C:461 mp3player.C:462 mp3player.C:463 mp3player.C:464 mp3player.C:465 mp3player.C:466 mp3player.C:467 mp3player.C:468 mp3player.C:469 mp3player.C:470 mp3player.C:471 mp3player.C:472 mp3player.C:473 mp3player.C:474 mp3player.C:475 mp3player.C:476 mp3player.C:477 mp3player.C:478 mp3player.C:479 mp3player.C:480 mp3player.C:481 mp3player.C:482 mp3player.C:483 mp3player.C:484 mp3player.C:485 mp3player.C:486 mp3player.C:487 mp3player.C:488 mp3player.C:489 mp3player.C:490 mp3player.C:491 mp3player.C:492 mp3player.C:493 mp3player.C:494 mp3player.C:495 mp3player.C:496 mp3player.C:497 mp3player.C:498 mp3player.C:499 mp3player.C:500 mp3player.C:501 mp3player.C:502 mp3player.C:503 mp3player.C:504 mp3player.C:505 mp3player.C:506 mp3player.C:507 mp3player.C:508 mp3player.C:509 mp3player.C:510 mp3player.C:511 mp3player.C:512 mp3player.C:513 mp3player.C:514 mp3player.C:515 mp3player.C:516 mp3player.C:517 mp3player.C:518 mp3player.C:519 mp3player.C:520 mp3player.C:521 mp3player.C:522 mp3player.C:523 mp3player.C:524 mp3player.C:525 mp3player.C:526 mp3player.C:527 mp3player.C:528 mp3player.C:529 mp3player.C:530 mp3player.C:531 mp3player.C:532 mp3player.C:533 mp3player.C:534 mp3player.C:535 mp3player.C:536 mp3player.C:537 mp3player.C:538 mp3player.C:539 mp3player.C:540 mp3player.C:541 mp3player.C:542 mp3player.C:543 mp3player.C:544 mp3player.C:545 mp3player.C:546 mp3player.C:547 mp3player.C:548 mp3player.C:549 mp3player.C:550 mp3player.C:551 mp3player.C:552 mp3player.C:553 mp3player.C:554 mp3player.C:555 mp3player.C:556 mp3player.C:557 mp3player.C:558 mp3player.C:559 mp3player.C:560 mp3player.C:561 mp3player.C:562 mp3player.C:563 mp3player.C:564 mp3player.C:565 mp3player.C:566 mp3player.C:567 mp3player.C:568 mp3player.C:569 mp3player.C:570 mp3player.C:571 mp3player.C:572 mp3player.C:573 mp3player.C:574 mp3player.C:575 mp3player.C:576 mp3player.C:577 mp3player.C:578 mp3player.C:579 mp3player.C:580 mp3player.C:581 mp3player.C:582 mp3player.C:583 mp3player.C:584 mp3player.C:585 mp3player.C:586 mp3player.C:587 mp3player.C:588 mp3player.C:589 mp3player.C:590 mp3player.C:591 mp3player.C:592 mp3player.C:593 mp3player.C:594 mp3player.C:595 mp3player.C:596 mp3player.C:597 mp3player.C:598 mp3player.C:599 mp3player.C:600 mp3player.C:601 mp3player.C:602 mp3player.C:603 mp3player.C:604 mp3player.C:605 mp3player.C:606 mp3player.C:607 mp3player.C:608 mp3player.C:609 mp3player.C:610 mp3player.C:611 mp3player.C:612 mp3player.C:613 mp3player.C:614 mp3player.C:615 mp3player.C:616 mp3player.C:617 mp3player.C:618 mp3player.C:619 mp3player.C:620 mp3player.C:621 mp3player.C:622 mp3player.C:623 mp3player.C:624 mp3player.C:625 mp3player.C:626 mp3player.C:627 mp3player.C:628 mp3player.C:629 mp3player.C:630 mp3player.C:631 mp3player.C:632 mp3player.C:633 mp3player.C:634 mp3player.C:635 mp3player.C:636 mp3player.C:637 mp3player.C:638 mp3player.C:639 mp3player.C:640 mp3player.C:641 mp3player.C:642 mp3player.C:643 mp3player.C:644 mp3player.C:645 mp3player.C:646 mp3player.C:647 mp3player.C:648 mp3player.C:649 mp3player.C:650 mp3player.C:651 mp3player.C:652 mp3player.C:653 mp3player.C:654 mp3player.C:655 mp3player.C:656 mp3player.C:657 mp3player.C:658 mp3player.C:659 mp3player.C:660 mp3player.C:661 mp3player.C:662 mp3player.C:663 mp3player.C:664 mp3player.C:665 mp3player.C:666 mp3player.C:667 mp3player.C:668 mp3player.C:669 mp3player.C:670 mp3player.C:671 mp3player.C:672 mp3player.C:673 mp3player.C:674 mp3player.C:675 mp3player.C:676 mp3player.C:677 mp3player.C:678 mp3player.C:679 |
|