31#include "trax/Event.h"
51 static dclspc std::shared_ptr<WheelFrame>
Make(
Scene& scene, std::shared_ptr<Gestalt> pGestalt =
nullptr ) noexcept;
133 virtual WheelFrame& GetWheelFrame()
const noexcept = 0;
Value< Dimension< 0, 0, 0 > > One
Dimensionless value.
Definition DimensionedValues.h:319
Value< Dimension< 1, 0, 0 > > Length
Length.
Definition DimensionedValues.h:324
The namespace provides classes and methods for spatial computations.
Definition Box.h:32
Namespace of all the trax track libraries classes and methods.
Definition Collection.h:17
A Frame ("TNBFrame") describes a location in 3d space and an orientation using a right handed coordin...
Definition Frame.h:52
A Bogie is a RailRunner that can be attached to another Bogie by a swivel and can be coupled to anoth...
Definition Bogie.h:67
A jack a plug can get connected with.
Definition Jack.h:83
A physical simulation scene for running a simulation and creating physical objects in the scene.
Definition Scene.h:72
The maximum forces and spatial deviations of a WheelFrame used by physics calculations.
Definition TrackJointLimits.h:38
Function that defines the characteristic behaviour of a motor to change its maximum available trackti...
Definition TractionForceCharacteristic.h:59
A WheelFrame is a Bogie that hosts Wheelsets and a TrackJoint and therefore can directly get attached...
Definition WheelFrame.h:45
virtual Jack & JackOnRail() noexcept=0
Gets a Jack that pulses its Plug if the WheelFrame gets railed on a track.
virtual const Wheelset & GetWheelset(int idx) const =0
Gets the Wheelset denoted by idx.
virtual int CntWheelsets() const noexcept=0
Gets the number of Wheelsets attached directly to this WheelFrame.
virtual void DetachAllWheelsets()=0
Removes all the Wheelsets.
static dclspc std::shared_ptr< WheelFrame > Make(Scene &scene, std::shared_ptr< Gestalt > pGestalt=nullptr) noexcept
Makes a WheelFrame object.
virtual void Limits(const TrackJointLimits &wfl)=0
Sets all the limits for this wheelframe.
virtual Jack & JackOnStartTilting() noexcept=0
Gets a Jack that pulses its Plug if the WheelFrame starts tilting.
virtual void EnableDerailing(bool bEnable=true) noexcept=0
A WheelFrame might derail during the simulation, if the stress of forces gets big enough....
virtual Jack & JackOnBrakeInactive() noexcept=0
Gets a Jack that pulses its Plug if the WheelFrame's brake gets deactivated.
virtual Jack & JackOnTrackTransition() noexcept=0
Gets a Jack that pulses its Plug if the WheelFrame passes the connection between two tracks.
virtual Jack & JackOnMotorActive() noexcept=0
Gets a Jack that pulses its Plug if the WheelFrame's motor gets activated in order to reach the targe...
virtual void Anchor(const spat::Frame< Length, One > &anchor) noexcept=0
virtual spat::Frame< Length, One > UnflippedAnchor() const noexcept=0
virtual Jack & JackOnRollingStart() noexcept=0
Gets a Jack that pulses its Plug if the WheelFrame starts to roll.
virtual Jack & JackOnRollingStop() noexcept=0
Gets a Jack that pulses its Plug if the WheelFrame stops to roll.
virtual int Attach(const Wheelset &ws)=0
Attaches a Wheelset to this WheelFrame.
virtual Jack & JackOnStopTilting() noexcept=0
Gets a Jack that pulses its Plug if the WheelFrame starts tilting.
virtual Jack & JackOnBrakeActive() noexcept=0
Gets a Jack that pulses its Plug if the WheelFrame's brake gets activated in order to reach the targe...
virtual std::shared_ptr< const TractionForceCharacteristic > SetTractionForceCharacteristic(std::shared_ptr< const TractionForceCharacteristic > pCharacteristic)=0
applies a TractionForceCharacteristic to the thrust calculations.
virtual Jack & JackOnDerail() noexcept=0
Gets a Jack that pulses its Plug if the WheelFrame derails.
virtual Jack & JackOnMotorInactive() noexcept=0
Gets a Jack that pulses its Plug if the WheelFrame's motor gets deactivated.
virtual std::shared_ptr< const TractionForceCharacteristic > GetTractionForceCharacteristic() const =0
virtual bool IsDerailingEnabled() const noexcept=0
Describing data of a wheelset.
Definition Wheelset.h:40