public double CalculateCurrentCourse_TestCases(int Vector1x, int Vector1y, int Vector2x, int Vector2y) { var vector1 = new Vector2(Vector1x, Vector1y); var vector2 = new Vector2(Vector2x, Vector2y); return(Math.Round(_uut.CalculateCurrentCourse(vector1, vector2), 3)); }
public void AddDataPoint(FTDataPoint new_dp) { _tag = new_dp.Tag; _currentPosition.X = new_dp.X; _currentPosition.Y = new_dp.Y; _currentAltitude = new_dp.Altitude; _lastUpdated = new_dp.TimeStamp; FTDataPoint previous_dp = _trackDataLog.Count != 0 ? _trackDataLog.First() : null; _trackDataLog.AddFirst(new_dp); Vector2 previous_position = (previous_dp != null) ? new Vector2(previous_dp.X, previous_dp.Y) : Vector2.Zero; Vector2 current_position = new Vector2(new_dp.X, new_dp.Y); _currentVelocity = _velocityCalculator.CalculateCurrentVelocity( previous_position, previous_dp?.TimeStamp, current_position, new_dp.TimeStamp ); _currentCourse = _courseCalculator.CalculateCurrentCourse(previous_position, current_position); }