CHeT Library
Loading...
Searching...
No Matches
Classes | Functions
CHeT::Vis Namespace Reference

CHeT Visualization namespace. Contains tools for 2D and 3D visualization of the detector, tracks, and hits using ROOT. More...

Classes

struct  VisGenericTrack
 Structure representing a reconstructed 3D generic track for visualization. More...
 
struct  VisHelixTrack
 Structure representing a reconstructed 3D helix track for visualization. More...
 
struct  VisLineTrack
 Structure representing a reconstructed 3D line track for visualization. More...
 
struct  VisPoint2D
 Structure representing a 2D point (e.g., for Hough space or transverse projection). More...
 
struct  VisPoint3D
 Structure representing a 3D point (e.g., space points, clusters). More...
 

Functions

void Draw2DCore (const std::vector< int > &bundle_ids, const std::vector< VisPoint2D > &extraPoints, const std::function< void(TMultiGraph *, TMultiGraph *, TMultiGraph *, TMultiGraph *)> &trackDrawer, bool wrap_phi=true)
 
void Draw3DCore (const std::vector< int > &hit_ids, const std::vector< VisPoint3D > &points, bool drawSkeleton, const std::function< void(double[6])> &trackDrawer)
 
void RenderTrack2D (const VisLineTrack &tr, TMultiGraph *mg_xy)
 
void RenderTrack2D (const VisHelixTrack &tr, TMultiGraph *mg_xy)
 
void RenderTrack2D (const VisGenericTrack &tr, TMultiGraph *mg_xy)
 
void RenderTrackZX (const VisLineTrack &tr, TMultiGraph *mg_zx)
 
void RenderTrackZX (const VisHelixTrack &tr, TMultiGraph *mg_zx)
 
void RenderTrackZX (const VisGenericTrack &tr, TMultiGraph *mg_zx)
 
void RenderTrackZY (const VisLineTrack &tr, TMultiGraph *mg_zy)
 
void RenderTrackZY (const VisHelixTrack &tr, TMultiGraph *mg_zy)
 
void RenderTrackZY (const VisGenericTrack &tr, TMultiGraph *mg_zy)
 
void RenderTrackPhiZ (const VisLineTrack &tr, TMultiGraph *mg_phiz, bool wrap_phi=true)
 
void RenderTrackPhiZ (const VisHelixTrack &tr, TMultiGraph *mg_phiz, bool wrap_phi=true)
 
void RenderTrackPhiZ (const VisGenericTrack &tr, TMultiGraph *mg_phiz, bool wrap_phi=true)
 
void RenderTrack3D (const VisLineTrack &tr, double bounds[6])
 
void RenderTrack3D (const VisHelixTrack &tr, double bounds[6])
 
void RenderTrack3D (const VisGenericTrack &tr, double bounds[6])
 
template<typename TrackContainer = std::vector<VisGenericTrack>>
void Draw2D (const std::vector< int > &bundle_ids, const TrackContainer &tracks={}, const std::vector< VisPoint2D > &extraPoints={}, bool wrap_phi=true)
 Draws 2D projections: Phi-Z Unrolled Map, ZX/ZY Side views, and XY Transverse view.
 
template<typename TrackContainer = std::vector<VisGenericTrack>>
void Draw3D (const std::vector< int > &hit_ids, const TrackContainer &tracks={}, const std::vector< VisPoint3D > &points={}, bool drawSkeleton=true)
 Draws the full 3D detector view.
 

Detailed Description

CHeT Visualization namespace. Contains tools for 2D and 3D visualization of the detector, tracks, and hits using ROOT.

Function Documentation

◆ Draw2D()

template<typename TrackContainer = std::vector<VisGenericTrack>>
void CHeT::Vis::Draw2D ( const std::vector< int > &  bundle_ids,
const TrackContainer &  tracks = {},
const std::vector< VisPoint2D > &  extraPoints = {},
bool  wrap_phi = true 
)

Draws 2D projections: Phi-Z Unrolled Map, ZX/ZY Side views, and XY Transverse view.

Parameters
bundle_idsVector of global bundle IDs that fired.
intersVector of intersections (usually from CHeT::Config::FindIntersections).
tracksOptional list of tracks to overlay.
extraPointsOptional list of extra 2D points to draw on the XY plane.

Definition at line 240 of file CHeTVisualizer.hh.

◆ Draw2DCore()

void CHeT::Vis::Draw2DCore ( const std::vector< int > &  bundle_ids,
const std::vector< VisPoint2D > &  extraPoints,
const std::function< void(TMultiGraph *, TMultiGraph *, TMultiGraph *, TMultiGraph *)> &  trackDrawer,
bool  wrap_phi = true 
)

Definition at line 369 of file CHeTVisualizer.cc.

◆ Draw3D()

template<typename TrackContainer = std::vector<VisGenericTrack>>
void CHeT::Vis::Draw3D ( const std::vector< int > &  hit_ids,
const TrackContainer &  tracks = {},
const std::vector< VisPoint3D > &  points = {},
bool  drawSkeleton = true 
)

Draws the full 3D detector view.

Parameters
hit_idsVector of global bundle IDs that fired (drawn as solid lines).
tracksOptional list of tracks to draw.
pointsOptional list of 3D points to draw.
drawSkeletonIf true, draws all inactive fibers as faint transparent lines (computationally heavy).

Definition at line 269 of file CHeTVisualizer.hh.

◆ Draw3DCore()

void CHeT::Vis::Draw3DCore ( const std::vector< int > &  hit_ids,
const std::vector< VisPoint3D > &  points,
bool  drawSkeleton,
const std::function< void(double[6])> &  trackDrawer 
)

Definition at line 646 of file CHeTVisualizer.cc.

◆ RenderTrack2D() [1/3]

void CHeT::Vis::RenderTrack2D ( const VisGenericTrack tr,
TMultiGraph *  mg_xy 
)

Definition at line 91 of file CHeTVisualizer.cc.

◆ RenderTrack2D() [2/3]

void CHeT::Vis::RenderTrack2D ( const VisHelixTrack tr,
TMultiGraph *  mg_xy 
)

Definition at line 75 of file CHeTVisualizer.cc.

◆ RenderTrack2D() [3/3]

void CHeT::Vis::RenderTrack2D ( const VisLineTrack tr,
TMultiGraph *  mg_xy 
)

Definition at line 48 of file CHeTVisualizer.cc.

◆ RenderTrack3D() [1/3]

void CHeT::Vis::RenderTrack3D ( const VisGenericTrack tr,
double  bounds[6] 
)

Definition at line 343 of file CHeTVisualizer.cc.

◆ RenderTrack3D() [2/3]

void CHeT::Vis::RenderTrack3D ( const VisHelixTrack tr,
double  bounds[6] 
)

Definition at line 317 of file CHeTVisualizer.cc.

◆ RenderTrack3D() [3/3]

void CHeT::Vis::RenderTrack3D ( const VisLineTrack tr,
double  bounds[6] 
)

Definition at line 292 of file CHeTVisualizer.cc.

◆ RenderTrackPhiZ() [1/3]

void CHeT::Vis::RenderTrackPhiZ ( const VisGenericTrack tr,
TMultiGraph *  mg_phiz,
bool  wrap_phi = true 
)

Definition at line 272 of file CHeTVisualizer.cc.

◆ RenderTrackPhiZ() [2/3]

void CHeT::Vis::RenderTrackPhiZ ( const VisHelixTrack tr,
TMultiGraph *  mg_phiz,
bool  wrap_phi = true 
)

Definition at line 248 of file CHeTVisualizer.cc.

◆ RenderTrackPhiZ() [3/3]

void CHeT::Vis::RenderTrackPhiZ ( const VisLineTrack tr,
TMultiGraph *  mg_phiz,
bool  wrap_phi = true 
)

Definition at line 221 of file CHeTVisualizer.cc.

◆ RenderTrackZX() [1/3]

void CHeT::Vis::RenderTrackZX ( const VisGenericTrack tr,
TMultiGraph *  mg_zx 
)

Definition at line 150 of file CHeTVisualizer.cc.

◆ RenderTrackZX() [2/3]

void CHeT::Vis::RenderTrackZX ( const VisHelixTrack tr,
TMultiGraph *  mg_zx 
)

Definition at line 132 of file CHeTVisualizer.cc.

◆ RenderTrackZX() [3/3]

void CHeT::Vis::RenderTrackZX ( const VisLineTrack tr,
TMultiGraph *  mg_zx 
)

Definition at line 107 of file CHeTVisualizer.cc.

◆ RenderTrackZY() [1/3]

void CHeT::Vis::RenderTrackZY ( const VisGenericTrack tr,
TMultiGraph *  mg_zy 
)

Definition at line 207 of file CHeTVisualizer.cc.

◆ RenderTrackZY() [2/3]

void CHeT::Vis::RenderTrackZY ( const VisHelixTrack tr,
TMultiGraph *  mg_zy 
)

Definition at line 189 of file CHeTVisualizer.cc.

◆ RenderTrackZY() [3/3]

void CHeT::Vis::RenderTrackZY ( const VisLineTrack tr,
TMultiGraph *  mg_zy 
)

Definition at line 164 of file CHeTVisualizer.cc.