diff --git a/McZapkie/Mover.cpp b/McZapkie/Mover.cpp index fa1c367a..9b1be6fd 100644 --- a/McZapkie/Mover.cpp +++ b/McZapkie/Mover.cpp @@ -286,7 +286,7 @@ TMoverParameters::TMoverParameters(double VelInitial, std::string TypeNameInit, { int b, k; WriteLog( - "----------------------------------------------------------------------------------------"); + "------------------------------------------------------"); WriteLog("init default physic values for " + NameInit + ", [" + TypeNameInit + "], [" + LoadTypeInitial + "]"); Dim = TDimension(); @@ -530,8 +530,9 @@ TMoverParameters::TMoverParameters(double VelInitial, std::string TypeNameInit, fBrakeCtrlPos = BrakeCtrlPos; BrakeCtrlPosR = 0.0; BrakeCtrlPos2 = 0.0; - LocalBrakePos = 0.0; + LocalBrakePos = 0; LocalBrakePosA = 0.0; + ManualBrakePos = 0; BrakeDelays = 0; BrakeOpModeFlag = 0; BrakeOpModes = 0; @@ -1705,7 +1706,6 @@ double TMoverParameters::FastComputeMovement(double dt, const TTrackShape &Shape CollisionDetect(b, dt); // zmienia niejawnie AccS, V !!! } // liczone dL, predkosc i przyspieszenie // QQQ - if (Power > 1.0) // w rozrządczym nie (jest błąd w FIZ!) UpdatePantVolume(dt); // Ra 2014-07: obsługa zbiornika rozrządu oraz pantografów if (EngineType == WheelsDriven) @@ -3924,7 +3924,8 @@ double DirF(int CouplerN) double TMoverParameters::CouplerForce(int CouplerN, double dt) { // wyliczenie siły na sprzęgu - double tempdist, newdist, distDelta, CF, dV, absdV, Fmax, BetaAvg = 0; + double tempdist = 0, newdist = 0, distDelta = 0, CF = 0, dV = 0, absdV = 0, Fmax = 0; + double BetaAvg = 0; int CNext = 0; const double MaxDist = 405.0; // ustawione + 5 m, bo skanujemy do 400 m const double MinDist = 0.5; // ustawione +.5 m, zeby nie rozlaczac przy malych odleglosciach @@ -4700,7 +4701,7 @@ double TMoverParameters::TractionForce(double dt) // ************************************************************************************************* double TMoverParameters::ComputeRotatingWheel(double WForce, double dt, double n) { - double newn, eps = 0; + double newn = 0, eps = 0; if ((n == 0) && (WForce * Sign(V) < 0)) newn = 0; else @@ -4952,7 +4953,8 @@ bool TMoverParameters::AutoRelaySwitch(bool State) bool TMoverParameters::AutoRelayCheck(void) { bool OK = false; // b:int; - bool ARFASI, ARFASI2 = false; // sprawdzenie wszystkich warunkow (AutoRelayFlag, AutoSwitch, ImGetFC(N, Vel); } @@ -380,7 +379,6 @@ double TBrake::GetBCF() bool TBrake::SetBDF(int nBDF) { - bool result; if (((nBDF & BrakeDelays) == nBDF) && (nBDF != BrakeDelayFlag)) { BrakeDelayFlag = nBDF; diff --git a/mtable.cpp b/mtable.cpp index bef6c729..b5ce2492 100644 --- a/mtable.cpp +++ b/mtable.cpp @@ -169,6 +169,9 @@ void TTrainParameters::NewName(std::string NewTrainName) t->WaitTime = 0; } TTVmax = 100; /*wykasowac*/ + BrakeRatio = 0; + LocSeries = ""; + LocLoad = 0; } void TTrainParameters::UpdateVelocity(int StationCount, double vActual) @@ -526,6 +529,7 @@ TMTableTime::TMTableTime(int InitH, int InitM, int InitSRH, int InitSRM, int Ini srm = InitSRM; ssh = InitSSH; ssm = InitSSM; + mr = 0.0; } bool TTrainParameters::DirectionChange() diff --git a/mtable.h b/mtable.h index 889a7db8..a6e4dec8 100644 --- a/mtable.h +++ b/mtable.h @@ -39,6 +39,15 @@ namespace Mtable int Dm; // godz. i min. odjazdu double tm; // czas jazdy do tej stacji w min. (z kolumny) int WaitTime; // czas postoju (liczony plus 6 sekund) + TMTableLine() + { + km = 0; + vmax = -1; + StationName = "nowhere", StationWare = ""; + TrackNo = 1; + Ah, Am, Dh, Dm = -1; + WaitTime, tm = 0; + } }; typedef TMTableLine TMTable[MaxTTableSize + 1];