Windows forms нарисовать треугольник

Windows forms нарисовать треугольник

Windows forms нарисовать треугольник

—> —>

—> —>Форма входа —>
Windows forms нарисовать треугольник
Windows forms нарисовать треугольник—>

—>Windows forms нарисовать треугольник

Windows forms нарисовать треугольник

Программа построения треугольника по координатам с вычислением его элементов

Предлагаю внешний вид и исходный код небольшой программы которая строит треугольник по координатам в необходимом масштабе и вычисляет некоторые его элементы

Windows forms нарисовать треугольник

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
<
public partial class Form1 : Form
<
int x1, x2, x3, y1, y2, y3;
public Form1()
<
InitializeComponent();
>

private void button1_Click(object sender, EventArgs e)
<
x1 = Convert.ToInt32(textBox1.Text);
y1 = Convert.ToInt32(textBox2.Text);
x2 = Convert.ToInt32(textBox3.Text);
y2 = Convert.ToInt32(textBox4.Text);
x3 = Convert.ToInt32(textBox5.Text);
y3 = Convert.ToInt32(textBox6.Text);
int k = comboBox1.SelectedIndex;
int m =10;
if (k == 0) m = 10;
if (k == 1) m = 20;
if (k == 2) m = 50;
if (k == 3) m = 100;

// инициализируем графику
Graphics g = Graphics.FromHwnd(pictureBox1.Handle);
//очищаем поле для рисованиия

//рисуем оси координат
g.Clear(Color.White);
for ( int i=0; i

g.DrawLine(new Pen(Color.DarkSeaGreen, 1), i, 0, i, 600);
for (int i = 0; i

g.DrawLine(new Pen(Color.DarkSeaGreen, 1), 0, i, 600, i);
g.DrawLine(new Pen(Color.Blue, 1), 300, 0, 300, 600);
g.DrawLine(new Pen(Color.Blue, 1), 0, 300, 600, 300);

//рисуем треугольник
y1 = -y1;
y2 = -y2;
y3 = -y3;
g.DrawLine(new Pen(Color.Red,1),x1*m + 300,y1*m + 300,x2*m + 300,y2*m + 300);
g.DrawLine(new Pen(Color.Red,1),x2*m + 300,y2*m + 300,x3*m + 300,y3*m + 300);
g.DrawLine(new Pen(Color.Red,1),x1*m + 300,y1*m + 300,x3*m + 300,y3*m + 300);
Font f = new System.Drawing.Font(«Times New Roman», 12, System.Drawing.FontStyle.Bold);
// устанавливаем цвет
SolidBrush f1 = new SolidBrush(Color.Green);
// выводим надписи
g.DrawString(«A», f, f1, x1 * m + 300, y1 * m + 300);
g.DrawString(«B», f, f1, x2 * m + 300, y2 * m + 300);
g.DrawString(«C», f, f1, x3 * m + 300, y3 * m + 300);

private void Form1_Activated(object sender, EventArgs e)
<
textBox1.Text = «0»;
textBox2.Text = «0»;
textBox3.Text = «-10»;
textBox4.Text = «10»;
textBox5.Text = «10»;
textBox6.Text = «0»;
>

private void button2_Click(object sender, EventArgs e)
<
x1 = Convert.ToInt32(textBox1.Text);
y1 = Convert.ToInt32(textBox2.Text);
x2 = Convert.ToInt32(textBox3.Text);
y2 = Convert.ToInt32(textBox4.Text);
x3 = Convert.ToInt32(textBox5.Text);
y3 = Convert.ToInt32(textBox6.Text);

//вычисляем стороны
double ab = Math.Sqrt((x2 — x1) * (x2 — x1) + (y2 — y1) * (y2 — y1));
double bc = Math.Sqrt((x3 — x2) * (x3 — x2) + (y3 — y2) * (y3 — y2));
double ac = Math.Sqrt((x3 — x1) * (x3 — x1) + (y3 — y1) * (y3 — y1));
label16.Text = Convert.ToString(ab);
label17.Text = Convert.ToString(bc);
label18.Text = Convert.ToString(ac);

//периметр и площадь
double p = ab + bc + ac;
label21.Text = Convert.ToString(p);
p=(ab+bc+ac)/2;
double S = Math.Sqrt(p * (p — ab) * (p — bc) * (p — ac));
label22.Text = Convert.ToString(S);
// углы
//C углами будем рассматривать треугольник по теореме Kосинусов

double cosA=(ac*ac+ab*ab-bc*bc)/(2*ac*ab);
double cosB=(ab*ab+bc*bc-ac*ac)/(2*ab*bc);
double cosC=(ac*ac+bc*bc-ab*ab)/(2*ac*bc);

Видео:Часть 3. Рисуем на C#. Рисуем многоугольник. Нажатие клавиш. System.Drawing / Класс Graphics.Скачать

Часть 3. Рисуем на C#. Рисуем многоугольник. Нажатие клавиш. System.Drawing / Класс Graphics.

5.3 Вывод 2D треугольника с активным управлением разложением цветового спектра.

В данной части главы, мы более подробно познакомимся с методами визуализации 2D примитивов.

Пример, рассматриваемый в данной главе, будет немного более сложным, но при этом динамичным и более интересным.

Сейчас же мы попробуем нарисовать двухмерный треугольник. Его особенность будет заключаться в том, что при установке каждой его вершины, мы будем задавать отдельный цвет, умножаемый на некоторую переменную. Таким образом, цвет на протяжении плоскости треугольника будет интерполироваться между цветов вершин, и так мы получим разложенный спектр цветов на треугольнике.

Также мы внесем в код управляемые переменные, которые смогут влиять на установку цвета в определенной вершине, и тем самым в реальном времени посмотреть, как может быть разложен различный цветовой спектр.

Итак, приступим. В первую очередь создайте новый проект и реализуйте на нем систему визуализации, основанную на объекте SimpleOpenGLControl и подключении ссылок к библиотекам Tao, как это было рассказано в главе 4.4. Настройки инициализации OpenGL (код функции Form1_Load будет соответствовать коду, представленному в главе 4.4).

На всякий случай код функции-обработчика события Form1_Load:

Помимо этого, нам понадобится добавить на окно программы дополнительные элементы управления: 3 элемента TrackBar (вы можете найти их в Панели элементов (ToolBox) в конце самого первого свитка («Все формы Windows Forms»), три элемента Label, которые будут находиться над элементами TrackBar и содержать названия коэффициентов, которыми будут управлять данные TrackBar’.

Также под каждым элементом TrackBar будут находиться по одному дополнительному элементу label для вывода текущего значения параметра, которым управляет данный ползунок.

Сверху будут находиться элементы label1, label2, label3, а снизу label4, label5, label6.

Разместите все элементы, как показано на рисунке 1. Для того чтобы элемент TrackBar стал вертикальным, необходимо в его свойствах указать параметр Orientation равным Vertical.
Windows forms нарисовать треугольникРисунок 1. Пример расположения элементов на форме.
В свойствах TackBar‘ов необходимо указать диапазон значений:

Minimum — 0
Maximum — 1000
TickFrequensy — 10 (количество позиций между отметками)

Для первого TackBar‘а установите значение (Value) равное 1000. Для остальных – 0.

Выполните двойной щелчок левой клавишей мыши по каждому TrackBar‘у, чтобы создать функции обработчики события перемещения ползунка пользователем.

В начале класса, отвечающего за нашу форму, добавьте следующую строку (для порядка и исключения путаницы в коде разместите эту строку перед функцией Form1_Load).

Теперь реализуем функцию, отвечающую за рисование. Назовем ее Draw. Эта функция будет вызываться при нажатии на кнопку «Визуализировать» и при перемещении управляющих ползунков на TrackBar‘ах, так как при этом будут изменяться коэффициенты a, b, c и наша сцена будет нуждаться в повторной визуализации.

Код функции с подробными комментариями:

Функции обработчики перемещения ползунка в TrackBar‘ах будут выглядеть следующим образом:

Для корректной визуализации в том случае, если, например, наше окно перекроет какое-либо другое, мы добавим в нашу форму объект Таймер. Он будет отсчитывать промежутки времени таким образом, чтобы примерно 40 раз в секунду перерисовывать содержимое нашего окна.

Для того чтобы добавить объект, перейдите к окну ToolBox, выберите свитке «Компоненты» элемент Timer (рис. 2) и перетащите на форму.
Windows forms нарисовать треугольникРисунок 2. Добавление элемента Timer для визуализации.
Место, куда вы перетащите этот элемент не важно, он не занимает его на форме и отобразится в полоске таких «не занимающих место» объектов под формой.

Щелкните по нему и перейдите в его свойства.

Смените параметр name на значение RenderTimer, а параметр Interval на значение 25 (раз в 25 миллисекунд будет вызываться событие OnTimer).

Теперь щелкните по нему двойным щелчком левой клавиши мыши. Создатся функция обработчик события OnTimer. Отсюда мы будем вызывать функцию Draw:

Кнопка «Визуализировать» будет отвечать за активацию этого таймера. Для этого будет использоваться функция Start:

И в заключении, назначьте обработчик кнопке «Выйти»:

Вот и все, если вы правильно выполнили все инструкции, то теперь после компиляции и запуска программы вы сможете управлять разложением спектра на треугольнике (рис. 3 и 4).
Windows forms нарисовать треугольникРисунок 3. Пример визуализации треугольника с разложенным спектром в OpenGL C#.
Windows forms нарисовать треугольникРисунок 4. Еще один пример визуализации треугольника с измененными коэффициентами, влияющими на цвета в вершинах.

Видео:Часть 1. Рисуем на C#. Windows Forms. Нажатие мышки. System.Drawing / Класс Graphics.Скачать

Часть 1. Рисуем на C#. Windows Forms. Нажатие мышки. System.Drawing / Класс Graphics.

Построить треугольник, описать и вписать окружность на C#

В статье мы займемся рисованием, рисовать будем треугольник, вписанную и описанную окружность. Конечно, рисовать будет программа, код которой мы сейчас напишем.

Координаты вершин треугольника будут находиться в структуре “Pt”. Для этого создадим переменные для работы со структурой и саму структуру.

Далее напишем функции для вычисления длин, углов треугольника и т.д. и процедуру для вывода графики на форму.
Пишем функцию нахождения длины строны треугольника по заданным координатам. Будем использовать формулу нахождения расстояния между двумя точками.
S = ((x2 — x1) ^2+ (y2-y1) ^2) ^ (1/2), где (x1, y1) и (x2, y2) — это координаты начала и конца отрезка.

Чтобы найти углы треугольника воспользуемся формулой скалярного произведения векторов
cos(ang) = a/(s1*s2), где a — скалярное произведение векторов s1 и s2,а s1 и s2 — стороны треугольника (абсолютные величины векторов).

Периметр находим как сумма длин трех сторон треугольника.

Площадь треугольника находится с помощью формулы Герона:

Теперь найдем радиусы вписанной и описанной окружности.

И, наконец, процедура, которая будет осуществлять конечные вычисления, и рисовать окружность на форме программы.

Процедура кнопки, которая будет вызывать всю процедуру рисования треугольника и окружностей.

Объявим нужные переменные и занесем в структуру координаты вершин треугольника из текстовых полей на форме.

Нарисуем форме три линии, которые будут составлять наш треугольник и названия вершин A, B и C.

Используя написанные функции, найдем длины сторон, полупериметр, площадь, радиусы вписанной и описанной окружности и углы треугольника.

Выведем на форму все эти вычисленные значения в ListBox “znach”.

Найдем середины сторон s1 и s2.

Необходимо повернуть точки на угол 90 градусов.
Поворачиваем точку а[2] вокруг середины стороны:

Поворачиваем точку а[0] вокруг середины стороны s1:

Вызовем нашу процедуру для вывода графики и построим описанную окружность с центром в точке пересечения серединных перепендикуляров.

int coef1 = 1, coef2 = 1; //коэффициенты,указывающие напрвление поворота
Вычисляем знак третьей координаты векторного произведения векторов, между которыми строится биссектриса.

Поворачиваем точку a[2] вокруг a[0] на угол равный половине угла ang2

И последнее, что мы делаем это выполняем построение вписанной окружности с центром в точке пересечения биссектрисс.

Windows forms нарисовать треугольник

Построить треугольник, описать и вписать окружность

Треугольник и две окружности построены, для решения этой задачи нам понадобились небольшие знания C# и геометрии.
Автор: Евтеев Евгений Александрович

💥 Видео

КАК НАРИСОВАТЬ ТРЕУГОЛЬНИК В КОНСОЛИ C# | C# ДОМАШНИЕ ЗАДАНИЯ | #5Скачать

КАК НАРИСОВАТЬ ТРЕУГОЛЬНИК В КОНСОЛИ C# | C# ДОМАШНИЕ ЗАДАНИЯ | #5

Треугольник серпинского методом хаоса C# WINFORMSСкачать

Треугольник серпинского методом хаоса C# WINFORMS

Как построить графики в Windows Forms. Компонент - Chart (Пример кода на C++/C#)Скачать

Как построить графики в Windows Forms. Компонент - Chart (Пример кода на C++/C#)

C# .NET Windows Form | СОЗДАЁМ PAINT НА C#Скачать

C# .NET Windows Form | СОЗДАЁМ PAINT НА C#

C# .NET Windows Form | РИСУЕМ ГРАФИК НА C#Скачать

C# .NET Windows Form | РИСУЕМ ГРАФИК НА C#

Основы рисования на C#Скачать

Основы рисования на C#

Как сделать вкладки в Windows Forms. Компонент - TabControlСкачать

Как сделать вкладки в Windows Forms. Компонент - TabControl

Компонент Chart. Построение графика функцииСкачать

Компонент Chart. Построение графика функции

Уроки C# – Анимация в Windows Forms с амплитудойСкачать

Уроки C# – Анимация в Windows Forms с амплитудой

Рисуем треугольник VB.Скачать

Рисуем треугольник VB.

049 - Windows Form C# Button ControlСкачать

049 - Windows Form C# Button Control

C# обучение - User Control. Рисуем графический интерфейс GUI.Скачать

C# обучение - User Control. Рисуем графический интерфейс GUI.

Уроки C# .NET Windows Forms / #2 - Создание дизайна для окна авторизацииСкачать

Уроки C# .NET Windows Forms / #2 - Создание дизайна для окна авторизации

Стиль Material Design в Windows FormsСкачать

Стиль Material Design в Windows Forms

Математика это не ИсламСкачать

Математика это не Ислам
Поделиться или сохранить к себе: