Нарисовать равнобедренную трапецию - C#

Узнай цену своей работы

Формулировка задачи:

Нужно нарисовать равнобедренную трапецию. Первая точка - верхняя левая вершина, потом, удерживая кнопку мыши, получаем правую нижнюю и при этом нам известен угол (считываем из TextBox'a). Т.е. должно выглядеть все примерно так, только всегда должна получаться равнобедренной с указанным углом при основании

Решение задачи: «Нарисовать равнобедренную трапецию»

textual
Листинг программы
  1.  public partial class Form1 : Form
  2.     {
  3.         private List<Point> polygonPoints = new List<Point>();
  4.         public Form1()
  5.         {
  6.             InitializeComponent();
  7.         }
  8.         private void TestForm_MouseClick(object sender, MouseEventArgs e)
  9.         {
  10.             switch (e.Button)
  11.             {
  12.                 case MouseButtons.Left:
  13.                    polygonPoints.Add(new Point(e.X, e.Y));
  14.                     if (polygonPoints.Count > 1)
  15.                     {
  16.                        this.DrawPoligon(polygonPoints[polygonPoints.Count - 2], polygonPoints[polygonPoints.Count - 1]);
  17.                     }
  18.                     break;
  19.  
  20.                 case MouseButtons.Right:
  21.                     {
  22.                         polygonPoints.Clear();
  23.                         Graphics g = this.CreateGraphics();
  24.                         g.Clear(Color.White); //  очистка, цвет можете указать любой
  25.                     }
  26.                     break;
  27.             }
  28.         }
  29.  
  30.         private void DrawPoligon(Point p1, Point p2)
  31.         {
  32.             Graphics G = this.CreateGraphics();
  33.             Point p3 = new Point(p2.X-50,p1.Y);
  34.             Point p4 = new Point(p1.X - 50, p2.Y);
  35.             G.DrawLine(Pens.Black, p1, p3);
  36.             G.DrawLine(Pens.Black, p3, p2);
  37.             G.DrawLine(Pens.Black, p2, p4);
  38.             G.DrawLine(Pens.Black, p1, p4);
  39.         }
  40.     }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.182 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы