|
|
|
@ -260,9 +260,13 @@ public class BoatInRace extends Boat {
|
|
|
|
|
|
|
|
|
|
|
|
public boolean addTrackPoint(GPSCoordinate coordinate) {
|
|
|
|
public boolean addTrackPoint(GPSCoordinate coordinate) {
|
|
|
|
Boolean added = System.currentTimeMillis() >= nextValidTime;
|
|
|
|
Boolean added = System.currentTimeMillis() >= nextValidTime;
|
|
|
|
|
|
|
|
long currentTime = System.currentTimeMillis();
|
|
|
|
if (added && this.started) {
|
|
|
|
if (added && this.started) {
|
|
|
|
nextValidTime = System.currentTimeMillis() + TRACK_POINT_TIME_INTERVAL;
|
|
|
|
nextValidTime = currentTime + TRACK_POINT_TIME_INTERVAL;
|
|
|
|
track.add(new TrackPoint(coordinate, System.currentTimeMillis(), TRACK_POINT_LIMIT*TRACK_POINT_TIME_INTERVAL));
|
|
|
|
track.add(new TrackPoint(coordinate, currentTime, TRACK_POINT_LIMIT * TRACK_POINT_TIME_INTERVAL));
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
if (track.size() > 0 && track.element().getTimeAdded() + TRACK_POINT_LIMIT * TRACK_POINT_TIME_INTERVAL <= currentTime) {
|
|
|
|
|
|
|
|
track.remove();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return added;
|
|
|
|
return added;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|