00001
00002
00003
00004
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 }