Налаштування стилю та кольору примітивів засобами мови програмування. Конспект уроку, презентація, застосунок Піраміда
Тема. Налаштування стилю та кольору примітивів засобами мови програмування.
Мета: навчальна: сформувати уявлення про інструменти для малювання в Lazarus, правила задавання кольорів зображень, вміння налаштовувати властивості пензля і олівця для задавання кольорів зображень;
розвивальна: розвивати логічне мислення та креативність;
виховна: виховувати інформаційну культуру, дбайливе ставлення до комп’ютерної техніки;
компетентнісна:
Тип уроку: Комбінований.
Обладнання та наочність: дошка, комп’ютери, мережа Інтернет, підручник, навчальна презентація.
Програмне забезпечення: Середовище програмування Lazarus, браузер.
Хід уроку
І. Організаційний етап
Привітання, перевірка присутніх, перевірка готовності учнів до уроку
ІІ. Актуалізація опорних знань
Тестування у програмі MyTestX
ІІІ. Мотивацій навчальної діяльності
На цьому уроці ви дізнаєтесь, як налаштовувати властивості інструментів для малювання, як виводити' на полотно для малювання текстовий рядок. Ви ознайомитесь із можливостями Lazarus, які значно розширять ваш арсенал художника-програміста.
IV. Вивчення нового матеріалу
Пояснення вчителя з елементами демонстрування презентації (використовуються можливості локальної мережі кабінету або проектор)
Для малювання рисунків і введення тексту застосовують інструменти Pen, Brush і Font. Олівець використовують для малювання ліній, пензель — для зафарбовування фігур, а шрифт — для вибору шрифта тексту.
Властивість олівець (Pen)
Олівець (Canvas.Pen) використовують для малювання фігур, що складаються з ліній. Розглянемо деякі властивості олівця.
Pen.Color встановлює колір олівця, тобто колір, яким буде намальований контур фігури. Властивість Color може набувати значення колірних констант. Також колір малюнка можна задавати за допомогою функції RGBToColor, аргументи якої задають ступінь насиченості червоного, зеленого і синього кольорів:
Pen.Color := RGBToColor (r, g, b);
Змінні r, g, b можуть набувати значень від 0 до 255. Так можна отримати більше ніж 16 млн різних кольорів:
Pen.Style визначає стиль лінії і може мати, зокрема, такі значення:
Pen.Width визначає тов щину лінії. Значення цієї властивості може бути цілим числом. Лінія завтовшки більш ніж 1 може бути тільки суцільною.
Намалювати на формі піраміду за зразком (рис. 44.1).
Form1.Canvas.Pen.Style : = psSolid;
Form1.Canvas.Pen.Width : = 3;
For m1.Canvas.Polygon ([Point (150, 50),
Point (50, 250), Point (250, 250),
Point (150, 50), Point (270, 170), Point (250, 250)]);
Form1.Canvas.Pen.Width : = 1;
Form1.Canvas.Pen.Style : = psDash;
Form1.Canvas.MoveTo (150, 50);
Form1.Canvas.LineTo (130, 170);
Form1.Canvas.LineTo (270, 170);
Form1.Canvas.MoveTo (130, 170);
Form1.Canvas.LineTo (50, 250);
Властивість пензель (Brush)
Пензель (Сanvas.Brush) використовують для зафарбовування (заливки) замкнених геометричних фігур. Властивості пензля:
• Brush.Color встановлює колір, яким можна зафарбовувати фігури;
• Brush.Style визначає стиль заповнення фігури, який, зокрема, може набувати таких значень:
bsSolid — суцільне заповнення кольором;
bsDiagonal — штрихування справа наліво;
bsHorisontal — горизонтальні лінії та інші.
Виведення тексту на полотно
Шрифт (Canvas.Font) визначає шрифт, яким буде виведено текст. Можна встановити такі властивості шрифту: розмір, накреслення тощо.
Змінити значення властивостей шрифту.
Canvas.Font.Size : = 20; // розмір у пунктах (20)
Canvas.Font.Color := clRed; // колір (червоний)
Canvas.Font.Name := ’Comic Sans MS’; // гарнітура (Comic Sans MS)
Canvas.Font.Style := [fsBold, fsItalic]; // накреслення (напівжирне, курсив)
або
Canvas.Font.Style := []; // накреслення (звичайне)
Canvas.Font.Style := [fsBold]; // накреслення (напівжирне)
Виведення тексту на полотно може здійснюватися за допомогою методу TextOut (х, y: Integer; const Text: String);
Цей метод виводить рядок тексту Text на полотно, починаючи з позиції з координатами (х, у).
Canvas.TextOut (10, 10, ‘Виведення тексту’);
Заповнити прямокутники зеленим кольором із використанням різних стилів пензля за зразком (рис. 44.2). Для того щоб біля кожного виклику методу не писати назву об’єкта Canvas, використаємо оператор приєднання With. При цьому в тілі оператора до кожного рядка, початок якого збігається з назвою властивості або методу об’єкта Canvas, під час компіляції буде додано Canvas.
With Canvas do begin
Font.Size := 16;
TextOut (10, 10, ‘bsSolid’); // виведення назви стилю пензля
Brush.Color := clGreen; // колір заливки
Brush.Style := bsSolid; // стиль заливки
Rectangle (10, 30, 100, 120);
Brush.Style := bsClear;
TextOut (110, 10, ‘bsVertical’);
Brush.Color := clGreen;
Brush.Style := bsVertical; // стиль заливки
Rectangle (110, 30, 200, 120);
end;
Заповнення многокутників і складних фігур
Під час малювання простих геометричних фігур можна автоматично їх зафарбовувати відповідно до налаштувань пензля. Для будьякої замкненої області використовують спеціальний метод FloodFill:
Canvas.FloodFill (x, y, Color, FillStyle);
Тут x, у — це координати будь-якої точки всередині фігури.
Якщо FillStyle = fsBorder, то фарба «розтікається» від точки з координатами (x, у) доти, поки не зустріне на шляху колір, заданий в параметрі Color. Якщо FillStyle = fsSurface, то колір Color замінюється кольором, вказаним у властивості Brush.Color.
Намалювати зелений трикутник зі сторонами червоного кольору (рис 44.3).
Form1.Canvas.Pen.Color := clRed;
Form1.Canvas.Polygon ([Point (150,50), Point (50,250),
Point (250,250), Point (150,50)]);
Form1.Canvas.Brush.Color := clGreen;
Form1.Canvas.FloodFill (200, 200, clRed, fsBorder);
Описані можливості Lazarus значно розширюють ваш арсенал художника-програміста. Тому обов’язково випробуйте всі наведені приклади, а потім спробуйте запрограмувати побудову власного малюнка.
V. Фізкультхвилинка
VI. Засвоєння нових знань, формування вмінь
Практичне завдання. Робота за комп’ютером
Вправа 44
Скласти програму для малювання ялинки за зразком (рис. 1).
1) Створіть новий проект. Додайте на форму кнопку Button1, при клацанні якої буде виконуватися малювання на полотні форми.
2) Створіть процедуру обробки події OnClick для форми.
3) Запишіть програмний код для малювання ялинки:
With Form1.Canvas do // працюємо з об’єктом Form1.Canvas
begin
Pen.Width := 1; // встановлюємо товщину олівця
Pen.Color := clGreen; // встановлюємо колір олівця
Brush.Color := clGreen; // встановлюємо колір заливки
{ Малювання ялинки }
PolyGon ([Point (200,40), Point (160,100), Point (180,100), Point (140,160), Point (160,160), Point(100,250), Point (300,250), Point (240,160), Point (260,160), Point (220,100), Point (240,100)]);
Pen.Color := RGBToColor (128,64,0); // встановлюємо колір олівця
Brush.Color := RGBToColor (128,64,0); // встановлюємо колір заливки
{ Малювання стовбура }
PolyGon ([Point (250,251), Point (250,301), Point (150,301), Point (150,251)]);
4) Запустіть проект на виконання. Додайте оператори малювання жовтого сонечка (рис. 2).
5) Перевірте роботу програми. Збережіть проект у папці Вправа 44.
6) Наша ялинка «висить» у повітрі. Додайте оператори для малювання лісової галявини, на якій росте ялинка, і хмаринок над ялинкою.
VIІ. Підсумки уроку
Питання для самоперевірки
1. Які властивості має інструмент Pen?
2. Як задати колір для побудови контуру графічних примітивів?
3. Які властивості має інструмент Brush?
4. Як зафарбувати фігуру?
5. Як побудувати і зафарбувати зеленим кольором коло радіусом 100, центр якого збігається з центром форми?
6. Запишіть фрагмент програми для побудови трикутника з вершинами в точках (100, 100), (150, 100), (80, 70); колір фону — сірий; колір ліній — червоний
VІІI. Домашнє завдання
Підручник § 44 ст. 215-219
ІХ Оцінювання роботи учнів