37 static dclspc std::shared_ptr<ParallelizableTrack>
Make() noexcept;
42 bool bTrackRelative{
true };
79 virtual std::shared_ptr<TrackBuilder>
GetParallel(
int idx )
const = 0;
Home of the Track and TrackBuilder interfaces.
Value< Dimension< 1, 0, 0 > > Length
Length.
Definition DimensionedValues.h:324
constexpr Real _m(Length l) noexcept
Dimensionated Values conversion functions.
Definition DimensionedValues.h:1210
Namespace of all the trax track libraries classes and methods.
Definition Collection.h:17
Implements a 2D - vector in cartesian coordinates.
Definition Vector2D.h:46
Definition ParallelTrack.h:40
Track that can be the original to parallel tracks.
Definition ParallelTrack.h:35
virtual const Data & GetParallelData(int idx) const =0
virtual void Clear()=0
Removes all parallel tracks.
virtual std::shared_ptr< TrackBuilder > AddParallel(const spat::Vector2D< Length > &shift, bool bTrackRelative)=0
Adds a parallel to this track.
virtual int CountTracks() const =0
virtual Length OriginalParameterFrom(int idx, Length sParallelParameter) const =0
virtual void RemoveParallel(const TrackBuilder ¶llelTrack)=0
Removes the parallel track with index idx.
virtual std::shared_ptr< TrackBuilder > GetParallel(int idx) const =0
virtual Length ParallelParameterFrom(int idx, Length sOriginalParameter) const =0
static dclspc std::shared_ptr< ParallelizableTrack > Make() noexcept
Makes a ParallelizableTrack object.
virtual bool IsParallel(const TrackBuilder ¶llelTrack) const noexcept=0
virtual int ParallelIdx(const TrackBuilder ¶llelTrack) const =0
Interface for making and shaping tracks.
Definition Track.h:831