mirror of
https://github.com/MaSzyna-EU07/maszyna.git
synced 2026-07-23 16:49:18 +02:00
Add logic for defining max analog tacho display speed
MaxTachoSpeed in Cntrl. section in fiz
This commit is contained in:
@@ -1191,6 +1191,7 @@ public:
|
|||||||
int Lights[2][17]; // pozycje świateł, przód - tył, 1 .. 16
|
int Lights[2][17]; // pozycje świateł, przód - tył, 1 .. 16
|
||||||
int ScndInMain{ 0 }; /*zaleznosc bocznika od nastawnika*/
|
int ScndInMain{ 0 }; /*zaleznosc bocznika od nastawnika*/
|
||||||
bool MBrake = false; /*Czy jest hamulec reczny*/
|
bool MBrake = false; /*Czy jest hamulec reczny*/
|
||||||
|
double maxTachoSpeed = 0.0; // maksymalna predkosc na tarczce predkosciomierza analogowego
|
||||||
double StopBrakeDecc = 0.0;
|
double StopBrakeDecc = 0.0;
|
||||||
bool ReleaseParkingBySpringBrake { false };
|
bool ReleaseParkingBySpringBrake { false };
|
||||||
bool ReleaseParkingBySpringBrakeWhenDoorIsOpen{ false };
|
bool ReleaseParkingBySpringBrakeWhenDoorIsOpen{ false };
|
||||||
|
|||||||
@@ -10540,6 +10540,10 @@ void TMoverParameters::LoadFIZ_Cntrl( std::string const &line ) {
|
|||||||
}
|
}
|
||||||
// mbrake
|
// mbrake
|
||||||
extract_value( MBrake, "ManualBrake", line, "" );
|
extract_value( MBrake, "ManualBrake", line, "" );
|
||||||
|
|
||||||
|
// maksymalna predkosc dostepna na tarczce predkosciomierza
|
||||||
|
extract_value(maxTachoSpeed, "MaxTachoSpeed", line, "");
|
||||||
|
|
||||||
// dynamicbrake
|
// dynamicbrake
|
||||||
{
|
{
|
||||||
std::map<std::string, int> dynamicbrakes{
|
std::map<std::string, int> dynamicbrakes{
|
||||||
|
|||||||
@@ -6913,7 +6913,13 @@ bool TTrain::Update( double const Deltatime )
|
|||||||
|
|
||||||
// McZapkie: predkosc wyswietlana na tachometrze brana jest z obrotow kol
|
// McZapkie: predkosc wyswietlana na tachometrze brana jest z obrotow kol
|
||||||
auto const maxtacho { 3.0 };
|
auto const maxtacho { 3.0 };
|
||||||
fTachoVelocity = static_cast<float>( std::min( std::abs(11.31 * mvControlled->WheelDiameter * mvControlled->nrot), mvControlled->Vmax * 1.05) );
|
|
||||||
|
double maxSpeed = mvControlled->Vmax * 1.05; // zachowanie starej logiki jak nie ma definicji max tarczki
|
||||||
|
if (mvOccupied->maxTachoSpeed != 0)
|
||||||
|
{
|
||||||
|
maxSpeed = mvOccupied->maxTachoSpeed;
|
||||||
|
}
|
||||||
|
fTachoVelocity = static_cast<float>(std::min(std::abs(11.31 * mvControlled->WheelDiameter * mvControlled->nrot), maxSpeed));
|
||||||
{ // skacze osobna zmienna
|
{ // skacze osobna zmienna
|
||||||
float ff = simulation::Time.data().wSecond; // skacze co sekunde - pol sekundy
|
float ff = simulation::Time.data().wSecond; // skacze co sekunde - pol sekundy
|
||||||
// pomiar, pol sekundy ustawienie
|
// pomiar, pol sekundy ustawienie
|
||||||
|
|||||||
Reference in New Issue
Block a user