Exemplo n.º 1
0
        public void TestPatternAlignCheckCreate()
        {
            var pattern = new UVAlignCheck(Color.White, Color.Red, Color.Yellow, Color.Green, Color.Cyan);

            Assert.AreEqual(pattern.UVPatternAt(0.5, 0.5), Color.White);
            Assert.AreEqual(pattern.UVPatternAt(0.1, 0.9), Color.Red);
            Assert.AreEqual(pattern.UVPatternAt(0.9, 0.9), Color.Yellow);
            Assert.AreEqual(pattern.UVPatternAt(0.1, 0.1), Color.Green);
            Assert.AreEqual(pattern.UVPatternAt(0.9, 0.1), Color.Cyan);
        }
Exemplo n.º 2
0
        public void TestPatternCubeMapFindColors()
        {
            var left    = new UVAlignCheck(Color.Yellow, Color.Cyan, Color.Red, Color.Blue, Color.Brown);
            var front   = new UVAlignCheck(Color.Cyan, Color.Red, Color.Yellow, Color.Brown, Color.Green);
            var right   = new UVAlignCheck(Color.Red, Color.Yellow, Color.Purple, Color.Green, Color.White);
            var back    = new UVAlignCheck(Color.Green, Color.Purple, Color.Cyan, Color.White, Color.Blue);
            var up      = new UVAlignCheck(Color.Brown, Color.Cyan, Color.Purple, Color.Red, Color.Yellow);
            var down    = new UVAlignCheck(Color.Purple, Color.Brown, Color.Green, Color.Blue, Color.White);
            var pattern = new CubeMapPattern(left, front, right, back, up, down);

            // Left
            Assert.AreEqual(pattern.PatternAt(new Point(-1, 0, 0)), Color.Yellow);
            Assert.AreEqual(pattern.PatternAt(new Point(-1, 0.9, -0.9)), Color.Cyan);
            Assert.AreEqual(pattern.PatternAt(new Point(-1, 0.9, 0.9)), Color.Red);
            Assert.AreEqual(pattern.PatternAt(new Point(-1, -0.9, -0.9)), Color.Blue);
            Assert.AreEqual(pattern.PatternAt(new Point(-1, -0.9, 0.9)), Color.Brown);

            // Front
            Assert.AreEqual(pattern.PatternAt(new Point(0, 0, 1)), Color.Cyan);
            Assert.AreEqual(pattern.PatternAt(new Point(-0.9, 0.9, 1)), Color.Red);
            Assert.AreEqual(pattern.PatternAt(new Point(0.9, 0.9, 1)), Color.Yellow);
            Assert.AreEqual(pattern.PatternAt(new Point(-0.9, -0.9, 1)), Color.Brown);
            Assert.AreEqual(pattern.PatternAt(new Point(0.9, -0.9, 1)), Color.Green);

            // Right
            Assert.AreEqual(pattern.PatternAt(new Point(1, 0, 0)), Color.Red);
            Assert.AreEqual(pattern.PatternAt(new Point(1, 0.9, 0.9)), Color.Yellow);
            Assert.AreEqual(pattern.PatternAt(new Point(1, 0.9, -0.9)), Color.Purple);
            Assert.AreEqual(pattern.PatternAt(new Point(1, -0.9, 0.9)), Color.Green);
            Assert.AreEqual(pattern.PatternAt(new Point(1, -0.9, -0.9)), Color.White);

            // Back
            Assert.AreEqual(pattern.PatternAt(new Point(0, 0, -1)), Color.Green);
            Assert.AreEqual(pattern.PatternAt(new Point(0.9, 0.9, -1)), Color.Purple);
            Assert.AreEqual(pattern.PatternAt(new Point(-0.9, 0.9, -1)), Color.Cyan);
            Assert.AreEqual(pattern.PatternAt(new Point(0.9, -0.9, -1)), Color.White);
            Assert.AreEqual(pattern.PatternAt(new Point(-0.9, -0.9, -1)), Color.Blue);

            // Upper
            Assert.AreEqual(pattern.PatternAt(new Point(0, 1, 0)), Color.Brown);
            Assert.AreEqual(pattern.PatternAt(new Point(-0.9, 1, -0.9)), Color.Cyan);
            Assert.AreEqual(pattern.PatternAt(new Point(0.9, 1, -0.9)), Color.Purple);
            Assert.AreEqual(pattern.PatternAt(new Point(-0.9, 1, 0.9)), Color.Red);
            Assert.AreEqual(pattern.PatternAt(new Point(0.9, 1, 0.9)), Color.Yellow);

            // Lower
            Assert.AreEqual(pattern.PatternAt(new Point(0, -1, 0)), Color.Purple);
            Assert.AreEqual(pattern.PatternAt(new Point(-0.9, -1, 0.9)), Color.Brown);
            Assert.AreEqual(pattern.PatternAt(new Point(0.9, -1, 0.9)), Color.Green);
            Assert.AreEqual(pattern.PatternAt(new Point(-0.9, -1, -0.9)), Color.Blue);
            Assert.AreEqual(pattern.PatternAt(new Point(0.9, -1, -0.9)), Color.White);
        }
Exemplo n.º 3
0
        private static Cube MappedCube()
        {
            var left  = new UVAlignCheck(Color.Yellow, Color.Cyan, Color.Red, Color.Blue, Color.Brown);
            var front = new UVAlignCheck(Color.Cyan, Color.Red, Color.Yellow, Color.Brown, Color.Green);
            var right = new UVAlignCheck(Color.Red, Color.Yellow, Color.Purple, Color.Green, Color.White);
            var back  = new UVAlignCheck(Color.Green, Color.Purple, Color.Cyan, Color.White, Color.Blue);
            var up    = new UVAlignCheck(Color.Brown, Color.Cyan, Color.Purple, Color.Red, Color.Yellow);
            var down  = new UVAlignCheck(Color.Purple, Color.Brown, Color.Green, Color.Blue, Color.White);

            var cube = new Cube();

            cube.Material.Pattern  = new CubeMapPattern(left, front, right, back, up, down);
            cube.Material.Ambient  = 0.2;
            cube.Material.Specular = 0;
            cube.Material.Diffuse  = 0.8;

            return(cube);
        }