public void SmoothPursuitPositiveQuadrant() { var results = new List<PanTiltTime>(); var sut = GetSystemUnderTest(); var resolution = 100; var tickEveryMs = Convert.ToInt32(sut.TimeSpan.TotalMilliseconds/resolution); var time = TimeSpan.FromSeconds(0); var tick = TimeSpan.FromMilliseconds(tickEveryMs); for (var timeMs = 0; timeMs <= sut.TimeSpan.TotalMilliseconds; timeMs += tickEveryMs) { var result = new PanTiltTime(); time += tick; _mockStopwatch.Set(time); result.TimeSpan = time; result.Setting = sut.GetNextPosition(); results.Add(result); } var panPoints = results.ConvertAll(p => p.ToCsv(PanTiltAxis.Horizontal)); var tiltPoints = results.ConvertAll(p => p.ToCsv(PanTiltAxis.Vertical)); var csvPan = string.Join("\r\n", panPoints); var csvTilt = string.Join("\r\n", tiltPoints); Console.WriteLine($"Pan:\r\n{csvPan}"); Console.WriteLine($"Tilt:\r\n{csvTilt}"); }
public void SmoothPursuitPositiveQuadrant() { var results = new List <PanTiltTime>(); var sut = GetSystemUnderTest(); var resolution = 100; var tickEveryMs = Convert.ToInt32(sut.TimeSpan.TotalMilliseconds / resolution); var time = TimeSpan.FromSeconds(0); var tick = TimeSpan.FromMilliseconds(tickEveryMs); for (var timeMs = 0; timeMs <= sut.TimeSpan.TotalMilliseconds; timeMs += tickEveryMs) { var result = new PanTiltTime(); time += tick; _mockStopwatch.Set(time); result.TimeSpan = time; result.Setting = sut.GetNextPosition(); results.Add(result); } var panPoints = results.ConvertAll(p => p.ToCsv(PanTiltAxis.Horizontal)); var tiltPoints = results.ConvertAll(p => p.ToCsv(PanTiltAxis.Vertical)); var csvPan = string.Join("\r\n", panPoints); var csvTilt = string.Join("\r\n", tiltPoints); Console.WriteLine($"Pan:\r\n{csvPan}"); Console.WriteLine($"Tilt:\r\n{csvTilt}"); }