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"
39 TEveElement& oItemHolder,
45 TEveElement& oItemHolder,
47 TEveGeoManagerHolder gmgr(TEveGeoShape::GetGeoMangeur());
48 TEvePointSet* pointSet =
new TEvePointSet();
49 pointSet->SetMainColor(
item()->defaultDisplayProperties().color());
53 TGeoSphere* sphere =
new TGeoSphere(0, 0.002);
55 TEveGeoShape* shape =
new TEveGeoShape();
56 sphere->SetBoxDimensions(2.5, 2.5, 2.5);
57 shape->SetShape(sphere);
58 shape->SetMainColor(
item()->defaultDisplayProperties().color());
59 shape->SetMainTransparency(10);
61 TEveTrans&
t = shape->RefMainTrans();
64 for (
int i = 0;
i < 3;
i++)
65 for (
int j = 0;
j < 3;
j++) {
70 TMatrixD mm = svd.GetU();
72 for (
int i = 0;
i < 3;
i++)
73 for (
int j = 0;
j < 3;
j++) {
74 t(
i + 1,
j + 1) = mm(
i,
j);
76 TVectorD vv(eig.GetEigenValuesRe());
77 t.Scale(
sqrt(vv(0)) * 1000.,
sqrt(vv(1)) * 1000.,
sqrt(vv(2)) * 1000.);
78 t.SetPos(v.
vx(), v.
vy(), v.
vz());
82 pointSet->SetNextPoint(v.
vx(), v.
vy(), v.
vz());
89 trk->SetMainColor(
item()->defaultDisplayProperties().color());
const fireworks::Context & context() const
#define REGISTER_PROXYBUILDER_METHODS()
const edm::EventSetup & c
#define REGISTER_FWPROXYBUILDER(_name_, _type_, _purpose_, _view_)
static const int kAllRPZBits
double vz() const override
z coordinate of vertex position
const VTX & secondaryVertex(unsigned int index) const
void setupAddElement(TEveElement *el, TEveElement *parent, bool set_color=true) const
double vy() const override
y coordinate of vertex position
math::Error< dimension >::type Error
covariance error matrix (3x3)
const FWEventItem * item() const
~FWSecVertexCandidateProxyBuilder() override
double vx() const override
x coordinate of vertex position
unsigned int nVertices() const
size_t numberOfDaughters() const override
number of daughters
TEveTrack * prepareCandidate(const reco::Candidate &track, TEveTrackPropagator *propagator)
static int position[264][3]
const Candidate * daughter(size_type) const override
return daughter at a given position, i = 0, ... numberOfDaughters() - 1 (read only mode) ...
const FWSecVertexCandidateProxyBuilder & operator=(const FWSecVertexCandidateProxyBuilder &)=delete
FWSecVertexCandidateProxyBuilder()