Exemplo n.º 1
0
        void drawMesh(Graphics e)
        {
            if (meshs != null)
            {
                foreach (var mesh in meshs)
                {
                    ArithmMeanGrade crit = new ArithmMeanGrade();
                    Gradient        st   = new Gradient();

                    for (int i = 0; i < mesh.Y - 1; i++)
                    {
                        for (int j = 0; j < mesh.X - 1; j++)
                        {
                            // st.GetCellColor(crit.Calculate(mesh));
                            System.Drawing.Point[] littlemesh = new System.Drawing.Point[4];
                            littlemesh[0] = new System.Drawing.Point((int)(mesh[i, j].X), (int)(mesh[i, j].Y));
                            littlemesh[1] = new System.Drawing.Point((int)(mesh[i + 1, j].X), (int)(mesh[i + 1, j].Y));
                            littlemesh[2] = new System.Drawing.Point((int)(mesh[i + 1, j + 1].X), (int)(mesh[i + 1, j + 1].Y));
                            littlemesh[3] = new System.Drawing.Point((int)(mesh[i, j + 1].X), (int)(mesh[i, j + 1].Y));


                            Geometry.Point[,] littlemesh2 = new Geometry.Point[2, 2];
                            littlemesh2[0, 0]             = new Geometry.Point((int)(mesh[i, j].X), (int)(mesh[i, j].Y));
                            littlemesh2[0, 1]             = new Geometry.Point((int)(mesh[i + 1, j].X), (int)(mesh[i + 1, j].Y));
                            littlemesh2[1, 0]             = new Geometry.Point((int)(mesh[i, j + 1].X), (int)(mesh[i, j + 1].Y));
                            littlemesh2[1, 1]             = new Geometry.Point((int)(mesh[i + 1, j + 1].X), (int)(mesh[i + 1, j + 1].Y));



                            int       cols  = 2;
                            int       rows  = 2;
                            RegMesh2D mesh2 = new RegMesh2D(littlemesh2, cols, rows);
                            Brush     br    = new SolidBrush(st.GetCellColor(crit.Calculate(mesh2)));

                            e.FillPolygon(br, littlemesh);
                        }
                    }
                    for (int i = 0; i < mesh.Y; i++)
                    {
                        for (int j = 0; j < mesh.X; j++)
                        {
                            if (j != mesh.X - 1)
                            {
                                e.DrawLine(new Pen(Color.Black),
                                           (int)mesh[i, j].X, (int)mesh[i, j].Y,
                                           (int)mesh[i, j + 1].X, (int)mesh[i, j + 1].Y);
                            }
                            if (i != mesh.Y - 1)
                            {
                                e.DrawLine(new Pen(Color.Black),
                                           (int)mesh[i, j].X, (int)mesh[i, j].Y,
                                           (int)mesh[i + 1, j].X, (int)mesh[i + 1, j].Y);
                            }
                        }
                    }
                }
                meshs = null;
            }
        }
Exemplo n.º 2
0
        public void CalculateTest()
        {
            ArithmMeanGrade target = new ArithmMeanGrade(); // TODO: инициализация подходящего значения

            int row = 4;
            int col = 4;

            IPoint[,] setka = new IPoint[row, col];
            for (int i = 0; i < row; i++)
            {
                for (int j = 0; j < col; j++)
                {
                    setka[i, j] = new Point(i + 1, j + 1);
                }
            }

            RegMesh2D mesh     = new RegMesh2D(setka, 4, 4); // TODO: инициализация подходящего значения
            double    expected = 1;                          // TODO: инициализация подходящего значения
            double    actual;

            actual = target.Calculate(mesh);
            Assert.AreEqual(expected, actual);
            // Assert.Inconclusive("Проверьте правильность этого метода теста.");
        }
Exemplo n.º 3
0
 public void ArithmMeanGradeConstructorTest()
 {
     ArithmMeanGrade target = new ArithmMeanGrade();
     // Assert.Inconclusive("TODO: реализуйте код для проверки целевого объекта");
 }