Example #1
0
 public _3Matrix(_3Vector row1, _3Vector row2, _3Vector row3)
 {
     rows = new Dictionary <int, _3Vector>();
     rows.Add(1, row1);
     rows.Add(2, row2);
     rows.Add(3, row3);
 }
Example #2
0
        public _3Matrix MultiplyByScalar(double scalar)
        {
            int i = 0;

            _3Vector[] _row = new _3Vector[3];
            foreach (var pair in rows)
            {
                _row[i] = new _3Vector(pair.Value.a * scalar, pair.Value.b * scalar, pair.Value.c * scalar);
                i++;
            }
            return(new _3Matrix(_row[0], _row[1], _row[2]));
        }
Example #3
0
 public _3Vector MultiplyByVector(_3Vector vector)
 {
     double[,] a = new double[3, 3];
     for (int j = 1; j <= 3; j++)
     {
         for (int i = 1; i <= 3; i++)
         {
             a[i - 1, j - 1] = GetValueAt(j, i) * vector.V(i);
         }
     }
     return(new _3Vector(a[0, 0] + a[1, 0] + a[2, 0],
                         a[0, 1] + a[1, 1] + a[2, 1],
                         a[0, 2] + a[1, 2] + a[2, 2]));
 }
Example #4
0
 public _3Matrix MultiplyByAnotherMatrix(_3Matrix matrix)
 {
     _3Vector[] _row = new _3Vector[3];
     double[]   a    = new double[3];
     for (int k = 1; k <= 3; k++)
     {
         for (int j = 1; j <= 3; j++)
         {
             for (int i = 1; i <= 3; i++)
             {
                 a[j - 1] += GetValueAt(j, i) * matrix.GetValueAt(i, k);
             }
         }
         _row[k - 1] = new _3Vector(a[0], a[1], a[2]);
         a           = new double[3];
     }
     return(new _3Matrix(_row[0], _row[1], _row[2]));
 }
Example #5
0
 public _3Vector Subtract(_3Vector vector)
 {
     return(new _3Vector(vector.a - a, vector.b - b, vector.c - c));
 }
Example #6
0
 public _3Vector Add(_3Vector vector)
 {
     return(new _3Vector(vector.a + a, vector.b + b, vector.c + c));
 }
Example #7
0
 public VectorPoints(_3Vector point,
                     IList <_3Vector> linesTo) // line is drawn from this object point to lineTo point.
 {
     this.point   = point;
     this.linesTo = linesTo;
 }