Термінова допомога студентам
Дипломи, курсові, реферати, контрольні...

Технічне завдання. 
Використання засобів візуального програмування для побудови графіка функції та креслення

РефератДопомога в написанніДізнатися вартістьмоєї роботи

Умови експлуатації. Умови експлуатації повинні відповідати санітарним і технічним нормам експлуатації програми. Для обслуговування системи допускаються тільки спеціально навчені адміністратори, викладачі або розробники. Коротка характеристика програмного забезпечення по організації тестування; підстава і призначення розробки; вимоги до програмного комплексу і документація; стадії і етапи розробки… Читати ще >

Технічне завдання. Використання засобів візуального програмування для побудови графіка функції та креслення (реферат, курсова, диплом, контрольна)

Найменування — курсова робота з візуального програмування «Побудова графіка функції та креслення» .

Стислий опис. Програма здійснює побудову графіку функції, що залежить від коефіцієнту, а та змінної х, а також відображує креслення, згідно завдання.

Область застосування програми — використання програми як навчальний посібник.

Підстава для розробки. Розробка даної програми ведеться на підставі завдання курсової роботи з дисципліни «Інструментальні засоби візуального програмування» .

Реалізація даної програми ведеться в рамках проходження навчального курсу з дисципліни, в результаті опрацювання теоретичного матеріалу та придбання практичних навичок роботи у візуальному середовищі.

Призначення розробки. Мета програми — закріпити знання після проходження курсу лекцій та практичних робіт, опрацювання здобутих навичок програмування за допомогою інструментальних засобів та візуального середовища.

Функціональне і експлуатаційне призначення програми, що розробляється:

  • — Функціональне призначення: програма призначена для побудови графіку функції, що залежить від певних показників, які вводить користувач, та відображення креслення згідно завдання курсової роботи.
  • — Експлуатаційне призначення: програма може застосовуватися в усіх візуальних середовищах з підтримкою мови програмування С++ учбового закладу, задовольняючих мінімальним вимогам до програмних і апаратних засобів для нормального функціонування програми.

Вимоги до програмного виробу. При реалізації і використовуванні програми повинні бути враховані вимоги до функціональних характеристик, надійності проекту, умов експлуатації, складу і параметрів технічних засобів, апаратної і програмної сумісності.

Вимоги до функціональних характеристик. Можливості, які повинна надавати програма:

  • — побудова графіку функції та можливість зміни його, шляхом введення користувачем необхідних параметрів;
  • — зображення креслення, що задовольняє індивідуальному завданню до курсової роботи;
  • — ефективне запам’ятовування основних операційних і функціональних засобів програми.

Вимоги до надійності. Вимоги до надійності, які повинна виконувати система:

  • — підтримка функції захисту від несанкціонованого доступу;
  • — обробка помилкових дії користувача і повідомлення про це;
  • — виключення аварійних ситуацій, які прямо або побічно можуть привести до псування апаратної, програмної або інформаційної складової оточення користувача.

Умови експлуатації. Умови експлуатації повинні відповідати санітарним і технічним нормам експлуатації програми. Для обслуговування системи допускаються тільки спеціально навчені адміністратори, викладачі або розробники.

Умови експлуатації наступні:

  • — температура навколишнього повітря +15 — +250С;
  • — відносна вогкість для вибраних типів носіїв даних, не перевищуюча норму (45−60%);
  • — наявність кваліфікованого персоналу.

Вимоги до складу і параметрів технічних засобів. Мінімальні вимоги до програмних і апаратних засобів для нормального функціонування програмного продукту представлені в таблиці 1.

Таблиця 1 — Вимоги до програмних і апаратних засобів

Найменування

Характеристика

Процесор

Intel Core 2 Quad Q8400 @ 2.66Ghz or AMD Phenom II X4 940 @ 3.0Ghz

Оперативна пам’ять

512Mb і більше

Операційна система

Windows XP/Vista/7/8

Монітор

Дозвіл 1366×768

Необхідне місце на жорсткому диску

Не менше 1 Gb

Клавіатура

Genius KB-06 PS/2 — - роз'їм PS/2; 104 кл. + 3 енергосберег.; кабель 1.3м

Маніпулятор «Миша»

Genius Net Scroll+ PS/2 oem — - роз'їм PS/2; 2 кнопки + скролінг-кнопка; кабель 1.4м

Відеокарта

Nvidia Geforce GTX 460 або AMD Radeon HD 5770

Вимоги до інформаційної і програмної сумісності. Засіб реалізації - мова C, тому що мова C/С++ - одна із найпоширеніших мов, що дозволяють на найсучаснішому рівні створювати як окремі прикладні програми Windows, так і розгалужені комплекси, призначені для роботи в корпоративних мережах і в Інтернет.

Вимоги до програмної документації. Попередній склад програмної документації встановлений відповідно до ДСТУ 3008−95 та Єдиній системі програмної документації. Нижче перерахований список програмних документів і їх зміст:

  • — структурна схема системи;
  • — текст програми — запис програми з необхідними поясненнями і коментарями;
  • — опис програми — відомості про логічну і фізичну модель, відомості про функціонування програми;
  • — програма і методика випробувань — вимоги, що підлягають перевірці при випробуванні програми, також порядок і методи контролю;
  • — технічне завдання — цей документ;
  • — записка пояснення — схема алгоритму, загальний опис алгоритму або функціонування програми, а також обґрунтування ухвалених технічних і техніко-економічних рішень;
  • — експлуатаційні документи — інструкції адміністратору, менеджеру і перевізнику.

СТАДІЇ І ЕТАПИ РОЗРОБКИ

Розробка програмного продукту проходить декілька стадій і етапів, які представлені в таблиці 2.

Таблиця 2 — Стадії і етапи розробки програмного продукту

Стадії розробки

Етапи робіт

Зміст робіт

Технічне завдання

07.02.14−25.02.14

Обґрунтування необхідності розробки програми

Коротка характеристика програмного забезпечення по організації тестування; підстава і призначення розробки; вимоги до програмного комплексу і документація; стадії і етапи розробки програми; порядок контролю і приймання

Науково-дослідні роботи

Розробка і затвердження технічного завдання

Ескізний проект

01.03.14−31.03.14

Розробка ескізного проекту

Попередня розробка структури вхідних і вихідних даних; уточнення середовища програмування; розробка і опис загальної алгоритмічної структури розробленої програми

Затвердження ескізного проекту

Технічний проект

Розробка технічного проекту

Уточнення структури вхідних і вихідних даних, визначення форми їх уявлення; розробка докладного алгоритму; розробка структури програми; остаточне визначення конфігурації технічних засобів; розробка заходів щодо упровадження програмного комплексу

Затвердження технічного проекту

Робочий проект

01.04.14−30.04.14

Розробка програми

Реалізація програмного комплексу по тестуванню знань студентів; відладка; розробка методики випробувань; проведення попередніх випробувань (тестування); коректування програмного забезпечення; розробка документації

Розробка програмної документації

Випробування програми

Впровадження

01.05.14−06.06.14

Підготовка і передача програми.

Підготовка і передача програмного комплексу; навчання персоналу використовуванню програмного комплексу; внесення коректувань в програмне забезпечення і документацію

Порядок контролю і приймання. Контроль здійснюється кінцевими користувачами системи, підключеними на етапі тестування системи.

Прийом комплексу здійснюється після його повної установки і настройки під конкретних користувачів і короткого курсу по навчанню користувачів.

Після закінчення розробки системи повинні бути проведені наступні види випробувань: тестування на захист від некоректного введення; тестування на повноту обміну інформацією між різними додатками.

КЕРІВНИЦТВО ПРОГРАМІСТА

Програма містить у собі чотири форми Form1, Начало, О_программе та Справка.

Форма Form1 містить у собі 11 компонентів button, 8 компонентів label, 6 компонентів pictureBox, 2 компонента colorDialog, 2 компонента saveFileDialog, 2 компонента printPreviewDialog, 2 компонента printDocument, 1 компонент tabControl, 1 компонент menuStrip, 1 компонент ToolTip, 4 компоненти textBox, 1компонент ToolStripMenuItem.

Форма Начало містить у собі 1 компонент pictureBox, 1 компонент label та 1 компонент button.

Форма О_программе містить у собі 1 компонент pictureBox.

Форма Справка містить у собі 1 компонент label, panel, pictureBox та два компонента button.

Опис заголовочних файлів програми зображено в таблиці 3.

Таблиця 3 — Опис заголовочних файлів програми

Файл

Призначення

Файл «Form1.h»

Містить у собі методи та функції для побудови графіку функції та виводу креслення, із забезпеченням зміни їхнього кольору, збереження на комп’ютері та виводу на друк.

Файл «Начало»

Містить вступну інформацію про курсову роботу, автора.

Файл «О_программе»

Містить інформацію про програму, її функції та можливості.

Файл «Справка»

Містить інформацію про особливості побудови графіку функції та виведення креслення і роботи з ним.

Опис методів файла «Form1.h» зображено в таблиці 4.

Таблиця 4 — Опис методів файла «Form1.h»

Метод

Призначення

pictureBox1_Paint

Побудова графіку функції у компоненті pictureBox1

Form1_Load

Присвоєння значень змінним, функції виводу підказок, графічних панелей та вкладень.

button2_Click

Очищення області для побудови графіку функції.

pictureBox2_Paint

Виведення на екран креслення, згідно індивідуального завдання.

button3_Click

Зменшення масштабу креслення.

button4_Click

Збільшення масштабу креслення.

textBox1_TextChanged

Введення користувачем коефіцієнту а, від якого залежить функція.

textBox2_TextChanged

Введення початкового значення х.

textBox3_TextChanged

Введення кінцевого значення х.

textBox4_TextChanged

Введення кроку, з яким буде змінюватися змінна х.

button1_Click

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

pictureBox3_Click

Зміна кольору графіку функції.

pictureBox4_Click

Зміна кольору креслення.

button6_Click

Вивід графіку функції на друк.

printDocument1_PrintPage

Функція для друку креслення.

button7_Click

Збереження графіку на комп’ютері.

button5_Click

Вихід з програми.

выходToolStripMenuItem1_Click

Вихід з програми, використовуючи вкладення ГРАФИК ФУНКЦИИ

выходToolStripMenuItem2_Click

Вихід з програми, за допомогою вибору пункту меню ЧЕРТЕЖ.

button10_Click

Збереження креслення у пам’яті комп’ютера.

button9_Click

Вивід на друк креслення

printDocument2_PrintPage

Функція для виводу креслення на друк.

button8_Click

Відкриття раніше збережених на комп’ютері графіків.

сПРАВКАToolStripMenuItem_Click

Виведення довідки програми.

оПРОГРАММЕToolStripMenuItem_Click

Виведення інформації про програму, її автора.

button11_Click

Закриття програми

textBox1_Click

Виведення довідки при натисканні мишкою у текстовому полі.

textBox2_Click

Виведення довідки при натисканні мишкою у текстовому полі.

textBox3_Click

Виведення довідки при натисканні мишкою у текстовому полі.

textBox4_Click

Виведення довідки при натисканні мишкою у текстовому полі.

Опис методів файла «Начало.h» зображено в таблиці 5.

Таблиця 5 — Опис методів файла «Начало.h»

Метод

Призначення

pictureBox1_Click

Відображення інформацію про курсову роботу.

button1_Click

Перехід до головної форми програми.

Начало_Load

Виведення підказки.

Опис методів файла «О_программе.h» зображено в таблиці 6.

Таблиця 6 — Опис методів файла «О_программе.h»

Метод

Призначення

pictureBox1_Click

Вивід інформації про програму, її функції та можливості.

КЕРІВНИЦТВО КОРИСТУВАЧА

Після запуску користувачем програми, відображається стартове вікно, на якому представлена головна інформація (рис. 1).

Стартова сторінка програми.

Рисунок 1 — Стартова сторінка програми.

Програма має вкладку «ГРАФИК ФУНКЦИИ», що включає в себе такі функції: побудова графіка функції, після введення користувачем відповідних значень, очищення графіка, зміна кольору графіка, збереження графіка у файл, відкриття раніше збережених у комп’ютері графіків, виведення таблиці значень х та у після натиску на кнопку «ПОСТРОИТЬ ГРАФИК» та виведення графіка функції на друк (рис. 2).

Вкладка .

Рисунок 2 — Вкладка «ГРАФИК ФУНКЦИИ» .

Для того, щоб програма будувала графік даної функції, необхідно ввести коефіцієнт а, початкове та кінцеве значення змінної х та крок, з яким він змінюється на цьому проміжку, і натиснути на кнопку «Построить график» або обрати пункт меню «График — Построить». Коли курсор миші затримується у текстовому полі для вводу значень, виводиться підказка, як саме правильно потрібно їх вводити. При клацанні на текстовому полі для введення значень, виводиться панель з довідкою (рис. 3).

Побудова графіка функції.

Рисунок 3 — Побудова графіка функції.

Для того, щоб очистити поле для виведення графіку, треба натиснути на кнопку «ОЧИСТИТЬ ГРАФИК» (рис. 4).

Кнопка .

Рисунок 4 — Кнопка «ОЧИСТИТЬ ГРАФИК» .

Зміна кольору графіка функції.

Рисунок 5 — Зміна кольору графіка функції.

Для зміни кольору графіка, треба натиснути на прямокутник у блоці «Цвет графика» (рис. 5).

Для того, щоб зберегти графік функції у вигляді малюнку, треба натиснути на кнопку «СОХРАНИТЬ ГРАФИК», вибрати шлях збереження та ввести назву (рис. 6).

Збереження графіку функції у пам'яті комп'ютера.

Рисунок 6 — Збереження графіку функції у пам’яті комп’ютера.

Для того, щоб відкрити вже збережені графіки на комп’ютері, потрібно натиснути на кнопку «ОТКРЫТЬ ГРАФИК» та вибрати малюнок з графіком (рис. 7).

Відкриття раніше збереженого на комп'ютері графіку.

Рисунок 7 — Відкриття раніше збереженого на комп’ютері графіку.

Для того, щоб відправити графік функції на друк, треба натиснути на кнопку «ПЕЧАТЬ» (рис. 8).

Вивід графіку функції на друк.

Рисунок 8 — Вивід графіку функції на друк.

Для перегляду креслення, потрібно перейти на вкладення «ЧЕРТЕЖ», що включає в себе такі функції: зміна кольору креслення, збереження креслення у файл, виведення креслення на друк та збільшення або зменшення масштабу креслення (рис. 9).

Вкладка .

Рисунок 9 — Вкладка «ЧЕРТЕЖ» .

Для виводу креслення на друк, треба натиснути на кнопку «ПЕЧАТЬ» (рис. 10). візуальне програмування уніфікована моделювання

Друк креслення.

Рисунок 10 — Друк креслення.

Для збереження креслення у комп’ютері, треба натиснути на кнопку «СОХРАНИТЬ», вибрати шлях та ввести назву (рис. 11).

Збереження креслення.

Рисунок 11 — Збереження креслення.

Для того, щоб змінити колір креслення необхідно натиснути на кольоровий квадрат з написом «Изменение цвета» і в діалоговому вікні, що відкрилося, обрати з кольорової палітри необхідний колір та підтвердити свій вибір (рис. 12).

Заміна кольору креслення.

Рисунок 12 — Заміна кольору креслення.

Для збільшення масштабу креслення, потрібно натиснути на кнопку «Увеличить»

Для зменшення масштабу креслення, потрібно натиснути на кнопку «Уменшить» на панелі «Масштаб»

Для того щоб викликати довідку необхідно вибрати меню «СПРАВКА», у якому містяться дві кнопки «ЧЕРТЕЖ» та «ГРАФИК»

При натисканні на кнопку «ЧЕРТЕЖ» на екрані з’явиться інформація про вкладення «ЧЕРТЕЖ», та можливості, які воно надає. Є можливість прокрутки зображення

При натисканні на кнопці «ГРАФИК» на екрані з’являється інформація про вкладення «ГРАФИК ФУНКЦИИ» та можливості, які воно надає

При натиску на меню «О ПРОГРАММЕ» виводиться вікно з головною інформацією про програму

При наводженні курсору на будь-який компонент програми для користувача виводиться повідомлення, про те, що виконує тій чи інший компонент

Також, при клацанні на текстове поле для введення даних, у панелі праворуч виводиться зображення з довідкою та правилами: як потрібно вводити дані для побудови графіку.

ТЕКСТ ПРОГРАМИ

Лістинг програми. Файл «Form1.h»

#pragma endregion

int pechat, draw;

float x1, y1,x2,y2,a, t, tsl, t1, t2,step, koef, ochistka, centrex, centrey, xk, xn;

int rx, ry, counter, i, znacheniya;

String^ errora;

String^ errort;

String^ errorstep1;

String^ errorstep2;

private: System: Void pictureBox1_Paint (System:Object^ sender, System: Windows:Forms:PaintEventArgs^ e) //малювання графіку

{

if (draw==1)

{

System:Drawing:Graphics^i=e->Graphics;

System:Drawing:Pen ^p;

System:Drawing:Brush ^b;

System:Drawing:Font^ font= gcnew System: Drawing:Font («Times New Roman», 12);

i->Clear (SystemColors:Control);

p=gcnew System: Drawing:Pen (Color:BlueViolet, 2);

Brush^ br=gcnew SolidBrush (Color:Black);

i->DrawString («-1», font, br, 343, 215);

i->DrawString («-1», font, br, 302, 180);

i->DrawString («0», font, br, 350, 180);

i->DrawString («1», font, br, 408, 180);

i->DrawString («1», font, br, 346, 115);

i->DrawString («Ox», font, br, 710, 180);

i->DrawString («Oy», font, br, 340, 5);

i->DrawLine (p, 365,0,365,700);

i->DrawLine (p, 0,175,750,175);

for (rx=15;rx<765;rx+=50)

{

i->DrawLine (p, rx, 170, rx, 180);

}

for (ry=25;ry<725;ry+=50)

{

i->DrawLine (p, 360, ry, 370, ry);

}

for (x1=xn;x1

{

if ((x1*x1*x1)/(x1+a)>0)

{

y1=sqrt ((x1*x1*x1)/(x1+a));

x2=x1+step;

y2=sqrt ((x2*x2*x2)/(x2+a));

i->DrawLine (gcnew System: Drawing:Pen (pictureBox3->BackColor, 2), x1*50+365,-y1*50+175,x2*50+365,-y2*50+175);

}

}

}

}

private: System: Void Form1_Load (System:Object^ sender, System: EventArgs^ e)//завантаження головної форми програми, присвоєння змінним значень

{

Началоform = gcnew Начало ();

Form1:Visible=false;

form->ShowDialog ();

Form1:Visible=true;

a=2;

xk=1;

xn=1;

step=0.01;

koef=1;

button1->Enabled=false;

button2->Enabled=false;

ochistka=0;

counter=0;

dataGridView1->Visible=false;

znacheniya=0;

centrex=406;

centrey=230;

label8->Text = «Масштаб „+ 100*koef+“ %» ;

draw=1;

toolTip1->SetToolTip (textBox1," Введите коэффициент. ВНИМАНИЕ! Коэффициент не должен быть равен обратному значению переменной х!");

toolTip1->IsBalloon = true;

toolTip1->SetToolTip (textBox2, «Введите начальное значение переменной х. ВНИМАНИЕ! Значение не должно быть равно обратному значению коэффициента а!»);

toolTip1->SetToolTip (textBox3, «Введите конечное значение переменной х. ВНИМАНИЕ! Значение не должно быть меньше начального значения переменной х!»);

toolTip1->SetToolTip (textBox4, «Введите шаг, с которым будет изменяться х. ВНИМАНИЕ! Значение не должно быть меньше нуля! Формат ввода через запятую!»);

groupBox5->Visible=false;

groupBox4->Visible=false;

}

private: System: Void button2_Click (System:Object^ sender, System: EventArgs^ e) //кнопка для очищення графіку

{

dataGridView1->Rows->Clear ();

dataGridView1->Visible=false;

ochistka=1;

button2->Enabled=false;

a=2;

xk=1;

xn=1;

step=0.01;

Form1:Refresh ();

PaintEventArgsp = gcnew PaintEventArgs (pictureBox1->CreateGraphics (), pictureBox1->Bounds);

pictureBox1_Paint (sender, p);

}

private: System: Void pictureBox2_Paint (System:Object^ sender, System: Windows:Forms:PaintEventArgs^ e)//малювання креслення

{

System:Drawing:Graphics^i=e->Graphics;

System:Drawing:Pen ^p;

System:Drawing:Pen ^p1;

System:Drawing:Font^ font= gcnew System: Drawing:Font («Times New Roma», 14*koef);

p=gcnew System: Drawing:Pen (Color:Black, 3);

p1=gcnew System: Drawing:Pen (Color:Black, 1);

HatchBrushhBrush1 = gcnew HatchBrush (HatchStyle:ForwardDiagonal, pictureBox4->BackColor, Color: White);

HatchBrushhBrush2 = gcnew HatchBrush (HatchStyle:BackwardDiagonal, pictureBox4->BackColor, Color: White);

if (koef==0.5)

{

i->FillPie (hBrush2,396,220,20,20,270,180);

}

if (koef==1)

{

i->FillPie (hBrush2,386,210,40,40,270,180);

}

if (koef==2)

{

i->FillPie (hBrush2,366,190,80,80,270,180);

}

array ^ triangle1 =gcnew array (3);

triangle1 [0]. X=centrex-48*koef;

triangle1 [0]. Y=centrey-42*koef;

triangle1 [1]. X=centrex-48*koef;

triangle1 [1]. Y=centrey+42*koef;

triangle1 [2]. X=centrex-97*koef;

triangle1 [2]. Y=centrey+42*koef;

i->FillPolygon (hBrush1,triangle1);

array ^ triangle2 =gcnew array (3);

triangle2 [0]. X=centrex+48*koef;

triangle2 [0]. Y=centrey-42*koef;

triangle2 [1]. X=centrex+48*koef;

triangle2 [1]. Y=centrey+40*koef;

triangle2 [2]. X=centrex+97*koef;

triangle2 [2]. Y=centrey-42*koef;

i->FillPolygon (hBrush2,triangle2);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 3), centrex-48*koef, centrey-42*koef, centrex-97*koef, centrey+42*koef);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 3), centrex-48*koef, centrey+42*koef, centrex-97*koef, centrey+42*koef);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 3), centrex+48*koef, centrey-42*koef, centrex+97*koef, centrey-42*koef);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 3), centrex+97*koef, centrey-42*koef, centrex+48*koef, centrey+42*koef);

i->DrawEllipse (gcnew System: Drawing:Pen (pictureBox4->BackColor, 3), centrex-20*koef, centrey-20*koef, 40*koef, 40*koef);

i->DrawRectangle (gcnew System: Drawing:Pen (pictureBox4->BackColor, 3), centrex-48*koef, centrey-42*koef, 96*koef, 84*koef);

i->DrawRectangle (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex-144*koef, centrey-42*koef, 96*koef, 84*koef);

i->DrawRectangle (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex-97*koef, centrey+42*koef, 145*koef, 27*koef);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex, centrey, centrex+65*koef, centrey-90*koef);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex, centrey-25*koef, centrex, centrey+25*koef);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex+97*koef, centrey-42*koef, centrex+97*koef, centrey+100*koef);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex+97*koef, centrey+100*koef, centrex-97*koef, centrey+100*koef);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex-97*koef, centrey+100*koef, centrex-97*koef, centrey+42*koef);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex-92*koef, centrey, centrex-65*koef, centrey);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex-60*koef, centrey, centrex-55*koef, centrey);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex-50*koef, centrey, centrex-10*koef, centrey);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex-5*koef, centrey, centrex+5*koef, centrey);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex+92*koef, centrey, centrex+65*koef, centrey);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex+60*koef, centrey, centrex+55*koef, centrey);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex+50*koef, centrey, centrex+10*koef, centrey);

array ^ wise =gcnew array (3);

wise [0]. X=centrex-144*koef;

wise [0]. Y=centrey-42*koef;

wise [1]. X=centrex-147*koef;

wise [1]. Y=centrey-32*koef;

wise [2]. X=centrex-141*koef;

wise [2]. Y=centrey-32*koef;

i->DrawPolygon (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), wise);

i->FillPolygon (gcnew SolidBrush (pictureBox4->BackColor), wise);

wise [0]. X=centrex-144*koef;

wise [0]. Y=centrey+42*koef;

wise [1]. X=centrex-147*koef;

wise [1]. Y=centrey+32*koef;

wise [2]. X=centrex-141*koef;

wise [2]. Y=centrey+32*koef;

i->DrawPolygon (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), wise);

i->FillPolygon (gcnew SolidBrush (pictureBox4->BackColor), wise);

wise [0]. X=centrex-97*koef;

wise [0]. Y=centrey+100*koef;

wise [1]. X=centrex-87*koef;

wise [1]. Y=centrey+97*koef;

wise [2]. X=centrex-87*koef;

wise [2]. Y=centrey+103*koef;

i->DrawPolygon (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), wise);

i->FillPolygon (gcnew SolidBrush (pictureBox4->BackColor), wise);

wise [0]. X=centrex+97*koef;

wise [0]. Y=centrey+100*koef;

wise [1]. X=centrex+87*koef;

wise [1]. Y=centrey+97*koef;

wise [2]. X=centrex+87*koef;

wise [2]. Y=centrey+103*koef;

i->DrawPolygon (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), wise);

i->FillPolygon (gcnew SolidBrush (pictureBox4->BackColor), wise);

wise [0]. X=centrex-97*koef;

wise [0]. Y=centrey+69*koef;

wise [1]. X=centrex-87*koef;

wise [1]. Y=centrey+66*koef;

wise [2]. X=centrex-87*koef;

wise [2]. Y=centrey+72*koef;

i->DrawPolygon (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), wise);

i->FillPolygon (gcnew SolidBrush (pictureBox4->BackColor), wise);

wise [0]. X=centrex+48*koef;

wise [0]. Y=centrey+69*koef;

wise [1]. X=centrex+38*koef;

wise [1]. Y=centrey+66*koef;

wise [2]. X=centrex+38*koef;

wise [2]. Y=centrey+72*koef;

i->DrawPolygon (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), wise);

i->FillPolygon (gcnew SolidBrush (pictureBox4->BackColor), wise);

wise [0]. X=centrex+11*koef;

wise [0]. Y=centrey-16*koef;

wise [1]. X=centrex+14*koef;

wise [1]. Y=centrey-25*koef;

wise [2]. X=centrex+19*koef;

wise [2]. Y=centrey-21*koef;

i->DrawPolygon (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), wise);

i->FillPolygon (gcnew SolidBrush (pictureBox4->BackColor), wise);

i->DrawString («280», font, gcnew SolidBrush (pictureBox4->BackColor), centrex-42*koef, centrey+47*koef);

i->DrawString («378», font, gcnew SolidBrush (pictureBox4->BackColor), centrex-16*koef, centrey+78*koef);

i->RotateTransform (270);

i->DrawString («378», font, gcnew SolidBrush (pictureBox4->BackColor),-(centrey+15*koef), centrex-167*koef);

i->DrawString («R75», font, gcnew SolidBrush (pictureBox4->BackColor), 717,-255);

i->RotateTransform (37);

if (koef==0.5) i->DrawString («R40», font, gcnew SolidBrush (pictureBox4->BackColor), 90, 450);

if (koef==1) i->DrawString («R40», font, gcnew SolidBrush (pictureBox4->BackColor), 125, 440);

if (koef==2) i->DrawString («R40», font, gcnew SolidBrush (pictureBox4->BackColor), 177, 420);

}

private: System: Void button3_Click (System:Object^ sender, System: EventArgs^ e) //масштаб для креслення

{

if (koef==1) koef=2;

if (koef==0.5) koef=1;

pictureBox2->Image = nullptr;

pictureBox2->Refresh ();

label8->Text = «Масштаб „+ 100*koef+“ %» ;

PaintEventArgsp = gcnew PaintEventArgs (pictureBox2->CreateGraphics (), pictureBox2->Bounds);

pictureBox2_Paint (sender, p);

}

private: System: Void button4_Click (System:Object^ sender, System: EventArgs^ e)//масштаб для креслення

{

if (koef==1) koef=0.5;

if (koef==2) koef=1;

pictureBox2->Image = nullptr;

pictureBox2->Refresh ();

label8->Text = «Масштаб „+ 100*koef+“ %» ;

PaintEventArgsp = gcnew PaintEventArgs (pictureBox2->CreateGraphics (), pictureBox2->Bounds);

pictureBox2_Paint (sender, p);

}

private: System: Void textBox1_TextChanged (System:Object^ sender, System: EventArgs^ e) //введення коефіціенту а

{

if (textBox1->Text->Length==0||textBox2->Text->Length==0||textBox3->Text->Length==0||textBox4->Text->Length==0)

{

button1->Enabled=false;

}

else button1->Enabled=true;

}

private: System: Void textBox2_TextChanged (System:Object^ sender, System: EventArgs^ e)//введення початкового значення змінної х

{

if (textBox1->Text->Length==0||textBox2->Text->Length==0||textBox3->Text->Length==0||textBox4->Text->Length==0)

{

button1->Enabled=false;

}

else button1->Enabled=true;

}

private: System: Void textBox3_TextChanged (System:Object^ sender, System: EventArgs^ e)//введення кінцевого значення змінної х

{

if (textBox1->Text->Length==0||textBox2->Text->Length==0||textBox3->Text->Length==0||textBox4->Text->Length==0)

{

button1->Enabled=false;

}

else button1->Enabled=true;

}

private: System: Void textBox4_TextChanged (System:Object^ sender, System: EventArgs^ e)//введення кроку, з яким буде змінюватися х

{

if (textBox1->Text->Length==0||textBox2->Text->Length==0||textBox3->Text->Length==0||textBox4->Text->Length==0)

{

button1->Enabled=false;

}

else button1->Enabled=true;

}

private: System: Void button1_Click (System:Object^ sender, System: EventArgs^ e)//побудова графіка

{

draw=1;

a=Convert:ToSingle (textBox1->Text);

xn=Convert:ToSingle (textBox2->Text);

xk=Convert:ToSingle (textBox3->Text);

step=Convert:ToSingle (textBox4->Text);

if (znacheniya==1)

{

dataGridView1->Rows->Clear ();

dataGridView1->Visible=false;

}

znacheniya=1;

ochistka=1;

button2->Enabled=true;

PaintEventArgsp = gcnew PaintEventArgs (pictureBox1->CreateGraphics (), pictureBox1->Bounds);

pictureBox1_Paint (sender, p);

dataGridView1->Visible=true;

if (groupBox4->Visible == false) groupBox4->Visible = true;

i=0;

for (x1=xn;x1

{

if ((x1*x1*x1)/(x1+a)>0)

{

y1=sqrt ((x1*x1*x1)/(x1+a));

dataGridView1->Rows->Add ();

dataGridView1->Rows [i]->Cells [0]->Value = x1;

dataGridView1->Rows [i]->Cells [1]->Value = y1;

i++;}

}

dataGridView1->Visible=true;

}

private: System: Void pictureBox3_Click (System:Object^ sender, System: EventArgs^ e)//зміна кольору графіка

{

colorDialog1->ShowDialog ();

pictureBox3->BackColor = colorDialog1->Color;

PaintEventArgsp = gcnew PaintEventArgs (pictureBox1->CreateGraphics (), pictureBox1->Bounds);

pictureBox1_Paint (sender, p);

}

private: Syst…

i->FillPolygon (gcnew SolidBrush (pictureBox4->BackColor), wise);

wise [0]. X=centrex-97*koef;

wise [0]. Y=centrey+100*koef;

wise [1]. X=centrex-87*koef;

wise [1]. Y=centrey+97*koef;

wise [2]. X=centrex-87*koef;

wise [2]. Y=centrey+103*koef;

i->DrawPolygon (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), wise);

i->FillPolygon (gcnew SolidBrush (pictureBox4->BackColor), wise);

wise [0]. X=centrex+97*koef;

wise [0]. Y=centrey+100*koef;

wise [1]. X=centrex+87*koef;

wise [1]. Y=centrey+97*koef;

wise [2]. X=centrex+87*koef;

wise [2]. Y=centrey+103*koef;

i->DrawPolygon (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), wise);

i->FillPolygon (gcnew SolidBrush (pictureBox4->BackColor), wise);

wise [0]. X=centrex-97*koef;

wise [0]. Y=centrey+69*koef;

wise [1]. X=centrex-87*koef;

wise [1]. Y=centrey+66*koef;

wise [2]. X=centrex-87*koef;

wise [2]. Y=centrey+72*koef;

i->DrawPolygon (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), wise);

i->FillPolygon (gcnew SolidBrush (pictureBox4->BackColor), wise);

wise [0]. X=centrex+48*koef;

wise [0]. Y=centrey+69*koef;

wise [1]. X=centrex+38*koef;

wise [1]. Y=centrey+66*koef;

wise [2]. X=centrex+38*koef;

wise [2]. Y=centrey+72*koef;

i->DrawPolygon (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), wise);

i->FillPolygon (gcnew SolidBrush (pictureBox4->BackColor), wise);

wise [0]. X=centrex+11*koef;

wise [0]. Y=centrey-16*koef;

wise [1]. X=centrex+14*koef;

wise [1]. Y=centrey-25*koef;

wise [2]. X=centrex+19*koef;

wise [2]. Y=centrey-21*koef;

i->DrawPolygon (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), wise);

i->FillPolygon (gcnew SolidBrush (pictureBox4->BackColor), wise);

i->DrawString («280», font, gcnew SolidBrush (pictureBox4->BackColor), centrex-42*koef, centrey+47*koef);

i->DrawString («378», font, gcnew SolidBrush (pictureBox4->BackColor), centrex-16*koef, centrey+78*koef);

i->RotateTransform (270);

i->DrawString («378», font, gcnew SolidBrush (pictureBox4->BackColor),-(centrey+15*koef), centrex-167*koef);

i->DrawString («R75», font, gcnew SolidBrush (pictureBox4->BackColor), 717,-255);

i->RotateTransform (37);

if (koef==0.5) i->DrawString («R40», font, gcnew SolidBrush (pictureBox4->BackColor), 90, 450);

if (koef==1) i->DrawString («R40», font, gcnew SolidBrush (pictureBox4->BackColor), 125, 440);

if (koef==2) i->DrawString («R40», font, gcnew SolidBrush (pictureBox4->BackColor), 177, 420);

}

private: System: Void button7_Click (System:Object^ sender, System: EventArgs^ e)//збереження графіку

{

saveFileDialog1->AddExtension=true;

saveFileDialog1->Filter = «*.bmp|*.bmp» ;

if (saveFileDialog1->ShowDialog () == System: Windows:Forms:DialogResult:OK)

{

a=Convert:ToSingle (textBox1->Text);

xn=Convert:ToSingle (textBox2->Text);

xk=Convert:ToSingle (textBox3->Text);

step=Convert:ToSingle (textBox4->Text);

pictureBox1->Image = gcnew Bitmap (557, 286);

Graphics^ i = Graphics: FromImage (pictureBox1->Image);

System:Drawing:Pen ^p;

System:Drawing:Brush ^b;

System:Drawing:Font^ font= gcnew System: Drawing:Font («Times New Roman», 12);

i->Clear (SystemColors:Control);

p=gcnew System: Drawing:Pen (Color:BlueViolet, 2);

Brush^ br=gcnew SolidBrush (Color:Black);

i->DrawString («-1», font, br, 343, 215);

i->DrawString («-1», font, br, 302, 180);

i->DrawString («0», font, br, 350, 180);

i->DrawString («1», font, br, 408, 180);

i->DrawString («1», font, br, 346, 115);

i->DrawString («Ox», font, br, 710, 180);

i->DrawString («Oy», font, br, 340, 5);

i->DrawLine (p, 365,0,365,700);

i->DrawLine (p, 0,175,750,175);

for (rx=15;rx<765;rx+=50)

{

i->DrawLine (p, rx, 170, rx, 180);

}

for (ry=25;ry<725;ry+=50)

{

i->DrawLine (p, 360, ry, 370, ry);

}

for (x1=xn;x1

{

if ((x1*x1*x1)/(x1+a)>0)

{

y1=sqrt ((x1*x1*x1)/(x1+a));

x2=x1+step;

y2=sqrt ((x2*x2*x2)/(x2+a));

i->DrawLine (gcnew System: Drawing:Pen (pictureBox3->BackColor, 2), x1*50+365,-y1*50+175,x2*50+365,-y2*50+175);

}

}

pictureBox1->Image->Save (saveFileDialog1->FileName, System: Drawing:Imaging:ImageFormat:Bmp);

}

}

private: System: Void button5_Click (System:Object^ sender, System: EventArgs^ e)//вихід з програми

{

Close ();

}

private: System: Void выходToolStripMenuItem1_Click (System:Object^ sender, System: EventArgs^ e)//вихід

{

Close ();

}

private: System: Void выходToolStripMenuItem2_Click (System:Object^ sender, System: EventArgs^ e) закриття програми

{

Close ();

}

private: System: Void button10_Click (System:Object^ sender, System: EventArgs^ e)//збереження креслення

{

saveFileDialog1->Filter = «JPG Files (*.jpg)|*.jpg» ;

saveFileDialog1->FileName = «Безымянный-1.jpg» ;

if (saveFileDialog1->ShowDialog ()==System:Windows:Forms:DialogResult:OK)

{

pictureBox2->Image = gcnew Bitmap (812, 446);

Graphics^ i = Graphics: FromImage (pictureBox2->Image);

System:Drawing:Pen ^p;

System:Drawing:Pen ^p1;

System:Drawing:Font^ font= gcnew System: Drawing:Font («Times New Roman», 14*koef);

p=gcnew System: Drawing:Pen (Color:Black, 3);

p1=gcnew System: Drawing:Pen (Color:Black, 1);

HatchBrushhBrush1 = gcnew HatchBrush (HatchStyle:ForwardDiagonal, pictureBox4->BackColor, Color: White);

HatchBrushhBrush2 = gcnew HatchBrush (HatchStyle:BackwardDiagonal, pictureBox4->BackColor, Color: White);

i->Clear (Color:White);

if (koef==0.5)

{

i->FillPie (hBrush2,396,220,20,20,270,180);

}

if (koef==1)

{

i->FillPie (hBrush2,386,210,40,40,270,180);

}

if (koef==2)

{

i->FillPie (hBrush2,366,190,80,80,270,180);

}

array ^ triangle1 =gcnew array (3);

triangle1 [0]. X=centrex-48*koef;

triangle1 [0]. Y=centrey-42*koef;

triangle1 [1]. X=centrex-48*koef;

triangle1 [1]. Y=centrey+42*koef;

triangle1 [2]. X=centrex-97*koef;

triangle1 [2]. Y=centrey+42*koef;

i->FillPolygon (hBrush1,triangle1);

array ^ triangle2 =gcnew array (3);

triangle2 [0]. X=centrex+48*koef;

triangle2 [0]. Y=centrey-42*koef;

triangle2 [1]. X=centrex+48*koef;

triangle2 [1]. Y=centrey+40*koef;

triangle2 [2]. X=centrex+97*koef;

triangle2 [2]. Y=centrey-42*koef;

i->FillPolygon (hBrush2,triangle2);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 3), centrex-48*koef, centrey-42*koef, centrex-97*koef, centrey+42*koef);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 3), centrex-48*koef, centrey+42*koef, centrex-97*koef, centrey+42*koef);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 3), centrex+48*koef, centrey-42*koef, centrex+97*koef, centrey-42*koef);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 3), centrex+97*koef, centrey-42*koef, centrex+48*koef, centrey+42*koef);

i->DrawEllipse (gcnew System: Drawing:Pen (pictureBox4->BackColor, 3), centrex-20*koef, centrey-20*koef, 40*koef, 40*koef);

i->DrawRectangle (gcnew System: Drawing:Pen (pictureBox4->BackColor, 3), centrex-48*koef, centrey-42*koef, 96*koef, 84*koef);

i->DrawRectangle (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex-144*koef, centrey-42*koef, 96*koef, 84*koef);

i->DrawRectangle (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex-97*koef, centrey+42*koef, 145*koef, 27*koef);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex, centrey, centrex+65*koef, centrey-90*koef);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex, centrey-25*koef, centrex, centrey+25*koef);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex+97*koef, centrey-42*koef, centrex+97*koef, centrey+100*koef);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex+97*koef, centrey+100*koef, centrex-97*koef, centrey+100*koef);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex-97*koef, centrey+100*koef, centrex-97*koef, centrey+42*koef);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex-92*koef, centrey, centrex-65*koef, centrey);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex-60*koef, centrey, centrex-55*koef, centrey);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex-50*koef, centrey, centrex-10*koef, centrey);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex-5*koef, centrey, centrex+5*koef, centrey);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->Backolor, 1), centrex+92*koef, centrey, centrex+65*koef, centrey);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex+60*koef, centrey, centrex+55*koef, centrey);

i->DrawLine (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), centrex+50*koef, centrey, centrex+10*koef, centrey);

array ^ wise =gcnew array (3);

wise [0]. X=centrex-144*koef;

wise [0]. Y=centrey-42*koef;

wise [1]. X=centrex-147*koef;

wise [1]. Y=centrey-32*koef;

wise [2]. X=centrex-141*koef;

wise [2]. Y=centrey-32*koef;

i->DrawPolygon (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), wise);

i->FillPolygon (gcnew SolidBrush (pictureBox4->BackColor), wise);

wise [0]. X=centrex-144*koef;

wise [0]. Y=centrey+42*koef;

wise [1]. X=centrex-147*koef;

wise [1]. Y=centrey+32*koef;

wise [2]. X=centrex-141*koef;

wise [2]. Y=centrey+32*koef;

i->DrawPolygon (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), wise);

i->FillPolygon (gcnew SolidBrush (pictureBox4->BackColor), wise);

wise [0]. X=centrex-97*koef;

wise [0]. Y=centrey+100*koef;

wise [1]. X=centrex-87*koef;

wise [1]. Y=centrey+97*koef;

wise [2]. X=centrex-87*koef;

wise [2]. Y=centrey+103*koef;

i->DrawPolygon (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), wise);

i->FillPolygon (gcnew SolidBrush (pictureBox4->BackColor), wise);

wise [0]. X=centrex+97*koef;

wise [0]. Y=centrey+100*koef;

wise [1]. X=centrex+87*koef;

wise [1]. Y=centrey+97*koef;

wise [2]. X=centrex+87*koef;

wise [2]. Y=centrey+103*koef;

i->DrawPolygon (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), wise);

i->FillPolygon (gcnew SolidBrush (pictureBox4->BackColor), wise);

wise [0]. X=centrex-97*koef;

wise [0]. Y=centrey+69*koef;

wise [1]. X=centrex-87*koef;

wise [1]. Y=centrey+66*koef;

wise [2]. X=centrex-87*koef;

wise [2]. Y=centrey+72*koef;

i->DrawPolygon (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), wise);

i->FillPolygon (gcnew SolidBrush (pictureBox4->BackColor), wise);

wise [0]. X=centrex+48*koef;

wise [0]. Y=centrey+69*koef;

wise [1]. X=centrex+38*koef;

wise [1]. Y=centrey+66*koef;

wise [2]. X=centrex+38*koef;

wise [2]. Y=centrey+72*koef;

i->DrawPolygon (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), wise);

i->FillPolygon (gcnew SolidBrush (pictureBox4->BackColor), wise);

wise [0]. X=centrex+11*koef;

wise [0]. Y=centrey-16*koef;

wise [1]. X=centrex+14*koef;

wise [1]. Y=centrey-25*koef;

wise [2]. X=centrex+19*koef;

wise [2]. Y=centrey-21*koef;

i->DrawPolygon (gcnew System: Drawing:Pen (pictureBox4->BackColor, 1), wise);

i->FillPolygon (gcnew SolidBrush (pictureBox4->BackColor), wise);

i->DrawString («280», font, gcnew SolidBrush (pictureBox4->BackColor), centrex-42*koef, centrey+47*koef);

i->DrawString («378», font, gcnew SolidBrush (pictureBox4->BackColor), centrex-16*koef, centrey+78*koef);

i->RotateTransform (270);

i->DrawString («378», font, gcnew SolidBrush (pictureBox4->BackColor),-(centrey+15*koef), centrex-167*koef);

i->DrawString («R75», font, gcnew SolidBrush (pictureBox4->BackColor), 717,-255);

i->RotateTransform (37);

if (koef==0.5) i->DrawString («R40», font, gcnew SolidBrush (pictureBox4->BackColor), 90, 450);

if (koef==1) i->DrawString («R40», font, gcnew SolidBrush (pictureBox4->BackColor), 125, 440);

if (koef==2) i->DrawString («R40», font, gcnew SolidBrush (pictureBox4->BackColor), 177, 420);

pictureBox2->Image->Save (saveFileDialog1->FileName, System: Drawing:Imaging:ImageFormat:Jpeg);

}

}

private: System: Void button9_Click (System:Object^ sender, System: EventArgs^ e) //вивід креслення на друк

{

int w = Screen: PrimaryScreen->WorkingArea.Width/2;

int h = Screen: PrimaryScreen->WorkingArea.Height / 2;

printPreviewDialog1->Top = h;

printPreviewDialog1->Document = printDocument1;

printPreviewDialog1->ShowDialog ();

}

private: System: Void printDocument2_PrintPage (System:Object^ sender, System: Drawing:Printing:PrintPageEventArgs^ e)//друк креслення

{

float leftMargin = e->MarginBounds.Left;

float rightMargin = e->MarginBounds.Right;

float topMargin = e->MarginBounds.Top;

float bottomMargin = e->MarginBounds.Bottom;

float printableWidth = e->MarginBounds.Width;

float printableHeight = e->MarginBounds.Height;

float imageLength;

if (printableWidth < printableHeight)

{

imageLength = printableWidth * 110/ 100;

}

else

{

imageLength = printableHeight * 110/ 90;

}

System:Drawing:Graphics^i=e->Graphics;

System:Drawing:Pen ^p;

System:Drawing:Brush ^b;

System:Drawing:Font^ font= gcnew System: Drawing:Font («Times New Roman», 12);

i->Clear (SystemColors:Control);

p=gcnew System: Drawing:Pen (Color:BlueViolet, 2);

Brush^ br=gcnew SolidBrush (Color:Black);

i->DrawString («-1», font, br, 343, 215);

i->DrawString («-1», font, br, 302, 180);

i->DrawString («0», font, br, 350, 180);

i->DrawString («1», font, br, 408, 180);

i->DrawString («1», font, br, 346, 115);

i->DrawString («Ox», font, br, 710, 180);

i->DrawString («Oy», font, br, 340, 5);

i->DrawLine (p, 365,0,365,700);

i->DrawLine (p, 0,175,750,175);

for (rx=15;rx<765;rx+=50)

{

i->DrawLine (p, rx, 170, rx, 180);

}

for (ry=25;ry<725;ry+=50)

{

i->DrawLine (p, 360, ry, 370, ry);

}

for (x1=xn;x1

{

if ((x1*x1*x1)/(x1+a)>0)

{

y1=sqrt ((x1*x1*x1)/(x1+a));

x2=x1+step;

y2=sqrt ((x2*x2*x2)/(x2+a));

i->DrawLine (gcnew System: Drawing:Pen (pictureBox3->BackColor, 2), x1*50+365,-y1*50+175,x2*50+365,-y2*50+175);

}

}

}

private: System: Void button8_Click (System:Object^ sender, System: EventArgs^ e)//відкриття збереженого графіку

{

if (openFileDialog1->ShowDialog ()==System:Windows:Forms:DialogResult:OK)

{

draw=0;

pictureBox1->Image = Image: FromFile (openFileDialog1->FileName);

pictureBox1->SizeMode = PictureBoxSizeMode: AutoSize;

}

}

private: System: Void сПРАВКАToolStripMenuItem_Click (System:Object^ sender, System: EventArgs^ e) //вивід довідки

{

Справкаform = gcnew Справка ();

form->ShowDialog ();

}

private: System: Void оПРОГРАММЕToolStripMenuItem_Click (System:Object^ sender, System: EventArgs^ e)//вивід інформації до програми

{

О_программеform = gcnew О_программе ();

form->ShowDialog ();

}

private: System: Void button11_Click (System:Object^ sender, System: EventArgs^ e) //закриття програми

{

Form1:Close ();

}

private: System: Void textBox1_Click (System:Object^ sender, System: EventArgs^ e)//вивід довідки

{

pictureBox6->Image = Image: FromFile («D:справка 1. jpg»);

pictureBox6->SizeMode = PictureBoxSizeMode: AutoSize;

if (groupBox5->Visible == false) groupBox5->Visible = true;

}

private: System: Void textBox2_Click (System:Object^ sender, System: EventArgs^ e)//вивід довідки

{

pictureBox6->Image = Image: FromFile («D:справка 2. jpg»);

pictureBox6->SizeMode = PictureBoxSizeMode: AutoSize;

if (groupBox5->Visible == false) groupBox5->Visible = true;

}

private: System: Void textBox3_Click (System:Object^ sender, System: EventArgs^ e)//вивід довідки

{

pictureBox6->Image = Image: FromFile («D:справка 3. jpg»);

pictureBox6->SizeMode = PictureBoxSizeMode: AutoSize;

if (groupBox5->Visible == false) groupBox5->Visible = true;

}

private: System: Void textBox4_Click (System:Object^ sender, System: EventArgs^ e) //вивід довідки

{

pictureBox6->Image = Image: FromFile («D:справка 4. jpg»);

pictureBox6->SizeMode = PictureBoxSizeMode: AutoSize;

if (groupBox5->Visible == false) groupBox5->Visible = true;

}

};

}

Файл «Начало» :

#pragma endregion

private: System: Void pictureBox1_Click (System:Object^ sender, System: EventArgs^ e)//завантаження зображення з інформацією

{

pictureBox1->Image = Image: FromFile («D:вступление.jpg»);

}

private: System: Void button1_Click (System:Object^ sender, System: EventArgs^ e)//перехід до програми

{

this->Close ();

}

private: System: Void Начало_Load (System:Object^ sender, System: EventArgs^ e) //вивід підказки

{

toolTip1->SetToolTip (button1," Нажмите для продолжения");

toolTip1->IsBalloon = true;

}

};

}

Файл «О_программе»

#pragma endregion

private: System: Void pictureBox1_Click (System:Object^ sender, System: EventArgs^ e) //завантаження зображення

{

pictureBox1->Image = Image: FromFile («D:о программе. jpg»);

}

};

}

Файл «Справка»

#pragma endregion

private: System: Void button1_Click (System:Object^ sender, System: EventArgs^ e)//завантаження довідки про креслення

{

pictureBox1->Image = Image: FromFile («D:справка чертеж. jpg»);

pictureBox1->SizeMode = PictureBoxSizeMode: AutoSize;

panel1->AutoScroll = true;

}

private: System: Void button2_Click (System:Object^ sender, System: EventArgs^ e)//завантаження довідки про графік

{

pictureBox1->Image = Image: FromFile («D:справка график. jpg»);

pictureBox1->SizeMode = PictureBoxSizeMode: AutoSize;

panel1->AutoScroll = true;

}

};

}

Показати весь текст
Заповнити форму поточною роботою