Помощничек
Главная | Обратная связь


Археология
Архитектура
Астрономия
Аудит
Биология
Ботаника
Бухгалтерский учёт
Войное дело
Генетика
География
Геология
Дизайн
Искусство
История
Кино
Кулинария
Культура
Литература
Математика
Медицина
Металлургия
Мифология
Музыка
Психология
Религия
Спорт
Строительство
Техника
Транспорт
Туризм
Усадьба
Физика
Фотография
Химия
Экология
Электричество
Электроника
Энергетика

ГРАФІЧНІ МОЖЛИВОСТІ DELPHI



 

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

Програма виводить графіку на поверхню об'єкта ( форми чи компонент, наприклад, Image). Поверхні об'єкта відповідає властивість Саnvаs. Для того щоб вивести на поверхню об'єкта графічний елемент (пряму лінію, окружність, прямокутник і т.д.), необхідно застосувати до властивості Саnvаs цього об'єкта відповідний метод. Наприклад, інструкція Form1.Canvas.Rectangle (10,10,100,100) викреслює у вікні програми прямокутник.

Холст

Поверхні, на яку програма може виводити графіку, відповідає властивість Canvas. У свою чергу, властивість Саnvаs — це об'єкт типу TCanvas. Методи цього типу забезпечують вивід графічних примітивів (точок, ліній, окружностей, прямокутників і т.д.), а властивості дозволяють задати характеристики виведених графічних примітивів: колір, товщину і стиль ліній; колір і вид заповнення областей; характеристики шрифту при виводі текстової інформації.

Методи виводу графічних примітивів розглядають властивість Canvas як деяке абстрактне полотно, на якому вони можуть малювати (canvas переводиться як "поверхня", "полотно для малювання"). Полотно складається з окремих точок — пікселів. Положення піксела характеризується його горизонтальної (X) і вертикальної (Y) координатами. Лівий верхній піксел має координати (0, 0). Координати зростають зверху вниз і з ліва праворуч (мал. 4.1). Значення координат правої нижньої точки полотна залежать від розміру полотна.

Рис. 4.1Координати точок полотна

 

Розмір полотна можна одержати, звернувшись до властивостейHeight і Width області ілюстрації(Іmage) чи до властивостей форми:ClientHeight і ClientWidth.

Олівець і кисть

 

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

Олівцю і кисті, що використовують для виводу графіки на полотні, відповідають властивості Реn (олівець) і Brush (кисть), що являють собою об'єкти типу ТРеn і TBrush, відповідно. Значення властивостей цих об'єктів визначають вид виведених графічних елементів.

Олівець

Олівець використовується для креслення крапок, ліній, контурів геометричних фігур: прямокутників, окружностей, еліпсів, дуг і ін. Вид лінії, що залишає олівець на поверхні полотна, визначають властивості об'єкта TPеn , що перераховані в табл. 4.1

Таблиця 4.1.Властивості об'єкта TPеn (олівець)

 

Властивість Визначає
Color Колір лінії
Width Товщину лінії
Style Вид лінії
Mode Режим відображення
   

Властивість Color задає колір лінії, що вичерчується олівцем. У табл. 4.2 перераховані іменовані константи (тип TColor), які можна використовувати як значення властивості Color.

 

Таблиця 4.2Значення властивості Color визначає колір лінії

 

       
Константа Колір Константа Колір
clBlack Чорний clSilver Сріблистий
clMaroon Каштановий clRed Червоний
clGreen Зелений clLime Салатний
clOlive Маслиновий clBlue Синій
clNavy Темно-синій clFuchsia Яскраво-рожевий
clPurple Рожевий clAqua Бірюзовий
clGray Сірий clWhite Білий

 

Властивість width задає товщину лінії (у пікселах). Наприклад, інструкція Canvas.Pen.width: =2 установлює товщину лінії в 2 піксела.

Властивість style визначає вид (стиль) лінії, що може бути безупинної чи переривчастої, що складається зі штрихів різної довжини. У табл. 4.3 перераховані іменовані константи, що дозволяють задати стиль лінії. Товщина пунктирної лінії не може бути більше 1. Якщо значення властивості Pen.width більше одиниці, те пунктирна лінія буде виведена як суцільна.

 

Таблиця 4.3Значення властивості Реn.Tуре визначає вид лінії

   
Константа Вид лінії
psSolid Суцільна лінія
psDash Пунктирна лінія, довгі штрихи
psDot Пунктирна лінія, короткі штрихи (крапки)
psDashDot Пунктирна лінія, чергування довгого і короткого штрихів
psDashDotDot Пунктирна лінія, чергування одного довгого і двох коротких штрихів
psClear Лінія не відображається (використовується, якщо не треба зображувати границю області, наприклад, прямокутника)

 

Властивість Mode визначає, як буде формуватися колір крапок лінії в залежності від кольору крапок полотна, через які ця лінія викреслюється. За замовчуванням уся лінія викреслюються кольором, обумовленим значенням властивості Pen.Color.

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

У табл. 4.4 перераховані деякі константи, які можна використовувати як значення властивості Pen.Mode.

 

Таблиця 4.4Значення властивості Pen.Mode впливає на колір лінії

Константа Колір лінії
pmBlack Чорний, не залежить від значення властивості Pen. Color
pmWhite Білий, не залежить від значення властивості Pen. Color
pmCopy Колір лінії визначається значенням властивості Pen . Color
pmNotCopy Колір лінії є інверсним стосовно значення властивості Pen. Color
pmNot Колір крапки лінії визначається як інверсний стосовно кольору крапки полотна, у яку виводиться крапка лінії

Кисть

Кисть (Сanvas.Brush) використовується методами, що забезпечують креслення замкнутих областей, наприклад геометричних фігур, для заливання (зафарбовування) цих областей. Кисть, як об'єкт, володіє двома властивостями, перерахованими в табл. 4.5.

 

Таблиця 4.5Властивості об'єкта TBrush (кисть)

       
  Властивість Визначає  
  Color Style Колір зафарбовування замкнутої області Стиль (тип) заповнення області  

 

Область усередині контуру може бути зафарбована чи заштрихована. У першому випадку область цілком перекриває фон, а в другому — крізь незаштриховані участки області буде видно фон.

Як значення властивості Color можна використовувати кожну з констант типу TColor (див. список констант для властивості Pen.color у табл. 4.2).

Константи, що дозволяють задати стиль заповнення області, приведені в табл. 4.6.

Таблиця 4.6Значення властивості Brush.style визначають тип зафарбовування

       
  Константа Тип заповнення (заливання) області  
  bsSolid Суцільне заливання  
  bsClear Область не зафарбовується  
  bsHorizontal Горизонтальне штрихування  
  bsVertical Вертикальне штрихування  
  bsFDiagonal Діагональне штрихування з нахилом ліній уперед  
  bsBDiagonal Діагональне штрихування з нахилом ліній назад  
  bsCross Горизонтально-вертикальне штрихування, у клітку  
  bsDiagCross Діагональне штрихування, у клітку  
       

Як приклад у лістингу 4.1 приведена програма Стилі заповнення областей,що у вікно (мал. 4.2) виводить вісім прямокутників, зафарбованих чорним кольором з використанням різних стилів.

Рис. 4.2Вікно програми Стилі заповнення областей

 




©2015 studopedya.ru Все права принадлежат авторам размещенных материалов.