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 "TEveGeoShape.h"
14 #include "TEveVSDStructs.h"
37 TEveElement& oItemHolder,
43 TEveElement& oItemHolder,
45 TEveGeoManagerHolder gmgr(TEveGeoShape::GetGeoMangeur());
46 TEvePointSet* pointSet =
new TEvePointSet();
47 pointSet->SetMainColor(
item()->defaultDisplayProperties().color());
51 TGeoSphere* sphere =
new TGeoSphere(0, 0.002);
53 TEveGeoShape* shape =
new TEveGeoShape();
54 sphere->SetBoxDimensions(2.5, 2.5, 2.5);
55 shape->SetShape(sphere);
56 shape->SetMainColor(
item()->defaultDisplayProperties().color());
57 shape->SetMainTransparency(10);
59 TEveTrans&
t = shape->RefMainTrans();
62 for (
int i = 0;
i < 3;
i++)
63 for (
int j = 0;
j < 3;
j++) {
68 TMatrixD mm = svd.GetU();
70 for (
int i = 0;
i < 3;
i++)
71 for (
int j = 0;
j < 3;
j++) {
72 t(
i + 1,
j + 1) = mm(
i,
j);
74 TVectorD vv(eig.GetEigenValuesRe());
75 t.Scale(
sqrt(vv(0)) * 1000.,
sqrt(vv(1)) * 1000.,
sqrt(vv(2)) * 1000.);
76 t.SetPos(
v.x(),
v.y(),
v.z());
80 pointSet->SetNextPoint(
v.x(),
v.y(),
v.z());
89 TEveTrack* trk =
new TEveTrack(&
t,
context().getTrackPropagator());
90 trk->SetMainColor(
item()->defaultDisplayProperties().color());