A twist that rotates the frame arount T in a way that B is nearest a certain direction.
More...
|
| virtual void | Attractor (const spat::Vector< One > &attractor)=0 |
| | Set the direction for the twist.
|
| virtual const spat::Vector< One > & | Attractor () const noexcept=0 |
| virtual const spat::Vector< One > & | Attractor (bool bGlobal) const noexcept=0 |
| virtual std::shared_ptr< const struct Curve > | GetCurve () const noexcept=0 |
|
virtual const Data & | GetData () const noexcept=0 |
| virtual void | Create (const Data &data)=0 |
| | Creates the twist from the data.
|
|
virtual const char * | TypeName () const noexcept=0 |
| | Name for the object type that implements this interface.
|
|
virtual TwistType | GetTwistType () const noexcept=0 |
|
virtual std::unique_ptr< RoadwayTwist > | Clone () const =0 |
| | Make a clone from this object.
|
| virtual bool | IsValid () const noexcept=0 |
| virtual Angle | Twist (Length s) const =0 |
| virtual AnglePerLength | D1 (Length s) const =0 |
| virtual bool | ZeroFlip (bool bActive) noexcept=0 |
|
virtual void | Flip () noexcept=0 |
| | Flips the effect of the twist along the track. After calling this function, the Twist() and D1() methods will give pi - Twist(Track::GetLength() - s) and -D1(Track::GetLength() - s). Calling Flip() a second time will nullify the effect.
|
| virtual void | Mirror () noexcept=0 |
| | Multiplies all twist angle by -1.
|
| virtual bool | Offset (Angle offset) noexcept=0 |
| | Adds a global offset angle to the Twist.
|
| virtual bool | IsDynamic () const noexcept=0 |
| | A twist is dynamic if it relates to geometry global to the track.
|
| virtual bool | IsDirectionalConstant () const noexcept=0 |
| | Find wether the twist is directional only offsetted by a constant.
|
| virtual bool | IsConstant () const noexcept=0 |
|
virtual void | Freeze (bool bFreeze=true) noexcept=0 |
| | Freezes the twist, so that dynamic twists like DirectionalTwist don't update anymore.
|
| virtual bool | IsFrozen () const noexcept=0 |
| virtual bool | IsNull () const noexcept=0 |
| virtual bool | Equals (const RoadwayTwist &toTwist, Angle epsilon_angle=epsilon__angle) const noexcept=0 |
| | Comparison.
|
| virtual void | OnAttach (const TrackBuilder &track) noexcept=0 |
| | Called on attachment to a track.
|
|
virtual void | OnDetach () noexcept=0 |
| | Called on detachment from a track.
|
| virtual Angle | DoTwist (Length) const =0 |
| virtual AnglePerLength | DoD1 (Length) const =0 |
|
| RoadwayTwist (RoadwayTwist &&)=delete |
|
RoadwayTwist & | operator= (const RoadwayTwist &)=delete |
|
RoadwayTwist & | operator= (RoadwayTwist &&)=delete |
A twist that rotates the frame arount T in a way that B is nearest a certain direction.
The attractor is understood to be in the global or TrackSystem relative frame (if any). If the twist gets frozen, the attractor from then on will stay local to the track.