Пример #1
0
 public void ShouldCheckIfAddingWorksFor2Elements()
 {
     Vector<int> list = new Vector<int>();
     list.Add(0);
     list.Add(2);
     Assert.AreEqual(2, list.Count);
 }
Пример #2
0
 public static double length(Vector a)
 {
     double res = 0;
     for (int i = 0; i < a.dim; i++)
         res += a[i] * a[i];
     return Math.Sqrt(res);
 }
Пример #3
0
 public void ShouldReturnLengthOfListAsOneForDecimal()
 {
     Vector<decimal> list = new Vector<decimal>();
     list.Add(2.5m);
     int result = list.Count;
     Assert.AreEqual(1, result);
 }
Пример #4
0
        public void getRect(ref List<Vector> X, ref Vector lt, ref Vector rb)
        {
            lt = new Vector(X[0][0], X[0][1]);
            rb = new Vector(X[0][0], X[0][1]);
            for (int i = 1; i < X.Count; i++)
            {
                Vector tmp = new Vector(X[i][0], X[i][1]);

                if (tmp[0] < lt[0]) lt[0] = tmp[0];
                if (tmp[0] > rb[0]) rb[0] = tmp[0];
                if (tmp[1] < rb[1]) rb[1] = tmp[1];
                if (tmp[1] > lt[1]) lt[1] = tmp[1];
            }

            if (rb[0] - lt[0] == 0) rb[0]++;
            if (lt[1] - rb[1] == 0) lt[1]++;

            double P = (rb[0] - lt[0]) / (lt[1] - rb[1]);
            if (P <= 1)
            {
                marginX = (comp.width() - P * comp.height()) / 2 + 40;
            }
            else
            {
                marginX = comp.width() / 10;
            }
            marginY = (marginX - (comp.width() - (comp.height() - 40) * P) / 2) / P;
        }
Пример #5
0
 public static Vector div(Vector v, double num)
 {
     Vector res = new Vector(v.dim);
     for (int i = 0; i < v.dim; i++)
         res[i] = (num != 0) ? (v[i] / num) : 0;
     return res;
 }
Пример #6
0
 public static Vector add(Vector a, Vector b)
 {
     Vector res = new Vector(a.dim);
     for (int i = 0; i < a.dim; i++)
         res[i] = a[i] + b[i];
     return res;
 }
Пример #7
0
 public void ShouldReturnFalseForListContainingNumberTwo()
 {
     Vector<int> list = new Vector<int>();
     list.Add(3);
     list.Add(1);
     bool contains = list.Contains(2);
     Assert.IsFalse(contains);
 }
Пример #8
0
 public void ShouldCheckIfTwoStringsAdded()
 {
     Vector<string> list = new Vector<string>() {
         "hello1",
         "hello2"
     };
     Assert.AreEqual(2, list.Count);
 }
Пример #9
0
 public void ShouldInsertNumberFourAtIndexOne()
 {
     Vector<int> list = new Vector<int>();
     list.Add(2);
     list.Add(3);
     list.Add(1);
     list.Insert(1, 4);
     Assert.AreEqual(1, list.IndexOf(4));
 }
 static void Main()
 {
     Vector vect1 = new Vector(1, 3, 5, 10);
     Console.WriteLine(vect1.ToString());
     Vector vect2 = vect1 + 5;
     Console.WriteLine(vect2.ToString());
     Vector vect3 = vect1 * vect2;
     Console.WriteLine(vect3.ToString());
 }
Пример #11
0
 public void ShouldRemoveNumberThreeFromList()
 {
     Vector<int> list = new Vector<int>();
     list.Add(2);
     list.Add(3);
     list.Add(1);
     list.Remove(3);
     Assert.AreEqual(2, list.Count);
     Assert.AreEqual(1, list.IndexOf(1));
 }
Пример #12
0
 public void ShouldRemoveItemAtIndexTwo()
 {
     Vector<int> list = new Vector<int>();
     list.Add(2);
     list.Add(3);
     list.Add(1);
     list.RemoveAt(2);
     Assert.AreEqual(2, list.Count);
     Assert.AreEqual(1, list.IndexOf(3));
 }
Пример #13
0
 public void ShouldCopyValueToList()
 {
     Vector<int> list = new Vector<int>();
     list.Add(2);
     list.Add(3);
     list.Add(1);
     int[] value = new int[2];
     list.CopyTo(value, 0);
     Assert.AreEqual(2, value[0]);
 }
Пример #14
0
 public void ShouldClearListOfAllElements()
 {
     Vector<int> list = new Vector<int>();
     list.Add(2);
     list.Add(3);
     list.Add(1);
     list.Clear();
     int result = list.Count;
     Assert.AreEqual(0, result);
 }
Пример #15
0
 public LineParticle(Color color, GraphicsDevice graphicsDevice, Vector position, Vector velocity, Destruction destruction)
     : base(graphicsDevice, position, velocity, destruction)
 {
     this.Color = color;
     this.line = new BasicEffect(graphicsDevice);
     this.line.VertexColorEnabled = true;
     this.line.Projection = Matrix.CreateOrthographicOffCenter
         (0, graphicsDevice.Viewport.Width,     // left, right
          graphicsDevice.Viewport.Height, 0,    // bottom, top
          0, 1);
 }
Пример #16
0
 public void ShouldRemoveTheFirstInstanceOf5()
 {
     Vector<int> list = new Vector<int>();
     list.Add(3);
     list.Add(2);
     list.Add(4);
     list.Add(5);
     list.Add(6);
     Assert.IsTrue(list.Remove(5));
     Assert.AreEqual(3, list.IndexOf(6));
 }
Пример #17
0
 public void ShouldRemoveTheElementAtIndex1()
 {
     Vector<int> list = new Vector<int>();
     list.Add(3);
     list.Add(2);
     list.Add(4);
     list.Add(5);
     list.Add(7);
     list.RemoveAt(1);
     Assert.AreEqual(4, list[1]);
 }
Пример #18
0
 public void ShouldInsertANumberAtIndex3()
 {
     Vector<int> list = new Vector<int>();
     list.Add(3);
     list.Add(2);
     list.Add(4);
     list.Add(5);
     list.Add(7);
     list.Insert(2, 9);
     Assert.AreEqual(2, list.IndexOf(9));
 }
Пример #19
0
 public override void Render(Graphics g, Point p)
 {
     const float margin = 1;
     var v = new Vector(p.X, p.Y);
     var vel = this.Velocity / 60;
     if (vel.Length < margin)
     {
         vel = vel.Normalize() * margin;
     }
     g.DrawLine(this.Pen, new Line(Position + v, Position - vel + v));
 }
Пример #20
0
        public Vector getCoord(Vector p, Vector lt, Vector rb, bool rev = false)
        {
            double dx = Math.Abs(rb[0] - lt[0]) / (comp.width() - 2 * marginX),
                    dy = Math.Abs(rb[1] - lt[1]) / (comp.height() - 2 * marginY);

            Vector res = new Vector(2);
            res[0] = ((p[0] - lt[0]) / dx + marginX + comp.x);
            if (rev) res[1] = (double)H - (comp.height() + (rb[1] - p[1]) / dy - marginY + comp.y);
            else     res[1] = (comp.height() + (rb[1] - p[1]) / dy - marginY + comp.y);

            return res;
        }
Пример #21
0
        public Vector(Vector v)
        {
            i1 = v.First;
            this.num = v.Length;

            p = new int[i1 + num];

            for (int i = i1; i <= v.Last; i++)
            {
                this.p[i] = v[i];
            }

            count++;
        }
Пример #22
0
    public static void Main()
    {
        Vector.Vector <double> v1 = new Vector.Vector <double>(3.0, 4.0);
        Vector.Vector <double> v2 = new Vector.Vector <double>(2.3, 1.1);

        Console.WriteLine(v1);
        Console.WriteLine(v2);

        Vector.Vector <double> v3 = v1 + v2;
        Console.WriteLine(v3);

        Vector.Vector <double> v1_copy = v1;
        Console.WriteLine("v1 == v1_copy: {0}", v1 == v1_copy);
        Console.WriteLine("v1 == v2     : {0}", v1 == v2);
    }
Пример #23
0
        public void SetFromZ(ref Normal z)
        {
#if VERBOSE
            if (z.Length2 < MathLab.Epsilon)
            {
                Console.WriteLine("z is Zero {1} - {0}",z, z.IsZero());                
                z = new Normal(0,0,1f);
            }
#endif
            Vec3f tmpZ = new Vector(z.x, z.y, z.z);
            Vec3f tmpX = (Math.Abs(tmpZ.x) > 0.99f) ? new Vec3f(0, 1, 0) : new Vec3f(1, 0, 0);
            mY = Vector.Normalize(Core.Primitives.Normal.Cross(ref z, ref tmpX));
            mX = Core.Primitives.Normal.Cross(ref mY, ref z);
            mZ = tmpZ;
        }
Пример #24
0
        public override void Render(Point p)
        {
            const float Margin = 1;
            var g = this.line;
            var v = new Vector(p.X, p.Y);
            var vel = this.Velocity / 60;
            if (vel.Length < Margin)
            {
                vel = vel.Normalize() * Margin;
            }
            var vertices = new VertexPositionColor[2];
            vertices[0].Position = (this.Position + v + new Vector(0, 0, -2)).ToVector3();
            vertices[0].Color = this.Color;
            vertices[1].Position = (this.Position - vel + v + new Vector(0, 0, -2)).ToVector3();
            vertices[1].Color = this.Color;

            line.CurrentTechnique.Passes[0].Apply();
            GraphicsDevice.DrawUserPrimitives(PrimitiveType.LineList, vertices, 0, 1);

            ////g.DrawLine(this.Pen, new Line(Position + v, Position - vel + v));
        }
Пример #25
0
        public List<List<Vector>> system_config(int W, int H,
                                         Graph<Object> G,
                                         out List<Vector> config,
                                         int root = -1, int p_root = -1,
                                         List<Vector> initial_config = null)
        {
            Layout layout = new Layout(W, H);

            HV hv = new HV();
            List<Vector> X = hv.system_config(G, root, p_root);

            Vector lt = new Vector(0,0), rb = new Vector(0,0);
            layout.getRect(ref X, ref lt, ref rb);

            for (int i = 0; i < X.Count; i++)
                X[i] = layout.getCoord(X[i], lt, rb);

            List<List<Vector>> _X = new List<List<Vector>>();
            _X.Add(X);

            config = X;

            return _X;
        }
Пример #26
0
        public Vector<Holiday> listHolidays(uint gvoid)
        {
            // Declarations
            Vector<Holiday> quals = new Vector<Holiday>();
            uint gvhid = 0, modifiedby = 0;
            DateTime datemodified = new DateTime(1901, 1, 1), start = new DateTime(1901, 1, 1), end = new DateTime(1901, 1, 1);
            Holiday input = new Holiday();

            // Declarations

            // Command
            string query = string.Format("SELECT gvh_id, gvh_start, gvh_end, date_modified, modified_by " +
                                            "FROM gfrc_volunteer_holiday WHERE gvo_id = {0}", gvoid);

            try
            {
                using (conn)
                {
                    conn.Open();
                    cmd = new OleDbCommand(query, conn);
                    rdr = cmd.ExecuteReader();

                    while (rdr.Read())
                    {
                        if (UInt32.TryParse(rdr.GetValue(0).ToString(), out gvhid))
                        {
                            start = rdr.GetDateTime(1);
                            if (!DateTime.TryParse(rdr.GetValue(2).ToString(), out end))
                                end = new DateTime(1901, 1, 1);
                            if (!DateTime.TryParse(rdr.GetValue(14).ToString(), out datemodified))
                                datemodified = new DateTime(1901, 1, 1);
                            if (!UInt32.TryParse(rdr.GetValue(15).ToString(), out modifiedby))
                                modifiedby = 0;

                            input = new Holiday(gvhid, gvoid, start, end, datemodified, modifiedby);
                            quals.Add(input);
                        }
                    }
                }
            }
            finally
            {
                if (rdr != null)
                    rdr.Close();
            }
            if (conn != null)
            {
                conn.Close();
            }

            return quals;
        }
Пример #27
0
        public Vector<vQualification> listQualifications(uint gvoid)
        {
            // Declarations
            Vector<vQualification> quals = new Vector<vQualification>();
            uint gvqid = 0;
            string qualification = null;
            vQualification input = new vQualification();

            // Command
            string query = string.Format("SELECT gvq_id, gvq_qual " +
                                            "FROM gfrc_volunteer_qualification WHERE gvo_id = {0}", gvoid);

            try
            {
                using (conn)
                {
                    conn.Open();
                    cmd = new OleDbCommand(query, conn);
                    rdr = cmd.ExecuteReader();

                    while (rdr.Read())
                    {
                        if (!UInt32.TryParse(rdr.GetValue(0).ToString(), out gvqid))
                            gvqid = 0;
                        qualification = rdr.GetString(1);
                        if (gvqid != 0)
                        {
                            input = new vQualification(gvqid, gvoid, qualification);
                            quals.Add(input);
                        }

                    }
                }
            }
            finally
            {
                if (rdr != null)
                    rdr.Close();
            }
            if (conn != null)
            {
                conn.Close();
            }

            return quals;
        }
 public Vector(Vector vect)
 {
     this.coordinates = vect.coordinates;
 }
Пример #29
0
        public List<Vector> system_config(Graph<Object> G, int root = -1, int p_root = -1)
        {
            init(root, p_root); // for safety!!!
            this.G = G;

            List<Vector> X = new List<Vector>();
            for (int i = 0; i < G.V; i++)
                X.Add(new Vector(0,0));

            TreeAlgo<Object> GA = new TreeAlgo<Object>(G);
            if (root == -1)
                root = GA.center();

            GA.dfs(root, p_root);

            right = new int[G.V];
            for (int i = 0; i < G.V; i++)
                right[i] = 0;

            X[root] = new Vector(sx == INF ? 0 : sx, sy == INF ? 0 : sy);

            if (G.V > 1)
            {
                setPos(root, p_root, ref X, ref GA);
            }
            else
            {
                right[root] = (int)X[root][0];
            }

            return X;
        }
Пример #30
0
 public static double SecondNorm(Vector v)
 {
     return 0;
 }
Пример #31
0
 public static double FirstNorm(Vector v)
 {
     return 0;
 }