5 #include "TMatrixDEigen.h"
6 #include "TMatrixDSym.h"
7 #include "TDecompSVD.h"
10 #include "TGeoSphere.h"
11 #include "TGeoMatrix.h"
12 #include "TEveGeoNode.h"
13 #include "TEveVSDStructs.h"
38 TEveElement& oItemHolder,
44 TEveElement& oItemHolder,
46 TEveGeoManagerHolder gmgr(TEveGeoShape::GetGeoMangeur());
47 TEvePointSet* pointSet =
new TEvePointSet();
48 pointSet->SetMainColor(
item()->defaultDisplayProperties().color());
52 TGeoSphere* sphere =
new TGeoSphere(0, 0.002);
54 TEveGeoShape* shape =
new TEveGeoShape();
55 sphere->SetBoxDimensions(2.5, 2.5, 2.5);
56 shape->SetShape(sphere);
57 shape->SetMainColor(
item()->defaultDisplayProperties().color());
58 shape->SetMainTransparency(10);
60 TEveTrans&
t = shape->RefMainTrans();
63 for (
int i = 0;
i < 3;
i++)
64 for (
int j = 0;
j < 3;
j++) {
69 TMatrixD mm = svd.GetU();
71 for (
int i = 0;
i < 3;
i++)
72 for (
int j = 0;
j < 3;
j++) {
73 t(
i + 1,
j + 1) = mm(
i,
j);
75 TVectorD vv(eig.GetEigenValuesRe());
76 t.Scale(
sqrt(vv(0)) * 1000.,
sqrt(vv(1)) * 1000.,
sqrt(vv(2)) * 1000.);
77 t.SetPos(
v.vx(),
v.vy(),
v.vz());
81 pointSet->SetNextPoint(
v.vx(),
v.vy(),
v.vz());
83 for (
unsigned int j = 0;
j <
v.numberOfDaughters();
j++) {
88 trk->SetMainColor(
item()->defaultDisplayProperties().color());