9#include <TPolyLine3D.h>
10#include <TPolyMarker3D.h>
27 void SetArea(
const double xmin,
const double ymin,
const double zmin,
28 const double xmax,
const double ymax,
const double zmax);
33 void Plot(
const bool twod =
false,
const bool axis =
true);
42 const double y0,
const double z0);
44 const double y0,
const double z0);
46 const double y0,
const double z0);
47 void NewPhotonTrack(
const double x0,
const double y0,
const double z0,
48 const double x1,
const double y1,
const double z1);
50 const double y0,
const double z0);
53 const double x,
const double y,
const double z);
56 void SetTrackPoint(
const unsigned int iL,
const unsigned int iP,
57 const double x,
const double y,
const double z);
58 void AddTrackPoint(
const unsigned int iL,
const double x,
const double y,
75 double m_xMin = -1., m_yMin = -1., m_zMin = -1.;
76 double m_xMax = 1., m_yMax = 1., m_zMax = 1.;
79 std::unique_ptr<TView> m_view;
82 std::vector<Marker> points;
85 std::vector<DriftLine> m_driftLines;
86 std::vector<TPolyLine3D> m_driftLinePlots;
88 std::vector<std::vector<Marker> > m_tracks;
89 std::vector<TPolyMarker3D> m_trackPlots;
90 std::vector<TPolyLine3D> m_trackLinePlots;
92 std::vector<Marker> m_excMarkers;
93 std::unique_ptr<TPolyMarker3D> m_excPlot;
94 std::vector<Marker> m_ionMarkers;
95 std::unique_ptr<TPolyMarker3D> m_ionPlot;
96 std::vector<Marker> m_attMarkers;
97 std::unique_ptr<TPolyMarker3D> m_attPlot;
99 double m_markerSizeCluster = 1.;
100 double m_markerSizeCollision = 1.;
102 void Plot2d(
const bool axis);
103 void Plot3d(
const bool axis);
Base class for visualization classes.
Visualize drift lines and tracks.
void NewElectronDriftLine(const unsigned int np, int &id, const double x0, const double y0, const double z0)
void AddExcitationMarker(const double x, const double y, const double z)
void AddIonisationMarker(const double x, const double y, const double z)
void Plot(const bool twod=false, const bool axis=true)
Draw the drift lines.
void SetDriftLinePoint(const unsigned int iL, const unsigned int iP, const double x, const double y, const double z)
void SetArea(const double xmin, const double ymin, const double zmin, const double xmax, const double ymax, const double zmax)
Set the region to be plotted.
void AddAttachmentMarker(const double x, const double y, const double z)
void AddTrackPoint(const unsigned int iL, const double x, const double y, const double z)
void SetClusterMarkerSize(const double size)
Set the size of the cluster markers (see TAttMarker).
void NewChargedParticleTrack(const unsigned int np, int &id, const double x0, const double y0, const double z0)
void AddDriftLinePoint(const unsigned int iL, const double x, const double y, const double z)
void SetTrackPoint(const unsigned int iL, const unsigned int iP, const double x, const double y, const double z)
void Clear()
Delete existing drift lines, tracks and markers.
void NewPhotonTrack(const double x0, const double y0, const double z0, const double x1, const double y1, const double z1)
void NewHoleDriftLine(const unsigned int np, int &id, const double x0, const double y0, const double z0)
void NewIonDriftLine(const unsigned int np, int &id, const double x0, const double y0, const double z0)
void SetCollisionMarkerSize(const double size)
Set the size of the collision markers (see TAttMarker).
Draw the mesh of a field-map component.