Esempio n. 1
0
        public void ColinearityTest()
        {
            var a = new XbimVector3D(1, 0, 0);
            var b = new XbimVector3D(0.5, 0, 0);

            var ident = a.Angle(a);

            Assert.AreEqual(0, ident, 1e-9);

            var angle = a.Angle(b);

            Assert.AreEqual(0, angle, 1e-9);

            b     = new XbimVector3D(1, 1, 0);
            angle = a.Angle(b);
            Assert.AreEqual(Math.PI / 4.0, angle, 1e-9);

            b     = new XbimVector3D(0, 1, 0);
            angle = a.Angle(b);
            Assert.AreEqual(Math.PI / 2.0, angle, 1e-9);

            b     = new XbimVector3D(-1, 1, 0);
            angle = a.Angle(b);
            Assert.AreEqual(Math.PI * 3.0 / 4.0, angle, 1e-9);

            b     = new XbimVector3D(-1, 0, 0);
            angle = a.Angle(b);
            Assert.AreEqual(Math.PI, angle, 1e-9);

            b     = new XbimVector3D(1, -1, 0);
            angle = a.Angle(b);
            Assert.AreEqual(Math.PI / 4.0, angle, 1e-9);

            b     = new XbimVector3D(-1, -1, 0);
            angle = a.Angle(b);
            Assert.AreEqual(Math.PI * 3.0 / 4.0, angle, 1e-9);
        }