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

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

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

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

Рік:
2024
Тип роботи:
Лабораторна робота
Предмет:
Програмування комп’ютерної графіки
Варіант:
24

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

Міністерство освіти і науки України Національний університет “Львівська політехніка” Кафедра КСА // Лабораторна робота №3 З курсу «Програмування комп’ютерної графіки» На тему: “ УПРАВЛІННЯ КОЛЬОРАМИ ТА СТИЛЯМИ ГРАФІЧНИХ ЗОБРАЖЕНЬ В СЕРЕДОВИЩІ MICROSOFT VISUAL STUDIO C++ 2008” Варіант № 24 Львів - 2015 Завдання: Написати програму на алгоритмічній мові C++, яка виводить на екран розмальоване графічне зображення. Варіанти завдань брати за вказівкою викладача з таблиці 1. N% п/п Варіанти завдань   24  /   Блок-схема алгоритму програми: Список ідентифікаторів констант, змінних, процедур і функцій, використаних в програмі, та їх пояснення. MoveTo( ) – переносить курсор у задану точку; LineTo( ) – будує лінію до заданої точки; CBrush - користувацькй пензель; СPen –користувацьке перо; dc.SelectObject(& ___ ); - використання користувацького пера; CreatePen() - ініціалізує перо заданими атрибутами; CreateBrush ( ) - ініціалізує пензель заданими атрибутами; Rectangle( ) – малює прямокутник. Остаточно відлагоджений текст програми згідно з отриманим завданням. // ChildView.cpp : implementation of the CChildView class // #include "stdafx.h" #include "PCG1.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 RECT rect; GetClientRect(&rect); RECT rctA; rctA.left = 20; rctA.top = 30; rctA.right = 180; rctA.bottom = 230; RECT rctB = { 20, 30, 180, 230 }; CBrush red_brush, black_brush, green_brush, yelow_brush, blue_brush, pink_brush, white_brush, gray_brush; CPen blue_pen, gray_pen, pink_pen, green_pen, black_pen, yelow_pen, red_pen, white_pen; // CPaintDC dc(this); black_brush.CreateSolidBrush(RGB(0, 0, 0)); white_brush.CreateSolidBrush(RGB(255, 255, 255)); blue_brush.CreateSolidBrush(RGB(61, 12, 255)); pink_brush.CreateSolidBrush(RGB(255, 0, 255)); red_brush.CreateSolidBrush(RGB(255, 0, 0)); green_brush.CreateSolidBrush(RGB(0, 255, 0)); yelow_brush.CreateSolidBrush(RGB(255, 255, 0)); gray_brush.CreateSolidBrush(RGB(139, 128, 126)); // black_pen.CreatePen(0, 1, RGB(0, 0, 0)); white_pen.CreatePen(0, 1, RGB(255, 255, 255)); blue_pen.CreatePen(0, 1, RGB(61, 12, 255)); gray_pen.CreatePen(0, 1, RGB(139, 128, 126)); red_pen.CreatePen(0, 1, RGB(255, 0, 0)); pink_pen.CreatePen(0, 1, RGB(255, 0, 255)); yelow_pen.CreatePen(0, 1, RGB(255, 255, 0)); green_pen.CreatePen(0, 1, RGB(0, 255, 0)); //червоний колір dc.SelectObject(&red_pen); dc.SelectObject(&red_brush); dc.Rectangle(430, 580, 525, 505);//лівий нижній квадрат(червоний) dc.Rectangle(563, 417, 650, 497);//квадрат червоний посередині dc.Rectangle(470, 232, 558, 345);//квадрат червоний вгорі справа //синій колір dc.SelectObject(&blue_pen); dc.SelectObject(&blue_brush); dc.Rectangle(430, 500, 465, 417);//вище червоного(синій) dc.Rectangle(831, 580, 757, 468);//правий нижній (синій) dc.Rectangle(695, 545, 831, 580);//правий нижній повністю синій лівіше dc.SelectObject(&blue_brush); dc.Rectangle(831, 232, 757, 345);//синій над жовтим справа вверху dc.Rectangle(655, 315, 757, 345);//синій повністю //сірий колір dc.SelectObject(&gray_pen); dc.SelectObject(&gray_brush); dc.Rectangle(530, 448, 558, 580);//сірий нижній прямокутник біля жовтого червоного dc.Rectangle(558, 502, 620, 540);//сірий вправо dc.Rectangle(700, 232, 752, 310);//сірий справа вгорі блія синього dc.Rectangle(563, 312, 618, 412);//над буквою т //жовтий колір dc.SelectObject(&yelow_pen); dc.SelectObject(&yelow_brush); dc.Rectangle(831, 350, 757, 462);//жовтий над синім справа dc.Rectangle(655, 232, 695, 310);//жовтий вгорі справа біля сірого dc.SelectObject(&yelow_brush); dc.Rectangle(563, 545, 690, 580);//нижній жовтий //рожевий колір dc.SelectObject(&pink_pen); dc.SelectObject(&pink_brush); dc.Rectangle(625, 502, 752, 540);//рожевий над жовтим біля справа синього dc.Rectangle(430, 232, 465, 412);//рожевий над синім зліва dc.Rectangle(695, 468, 752, 502);//рожевий (повністю) верхня частина dc.Rectangle(563, 232, 650, 310);//рожевий згори по-центру dc.Rectangle(620, 310, 650, 412);//рожевий повністю //зелений колір dc.SelectObject(&green_pen); dc.SelectObject(&green_brush); dc.Rectangle(655, 350, 752, 462);//зелений справа dc.Rectangle(655, 462, 690, 497);//зелений повністю dc.Rectangle(470, 417, 525, 500);//зелений зліва над сірим dc.Rectangle(505, 350, 558, 442);//зелений повністю //білий колір dc.SelectObject(&white_pen); dc.SelectObject(&white_brush); dc.Rectangle(465, 310, 515, 422);//T dc.Rectangle(448, 295, 535, 322);//T dc.Rectangle(515, 328, 551, 422);//Eоснова dc.Rectangle(541, 328, 585, 355);//Eверхня палка dc.Rectangle(541, 399, 585, 422);//Eнижня палка dc.Rectangle(541, 365, 570, 387);//Eпосередині палка dc.Rectangle(606, 328, 639, 422);//tоснова dc.Rectangle(585, 328, 659, 355);//tверхня палка dc.Rectangle(655, 328, 690, 422);//Основа палка R dc.Rectangle(680, 328, 720, 355);//Верхня палка R dc.Rectangle(695, 343, 720, 422);//палка вниз R dc.Rectangle(680, 363, 705, 385);//палка поперек R dc.Rectangle(710, 350, 733, 370);//R dc.Rectangle(695, 382, 733, 422);//R dc.Rectangle(742, 345, 770, 409);//I палка dc.Rectangle(725, 328, 785, 355);//I верхня частина dc.Rectangle(725, 395, 785, 422);//I нижня частина dc.Rectangle(785, 328, 835, 355); dc.Rectangle(785, 332, 810, 392);// dc.Rectangle(795, 365, 835, 392);//поперечна dc.Rectangle(810, 375, 835, 422); dc.Rectangle(783, 395, 830, 422); //чорний колір dc.SelectObject(&black_pen); dc.SelectObject(&black_brush); dc.Rectangle(470, 315, 510, 417);//T dc.Rectangle(453, 300, 530, 317);//T dc.Rectangle(520, 333, 546, 417);//Eоснова dc.Rectangle(546, 333, 580, 350);//Eверхня палка dc.Rectangle(546, 404, 580, 417);//Eнижня палка dc.Rectangle(546, 370, 565, 382);//Eпосередині палка dc.Rectangle(611, 333, 634, 417);//tоснова dc.Rectangle(590, 333, 654, 350);//tверхня палка dc.Rectangle(660, 333, 685, 417);//Основа палка R dc.Rectangle(685, 333, 715, 350);//Верхня палка R dc.Rectangle(700, 348, 715, 417);//палка вниз R dc.Rectangle(685, 368, 700, 380);//палка поперек R dc.Rectangle(715, 355, 728, 365);//R dc.Rectangle(700, 387, 728, 417);//R dc.Rectangle(747, 350, 765, 404);//I палка dc.Rectangle(730, 333, 780, 350);//I верхня частина dc.Rectangle(730, 400, 780, 417);//I нижня частина dc.Rectangle(790, 333, 830, 350); dc.Rectangle(790, 337, 805, 387);// dc.Rectangle(800, 370, 830, 387);//поперечна dc.Rectangle(815, 380, 830, 417); dc.Rectangle(788, 400, 825, 417); } Результати виконання програми. / Висновок: Під час виконання цієї лабораторної роботи, я вивчив основні функції управління кольорами та стилями графічних зображень.
Антиботан аватар за замовчуванням

17.12.2015 18:12-

Коментарі

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

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

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

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

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

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

Admin

26.02.2023 12:38

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