tunin BrakeProcessor
This commit is contained in:
@@ -903,12 +903,12 @@ public class Train extends BaseClass implements Comparable<Train> {
|
||||
@Override
|
||||
public void locked(Route newRoute) {
|
||||
LOG.debug("Locked route {} for {}",newRoute,Train.this);
|
||||
route = newRoute;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void prepared(Route newRoute) {
|
||||
LOG.debug("Prepared route {} for {}",newRoute,Train.this);
|
||||
route = newRoute;
|
||||
set((PathFinder)null);
|
||||
route.start(Train.this);
|
||||
}
|
||||
|
||||
@@ -43,10 +43,13 @@ public class BrakeProcessor extends BaseClass implements Runnable {
|
||||
int step = brakeTime;
|
||||
for (int i = 0; i < 15; i++) {
|
||||
long calculatedDistance = calculate(brakeTime, startSpeed);
|
||||
step /= 2;
|
||||
if (step < 1) step = 1;
|
||||
if (measuredDistance > calculatedDistance) brakeTime += step;
|
||||
if (measuredDistance > calculatedDistance) {
|
||||
brakeTime += brakeTime;
|
||||
step = brakeTime/3;
|
||||
}
|
||||
if (measuredDistance < calculatedDistance) {
|
||||
step /= 2;
|
||||
if (step < 1) step = 1;
|
||||
brakeTime -= step;
|
||||
}
|
||||
LOG.debug("new brake time: {}, calculated distance: {}", brakeTime, calculatedDistance);
|
||||
|
||||
Reference in New Issue
Block a user