evdb_tool::SpacePoint3DDrawerHitAsymmetry::SpacePoint3DDrawerHitAsymmetry |
( |
const fhicl::ParameterSet & |
pset | ) |
|
|
explicit |
evdb_tool::SpacePoint3DDrawerHitAsymmetry::~SpacePoint3DDrawerHitAsymmetry |
( |
| ) |
|
void evdb_tool::SpacePoint3DDrawerHitAsymmetry::Draw |
( |
const std::vector< art::Ptr< recob::SpacePoint >> & |
hitsVec, |
|
|
evdb::View3D * |
view, |
|
|
int |
color, |
|
|
int |
marker, |
|
|
float |
size, |
|
|
const art::FindManyP< recob::Hit > * |
hitAssnVec |
|
) |
| const |
|
virtual |
Implements evdb_tool::ISpacePoints3D.
Definition at line 61 of file SpacePoint3DDrawerAsymmetry_tool.cc.
69 if (hitsVec.empty() || !hitAssnVec)
return;
72 art::ServiceHandle<evd::ColorDrawingOptions const> cst;
74 using HitPosition = std::array<double,6>;
75 std::map<int,std::vector<HitPosition>> colorToHitMap;
80 for(
const auto& spacePoint : hitsVec)
86 float chgFactor = cst->fRecoQLow[
geo::kCollection] + asymmetryScale * hitAsymmetry;
88 const double* pos = spacePoint->XYZ();
89 const double*
err = spacePoint->ErrXYZ();
91 colorToHitMap[chargeColorIdx].push_back(HitPosition()={{pos[0],pos[1],pos[2],err[2],err[2],err[5]}});
95 for(
auto& hitPair : colorToHitMap)
97 TPolyMarker3D& pm = view->AddPolyMarker3D(hitPair.second.size(), hitPair.first, kFullDotLarge, 0.25);
98 for (
const auto&
hit : hitPair.second) pm.SetNextPoint(
hit[0],
hit[1],
hit[2]);
EResult err(const char *call)
Signal from collection planes.
float evdb_tool::SpacePoint3DDrawerHitAsymmetry::fMaxAsymmetry |
|
private |
float evdb_tool::SpacePoint3DDrawerHitAsymmetry::fMinAsymmetry |
|
private |
The documentation for this class was generated from the following file: