예제 #1
0
        public void TestNormalTransFormedShape()
        {
            var shape = new TestAShape
            {
                Transform = Matrix4.Scaling(1, 0.5, 1) * Matrix4.RotationZ(System.Math.PI / 5)
            };

            var n = shape.Normal(Tuple.Point(0, 0.70711, -0.70711));

            Assert.AreEqual(Tuple.Vector(0, 0.97014, -0.24254), n);
        }
예제 #2
0
        public void TestNormalTranslatedShape()
        {
            var shape = new TestAShape
            {
                Transform = Matrix4.Translation(0, 1, 0)
            };

            var n = shape.Normal(Tuple.Point(0, 1.70711, -0.70711));

            Assert.AreEqual(Tuple.Vector(0, 0.70711, -0.70711), n);
        }