コード例 #1
0
 public void AppendLine(string line)
 {
     if (RecognizeRegex.IsMatch(line))
     {
         var match  = RecognizeRegex.Match(line);
         var x1     = Convert.ToDouble(match.Groups[2].Value);
         var y1     = Convert.ToDouble(match.Groups[3].Value);
         var radius = Convert.ToDouble(match.Groups[4].Value);
         if (radius > 0)
         {
             var centerP = new Point {
                 X = x1, Y = y1
             };
             this.circle = new CircleFigure(centerP, radius);
             this.name   = match.Groups[1].Value;
         }
         else
         {
             throw new Exception("Радиус окружности меньше либо равен нуля");
         }
     }
     else
     {
         throw new Exception("Неправильный формат ввода данных");
     }
 }
コード例 #2
0
ファイル: MixFigure.cs プロジェクト: pSasa/c-
 public MixFigure(int x, int y, int width, int height)
 {
     X = x;
     Y = y;
     Width = width;
     Height = height;
     figures = new BaseFigure[2];
     figures[0] = new CircleFigure(m_x + m_width / 2, m_y + m_height /2, Math.Min(m_width, m_height));
     figures[1] = new RectangleFigure(m_x, m_y, m_width, m_height);
 }
コード例 #3
0
ファイル: Form1.cs プロジェクト: pSasa/c-
 private void Form1_Paint(object sender, PaintEventArgs e)
 {
     BaseFigure figure = new CircleFigure(30, 30, 30);
     figure.Draw(e.Graphics);
     figure = new RectangleFigure(30, 30, 30,30);
     figure.Draw(e.Graphics);
     figure = new MixFigure(70, 30, 40, 30);
     figure.Draw(e.Graphics);
     figure = new MixFigure(120, 30, 30, 40);
     figure.Draw(e.Graphics);
 }
コード例 #4
0
        public void Equals1_CircleFigure_True()
        {
            // Arange
            double[]     radius        = { 3 };
            CircleFigure circleFigure2 = new CircleFigure(radius);

            FigureBuilder circleBuilder1 = new CircleBuilder("CircleFigure");
            Figures       circleFigure1  = circleBuilder1.Create(3);
            //Act
            var result = CircleFigure.Equals1(circleFigure1, circleFigure2);

            // Assert
            Assert.IsTrue(result);
        }
コード例 #5
0
        public void CircleFigure_String_String()
        {
            // Arange
            double[]      radius         = { 3 };
            CircleFigure  circleFigure2  = new CircleFigure(radius);
            FigureBuilder circleBuilder1 = new CircleBuilder("CircleFigure");
            Figures       circleFigure1  = circleBuilder1.Create(3);
            string        expected       = "ќкружность с площадью " + circleFigure2.GetArea() + " и периметром " + circleFigure2.GetPerimeter();
            //Act
            var result = circleFigure1.ToString();

            // Assert
            Assert.AreEqual(expected, result);
        }
コード例 #6
0
        static void Main()
        {
            Random rndGen = new Random();
            int    size   = rndGen.Next(1, 11);

            IFigure[] figures = new IFigure[size];
            for (int i = 0; i < size; ++i)
            {
                switch (rndGen.Next(0, 2))
                {
                case 0: figures[i] = new CircleFigure(rndGen.Next(10, 30) + rndGen.NextDouble()); break;

                default: figures[i] = new SquareFigure(rndGen.Next(10, 30) + rndGen.NextDouble()); break;
                }
            }
            ArrayOut <IFigure>(figures, 0);
            ArrayOut <IFigure>(figures, 4.34);
        }
コード例 #7
0
        public void CircleFigure_Radius_True()
        {
            // Arange
            var    result = false;
            double a      = 4;

            double[]     radius        = { 4 };
            CircleFigure circleFigure1 = new CircleFigure(radius);

            //Act
            if (circleFigure1.Radius.Equals(a))
            {
                result = true;
            }
            else
            {
                result = false;
            }
            // Assert
            Assert.IsTrue(result);
        }
コード例 #8
0
        public double CirclePerimeterTest(double radius)
        {
            var circle = new CircleFigure(radius);

            return(circle.Perimeter);
        }
コード例 #9
0
        public double CircleAreaTest(double radius)
        {
            var circle = new CircleFigure(radius);

            return(circle.Area);
        }