16
0
mirror of https://github.com/MaSzyna-EU07/maszyna.git synced 2026-07-22 00:09:18 +02:00

build 171224. support for radio-transmitted sound events, configurable wheel flat sound

This commit is contained in:
tmj-fstate
2017-12-25 16:01:32 +01:00
parent 1b5e6aafd1
commit c780f3efbf
11 changed files with 166 additions and 257 deletions

View File

@@ -3881,31 +3881,22 @@ double TMoverParameters::BrakeForceP(double press, double velocity)
// Q: 20160713
// oblicza siłę na styku koła i szyny
// *************************************************************************************************
double TMoverParameters::BrakeForce(const TTrackParam &Track)
{
double K, Fb, NBrakeAxles, sm = 0;
// const OerlikonForceFactor=1.5;
double TMoverParameters::BrakeForce( TTrackParam const &Track ) {
if (NPoweredAxles > 0)
NBrakeAxles = NPoweredAxles;
else
NBrakeAxles = NAxles;
switch (LocalBrake)
{
case NoBrake:
K = 0;
break;
case ManualBrake:
K = MaxBrakeForce * ManualBrakeRatio();
break;
case HydraulicBrake:
K = MaxBrakeForce * LocalBrakeRatio();
break;
case PneumaticBrake:
if (Compressor < MaxBrakePress[3])
K = MaxBrakeForce * LocalBrakeRatio() / 2.0;
else
K = 0;
double K{ 0 }, Fb{ 0 }, sm{ 0 };
switch( LocalBrake ) {
case ManualBrake: {
K = MaxBrakeForce * ManualBrakeRatio();
break;
}
case HydraulicBrake: {
K = MaxBrakeForce * LocalBrakeRatio();
break;
}
default: {
break;
}
}
if (MBrake == true)
@@ -3913,8 +3904,6 @@ double TMoverParameters::BrakeForce(const TTrackParam &Track)
K = MaxBrakeForce * ManualBrakeRatio();
}
// 0.03
u = ((BrakePress * P2FTrans) - BrakeCylSpring) * BrakeCylMult[0] - BrakeSlckAdj;
if (u * BrakeRigEff > Ntotal) // histereza na nacisku klockow
Ntotal = u * BrakeRigEff;
@@ -3925,6 +3914,11 @@ double TMoverParameters::BrakeForce(const TTrackParam &Track)
Ntotal = u * (2.0 - BrakeRigEff);
}
auto const NBrakeAxles { (
NPoweredAxles > 0 ?
NPoweredAxles :
NAxles ) };
if (NBrakeAxles * NBpA > 0)
{
if (Ntotal > 0) // nie luz