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))));
        }