arrow.C

Go to the documentation of this file.
00001 // @(#)root/eve:$Id: text_test.C 23896 2008-05-18 17:42:32Z matevz $
00002 // Author: Alja Mrak-Tadel
00003 
00004 // Demonstrates usage of TEveArrow class.
00005 
00006 void arrow()
00007 {
00008    gSystem->IgnoreSignal(kSigSegmentationViolation, true);
00009 
00010    TEveManager::Create();
00011 
00012    TEvePointSet* marker = new TEvePointSet(8);
00013    marker->SetName("Origin marker");
00014    marker->SetMarkerColor(6);
00015    marker->SetMarkerStyle(3);
00016    Float_t a = 10;
00017    marker->SetPoint(0, a,  +a, +a);
00018    marker->SetPoint(1, a,  -a, +a);
00019    marker->SetPoint(2, -a, -a, +a);
00020    marker->SetPoint(3, -a, +a, +a);
00021    marker->SetPoint(4, +a, +a, -a);
00022    marker->SetPoint(5, +a, -a, -a);
00023    marker->SetPoint(6, -a, +a, -a);
00024    marker->SetPoint(7, -a, -a, -a);
00025    gEve->AddElement(marker);
00026 
00027    TEveArrow* a1 = new TEveArrow(1., 1., 10., 10., 4., 0.);
00028    a1->SetMainColor(kBlue);
00029    a1->SetTubeR(0.02);
00030    a1->SetPickable(kTRUE);
00031    gEve->AddElement(a1);
00032    TEveText* t1 = new TEveText("blue");
00033    t1->SetFontSize(20);
00034    TEveVector tv = a1->GetVector()*0.5+a1->GetOrigin();
00035    t1->RefMainTrans().SetPos(tv.Arr());
00036    a1->AddElement(t1);
00037 
00038    TEveArrow* a2 = new TEveArrow(20., 1., 10., 3., 0., 4.);
00039    a2->SetMainColor(kGreen);
00040    a2->SetPickable(kTRUE);
00041    gEve->AddElement(a2);
00042 
00043    TEveArrow* a3 = new TEveArrow(1., 10., 10., 0., 20., 0.);
00044    a3->SetMainColor(kOrange);
00045    a3->SetPickable(kTRUE);
00046    gEve->AddElement(a3);
00047 
00048    gEve->FullRedraw3D(kTRUE);
00049 }

Generated on Tue Jul 5 15:43:50 2011 for ROOT_528-00b_version by  doxygen 1.5.1