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

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

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних технологій, автоматики та метрології
Факультет:
СІ
Кафедра:
Комп'ютеризовані системи автоматики

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

Рік:
2016
Тип роботи:
Лабораторна робота
Предмет:
ПКГ
Група:
СІ 22
Варіант:
26 ВАРІАНТІВ

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

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»  ЗВІТ ПРО ВИКОНАННЯ ЛАБОРАТОРНОЇ РОБОТИ № 3 УПРАВЛІННЯ КОЛЬОРАМИ ТА СТИЛЯМИ ГРАФІЧНИХ ЗОБРАЖЕНЬ В СЕРЕДОВИЩІ MICROSOFT VISUAL STUDIO C++ 2008 Варіант №26 Львів 2015 Мета роботи: вивчити функції для управління кольорами та стилями графічних зображень; навчитися складати програми на алгоритмічній мові C++ для побудови різноманітних графічних зображень в середовищі Microsoft Visual Studio C++ 2008. Завдання: Написати програму на алгоритмічній мові C++, яка виводить на екран розмальоване графічне зображення. 26. /   Список ідентифікаторів змінних, функцій використаних у програмі: Colorref RGB – повертає колір, який базується на заданих червоній (byRed), зеленій (byGreen) та синій (byBlue) компонентах. CreatePen - ініціалізує перо заданими атрибутами; CBrush – зміна для створення користувацького пензля; CreateSolidBrush - ініціалізує суцільний пензель заданими атрибутами; FloodFill – замальовує замкнуту область; dc.Rectangle – малює прямокутник; dc.MoveTo – переміщує поточну вершину; dc.LineTo – малює лінію з поточної вершини; Остаточна версія програми #include "stdafx.h" #include "MFCApplication6.h" #include "ChildView.h" #ifdef _DEBUG #define new DEBUG_NEW #endif CChildView::CChildView() {} CChildView::~CChildView() {} BEGIN_MESSAGE_MAP(CChildView, CWnd) ON_WM_PAINT() END_MESSAGE_MAP() 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); CBrush k_brush; CPen black; black.CreatePen (PS_SOLID, 15, RGB (0, 0, 0)); dc.SelectObject(&black); dc.MoveTo(380,30); dc.LineTo(980,30); dc.LineTo(980,630); dc.LineTo(380,630); dc.LineTo(380,30); dc.MoveTo(430,250); dc.LineTo(855,250); dc.MoveTo(470,230); dc.LineTo(470,80); dc.LineTo(420,80); dc.LineTo(420,60); dc.LineTo(540,60); dc.LineTo(540,80); dc.LineTo(490,80); dc.LineTo(490,230); dc.LineTo(470,230); dc.MoveTo(510,230); dc.LineTo(510,130); dc.LineTo(560,130); dc.LineTo(560,150); dc.LineTo(530,150); dc.LineTo(530,170); dc.LineTo(560,170); dc.LineTo(560,190); dc.LineTo(530,190); dc.LineTo(530,210); dc.LineTo(560,210); dc.LineTo(560,230); dc.LineTo(510,230); dc.MoveTo(590,230); dc.LineTo(590,150); dc.LineTo(580,150); dc.LineTo(580,130); dc.LineTo(590,130); dc.LineTo(590,60); dc.LineTo(610,60); dc.LineTo(610,130); dc.LineTo(620,130); dc.LineTo(620,150); dc.LineTo(610,150); dc.LineTo(610,210); dc.LineTo(640,210); dc.LineTo(640,230); dc.LineTo(590,230); dc.MoveTo(660,230); dc.LineTo(660,130); dc.LineTo(710,130); dc.LineTo(710,170); dc.LineTo(695,170); dc.LineTo(695,150); dc.LineTo(680,150); dc.LineTo(680,230); dc.LineTo(660,230); dc.MoveTo(730,230); dc.LineTo(730,130); dc.LineTo(750,130); dc.LineTo(750,230); dc.LineTo(730,230); dc.Rectangle(730,60,750,80); dc.MoveTo(770,230); dc.LineTo(770,210); dc.LineTo(810,210); dc.LineTo(810,190); dc.LineTo(770,190); dc.LineTo(770,130); dc.LineTo(830,130); dc.LineTo(830,150); dc.LineTo(790,150); dc.LineTo(790,170); dc.LineTo(830,170); dc.LineTo(830,230); dc.LineTo(770,230); CPen a; a.CreatePen (PS_SOLID, 4, RGB (0, 0, 0)); dc.SelectObject(&a); dc.Rectangle(900,530,980,630); k_brush.CreateSolidBrush(RGB(0, 0, 255));dc.SelectObject(&k_brush); dc.FloodFill(970, 625, RGB(0, 0, 0));k_brush.DeleteObject(); dc.MoveTo(895,630); dc.LineTo(895,525); dc.LineTo(980,525); dc.LineTo(980,470); dc.LineTo(840,470); dc.LineTo(840,630); dc.LineTo(895,630); k_brush.CreateSolidBrush(RGB(255,215, 0));dc.SelectObject(&k_brush); dc.FloodFill(850, 480, RGB(0, 0, 0));k_brush.DeleteObject(); dc.Rectangle(700,540,840,630); k_brush.CreateSolidBrush(RGB(255, 0, 0)); dc.SelectObject(&k_brush); dc.FloodFill(800, 625, RGB(0, 0, 0)); k_brush.DeleteObject(); dc.MoveTo(840,540); dc.LineTo(840,470); dc.LineTo(980,470); dc.LineTo(980,400); dc.LineTo(770,400); dc.LineTo(770,540); dc.LineTo(840,540); k_brush.CreateSolidBrush(RGB(0, 255, 0));dc.SelectObject(&k_brush); dc.FloodFill(800, 440, RGB(0, 0, 0));k_brush.DeleteObject(); dc.Rectangle(550,590,630,630); k_brush.CreateSolidBrush(RGB(0, 0, 255));dc.SelectObject(&k_brush); dc.FloodFill(560, 625, RGB(0, 0, 0));k_brush.DeleteObject(); dc.MoveTo(640,630); dc.LineTo(640,540); dc.LineTo(615,540); dc.LineTo(615,590); dc.LineTo(630,590); dc.LineTo(630,630); dc.LineTo(640,630); k_brush.CreateSolidBrush(RGB(0, 0, 0));dc.SelectObject(&k_brush); dc.FloodFill(620, 560, RGB(0, 0, 0));k_brush.DeleteObject(); dc.MoveTo(640,580); dc.LineTo(700,580); dc.LineTo(700,490); dc.LineTo(680,490); dc.LineTo(680,470); dc.LineTo(590,470); dc.LineTo(590,490); dc.LineTo(580,490); dc.LineTo(580,580); dc.LineTo(615,580); dc.LineTo(615,540); dc.LineTo(640,540); dc.LineTo(640,580); k_brush.CreateSolidBrush(RGB(255, 255, 0));dc.SelectObject(&k_brush); dc.FloodFill(600, 500, RGB(0, 0, 0));k_brush.DeleteObject(); dc.MoveTo(680,470); dc.LineTo(680,310); dc.LineTo(785,310); dc.LineTo(785,400); dc.LineTo(770,400); dc.LineTo(770,540); dc.LineTo(700,540); dc.LineTo(700,470); dc.LineTo(680,470); k_brush.CreateSolidBrush(RGB(0, 0, 255));dc.SelectObject(&k_brush); dc.FloodFill(740, 500, RGB(0, 0, 0));k_brush.DeleteObject(); dc.Rectangle(380,580,480,630); k_brush.CreateSolidBrush(RGB(0, 255, 255));dc.SelectObject(&k_brush); dc.FloodFill(400, 600, RGB(0, 0, 0));k_brush.DeleteObject(); dc.Rectangle(480,550,550,630); k_brush.CreateSolidBrush(RGB(0, 255, 0));dc.SelectObject(&k_brush); dc.FloodFill(490, 600, RGB(0, 0, 0));k_brush.DeleteObject(); dc.Rectangle(380,430,420,580); k_brush.CreateSolidBrush(RGB(0, 0, 255));dc.SelectObject(&k_brush); dc.FloodFill(400, 500, RGB(0, 0, 0));k_brush.DeleteObject(); dc.MoveTo(425,580); dc.LineTo(425,430); dc.LineTo(380,430); dc.LineTo(380,370); dc.LineTo(515,370); dc.LineTo(515,550); dc.LineTo(480,550); dc.LineTo(480,580); dc.LineTo(425,580); k_brush.CreateSolidBrush(RGB(255, 255, 0)); dc.SelectObject(&k_brush); dc.FloodFill(440, 560, RGB(0, 0, 0));k_brush.DeleteObject(); dc.MoveTo(515,490); dc.LineTo(515,550); dc.LineTo(550,550); dc.LineTo(550,590); dc.LineTo(580,590); dc.LineTo(580,490); dc.LineTo(515,490); k_brush.CreateSolidBrush(RGB(255, 0, 0));dc.SelectObject(&k_brush); dc.FloodFill(560, 540, RGB(0, 0, 0));k_brush.DeleteObject(); dc.MoveTo(515,490); dc.LineTo(515,440); dc.LineTo(680,440); dc.LineTo(680,470); dc.LineTo(590,470); dc.LineTo(590,490); dc.LineTo(515,490); dc.LineTo(515,490); k_brush.CreateSolidBrush(RGB(255, 105, 180)); dc.SelectObject(&k_brush); dc.FloodFill(550, 460, RGB(0, 0, 0)); k_brush.DeleteObject(); } Результат роботи програми / Висновок Під час виконання даної лабораторної роботи я вивчити функції для управління кольорами та стилями графічних зображень; навчитися складати програми на алгоритмічній мові C++ для побудови різноманітних графічних зображень в середовищі Microsoft Visual Studio C++ 2008.
Антиботан аватар за замовчуванням

12.10.2016 21:26

Коментарі

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

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

Нічого не вибрано
0%

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

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

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

Admin

26.02.2023 12:38

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