public void ToPixelSpace() { var window = new TestResolver().Resolve<Window>(); var quadraticSize = new Size(window.ViewportPixelSize.Width); var camera = new Camera2DControlledQuadraticScreenSpace(window) { LookAt = new Point(-0.5f, 0.6f), Zoom = 2.0f }; Assert.AreEqual(quadraticSize.Width * 1.5f, camera.ToPixelSpace(Point.Zero).X); Assert.AreEqual(new Point(2560, 115.2f), camera.ToPixelSpace(Point.Half)); Assert.AreEqual(new Point(3584, 1139.2f), camera.ToPixelSpace(Point.One)); Assert.AreEqual(quadraticSize, camera.ToPixelSpace(Size.Half)); }
public void LoopingToAndFromPixelSpaceLeavesAPointUnchanged() { var window = new TestResolver().Resolve<Window>(); var camera = new Camera2DControlledQuadraticScreenSpace(window) { LookAt = new Point(-0.5f, 0.6f), Zoom = 3.0f }; Assert.AreEqual(new Point(1.2f, 3.4f), camera.ToPixelSpace(camera.FromPixelSpace(new Point(1.2f, 3.4f)))); Assert.AreEqual(new Point(1.2f, 3.4f), camera.FromPixelSpace(camera.ToPixelSpace(new Point(1.2f, 3.4f)))); }