示例#1
0
        public void IVector()
        {
            var vector3D = new Vector3D(1, 2, 8);

            var vectorN = new VectorN(3);
            vectorN.SetValues(3, 4, 2);

            var matrix = vector3D.Multiply(vectorN);

            Assert.AreEqual(3, matrix.Columns);
            Assert.AreEqual(3, matrix.Rows);

            Assert.AreEqual(3, matrix[0, 0]);
            Assert.AreEqual(4, matrix[0, 1]);
            Assert.AreEqual(2, matrix[0, 2]);

            Assert.AreEqual(6, matrix[1, 0]);
            Assert.AreEqual(8, matrix[1, 1]);
            Assert.AreEqual(4, matrix[1, 2]);

            Assert.AreEqual(24, matrix[2, 0]);
            Assert.AreEqual(32, matrix[2, 1]);
            Assert.AreEqual(16, matrix[2, 2]);

            Assert.AreEqual(1, vector3D.X);
            Assert.AreEqual(2, vector3D.Y);
            Assert.AreEqual(8, vector3D.Z);

            Assert.AreEqual(3, vectorN[0]);
            Assert.AreEqual(4, vectorN[1]);
            Assert.AreEqual(2, vectorN[2]);
        }
示例#2
0
文件: Divide.cs 项目: havok/ngenerics
 public void Double()
 {
     var vector1 = new VectorN(2);
     vector1.SetValues(9, 3);
     vector1.Divide(3);
     Assert.AreEqual(3, vector1[0]);
     Assert.AreEqual(1, vector1[1]);
 }
示例#3
0
        public void ExceptionLeftNull()
        {
            const VectorN vector1 = null;
            var vector2 = new VectorN(3);
            vector2.SetValues(2, 2, 2);

            var condition = vector1 > vector2;
        }
示例#4
0
文件: Add.cs 项目: GTuritto/ngenerics
 public void Double()
 {
     var vector1 = new VectorN(2);
     vector1.SetValues(4, 7);
     vector1.Add(1);
     Assert.AreEqual(5, vector1[0]);
     Assert.AreEqual(8, vector1[1]);
 }
示例#5
0
        public void ExceptionRightNull()
        {
            var vector1 = new VectorN(3);
            vector1.SetValues(1, 1, 1);
            const VectorN vector2 = null;

            var condition = vector1 > vector2;
        }
示例#6
0
 public void Completed()
 {
     var visitor = new ComparableFindingVisitor<double>(5);
     var vector = new VectorN(3);
     vector.SetValues(2, 5, 9);
     vector.AcceptVisitor(visitor);
     Assert.IsTrue(visitor.Found);
 }
示例#7
0
 public void Simple()
 {
     var vector1 = new VectorN(2);
     vector1.SetValues(4, 7);
     vector1.Decrement();
     Assert.AreEqual(3, vector1[0]);
     Assert.AreEqual(6, vector1[1]);
 }
示例#8
0
文件: Divide.cs 项目: havok/ngenerics
 public void Vector()
 {
     var vector1 = new VectorN(2);
     vector1.SetValues(6, 16);
     var vector2 = new VectorN(2);
     vector2.SetValues(2, 4);
     vector1.Divide(vector2);
     Assert.AreEqual(3, vector1[0]);
     Assert.AreEqual(4, vector1[1]);
 }
示例#9
0
        public void Simple()
        {
            var vector = new VectorN(3);
            vector.SetValues(1, -4, 3);

            Assert.AreEqual(3, vector.Maximum());
            Assert.AreEqual(1, vector[0]);
            Assert.AreEqual(-4, vector[1]);
            Assert.AreEqual(3, vector[2]);
        }
示例#10
0
        public void Simple()
        {
            VectorBase<double> vector1 = new VectorN(2);
            vector1.SetValues(4, 7);

            vector1++;

            Assert.AreEqual(5, vector1[0]);
            Assert.AreEqual(8, vector1[1]);
        }
示例#11
0
文件: Add.cs 项目: GTuritto/ngenerics
 public void Vector()
 {
     var vector1 = new VectorN(2);
     vector1.SetValues(4, 7);
     var vector2 = new VectorN(2);
     vector2.SetValues(3, 4);
     vector1.Add(vector2);
     Assert.AreEqual(7, vector1[0]);
     Assert.AreEqual(11, vector1[1]);
 }
示例#12
0
        public void Simple()
        {
            var vector = new VectorN(3);
            vector.SetValues(4, 3, 12);
            Assert.AreEqual(13, vector.Magnitude());

            Assert.AreEqual(4, vector[0]);
            Assert.AreEqual(3, vector[1]);
            Assert.AreEqual(12, vector[2]);
        }
        public void OperatorDecrementExample()
        {
            VectorBase<double> vector1 = new VectorN(2);
            vector1.SetValues(4, 7);

            vector1--;

            Assert.AreEqual(3, vector1[0]);
            Assert.AreEqual(6, vector1[1]);
        }
 public void OperatorDivideDoubleExample()
 {
     var vector1 = new VectorN(2);
     vector1.SetValues(4, 12);
     IVector<double> vector = vector1/2;
     Assert.AreEqual(2, vector[0]);
     Assert.AreEqual(6, vector[1]);
     Assert.AreEqual(4, vector1[0]);
     Assert.AreEqual(12, vector1[1]);
     Assert.AreNotSame(vector1, vector);
 }
示例#15
0
        public void Simple()
        {
            var vector = new VectorN(3);
            vector.SetValues(3, 7, 8);

            vector.Clear();

            Assert.AreEqual(0, vector[0]);
            Assert.AreEqual(0, vector[1]);
            Assert.AreEqual(0, vector[0]);
        }
示例#16
0
        public void NullObject()
        {
            var vector1 = new VectorN(3);
            vector1.SetValues(1, 2, 5);

            Assert.IsFalse(vector1.Equals((object)null));

            Assert.AreEqual(1, vector1[0]);
            Assert.AreEqual(2, vector1[1]);
            Assert.AreEqual(5, vector1[2]);
        }
示例#17
0
        public void Simple1()
        {
            var vector1 = new VectorN(3);
            vector1.SetValues(1, 1, 1);
            var vector2 = new VectorN(3);
            vector2.SetValues(2, 2, 2);
            var vector3 = new VectorN(3);
            vector3.SetValues(2, 2, 2);

            Assert.IsFalse(vector1 > vector2);
            Assert.IsTrue(vector2 > vector1);
            Assert.IsFalse(vector2 > vector3);
        }
示例#18
0
        public void Simple3x3()
        {
            var vector1 = new VectorN(3);
            vector1.SetValues(1, 2, 3);
            var vector2 = new VectorN(3);
            vector2.SetValues(4, 5, 6);

            var vector = vector1.CrossProduct(vector2);

            Assert.AreEqual(-3, vector[0]);
            Assert.AreEqual(6, vector[1]);
            Assert.AreEqual(-3, vector[2]);
        }
示例#19
0
        public void IVector3x3()
        {
            var vector3D = new Vector3D(1, 2, 3);

            var vectorN = new VectorN(3);
            vectorN.SetValues(4, 5, 6);

            var vector = vector3D.CrossProduct(vectorN);

            Assert.AreEqual(-3, vector[0]);
            Assert.AreEqual(6, vector[1]);
            Assert.AreEqual(-3, vector[2]);
        }
示例#20
0
        public void IVector2x2()
        {
            var vector2D = new Vector2D(2, 3);

            var vectorN = new VectorN(2);
            vectorN.SetValues(4, 5);

            var vector = vector2D.CrossProduct(vectorN);

            Assert.AreEqual(0, vector[0]);
            Assert.AreEqual(0, vector[1]);
            Assert.AreEqual(-5, vector[2]);
        }
示例#21
0
        public void Simple2x3()
        {
            var vector1 = new VectorN(2);
            vector1.SetValues(2, 3);
            var vector2 = new VectorN(3);
            vector2.SetValues(4, 5, 6);

            var vector = vector1.CrossProduct(vector2);

            Assert.AreEqual(18, vector[0]);
            Assert.AreEqual(-12, vector[1]);
            Assert.AreEqual(-2, vector[2]);
        }
示例#22
0
        public void IVector2x3()
        {
            var vector2D = new Vector2D(4, 5);

            var vectorN = new VectorN(3);
            vectorN.SetValues(1, 2, 3);

            var vector = vector2D.CrossProduct(vectorN);

            Assert.AreEqual(15, vector[0]);
            Assert.AreEqual(-12, vector[1]);
            Assert.AreEqual(3, vector[2]);
        }
示例#23
0
        public void Simple()
        {
            var vector = new VectorN(2);
            vector.SetValues(8, 3);

            Matrix actual = vector;

            Assert.AreEqual(2, actual.Rows);
            Assert.AreEqual(1, actual.Columns);

            Assert.AreEqual(8, actual[0, 0]);
            Assert.AreEqual(3, actual[1, 0]);
        }
示例#24
0
        public void IVector()
        {
            var vector2D = new Vector2D(24, 32);

            var vectorN = new VectorN(2);
            vectorN.SetValues(2, 4);

            vector2D.Divide(vectorN);

            Assert.AreEqual(3, vector2D.X);
            Assert.AreEqual(4, vector2D.Y);

            Assert.AreEqual(2, vectorN[0]);
            Assert.AreEqual(4, vectorN[1]);
        }
示例#25
0
        public void Double()
        {
            var vector1 = new VectorN(2);
            vector1.SetValues(4, 7);

            IVector<double> vector = vector1 + 2;

            Assert.AreEqual(6, vector[0]);
            Assert.AreEqual(9, vector[1]);

            Assert.AreEqual(4, vector1[0]);
            Assert.AreEqual(7, vector1[1]);

            Assert.AreNotSame(vector1, vector);
        }
示例#26
0
        public void Double()
        {
            var vector1 = new VectorN(2);
            vector1.SetValues(4, 7);

            var vector = vector1 * 2;

            Assert.AreEqual(8, vector[0]);
            Assert.AreEqual(14, vector[1]);

            Assert.AreEqual(4, vector1[0]);
            Assert.AreEqual(7, vector1[1]);

            Assert.AreNotSame(vector1, vector);
        }
示例#27
0
        public void IVector()
        {
            var vector2D = new Vector2D(4, 7);

            var vectorN = new VectorN(2);
            vectorN.SetValues(3, 4);

            var dotProduct = vector2D.DotProduct(vectorN);
            Assert.AreEqual(40, dotProduct);

            Assert.AreEqual(4, vector2D.X);
            Assert.AreEqual(7, vector2D.Y);

            Assert.AreEqual(3, vectorN[0]);
            Assert.AreEqual(4, vectorN[1]);
        }
 public void OperatorDivideVectorExample()
 {
     var vector1 = new VectorN(2);
     vector1.SetValues(4, 8);
     var vector2 = new VectorN(2);
     vector2.SetValues(2, 2);
     IVector<double> vector = vector1/vector2;
     Assert.AreEqual(2, vector[0]);
     Assert.AreEqual(4, vector[1]);
     Assert.AreEqual(4, vector1[0]);
     Assert.AreEqual(8, vector1[1]);
     Assert.AreEqual(2, vector2[0]);
     Assert.AreEqual(2, vector2[1]);
     Assert.AreNotSame(vector1, vector);
     Assert.AreNotSame(vector2, vector);
 }
示例#29
0
        public void Simple()
        {
            var vector1 = new VectorN(2);
            vector1.SetValues(4, 7);

            var vector2 = new VectorN(2);
            vector2.SetValues(3, 4);

            var dotProduct = vector1.DotProduct(vector2);
            Assert.AreEqual(40, dotProduct);

            Assert.AreEqual(4, vector1[0]);
            Assert.AreEqual(7, vector1[1]);

            Assert.AreEqual(3, vector2[0]);
            Assert.AreEqual(4, vector2[1]);
        }
示例#30
0
        public void IVector()
        {
            var vector3D = new Vector3D(1, 2, 9);

            var vectorN = new VectorN(3);
            vectorN.SetValues(8, 4, 2);

            vector3D.Subtract(vectorN);

            Assert.AreEqual(-7, vector3D.X);
            Assert.AreEqual(-2, vector3D.Y);
            Assert.AreEqual(7, vector3D.Z);

            Assert.AreEqual(8, vectorN[0]);
            Assert.AreEqual(4, vectorN[1]);
            Assert.AreEqual(2, vectorN[2]);
        }