ПОБУДОВА ЕЛЕМЕНТАРНИХ ГЕОМЕТРИЧНИХ ЗОБРАЖЕНЬ В СЕРЕДОВИЩІ MICROSOFT VISUAL STUDIO C++ 2008

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
ІКТА
Факультет:
ЗІ
Кафедра:
Не вказано

Інформація про роботу

Рік:
2015
Тип роботи:
Звіт про виконання розрахункової роботи
Предмет:
Програмування комп’ютерної графіки
Група:
СІ 11
Варіант:
20

Частина тексту файла (без зображень, графіків і формул):

МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»  ПОБУДОВА ЕЛЕМЕНТАРНИХ ГЕОМЕТРИЧНИХ ЗОБРАЖЕНЬ В СЕРЕДОВИЩІ MICROSOFT VISUAL STUDIO C++ 2008 Звіт до лабораторної роботи № 1 з курсу «Програмування комп’ютерної графіки» Варіант №20 Львів-2015 Завдання: 20 Скласти програму, яка розбиває екран монітора на десять однакових вертикальних прямокутників і в кожному з них провести діагоналі так, щоб з’єднання діагоналей утворило суцільну ламану лінію.   Змінні: х1, a1, y1, x, y, z, p, r, c, d, k,v Функції: void GetClientRect(LPRECT IpRect) const - повертає розміри клієнтської області вікна (області в якій можна малювати). IpRect - вказівник на структуру типу RECT в якій повертається розмір клієнтської області, CPoint MovcTo(int x, int у) - переміщує поточну вершину, jc, у визначають координати нової поточної вершини. Повертає х- та y-координати попередньої поточної вершини як CPoint об’єкт. BOOL LineTo(int x, int y )- малює лінію з поточної вершини до вершини з координатами лс, у. Поточна вершина переміщується у вершину з координатами jc, у. При успішному виконанні функція повертає TRUE, інакше FALSE. Остаточна версія програми: #include "stdafx.h" #include "pk_1.h" #include "ChildView.h" #ifdef _DEBUG #define new DEBUG_NEW #endif // CChildView CChildView::CChildView() { } CChildView::~CChildView() { } BEGIN_MESSAGE_MAP(CChildView, CWnd) ON_WM_PAINT() END_MESSAGE_MAP() // CChildView message handlers BOOL CChildView::PreCreateWindow(CREATESTRUCT& cs) { if (!CWnd::PreCreateWindow(cs)) return FALSE; cs.dwExStyle |= WS_EX_CLIENTEDGE; cs.style &= ~WS_BORDER; cs.lpszClass = AfxRegisterWndClass(CS_HREDRAW|CS_VREDRAW|CS_DBLCLKS, ::LoadCursor(NULL, IDC_ARROW), reinterpret_cast<HBRUSH>(COLOR_WINDOW+1), NULL); return TRUE; } void CChildView::OnPaint() { CPaintDC dc(this); // device context for painting // TODO: Add your message handler code here // Do not call CWnd::OnPaint() for painting messages CRect rect_1; GetClientRect(&rect_1); for(int t=1; t<10; t++) { int a1=rect_1.right/10; int y1=rect_1.bottom; int x1=0; x1=x1+a1*t; dc.MoveTo(x1,0); dc.LineTo(x1,y1); } CRect rect; GetClientRect(&rect); for(int k=1; k<10; k=k+2) { int a=rect.right/10; int b=rect.bottom; int x=0; int y=0; x=x+a*k; y=y+b*k; dc.MoveTo(x,0); dc.LineTo(0,y); } CRect rect_2; GetClientRect(&rect_2); for(int r=1; r<10; r=r+2) { int c=rect_2.right/10; int d=rect_2.bottom; int z=0; int p=0; int v; z=z+c*r; v=2*z; p=p+d*r; dc.MoveTo(z,0); dc.LineTo(v,p); } } Результат роботи програми: / Блок-схема алгоритму: Висновок: на цій лабораторній роботі я навчилася створювати проект з підтримкою MFC та вивчила основні графічні оператори бібліотеки GDI в середовищі Microsoft Visual Studio C++ 2008, набула практичних навиків в складанні програм для побудови геометричних зображень та графіків функцій.
Антиботан аватар за замовчуванням

24.02.2017 22:02-

Коментарі

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

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!