public static void ToPixelWithSquareWindow()
 {
     var screen = new ScreenSpace(new Size(100, 100));
     Assert.AreEqual(new Point(100, 100), screen.ToPixelSpace(Point.One));
     Assert.AreEqual(Point.Zero, screen.ToPixelSpace(Point.Zero));
     Assert.AreEqual(new Point(50, 50), screen.ToPixelSpace(Point.Half));
 }
 public static void ToPixelWithPortraitWindow()
 {
     var screen = new ScreenSpace(new Size(75, 100));
     Assert.AreEqual(new Point(75, 100), screen.ToPixelSpace(new Point(0.875f, 1f)));
     Assert.AreEqual(Point.Zero, screen.ToPixelSpace(new Point(0.125f, 0)));
     Assert.AreEqual(new Point(37.5f, 50), screen.ToPixelSpace(Point.Half));
     Assert.AreEqual(new Size(10, 20), screen.ToPixelSpace(new Size(0.1f, 0.2f)));
 }
        public static void ToPixelWithSquareWindow()
        {
            var screen = new ScreenSpace(new Size(100, 100));

            Assert.AreEqual(new Point(100, 100), screen.ToPixelSpace(Point.One));
            Assert.AreEqual(Point.Zero, screen.ToPixelSpace(Point.Zero));
            Assert.AreEqual(new Point(50, 50), screen.ToPixelSpace(Point.Half));
        }
        public static void ToPixelWithPortraitWindow()
        {
            var screen = new ScreenSpace(new Size(75, 100));

            Assert.AreEqual(new Point(75, 100), screen.ToPixelSpace(new Point(0.875f, 1f)));
            Assert.AreEqual(Point.Zero, screen.ToPixelSpace(new Point(0.125f, 0)));
            Assert.AreEqual(new Point(37.5f, 50), screen.ToPixelSpace(Point.Half));
            Assert.AreEqual(new Size(10, 20), screen.ToPixelSpace(new Size(0.1f, 0.2f)));
        }
 public static void ToPixelWithNonSquareWindow()
 {
     var screen = new ScreenSpace(new Size(100, 75));
     Assert.AreEqual(new Point(100, 75), screen.ToPixelSpace(new Point(1f, 0.875f)));
     Assert.AreEqual(Point.Zero, screen.ToPixelSpace(new Point(0, 0.125f)));
     Assert.AreEqual(new Point(50, 37.5f), screen.ToPixelSpace(Point.Half));
     Assert.AreEqual(new Size(10, 20), screen.ToPixelSpace(new Size(0.1f, 0.2f)));
     Assert.AreEqual(new Rectangle(20, 7.5f, 60, 60),
          screen.ToPixelSpace(new Rectangle(0.2f, 0.2f, 0.6f, 0.6f)));
 }
        public static void ToPixelWithNonSquareWindow()
        {
            var screen = new ScreenSpace(new Size(100, 75));

            Assert.AreEqual(new Point(100, 75), screen.ToPixelSpace(new Point(1f, 0.875f)));
            Assert.AreEqual(Point.Zero, screen.ToPixelSpace(new Point(0, 0.125f)));
            Assert.AreEqual(new Point(50, 37.5f), screen.ToPixelSpace(Point.Half));
            Assert.AreEqual(new Size(10, 20), screen.ToPixelSpace(new Size(0.1f, 0.2f)));
            Assert.AreEqual(new Rectangle(20, 7.5f, 60, 60),
                            screen.ToPixelSpace(new Rectangle(0.2f, 0.2f, 0.6f, 0.6f)));
        }
Exemple #7
0
        private void AddIndicesAndVerticesForTrackPart(Batch2D batch, int index)
        {
            batch.AddIndices();
            float uvStep = (index % UVLength) / (float)UVLength;

            batch.verticesUV[batch.verticesIndex++] = new VertexPosition2DUV(
                screen.ToPixelSpace(outerBounds[index]), new Vector2D(0, uvStep));
            batch.verticesUV[batch.verticesIndex++] = new VertexPosition2DUV(
                screen.ToPixelSpace(innerBounds[index]), new Vector2D(1, uvStep));
            uvStep = ((index % UVLength) + 1) / (float)UVLength;
            batch.verticesUV[batch.verticesIndex++] = new VertexPosition2DUV(
                screen.ToPixelSpace(innerBounds[(index + 1) % innerBounds.Length]), new Vector2D(1, uvStep));
            batch.verticesUV[batch.verticesIndex++] = new VertexPosition2DUV(
                screen.ToPixelSpace(outerBounds[(index + 1) % outerBounds.Length]), new Vector2D(0, uvStep));
        }