18#include <nlohmann/json.hpp>
28REveTrackProjected::~REveTrackProjected()
134 if (
fSize == 0)
return;
156 std::vector<REveVector>
vvec;
236 printf(
"seg %d size %d start %d ::(%f, %f, %f) (%f, %f, %f)\n",
288 Warning(
"SetDepthLocal",
"This function only exists to fulfill an abstract interface.");
304 for (
auto &
c:
el->RefChildren()) {
size_t size(const MatrixT &matrix)
retrieve the size of a square matrix
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
void Warning(const char *location, const char *msgfmt,...)
Use this function in warning situations.
winID h TVirtualViewer3D TVirtualGLPainter p
const char * GetCName() const
std::unique_ptr< REveRenderData > fRenderData
Externally assigned and controlled user data.
void ReduceSegmentLengths(Float_t max)
Make sure that no segment is longer than max.
virtual void ClonePoints(const REvePointSet &e)
Clone points and all point-related information from point-set 'e'.
REveVector & RefPoint(int n)
std::vector< REveVector > fPoints
int SetNextPoint(float x, float y, float z)
void Reset(Int_t n_points=0)
Drop all data and set-up the data structures to recive new data.
virtual void SetProjection(REveProjectionManager *mng, REveProjectable *model)
Sets projection manager and reference in the projectable object.
void SetDepthCommon(Float_t d, REveElement *el, Float_t *bbox)
Utility function to update the z-values of the bounding-box.
REveProjectable * fProjectable
REveProjectionManager * fManager
REveProjectionManager Manager class for steering of projections and managing projected objects.
REveProjection * GetProjection()
REveProjection Base for specific classes that implement non-linear projections.
void SetDepthLocal(Float_t d) override
This is not needed for functionality as SetDepth(Float_t d) is overriden – but SetDepthLocal() is abs...
void SetProjection(REveProjectionManager *proj, REveProjectable *model) override
This is virtual method from base-class REveProjected.
void SetDepth(Float_t d) override
Set depth of all children inheriting from REveTrackProjected.
REveTrackListProjected()
Default constructor.
REveTrackList A list of tracks supporting change of common attributes and selection based on track pa...
void CopyVizParams(const REveElement *el) override
Copy visualization parameters from element el.
void SetPropagator(REveTrackPropagator *prop)
Set default propagator for tracks.
REveTrackProjected Projected copy of a REveTrack.
void SecSelected(REveTrack *) override
Virtual method from from base-class REveTrack.
void SetDepthLocal(Float_t d) override
Set depth (z-coordinate) of the projected points.
void BuildRenderData() override
Creates client rendering info.
Int_t WriteCoreJson(nlohmann::json &cj, Int_t rnr_offset) override
Creates client representation.
void UpdateProjection() override
Virtual method from base-class REveProjected.
Int_t GetBreakPointIdx(Int_t start)
Find index of the last point that lies within the same segment of projected space.
void MakeTrack(Bool_t recurse=kTRUE) override
Calculate the points of the track for drawing.
std::vector< UInt_t > fBreakPoints
void SetProjection(REveProjectionManager *mng, REveProjectable *model) override
This is virtual method from base-class REveProjected.
void PrintLineSegments()
Print line segments info.
UChar_t GetProjTrackBreaking() const
Double_t GetDelta() const
REveTrack Track with given vertex, momentum and optional referece-points (path-marks) along its path.
Int_t WriteCoreJson(nlohmann::json &cj, Int_t rnr_offset) override
Fill core part of JSON representation.
virtual void SecSelected(REveTrack *)
Emits "SecSelected(REveTrack*)" signal.
REveTrackPropagator * fPropagator
Last path-mark index tried in track-propagation.
virtual void SetTrackParams(const REveTrack &t)
Copy track parameters from t.
virtual void MakeTrack(Bool_t recurse=kTRUE)
Calculate track representation based on track data and current settings of the propagator.
Bool_t GetLockPoints() const
virtual void SetPathMarks(const REveTrack &t)
Copy path-marks from t.
void BuildRenderData() override
Crates 3D point array for rendering.
void SetLockPoints(Bool_t l)
void CopyVizParams(const REveElement *el) override
Copy visualization parameters from element el.
void MultiplyIP(TVector3 &v, Double_t w=1) const
Multiply vector in-place.
void Set(const Float_t *v)
T1 Sign(T1 a, T2 b)
Returns a value with the magnitude of a and the sign of b.