Logo ROOT   6.30.04
Reference Guide
 All Namespaces Files Pages
text.C
Go to the documentation of this file.
1 /// \file
2 /// \ingroup tutorial_eve
3 /// Demonstrates usage of class TEveText - 2D & 3D text in GL.
4 ///
5 /// \image html eve_text.png
6 /// \macro_code
7 ///
8 /// \author Alja Mrak-Tadel
9 
10 TEveText* text()
11 {
12  gSystem->IgnoreSignal(kSigSegmentationViolation, true);
13 
14  TEveManager::Create();
15 
16  auto marker = new TEvePointSet(8);
17  marker->SetName("Origin marker");
18  marker->SetMarkerColor(6);
19  marker->SetMarkerStyle(3);
20  Float_t a = 10;
21  marker->SetPoint(0, a, +a, +a);
22  marker->SetPoint(1, a, -a, +a);
23  marker->SetPoint(2, -a, -a, +a);
24  marker->SetPoint(3, -a, +a, +a);
25  marker->SetPoint(4, +a, +a, -a);
26  marker->SetPoint(5, +a, -a, -a);
27  marker->SetPoint(6, -a, +a, -a);
28  marker->SetPoint(7, -a, -a, -a);
29  gEve->AddElement(marker);
30 
31  auto t = new TEveText("DADA");
32  t->PtrMainTrans()->RotateLF(1, 3, TMath::PiOver2());
33  t->SetMainColor(kOrange-2);
34  t->SetFontSize(64);
35  t->SetFontMode(TGLFont::kExtrude);
36  t->SetLighting(kTRUE);
37  gEve->AddElement(t);
38 
39  // TEveText does not know its bounding box before first rendering.
40  gEve->FullRedraw3D(kTRUE);
41  gEve->GetDefaultGLViewer()->ResetCurrentCamera();
42  gEve->GetDefaultGLViewer()->RequestDraw(TGLRnrCtx::kLODHigh);
43 
44  return t;
45 }