КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими...

114
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ Київський національний університет будівництва і архітектури П.П. Лізунов, Г.Л. Васильєва, А.О. Білощицький, С.Е. Лупу, А.С. Резніков КОМПЮТЕРНА ГРАФІКА Конспект лекцій з навчальних дисциплін: Інженерна графіка та розпізнавання образів”, Креслення, інженерна та компютерна графікадля студентів спеціальностей: 7.070901 “Геодезія”, 7.070908 “Геоінформаційні системи і технології”, 7.070904 „Землевпорядкування та кадастрКиїв 2006

Upload: others

Post on 14-Jun-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ Київський національний університет будівництва і архітектури

П.П. Лізунов, Г.Л. Васильєва, А.О. Білощицький, С.Е. Лупу, А.С. Резніков

КОМП’ЮТЕРНА ГРАФІКА

Конспект лекцій

з навчальних дисциплін: „Інженерна графіка та розпізнавання образів”, „Креслення, інженерна та комп’ютерна графіка” для студентів спеціальностей: 7.070901 “Геодезія”, 7.070908 “Геоінформаційні системи і технології”, 7.070904 „Землевпорядкування та кадастр”

Київ 2006

Page 2: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

УДК 681.3 ББК 32.973.26-018.2

Л55

Рецензент А.А. Гром, канд. техн. наук, доцент

Затверджено на засіданні кафедри основ інформатики,

протокол № 1 від 31 серпня 2005 року.

Лізунов П.П., Васильєва Г.Л., Білощицький А.О. та ін Л55 Комп’ютерна графіка: Конспект лекцій. – К.: КНУБА,

2006. – 112 с.

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

Призначений для студентів спеціальностей: 7.070901

„Геодезія”, 7.070908 „Геоінформаційні системи і технології”, 7.070904 „Землевпорядкування та кадастр”

УДК 681.3 ББК 32.973.26-018.2

© П.П. Лізунов, Г.Л.Васильєва,

А.О. Білощицький, С.Е. Лупу, А.С. Резніков, 2006

© КНУБА, 2006

Page 3: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

3

ЗМІСТ

ВСТУП .....................................................................................................5 Лекція 1. ОСНОВНІ ПОНЯТТЯ КОМП’ЮТЕРНОЇ ГРАФІКИ .........6

1.1. Побудова растрових зображень та їх основні характеристики...............................................................................6

1.2. Параметри кольору......................................................................10 1.3. Поняття векторного об'єкту. Побудова векторних об'єктів

та їх основні характеристики ......................................................11 1.4. Порівняльна характеристика векторної та растрової графік ..12 1.5. Еволюція комп’ютерних відеосистем .......................................13

Лекція 2. КООРДИНАТНИЙ МЕТОД У КОМП'ЮТЕРНІЙ ГРАФІЦІ ................................................................................18

2.1. Перетворення координат ..............................................................18 2.2. Перетворення об’єктів................................................................25 2.3. Проекції об’єктів .........................................................................28 2.4. Висновки.......................................................................................34

Лекція 3. ГРАФІЧНІ ПРИМІТИВИ .....................................................36 3.1. Графічні функції API Windows..................................................36 3.2. Контекст графічного пристрою .................................................37 3.3. Об’єкти графічного виведення у Windows................................38 3.4. Графічні примітиви .....................................................................38

Лекція 4. МОДЕЛІ ОПИСУ ПОВЕРХОНЬ ..........................................41 4.1. Аналітична модель ......................................................................41 4.2. Векторна полігональна модель ...................................................42 4.3. Воксельна модель.......................................................................44 4.4. Рівномірна сітка ..........................................................................45 4.5. Нерівномірна сітка. Ізолінії..........................................................46

Лекція 5. АЛГОРИТМИ ВИВЕДЕННЯ ТА ЗМІНИ ВЛАСТИВОСТЕЙ ТРИВИМІРНИХ ОБ'ЄКТІВ ...............49

5.1. Куля...............................................................................................49 5.2. Циліндр .........................................................................................52 5.3. Top.................................................................................................53

Лекція 6. РЕДАКТОРИ ВЕКТОРНОЇ ГРАФІКИ COREL DRAW ТА ADOBE ILLUSTRATOR..................................................56

6.1. Створення простих об'єктів........................................................56 6.2. Операції з об’єктами ...................................................................57 6.3. Зміна властивостей об'єктів в Illustrator та Corel ....................65 6.4. Робота з вузлами графічних об’єктів ........................................67 6.5. Робота з текстом ..........................................................................68

Page 4: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

4

6.6. Ефекти тіні, перетікання, перспективи та прозорості ............. 69 Лекція 7. MACROMEDIA FREEHAND, РЕДАКТОР ДІЛОВОЇ

ГРАФІКИ VISIO ТА МАТЕМАТИЧНИЙ ПАКЕТ MATLAB................................................................................. 74

7.1. Математичний пакет Matlab ...................................................... 74 7.2. Microsoft Visio.............................................................................. 78 7.3. Macromedia Freehand.................................................................. 79

Лекція 8. ГРАФІЧНИЙ РЕДАКТОР ADOBE PHOTOSHOP............. 81 8.1. Редагування та покращення зображення .................................. 81 8.2. Інструменти Adobe Photoshop.................................................... 85 8.3. Робота з прошарками .................................................................. 86 8.4. Робота з векторними об’єктами та текстом.............................. 88 8.5. Програма Corel Photo-Paint........................................................ 89

Лекція 9. СИСТЕМИ ОПТИЧНОГО РОЗПІЗНАВАННЯ................. 91 9.1. Основні принципи ....................................................................... 91 9.2. Розпізнавання символів .............................................................. 94 9.3. Структурно - плямовий еталон .................................................. 95 9.4. Розпізнавання рукописних текстів ............................................ 97

Лекція 10. FINEREADER....................................................................... 98 10.1. Структурні компоненти, інтерфейс......................................... 98 10.2. Технологія роботи з програмою ............................................ 100

Лекція 11. ПЕРЕВЕДЕННЯ РАСТРОВОГО ЗОБРАЖЕННЯ У ВЕКТОРНЕ ТА НАВПАКИ. ADOBE STREAMLINE ТА COREL TRACE. ФОРМАТИ ФАЙЛІВ РАСТРОВОЇ ГРАФІКИ (BMP, JPEG, GIF, PSD). ІНЖЕНЕРНА ДОКУМЕНТАЦІЯ У PDF-ФОРМАТІ. ADOBE ACROBAT............................................................... 104

11.1. Переведення растрового зображення у векторне та навпаки ................................................................................... 104

11.2. Формати файлів растрової графіки ....................................... 105 11.3. Інженерна документація у PDF-форматі. Adobe Acrobat.... 109

ВИСНОВКИ .................................Ошибка! Закладка не определена. СПИСОК ЛІТЕРАТУРИ ..................................................................... 112

Page 5: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

5

ВСТУП

Графічні зображення супроводжували людство протягом багатьох століть – від перших наскальних малюнків наших пращурів до високореалістичних тривимірних об'єктів. Графічний спосіб представлення інформації має беззаперечні переваги, оскільки він є достатньо наочним та зрозумілим для людей будь-якої мовної групи. Застосування комп’ютерних технологій та активне їх впровадження у повсякденне життя не оминуло й сферу графіки. Термін „комп’ютерна графіка” є тим узагальненням, яке уособлює в собі графічні зображення будь-якого типу, для обробки та створення яких використовуються комп’ютерні технології.

Процес проектування неможливий без створення графічних зображень – креслень; володіння комп’ютерною грамотністю, яка є невід'ємним елементом освіти кожного сучасного спеціаліста, неможливе без знання основ комп’ютерної графіки. Безперечно, окрім важливості комп’ютерної графіки як елемента комп’ютерної грамотності, вивчення комп’ютерної графіки викликає великий інтерес, оскільки робить можливим втілення в життя власних творчих ідей користувача, надаючи для цього потужний інструмент комп’ютерних технологій, розвиваючи в людині як творчі здібності, так і навички володіння комп’ютером.

При створенні конспекту лекцій авторами не ставилася задача розглянути та охопити весь обсяг комп’ютерних технологій для роботи з графічними зображеннями – він безмежний, як безмежні сфери застосування комп’ютера. За мету бралася необхідність створити у майбутнього спеціаліста адекватне уявлення про розвиток комп’ютерної графіки як у теоретичному напрямку, так і в напрямку практичного застосування. З огляду на зазначені можливості комп’ютерної графіки важливим є і створення даного конспекту лекцій. Він являє собою узагальнення технологій комп’ютерної графіки, є прагненням донести до майбутнього спеціаліста потенційні можливості комп’ютерної графіки в його професійній та повсякденній діяльності.

Page 6: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

6

Лекція 1. ОСНОВНІ ПОНЯТТЯ КОМП’ЮТЕРНОЇ ГРАФІКИ

1.1 Побудова растрових зображень та їх основні

характеристики

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

Бітова глибина кольору – це кількість бітів, яка

використовується для кодування кольору окремого пікселя.

Наприклад, зображення в режимі Bitmap кодуються одним бітом, який має значення 0 або 1.

Від бітової глибини кольору залежить, скільки можливих кольорів може мати окремий піксель: чим більша бітова глибина кольору, тим більшу кількість можливих кольорів може мати піксель.

Визначальною характеристикою растрового зображення є роздільна здатність.

Роздільна здатність зображення – це відношення між його

розмірами в пікселях та розмірами його друкованої копії. Чим більша роздільна здатність зображення, тим більшою буде якість зображення, його чіткість, оскільки для зображення кожного лінійного дюйму зображення використовується більше пікселів.

Від обраної роздільної здатності залежить наскільки малим або великим буде зображення при виведенні на друк та наскільки чітким буде відображення його дрібних деталей. Забігаючи вперед, потрібно сказати, що оскільки векторне зображення може

Page 7: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

7

змінювати свій розмір без зменшення якості, то роздільна здатність для векторних зображень не має такого великого значення, як для растрових.

Термін „роздільна здатність” має декілька можливих значень. Наприклад, якщо мова йде про комп’ютерний монітор, то мається на увазі кількість екранних пікселів, які виводяться на екран.

Роздільною здатністю сканеру чи цифрової камери є та кількість пікселів на одиницю поверхні, яку цей пристрій може охоплювати. Для сканера роздільна здатність здебільшого вимірюється в пікселях на дюйм – ppi (pixels per inch).

Роздільна здатність струменевих та лазерних принтерів характеризується кількістю точок, які наносяться на одиницю поверхні паперу та вимірюється в точках на дюйм – dpi (dots per

inch). Іншою важливою характеристикою растрового зображення є

його кольоровий режим. Проте спочатку розглянемо інше важливе поняття комп’ютерної графіки, яке також стосується кольорових режимів – кольорову модель.

Кольорова модель – це спосіб запису інформації про колір

пікселя та про колір, призначений векторному об'єкту.

Кольоровий режим визначає, які основні кольори будуть використовуватися для отримання специфічних відтінків зображення в цілому. Наприклад, колір кожного окремого пікселя в зображенні може бути отриманий за допомогою кольорових моделей RGB, CMY, Lab та інших, проте все зображення буде в режимі RGB. Це означає, що всі кольори пікселів зображення будуть перетворені на кольори моделі RGB, а якщо аналога відтінку, обраного, наприклад, в моделі Lab, в RGB немає, то вибирається подібний відтінок з моделі RGB.

Перелік існуючих кольорових моделей та режимів наведений нижче.

Page 8: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

8

Кольорові моделі Кольорові режими RGB RGB

CMY CMYK

Grayscale Grayscale

Lab Lab

HSV Indexed Color

YIQ Bitmap

HLS Duotone

Multichannel Серед кольорових моделей виділяються дві, які відповідають

двом схемам формування відтінків – адитивному та субтрактивному.

Адитивний колір залежить від джерел освітлення і виробляється телевізійними та комп’ютерними моніторами. Світло потрапляє від джерела до ока прямо, а світловий потік складається з червоних, зелених та синіх променів світла. При змішуванні цих потоків отримуються всі відтінки, які можуть бути відображені даним пристроєм.

Оскільки основними кольорами є червоний (red), зелений (green) та синій (blue), то в комп’ютерній графіці адитивний колір позначається як колір RGB та відповідає моделі кольору RGB.

Згідно моделі RGB кожен колір може бути представлений комбінацією трьох кольорів – червоного, зеленого та синього. Значення кожної з трьох складових може змінюватись від 0 до 255. При рівності всіх трьох складових моделі 0 буде отриманий чорний колір, а при рівності всіх складових 255 буде отриманий білий колір (рис.1).

Рис. 1. Куб кольору моделі RGB

Page 9: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

9

Субтрактивні кольори – кольори, які отримуються внаслідок поглинання кольору при віддзеркаленні від поверхні, яка не випромінює (рис.2). Біле або кольорове світло, яке випромінюється джерелами світла, відбивається від кольорової поверхні та потрапляє в очі. В комп’ютерній графіці субтрактивне світло виробляється шляхом використання чорнил блакитного (cyan), рожевого (magenta), жовтого (yellow) та чорного (black) відтінків. Така модель кольору називається CMY (CMYK).

Згідно моделі CMYK кожен колір може бути отриманий додаванням чотирьох складових – бірюзової, рожевої, жовтої та чорної. Значення кожної з чотирьох складових може змінюватись від 0 до 100%. При рівності всіх чотирьох складових моделі нулю буде отримано білий колір, а при рівності всіх складових 100% буде отримано чорний колір (рис.3). На рис.3 немає осі чорного кольору. Це пояснюється тим, що чорний колір є додатковим кольором, який введено для отримання чистого чорного кольору при друкуванні зображення.

Рис. 2. Поглинання кольорів Нанесення жовтої фарби на білий папір означає, що поглинатися буде синій колір. Блакитна фарба поглинає червоний колір, рожева фарба – зелений

Рис. 3. Куб кольору моделі CMYK

Page 10: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

10

Важливою характеристикою кольорової моделі є охоплення кольором.

Охоплення кольором моделі – це максимально можлива

кількість кольорів та відтінків, які можна отримати за

допомогою даної кольорової моделі. Чим вищий ступінь охоплення кольором, тим яскравішими та більш насиченими будуть кольори, які отримані за допомогою даної моделі. Наприклад, охоплення кольором в моделі RGB більше, ніж у CMYK. Це пояснює те, що на екрані монітора зображення завжди яскравіші, ніж при роздрукуванні на папері.

1.2. Параметри кольору

При уточненому якісному описі кольору використовують три його суб’єктивні атрибути: тон кольору, насиченість та блідість.

Тон кольору визначає різницю кольорів та пов’язаний з довжиною хвилі.

Насиченість – ступінь чистоти кольору. Чим ближчий колір до монохроматичного, тим він більш насичений.

Блідість – ступінь послабленості даного кольору білим кольором.

Найбільш важливий атрибут кольору – тон кольору (відтінок кольору) – асоціюється у людській свідомості з обумовленістю зафарбування предмету певним типом пігменту, фарби, барвника. Насиченість характеризує ступінь, силу, рівень вираження тону кольору. Цей атрибут в людській свідомості пов’язаний з кількістю (концентрацією) пігменту, фарби, барвника. Психофізичними еквівалентами тону кольору, насиченості та блідості є домінуюча довжина хвилі, чистота та яскравість. Електромагнітна енергія однієї довжини хвилі в видимому спектрі дає монохроматичний колір.

Наука, яка вивчає колір та його зміни, називається колориметрією. Вона описує закономірності кольорового сприйняття світла людиною. Одними з основних законів

Page 11: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

11

колориметрії є закони змішування кольорів. Вони в найбільш повному вигляді були сформульовані в 1853 році німецьким математиком Германом Грассманом:

1. Колір тривимірний – для його опису необхідні три

компоненти. Будь-які чотири кольори лінійно залежні, хоча

існує необмежена кількість лінійно незалежних сукупностей

трьох кольорів.

2. Якщо в суміші трьох компонент кольору одна змінюється

неперервно, тоді, коли дві інші залишаються незмінними,

колір суміші також змінюється неперервно.

3. Колір суміші залежить тільки від кольорів змішуваних

компонент та не залежить від їх спектральних складів.

1.3. Поняття векторного об'єкта. Побудова векторних об'єктів та їх основні характеристики

Векторний об’єкт є найменшим елементом векторного

зображення. Векторний об’єкт – це об’єкт, що задається контуром, який

може бути обведений (в такому разі кажуть, що об’єкт має

обводку) та/або залитий кольором (в такому разі кажуть, що

об’єкт має заливання).

Колір контуру та заливання об'єкта кодується певною кількістю бітів (бітова глибина кольору, див. вище) та обирається за допомогою певної кольорової моделі.

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

Векторні контури відомі також як криві Безьє. Кожна частина контуру обмежена парою опорних точок (anchor point). Контур може складатися з одного або декількох сегментів, які з’єднуються один з одним в опорних точках. Напрямок та форма криволінійних

Page 12: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

12

сегментів задається направляючими лініями (direction lines) та точками зміни кривизни (control point), які відповідають опорним точкам. До кожної опорної точки можуть приєднуватися один або два сегменти, але не більше двох. Крива Безьє показана на рис.4.

Рис. 4. Будова кривої Безьє

Плавні опорні точки (smooth point) – це точки з діаметрально

протилежними направляючими лініями.

Кутові опорні точки (corner point) – це точки з

направляючими лініями або без них, кут між якими не дорівнює

1800 при зміні положення однієї з направляючих ліній.

Довжина та кут нахилу направляючих ліній, які виходять з опорних точок, задають форму сегмента контуру, який є суміжним з цими опорними точками.

1.4. Порівняльна характеристика векторної

та растрової графік Найбільшою перевагою растрової графіки є можливість

створення фотореалістичних ілюстрацій. Звісно, це можна робити і з векторними зображеннями, проте це надзвичайно складно.

З іншого боку, за допомогою векторної графіки можна легко створювати чіткі зображення, розміри яких можна легко змінювати.

Page 13: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

13

Можливість змінювати масштаб без втрати якості зображення є найголовнішою перевагою векторної графіки. Досягається ця можливість математичним представленням інформації в векторній графіці.

В векторній графіці є геометричні об’єкти – точка, пряма, коло та ін.; в растровій – сукупність пікселів. Тому при зміні розміру векторного зображення змінюються тільки математичні параметри опису об’єктів.

При зміні розміру растрового зображення проводиться його інтерполяція – збільшення чи зменшення кількості пікселів. Наприклад, якщо в нас намальована чорна лінія на білому фоні, то після збільшення на границі чорного та білого з'являться пікселі сірого кольору, що є результатом інтерполяції між чорним та білим. Завдяки цьому якість зображення погіршується.

Ступінь погіршення якості растрового зображення при збільшенні залежить від роздільної здатності: чим роздільна здатність вище, тим менші втрати якості при збільшенні. Наприклад, фотографію розміром 3 на 4 при достатній роздільній здатності можна збільшити до формату А4. Але потрібно зазначити, що файл зображення з великою роздільною здатністю займає багато місця на диску, для обробки такого зображення потрібно більше апаратних ресурсів.

1.5. Еволюція комп’ютерних відеосистем Комп’ютерні відеосистеми розглянемо на прикладі

персональних комп’ютерів класу IBM PC. Важлива риса архітектури персонального комп’ютера з

позицій графіки – те, що контролер відеосистеми (відеоадаптер) розташований поряд з процесором та оперативною пам’яттю, оскільки приєднаний до системної шини через швидкісну локальну шину. Це дає можливість швидко проводити обмін між оперативною пам’яттю та відеопам’яттю.

Page 14: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

14

Перший комп’ютер IBM PC був оснащений відеоадаптером MDA (Monochrome Display Adapter). Відеосистема була призначена для роботи в текстовому режимі – відображалось 25 рядків по 80 символів в кожному рядку.

Наступним кроком був відеоадаптер CGA (Color Graphic

Adapter). Це перша кольорова модель для IBM PC. Адаптер CGA дозволяв працювати в кольоровому текстовому та графічному режимах; далі ми будемо розглядати тільки графічні режими відеоадаптерів. Графічних режимів для CGA було два: чорно-білий 640х200 пікселів та кольоровий 320х200 пікселів.

У 1984 році з'явився адаптер EGA (Enhanced Graphic Adapter). Виникає графічний 16-ти кольоровий відеорежим 640х350 пікселів.

У 1987 році з’явилися відеоадаптери MCGA (Multi-color

Graphic Array) та VGA (Video Graphic Array). Вони забезпечували вже 256 –ти кольорові відеорежими. Більш досконалим був адаптер VGA – він став найбільш популярним. Адаптер VGA мав 256-ти кольоровий графічний відеорежим з розмірами растра 320х200 пікселів. Він також має 16-ти кольоровий режим 640х480 пікселів.

Подальший розвиток відеоадаптерів для комп’ютерів типу IBM PC пов’язаний з підвищенням роздільної здатності та кількості кольорів. Тепер на комп’ютерах IBM PC з процесором Pentium використовуються багато типів відеоадаптерів. Всі відеосистеми растрового типу. Деякі з них дозволяють встановлювати глибину кольору 32 біт на піксель при розмірах растра 1600х1200 пікселів й більше. Існують стандарти на відеорежими, які встановлені VESA (Video Electronic Standards Association).

Параметри зображення обумовлюються не тільки моделлю відеоадаптера, але й обсягом встановленої відеопам’яті. Відеопам’ять персонального комп’ютера (VRAM – Video RAM) зберігає растрове зображення, яке показується на екрані монітора. Зображення на моніторі повністю відповідає поточному вмісту відеопам’яті. Відеопам’ять постійно сканується з частотою кадрів монітору. Запис нових даних до відеопам'яті відразу змінює

Page 15: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

15

зображення на моніторі. Необхідний обсяг відеопам'яті обчислюється як площина растру екрану в пікселях, помножена на кількість біт (або байтів) на піксель.

У відеоадаптерах перших зразків кількість відеопам'яті обчислювалася в кілобайтах, наприклад, адаптер CGA мав 16 кбайт. У сучасних відеоадаптерах рахунок ведеться на мегабайти. Як правило, обсяг відеопам'яті кратний ступеню двійки – 1, 2, 4, 8, 16, 32, 64 Мбайт. Спостерігається тенденція до збільшення обсягів відеопам'яті – відповідно до збільшення роздільної здатності та глибини кольору відеосистем. У відеопам'яті можуть зберігатися декілька кадрів зображення, що може бути використано в анімації. Крім того, в деяких відеоадаптерах передбачена можливість використання відеопам'яті для зберігання іншої інформації, наприклад Z-буфера, растрів текстур.

Сучасні відеоадаптери являють собою складні електронні пристрої. Крім відеопам'яті, на платі відеоадаптера розташовується потужний спеціалізований графічний процесор, який по складності вже наближається до центрального процесора. Окрім візуалізації вмісту відеопам'яті графічний процесор відеоадаптера виконує як відносно прості растрові операції, такі як копіювання масивів пікселів, маніпуляції з кольорами пікселів, так і більш складні. Там, де раніше використовувався виключно центральний процесор, в теперішній час частіше застосовується графічний процесор, наприклад, для операцій графічного виводу ліній, полігонів. Сучасні графічні процесори виконують вже багато операцій трьохвимірної графіки – наприклад, підтримку Z-буфера, накладання текстур й т.д. Відеоадаптер може виконувати ці операції апаратно, що дозволяє набагато прискорити їх в порівнянні з програмною реалізацією даних операцій центральним процесором. Так з'явився термін графічні акселератори. Швидкодія таких відеоадаптерів часто вимірюється в кількості графічних елементів, які малюються за одну секунду. Сучасні графічні акселератори здатні малювати мільйони трикутників за секунду.

Page 16: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

16

Використання програмістами графічних можливостей відеосистеми може здійснюватися різноманітно. По перше, через простіші операції, такі як визначення графічного відеорежиму, виведення пікселя на екран. По друге, можна використовувати функції операційної системи. Різноманітні операційні системи можуть надавати різні можливості. Наприклад, в MS DOS графічних функцій майже не було, однак програмісту був наданий вільний доступ до апаратних ресурсів комп’ютера. В швидкодіючих графічних програмах часто використовувався безпосередній доступ до відеопам'яті. На відміну від цього, операційна система Windows забороняє прикладним додаткам безпосередній доступ до апаратних ресурсів, проте можна застосовувати декілька сотень графічних функцій операційної системи – Windows API. По третє, можна використовувати спеціалізовані графічні інтерфейси, які підтримують апаратні можливості сучасних графічних процесорів.

Одним з найбільш відомих графічних інтерфейсів є OpenGL. Цей інтерфейс у вигляді бібліотеки графічних функцій був розроблений Silicon Graphics та підтримується багатьма операційними системами (в тому числі й Windows), а також виробниками графічних акселераторів. Інтерфейс OpenGL для графічного відображення використовує взаємодію типу клієнт-сервер.

Іншим відомим графічним інтерфейсом є DirectX з підсистемою тривимірної графіки Direct3D, а також підсистемою Direct Draw, яка забезпечує, насамперед, безпосередній доступ до відеопам'яті. Цей інтерфейс розроблений Microsoft та призначений тільки для Windows.

Page 17: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

17

Запитання для самоконтролю

1. Що називається бітовою глибиною кольору? 2. Що називається роздільною здатністю зображення? 3. Що таке кольорова модель? 4. Опишіть механізми отримання зображення оком людини у

випадку адитивного та субтрактивного кольорів? 5. Що таке охоплення кольором? 6. Які існують параметри кольору? 7. Що є найменшим елементом векторного зображення? 8. Що є найменшим елементом растрового зображення? 9. Які є типи опорних точок? 10. Сформулюйте переваги та недоліки растрової та векторної

графік.

Page 18: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

18

Лекція 2. КООРДИНАТНИЙ МЕТОД У КОМП'ЮТЕРНІЙ ГРАФІЦІ

Математичним апаратом, що слугує фундаментом комп’ютерної

графіки є координатний метод. Цьому є декілька причин: - кожна точка на екрані або на папері задається координатами; - координати використовуються для описання об’єктів, які будуть показані як просторові;

- при виконанні багатьох проміжних дій відображення використовують різні системи координат та перетворення з однієї системи в іншу.

2.1. Перетворення координат Спочатку розглянемо загальні питання перетворення

координат. Нехай задана n-мірна система координат (k1, k2, … kn),

яка описує положення точки в просторі за допомогою числових значень ki. В комп’ютерній графіці частіше за все використовується двовимірна (n=2) та тривимірна (n=3) системи координат.

Якщо створити іншу, N-вимірну, систему координат в базисі (m1, m2, …, mN) й поставити задачу визначення координат в новій системі, знаючи координати в старій, то рішення (якщо воно існує) можна записати в такому вигляді:

( )( )

( )

=

==

kkkfm

kkkfmkkkfm

nNN

n

n

,...,,

...,...,,

,...,,

21

2122

2111

,

де f1 – функція перерахунку i-ої координати, аргументи – координати в системі ki.

Можна поставити й зворотну задачу — за відомими координатами (т1, т2 .... mN) визначити координати (k1, k2, .... kn).

Рішення зворотної задачі запишемо так:

Page 19: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

19

( )( )

( )

=

==

mmmFk

mmmFk

mmmFk

N

N

N

nn,...,,

...

,...,,

,...,,

21

2122

2111

,

де Fn – функції оберненого перетворення.

У випадку, коли розмірності координат не співпадають (п ≠ N),

здійснити однозначне перетворення координат не вдається. Наприклад, за двовимірними екранними координатами не можна без додаткових умов однозначно визначити тривимірні координати об'єктів. Якщо розмірності систем співпадають (п = N), то також можливі випадки, коли не можна однозначно вирішити пряму чи зворотну задачі.

Перетворення координат класифікують: - за системами координат – наприклад, перетворення з полярної системи координат в прямокутну;

- за видом функції перетворення. За видом функції перетворення розрізняють лінійні та нелінійні

перетворення. Якщо при всіх і = 1, 2, ..., N функції fi — лінійні відносно аргументів (k1, k2,..., kn), тобто:

akakakaf nininiii 1,2211...

+++++= ,

де ai,j – константи, то такі перетворення називають лінійними, а при n=N – афінними.

Якщо хоча б для одного i функція fi – нелінійна відносно (k1,

k2,..., kn), тоді перетворення координат в цілому не є лінійним. Наприклад, перетворення:

,104

;53

yxyY

yxX

+=+=

Page 20: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

20

нелінійне, оскільки у виразі для Y присутнє xy. Лінійні перетворення наочно записують у матричній формі:

=

+

+

+

k

kk

aaaa

aaaaaaaa

m

mm

NnNNnNN

nn

nn

N

.

.

.

...

...

...

.

.

2

1

1,21

1,222221

1,111211

2

1

. .

Тут матриця коефіцієнтів (аij) множиться на матрицю – стовпець

(ki) і в результаті отримаємо матрицю - стовпець (mi).

Афінні перетворення на площині

Задамо певну двовимірну систему координат (х, у). Афінне

перетворення координат (х, у) описується формулами:

,

;

FEyDxY

CByAxX

++=++=

де А, В, ..., F – константи. Значення (X, Y) можна трактувати як координати в новій системі координат.

Афінне перетворення зручно записувати в матричному вигляді. Константи А, В, .... F утворюють матрицю перетворення, яка, будучи помноженою на матрицю-стовпець координат (х, у), дає матрицю-стовпець (X, Y). Однак для того, щоб врахувати константи С і F,

необхідно перейти до так званих однорідних координат — додамо рядок з одиницями в матрицях координат:

=

11001

y

x

FED

CBA

Y

X

.

Паралельний зсув координат (рис.5):

Page 21: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

21

−=−=

.

;

dyyY

dxxX

В матричній формі (матриця перетворення):

−−

100

10

01

dy

dx

.

Рис. 5. Паралельний зсув осей координат

Обернене перетворення:

+=+=

;

;

dyYy

dxXx

100

10

01

dy

dx

.

Розтяг-стискання осей координат (рис.6):

=

=

kyy

kxx

y

x

100

010

001

k

k

y

x

Рис. 6. Розтяг/стискання осей координат

Обернене перетворення:

Page 22: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

22

==

;

;

y

x

Yky

Xkx

100

00

00

y

x

k

k

.

Коефіцієнти kx та ky можуть бути від'ємними. Наприклад, kх=-1 відповідає дзеркальному відображенню відносно осі y.

Повертання (рис.7):

+−=+=

;cossin

;sincos

αααα

yxY

yxX

−100

0cossin

0sincos

αααα

.

Рис. 7. Повертання

Властивості афінного перетворення:

- будь-яке афінне перетворення може бути представленим як послідовність операцій з числа вказаних простіших: зсув, розтяг/стискання та повертання;

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

Тривимірне афінне перетворення

Дамо опис тривимірного афінного перетворення у вигляді формул:

+++=+++=+++=

;

;

;

NMzLyKxZ

HGzFyExY

DCzByAxX

де А, В, …, N – константи.

Page 23: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

23

Дамо його також в матричній формі:

=

110001

z

y

x

NMLK

HGFE

DCBA

Z

Y

X

.

Для тривимірного простору будь-яке афінне перетворення

також може бути представленим послідовністю простіших операцій. Розглянемо їх.

Зсув осей координат відповідно на dx, dy, dr

−=−=−=

;

;

;

dzzZ

dyyY

dxxX

−−−

1000

100

010

001

dz

dy

dx

.

Розтяг – стискання на kxkykz

=

=

=

;

;

;

z

y

x

kzZ

kyY

kxX

1000

0100

0010

0001

z

y

x

k

k

k

.

Повертання

а. Повертання навколо осі х на кут ϕ (рис.8):

ϕ+ϕ−=ϕ+ϕ=

=

;cossin

;sincos

;

zyZ

zyY

xX

ϕϕ−ϕϕ

10000

0cossin0

0sincos0

0001.

Page 24: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

24

Рис. 8. Повертання навколо осі х на кут ϕ

б. Повертання навколо осі y на кут ψ (рис.9):

ψ+ψ−==

ψ+ψ=

;cossin

;

;sincos

zxZ

yY

zxX

ψψ−

ψψ

100

0cos1sin

000

0sin0cos

.

Рис. 9. Повертання навколо осі y на кут ψ

в. Повертання навколо осі z на кут γ (рис.10):

=γ+γ−=γ+γ=

;

;cossin

;sincos

zZ

yxY

yxX

γγ−γγ

1000

0100

00cossin

00sincos

.

Рис. 10. Повертання навколо осі z на кут γ

Page 25: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

25

2.2. Перетворення об'єктів Перетворення об'єктів можна описати так. Нехай будь-яка

точка, що належить визначеному об'єкта, має координати (k1, k2,

..., kn) в n-мірній системі координат. Тоді перетворення об'єкта можна визначити як зміну положення точок об'єкта. Нове положення точки простору відповідає новим значенням координат (т1, т2, …, тn)

Афінні перетворення об'єктів на площині

Афінні перетворення об'єктів на площині описуються так:

X = Ах + By + С;

Y=Dx + Ey + F,

де А, В, ..., F – константи; х, у – координати до перетворення; X, Y – нові координати точок об'єктів.

Розглянемо часткові випадки афінного перетворення (рис. 11-13).

Зсув

==+=

;

; X

dyyY

dxx,

100

10

01

dy

dx

Рис. 11. Зсув

Page 26: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

26

Розтяг – стискання

−=−=

;

;

dyYy

dxXx

100

00

00

ky

kx.

Рис. 12. Розтяг/стискання

Необхідно відмітити, що ця назва, вірогідно, не дуже вдала,

оскільки для деяких типів об'єктів розміри та форма незмінні – наприклад, для точкових об'єктів. По-іншому це перетворення можна назвати масштабуванням.

Обернене перетворення:

=

=

;

;

k yYy

kxXx

100

010

001

ky

kx.

Повертання навколо центра координат (0,0):

α+α=α−α=;cossin

;sincos

yxY

yxX

ααα−α

100

0cossin

0sincos.

Рис. 13. Повертання об'єкта

Page 27: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

27

Формули для оберненого перетворення можна отримати, якщо уявити собі повертання точки з координатами (X, Y) на кут – α:

+−=+=

;cossin

;sincos

αααα

YXy

YXx

−100

0cossin

0sincos

αααα

.

Тривимірне афінне перетворення об'єктів Наведемо його опис у вигляді формул:

X=Ax+By+Cz+D;

Y=Ex+Fy+Gz+H;

Z=Kx+Ly+Mz+N;

де A,B,…,N – константи. Розглянемо окремі випадки тривимірного афінного

перетворення об'єктів. Зсув на dx, dy, dz

+=+=+=

;

;

;

dzzZ

dyyY

dxxX

1000

100

010

001

dz

dy

dx

.

Розтяг – стискання на kx, ky, kz

===

;

;

;

zkzZ

yk yY

xkxX

1000

000

000

000

kz

k y

kx

.

Page 28: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

28

Повертання

Повертання навколо осі х на кут ϕ (рис.14):

ϕ+ϕ=ϕ−ϕ=

=

;cossin

;sincos

;

zyZ

zyY

xX

ϕϕϕ−ϕ

1000

0cossin0

0sincos0

0001

.

Рис. 14. Повертання навколо осі х на кут ϕ

Перетворення об'єктів та перетворення систем координат тісно пов’язані між собою. Рух об'єктів можна розглядати як рух в зворотному напрямку відповідної системи координат.

Така відносність для об'єктів відображення та систем координат дає розробникам комп’ютерних систем додаткові можливості для моделювання та візуалізації просторових об'єктів. З кожним об’єктом можна зв’язувати як власну локальну систему координат, так і єдину для декількох об'єктів. Це можна використовувати, наприклад, для моделювання рухомих об'єктів.

2.3. Проекції об’єктів

На сьогодні найбільш поширені пристрої відображення, які синтезують зображення на площині – екрані дисплею або на папері. Пристрої, які створюють дійсно об'ємні зображення, поки що достатньо рідкісні.

При використанні будь-яких графічних пристроїв здебільшого використовують проекції. Проекція задає спосіб відображення об'єктів на графічному пристрої. Ми будемо розглядати тільки проекції на площину.

Page 29: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

29

Світові та екранні координати

При відображенні просторових об’єктів на екрані або листі паперу за допомогою принтера необхідно знати координати об'єктів. Ми розглянемо дві системи координат. Перша - світові координати,

які описують дійсне положення об'єктів в просторі із заданою точністю. Інша – система координат пристрою відображення, в якому здійснюється виведення зображення об'єктів в заданій проекції.

Нехай світові координати будуть тривимірними декартовими координатами. Де повинен знаходитися центр координат та якими будуть одиниці виміру вздовж кожної осі, поки що для нас не дуже важливо. Важливо те, що для відображення ми будемо знати якісь числові значення координат об'єктів, що відображаються.

Для отримання зображення у визначеній проекції необхідно розрахувати координати проекції. З них можна отримати координати для графічного пристрою – назвемо їх екранними координатами. Для синтезу зображення на площині достатньо двовимірної системи координат. Однак в деяких алгоритмах візуалізації використовуються тривимірні екранні координати, наприклад, в алгоритмі Z-буфера.

Основні типи проекцій

В комп’ютерній графіці найбільш розповсюджені паралельна та

центральна проекції (рис.15).

Рис. 15. Паралельна і центральна проекції

Page 30: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

30

Для центральної проекції (яка також носить назву перспективна) промені проеціювання виходять з однієї точки, яка розташована на скінченній відстані від об'єктів та площини проеціювання. Для паралельної проекції промені проеціювання паралельні.

Аксонометрична проекція

Аксонометрична проекція – різновид паралельної проекції.

Для неї всі промені проеціювання розташовуються під прямим кутом до площини проеціювання (рис.16).

Рис. 16. Аксонометрична проекція

Задамо положення площини проеціювання за допомогою

двох кутів – α та β. Розташуємо камеру так, щоб проекція осі z

на площину проеціювання X0Y була б паралельною осі 0Y. Пряме перетворення координат аксонометричної проекції

Розглянемо перетворення системи координат (x, y, z) в систему

(X, Y, Z).

1-й крок. Повертання системи координат відносно осі z на кут α .

Page 31: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

31

Матриця повертання:

ααα−α

=

1000

0100

00cossin

00sincos

A .

2-й крок. Повертаємо систему координат (х, у, z) відносно осі х' на кут β – отримуємо координати (X, Y, Z).

Матриця повертання:

βββ−β

=

1000

0cossin0

0sincos0

0001

B .

Перетворення координат виражаємо добутком матриць В та А. Запишемо добуток для координат проекції у вигляді формул:

.cossincossinsin

;sincoscoscossin

;sincos

β+βα+βα=β−βα+βα=

α−α=

zyxZ

zyxY

yxX

Обернене перетворення координат аксонометричної проекції

Для того, щоб координати проекції (X, У, Z) перетворити на

світові координати (х, у, z), потрібно виконати зворотну послідовність повертань.

Запишемо обернене перетворення також у вигляді формул:

.cossin

;sincoscoscossin

;sinsincossincos

β+β−=βα+βα+α−=

βα+βα+α=

ZYz

ZYXy

ZYXx

Page 32: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

32

Перспективна проекція

Перспективна проекція (рис.17) спочатку розглядається при

вертикальному розташуванні камери, коли α=β=0. Таку проекцію можна уявити як зображення на склі, через яке дивиться спостерігач, який розташований згори в точці (x,y,z)=(0,0,zk). Тут площина проеціювання паралельна площині (x0y).

Рис. 17. Перспективна проекція

В матричній формі перетворення координат можна записати

так:

−−

−−

=

1000

100

000

000

1 пл

пл

пл

zzz

zzzz

zz

Z

Y

X

k

k

k

k

Page 33: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

33

Зверніть увагу на те, що тут коефіцієнти матриці залежать від координати z (в знаменнику дробів). Це означає, що перетворення координат є нелінійним (а точніше, дробово-лінійним), воно належить до класу проективних перетворень.

Тепер розглянемо загальний випадок – для довільних кутів нахилу камери (α та β) також, як для паралельної аксонометричної

проекції. Нехай ( )zyx ′′′ ,, – координати для системи координат, що

є повернутою відносно початкової системи координат (x,y,z) на кути α та β.

Тоді

.cossincossinsin

,sincoscoscossin

,sincos

β+βα+βα=′β−βα+βα=′

α−α=′

zyxz

zyxy

yxx

Запишемо перетворення координат перспективної проекції у

вигляді:

).,(

);,(

zyПyY

zxПxX

′′=′′=

Послідовність перетворення координат можна описати таким

чином:

).,(),,(),,( YXаперспектив

zyxповертанняzyx →′′′ →

Перетворення в цілому нелінійне. Його не можна описати

однією матрицею коефіцієнтів-констант для всіх об'єктів (хоча для перетворення координат можна використовувати й матричну формулу).

Для такої перспективної проекції площина проеціювання перпендикулярна променю, що виходить з центра (x,y,z)=(0,0,0) та нахилений під кутом α, β. Якщо камеру віддаляти від центра координат, то центральна проекція змінюється. Коли камера у

Page 34: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

34

нескінченності, центральна проекція перетворюється у паралельну проекцію.

Вкажемо основні властивості перетворення координат перспективної проекції. В центральній проекції:

- не зберігається відношення довжин та площин; - прямі лінії зображуються прямими лініями; - паралельні прямі зображуються такими, що збігаються в одній точці.

2.4. Висновки

Уявімо ланцюжок перетворень координат від світових до

екранних наступним чином (рис. 18).

Рис. 18. Етапи перетворення координат

Для аксонометричної (паралельної) проекції координати

проекції співпадають з видовими координатами (хоча це й не

Page 35: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

35

обов’язково). Перетворення координат можна описати однією матрицею, яка отримується множенням відповідних матриць:

[ ] [ ]

⋅=

⋅=

11

β,α

Повороти,,

1

Э

Э

z

y

x

Mz

y

x

dydxKZ

Y

X

Важливим є те, що для аксонометричної проекції коефіцієнти

матриці – це константи, однакові для всіх точок тривимірного простору. Це дає можливість звести до мінімуму обчислення координат в циклі графічного виведення. В цьому плані можна відмітити крайній випадок, коли світові координати співпадають з екранними – взагалі немає перетворень координат. Наприклад, координати об'єктів задаються в екранних пікселях. Таке часто трапляється, наприклад, в двовимірній графіці.

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

Запитання для самоконтролю

1. За якими ознаками класифікують перетворення координат? 2. Сформулюйте властивості афінного перетворення. 3. Що називається світовими координатами? 4. Які основні типи проекцій існують? 5. Які основні особливості мають існуючі типи проекцій?

Page 36: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

36

Лекція 3. ГРАФІЧНІ ПРИМІТИВИ

3.1. Графічні функції API Windows

Операційна система Windows надає програмістам можливість

використовувати в своїх програмах сотні різноманітних функцій, доступ до яких виконаний у вигляді інтерфейсу API (Application

Program Interface). Програми, які використовують функції WinAPI, в дійсності містять лише виклики цих функцій, в той час як самі функції знаходяться у динамічних бібліотеках самої Windows. Наприклад, графічні функції Windows містяться у динамічній бібліотеці GDI.dll. Проте, перш ніж користуватися функціями API у власних програмах, необхідно певним чином проголосити ці функції. Далі ми розглянемо як це робиться.

Імпортування функцій API у Visual Basic

Розглянемо імпортування функцій API на прикладі їх застосування у мові Visual Basic. Наступна невелика програма містить простий приклад імпортування функції API до Visual Basic:

Private Declare Function ShowCursor Lib "user32" (ByVal bShow As

Long) As Long

Dim y As Long

Private Sub Command1_Click()

''''''''' Ховаємо курсор

y = ShowCursor(0)

End Sub

Private Sub Command2_Click()

'''''''''Показуємо курсор

y = ShowCursor(1)

End Sub

В програмі використовується функція API ShowCursor, але для того, щоб її використати, ми спочатку за допомогою команди

Page 37: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

37

Declare імпортували цю функцію до Visual Basic. Команда Declare для процедур, які не повертають значення, має такий вигляд:

[Public │Private] Declare Sub глобальне ім'я Lib бібліотека [Alias

псевдонім] [( список аргументів)]]

Для функцій, які повертають значення, вигляд команди Declare такий:

[Public │Private] Declare Function глобальне ім'я Lib бібліотека

[Alias псевдонім] [( список аргументів)] [as Тип значення, яке

повертає функція]

Всі графічні функції WinAPI зібрані у бібліотеці GDI (Graphic

Device Interface). Тип значення, яке повертає функція здебільшого Long. Тому прикладом імпортування графічної функції WindowsAPI є код:

Private Declare Function CreateEllipticRgn Lib "gdi32" Alias

"CreateEllipticRgn" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2

As Long, ByVal Y2 As Long) As Long

Далі розглянемо поняття, які безпосередньо пов’язані з графічним виведенням у Windows.

3.2. Контекст графічного пристрою

Контекст пристрою (device context або скорочено DC) являє собою об’єкт Windows, який призначений для малювання у вікні або на пристрої. Все графічне та текстове виведення в ОС Windows здійснюється через контексти пристроїв. Тому, перш ніж проводити графічне виведення на будь-який пристрій (вікно, монітор або принтер), необхідно обрати той контекст пристрою, який йому відповідає. Таким чином, контекст пристрою визначає всі аспекти виводу на пристрій. Всі графічні об’єкти обираються в контексті

Page 38: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

38

пристрою перед виведенням. Контекст пристрою визначає також систему координат, яка використовується під час малювання.

3.3. Об’єкти графічного виведення у Windows

У процесі малювання у Windows беруть участь такі об’єкти: а. Пристрій: вікно на екрані, друкована сторінка, чи будь-який

інший пристрій, для якого можна отримати контекст пристрою. б. Контекст пристрою: всі перелічені далі об’єкти обираються

перед виведенням в контексті пристрою. в. Перо: об’єкт, який визначає параметри рисування ліній.

Пір'я мають декілька атрибутів, серед яких – товщина, колір та тип лінії. Всі лінії в програмі будуть рисуватися такими, яке перо є обраним в даний момент.

г. Пензель: об’єкт, який визначає параметри заповнення областей зображення. Пензлі бувають однорідними, штриховими, а також можуть визначатися за допомогою растрового шаблону.

д. Графічний режим: визначає, як пензель та перо в процесі рисування об’єднуються з існуючим графічним зображенням.

е. Область відсічення: область контексту пристрою, в якій дозволяється графічне виведення.

ж. Траєкторія: об’єкт визначає складну фігуру, яку можна намалювати або залити заповненням.

3.4. Графічні примітиви

Розглянемо, як за допомогою функцій Windows API створювати прості графічні об’єкти.

Функції для роботи з окремими пікселями

SetPixel – задає колір одного пікселя.

Private Declare Function SetPixel Lib "gdi32" Alias "SetPixel" (ByVal

hdc As Long, ByVal x As Long, ByVal y As Long, ByVal crColor As

Long) As Long

Page 39: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

39

GetPixel – отримує колір одного пікселя.

Private Declare Function GetPixel Lib "gdi32" Alias "GetPixel" (ByVal

hdc As Long, ByVal x As Long, ByVal y As Long) As Long

Функції для роботи з лініями

AngleArc – рисує відрізок з приєднаною дугою. Arc – рисує дугу. ArcTo – рисує дугу та оновлює поточну позицію. LineTo – рисує лінію та оновлює поточну позицію. PolyBezier – рисує серію кривих Безьє. PolyBezierTo – рисує серію кривих Безьє та оновлює поточну позицію. PolyDraw – рисує серію кривих Безьє та відрізків. Polyline – рисує ламану. PolyLineTo – рисує ламану та оновлює поточну позицію. PolyPolyLine – рисує серію груп відрізків, які виводяться функцією Polyline. LineDDA – перелічує всі пікселі, через які проходить дана лінія.

Функції для роботи з фігурами Chord – рисує сектор. Ellipse – рисує еліпс. FillRect – заповнює прямокутник. FrameRect – обводить прямокутник рамкою. InvertRect – інвертує вміст прямокутника. Pie – рисує сегмент. Polygon – рисує багатокутник. PolyPolygon – рисує серію багатокутників. Rectangle – рисує прямокутник. RoundRect – рисує прямокутник з округленими кутами.

Page 40: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

40

Проте, для того, щоб можна було б малювати примітиви певними обраними перами та пензлями, необхідно створити пензлі та пера або обрати системні.

Функції для роботи з перами та пензлями CreateBrushIndirect – створює пензель на основі структури даних LOGBRUSH. CreateHatchBrush – створює штриховий пензель. CreatePatternBrush – створює пензель на основі растрового шаблону. CreatePen – створює перо. CreatePenIndirect – створює перо на основі структури даних LOGPEN. CteateSolidBrush – створює однорідний пензель заданого кольору. GetStockObject – отримує системне перо або пензель. GetSysColorBrush – отримує пензель для заданого системного кольору.

Запитання для самоконтролю

1. Вкажіть приклад імпортування функцій API у програмі, яка написана на Visual Basic.

2. В яких динамічних бібліотеках Windows знаходяться основні функції API?

3. Що називається контекстом пристрою? 4. Які об’єкти задіяні в процесі рисування в Windows? 5. Що визначає графічний режим? 6. Що називається областю відсічення? 7. Наведіть деякі функції API для роботи з графікою та поясніть

їх призначення.

Page 41: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

41

Лекція 4. МОДЕЛІ ОПИСУ ПОВЕРХОНЬ Поняття "тривимірна графіка" нині можна вважати найбільш

поширеним для визначення теми, яку ми розглянемо (в літературі назва часто скорочується до "ЗD-графіки"). Проте, необхідно зазначити, що така назва не зовсім точна, оскільки мова піде про створення зображення на площині, а не в об’ємі. Дійсно, тривимірні способи відображення поки що недостатньо широко поширені.

4.1. Аналітична модель Аналітичною моделлю будемо називати опис поверхні

математичними формулами. В комп’ютерній графіці можна використовувати різновиди такого описання. Наприклад, у вигляді функції двох аргументів z = f (x, у) можна використовувати рівняння F (х, у, z) = 0.

Здебільшого використовується параметрична форма опису поверхні. Запишемо формули для тривимірної декартової системи координат (х, у, z):

);,(

);,(

);,(

tsFz

tsFy

tsFx

z

y

x

===

де s и t – параметри, які змінюються у визначеному діапазоні, а функції Fx, Fy, Fz визначають форму поверхні.

Переваги параметричного описання – легко описувати поверхні, які відповідають неоднозначним функціям, замкнені поверхні. Опис можна провести так, що формула не буде істотно змінюватися при повертанні та масштабуванні поверхні.

В якості прикладу розглянемо аналітичний опис поверхні кулі. Спочатку як функцію двох аргументів:

yxRz 222 −−±= .

Потім у вигляді рівняння: х2 + у2 + z – R2 = 0.

Page 42: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

42

А також в параметричній формі:

х = R sin s cos t,

у = R sin s sin t,

z = R cos s.

Для опису складних поверхонь часто використовуються сплайни. Сплайн – це спеціальна функція, більш за все придатна для апроксимації окремих фрагментів поверхні. Декілька сплайнів утворюють модель складної поверхні. Іншими словами, сплайн – це теж поверхня, але така, для якої можна достатньо просто обчислити координати її точок. Здебільшого використовують кубічні сплайни. Чому саме кубічні? Тому, що третій ступінь – найменший зі ступенів, які дозволяють описати будь-яку форму, й при стикуванні сплайнів можна забезпечити неперервну першу похідну – така поверхня буде без зламів в місцях стику.

4.2. Векторна полігональна модель

Для опису просторових об'єктів тут використовуються такі елементи: вершини, відрізки прямих (вектори), полілінії, полігональні поверхні.

Елемент «вершина» (vertex) – головний елемент опису, всі інші є похідними. При використанні тривимірної декартової системи координати вершин визначаються як (хi, yi zi,). Кожен об’єкт однозначно визначається координатами власних вершин.

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

Page 43: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

43

поверхні (в літературі часто використовується назва „полігональна сітка”).

Векторну полігональну модель можна вважати найбільш поширеною в сучасних системах тривимірної комп’ютерної графіки. Її використовують в системах автоматизованого проектування, в комп’ютерних іграх та тренажерах, в геоінформаційних системах та ін.

Позитивні риси векторної полігональної моделі: - зручність масштабування об'єктів; при збільшенні чи

зменшенні об’єкти виглядають більш якісно, ніж при растрових моделях описання; діапазон масштабування визначається точністю апроксимації й розрядністю чисел для представлення координат вершин;

- невеликий обсяг даних для описання простих поверхонь, які адекватно апроксимуються плоскими гранями;

- необхідність обчислювати тільки координати вершин при перетвореннях систем координат або при пересуванні об'єктів;

- апаратна підтримка багатьох операцій в сучасних графічних відеосистемах, яка обумовлює достатню швидкість при анімації.

Недоліки полігональної моделі: - складні алгоритми візуалізації для створення реалістичних

зображень; - складні алгоритми виконання топологічних операцій, таких,

наприклад, як розрізи; - апроксимація плоскими гранями призводить до похибок в

моделюванні; при моделюванні поверхонь, які мають складну фрактальну форму (фрактал – певна статична геометрична конфігурація, наприклад, миттєвий знімок водоспаду), зазвичай неможливо збільшувати кількість граней через обмеження на швидкодію та обсяг пам'яті комп’ютера.

Page 44: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

44

4.3. Воксельна модель Як ми знаємо, кожен піксель повинен мати свій колір,

кожен воксель також має свій колір, а також прозорість. Повна прозорість вокселя означає порожнину відповідної точки об’єма (рис.19).

При моделюванні об’єма кожний воксель являє собою елемент об’єма певного розміру. Чим більше вокселів у визначеному об’ємі та менше їх розмір, тим точніше моделюються тривимірні об’єкти – збільшується роздільна здатність.

Рис. 19. Піксель і воксель

Для сучасної комп’ютерної графіки воксельний метод вважається одним з перспективних. Його використовують в комп’ютерних системах для медицини. Наприклад, при скануванні томографом виходять зображення зрізів об'єкта, які потім об’єднуються у вигляді об'ємної моделі для подальшого аналізу. Воксельний метод використовується в геології, сейсмології, в комп’ютерних іграх. Вокселі також використовуються для графічних пристроїв, які створюють дійсно об'ємні зображення.

Позитивні риси воксельної моделі: - дозволяє достатньо просто описувати складні об’єкти та

сцени; - проста процедура відображення об'ємних сцен; - просте виконання топологічних операцій над окремими

об’єктами та сценою в цілому. Наприклад, просто виконується показ розрізу – для цього відповідні вокселі можна зробити прозорими.

Page 45: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

45

Недоліки воксельної моделі: - велика кількість інформації, необхідної для представлення

об'ємних даних (наприклад, об’єм 256х256х256 має невелику роздільну здатність, але вимагає більш ніж 16 мільйонів вокселів);

- значні витрати пам'яті обмежують роздільну здатність, точність моделювання;

- велика кількість вокселів обумовлює незначну швидкість створення зображень об'ємних сцен;

- як і для будь-якого растра, виникають проблеми збільшення чи зменшення зображення (наприклад, при збільшенні погіршується роздільна здатність зображення).

4.4. Рівномірна сітка

Ця модель описує координати окремих точок поверхні наступним чином. Кожному вузлу сітки з індексами (i, j)

приписується значення висоти zіj. Індексам (і, j) відповідають визначені значення координат (х, у). Відстань між вузлами є однаковою: dx по осі х та dy по осі у.

Фактично, така модель – двомірний масив, растр, матриця, кожний елемент якої зберігає значення висоти.

Не кожна поверхня може бути представлена такою моделлю. Якщо в кожному вузлі записується тільки одне значення висоти, то це означає, що поверхня описується однозначною функцією z = f (х, у). Інакше кажучи, це така поверхня, яку будь-яка вертикаль перетинає тільки один раз. Не можуть моделюватися також вертикальні грані. Необхідно відмітити, що для сітки не обов’язково використовувати тільки декартові координати. Наприклад, для того щоб описати поверхню кулі однозначною функцією, можна використовувати полярні координати. Рівномірна сітка часто використовується для описання рельєфу земної поверхні.

Позитивні риси рівномірної сітки: - простота опису поверхонь;

Page 46: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

46

- можливість швидко дізнатися висоту будь-якої точки поверхні простою інтерполяцією.

Недоліки рівномірної сітки: - поверхні, які відповідають неоднозначній функції висоти у

вузлах сітки, не можуть моделюватися; - для описання складних поверхонь необхідна велика

кількість вузлів, яка може бути обмежена обсягом пам'яті комп’ютера;

- описання окремих типів поверхонь може бути значно складнішим, ніж в інших моделях (наприклад, багатогранна поверхня вимагає додаткового обсягу даних для описання порівняно з полігональною моделлю).

4.5. Нерівномірна сітка. Ізолінії

Нерівномірною сіткою назвемо модель опису поверхні у вигляді множини окремих точок {(х0, у0, z0), (х1, у1, z1), ...,(хn-1, уn-1, zn-

1)}, які належать поверхні. Ці точки можуть бути отримані, наприклад, в результаті вимірювання поверхні якого-небудь об'єкта за допомогою певного обладнання.

Таку модель можна вважати узагальненням для деяких розглянутих нами моделей. Наприклад, векторна полігональна модель та рівномірна сітка можуть вважатися різновидами нерівномірної сітки. Ці різновиди ми розглядали окремо, так як вони відіграють важливу роль у вирішенні завдань комп’ютерної графіки. А взагалі, може існувати багато варіантів класифікації способів опису поверхонь. Слід враховувати певну умовність нашого переліку моделей поверхонь, послідовність переліку таких моделей може бути й іншою.

Розглянемо модель поверхні у вигляді множини точкових значень, логічно ніяк не пов’язаних між собою. Нерівномірність задання опорних точок ускладнює визначення координат для інших точок поверхні, які не співпадають з опорними точками.

Цю задачу можна вирішити декількома способами, у тому числі тріангуляцією.

Page 47: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

47

Описання поверхні трикутними гранями можна вважати різновидом векторної полігональної моделі. В англомовній літературі для неї зустрічається така назва: TIN (Triangulated

Irregular Network). Після тріангуляції отримуємо полігональну поверхню, відображення якої зробити вже достатньо просто.

Розглянемо ще один з варіантів опису поверхонь – ізолінії висоти. Будь – яка ізолінія складається з точок, які представляють одне числове значення певного показника, в даному випадку – значення висоти. Ізолінії висоти також можна уявити собі як контури розрізу поверхні горизонтальними площинами (тому для ізоліній висоти часто застосовується назва „горизонталі”).

Опис поверхні ізолініями висоти часто використовується в картографії. За паперовою мапою можна з певною точністю розрахувати висоти в точках місцевості, кути нахилу та інші параметри рельєфу. Необхідно відмітити, що описання рельєфу земної поверхні ізолініями висоти невірно уявляти як розрізи горизонтальними площинами, бо поверхня Землі не плоска. Якщо б Земля була кулею, то ізолінії висоти можна б було трактувати як ізолінії діаметрів. Проте Земля – це не куля, вона має набагато складнішу форму, що називається геоїдом. В геодезії та картографії геоїд апроксимують з певною точністю різноманітними еліпсоїдами. Таким чином, тут можна вести мову про ізолінії висоти деяких умовних висот у спеціальних системах координат.

Звичайно, для опису поверхні можна використовувати не тільки ізолінії висоти, але й інші ізолінії, наприклад х- чи у-ізолінії.

В комп’ютерних системах ізолінії часто описуються векторно - полілініями. Використовуються також ізолінії у вигляді сплайнових кривих.

Точки, які складають ізолінії, й окремі опорні точки розташовуються нерівномірно. Це ускладнює розрахунок координат точок поверхні. В графічних комп’ютерних системах для виконання багатьох операцій, в першу чергу – для показу поверхні, здебільшого необхідно перетворити описання поверхні в іншу форму. Перетворення ізоліній в полігональну модель також

Page 48: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

48

виконується методами тріангуляції (тут алгоритми тріангуляції більш складні, ніж для тріангуляції окремих точок). Для перетворення нерівномірної сітки в рівномірну використовують спеціальну інтерполяцію.

Позитивні риси нерівномірної сітки: - використання окремих опорних точок, найбільш важливих

для заданої форми поверхні, обумовлює менший обсяг інформації порівняно з іншими моделями, наприклад, з рівномірною сіткою;

- наочність показу рельєфу поверхні ізолініями на мапах, планах.

Недоліки: - неможливість чи складність виконання багатьох операцій

над поверхнями; - складні алгоритми перетворення в інші форми опису

поверхонь.

Запитання для самоконтролю

1. Які існують моделі опису тривимірних поверхонь? 2. Що називається аналітичною моделлю? 3. Що називається сплайном? 4. Опишіть механізми опису векторного об’єкта у векторній

полігональній моделі. 5. Опишіть механізми опису векторного об’єкта у воксельній

моделі. 6. Опишіть механізми опису векторного об’єкта у моделі

рівномірної сітки. 7. Опишіть механізми опису векторного об’єкта у моделі

нерівномірної сітки. 8. Які позитивні та негативні риси має векторна полігональна

модель? 9. Які позитивні та негативні риси має воксельна модель? 10. Які позитивні та негативні риси має модель нерівномірної

сітки? 11. Які позитивні та негативні риси має модель рівномірної

сітки?

Page 49: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

49

Лекція 5. АЛГОРИТМИ ВИВЕДЕННЯ ТА ЗМІНИ ВЛАСТИВОСТЕЙ ТРИВИМІРНИХ ОБ'ЄКТІВ

5.1. Куля

Каркасне зображення Для каркасного зображення кулі можна рисувати сітку

меридіанів та паралелей. Для цього зручно користуватися відомими формулами параметричного опису. Координати точок поверхні кулі визначаються як функції від двох змінних (параметрів) – широти та довготи (рис. 20):

х = R cos В sin L;

у = R cos В cos; z = R sin В,

де R — радіус кулі, В — широта (змінюється від -90° до +90°), L – довгота (від -180° до +180° або від 0° до 360°).

Рис. 20. Широта та довгота

Меридіан – це лінія, що визначає точки з постійною довготою. Каркас з меридіанів можна нарисувати наступним чином:

for (L=0; L<360; Ll+=dL)

for (B=-90; B<=90; B+=dB)

{

x = R cos В sin L;

у = R cos B cos L ;

z = R sin В ;

Page 50: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

50

(X, Y) = Перетворення координат (х, у, z);

Рисування відрізка до точки (X, Y) ;

}

Тут виведені дві величини: dL та dB. Значення dL визначає

крок меридіанів за довготою, значення dB – це крок за широтою, який повинен бути маленьким (одиниці градусів) для зображення меридіана достатньо плавною кривою. Перетворення координат проводиться за формулами, що відповідають обраній проекції. Для аксонометричної проекції – це повертання світових координат на кути α та β з наступним перетворенням видових координат в екранні координати.

Паралель – це лінія, що складається з точок з постійною широтою. Для рисування каркасу з паралелей можна використовувати наступний цикл: for (B= -90; B<=90; B+=dB)

for (L=0; L<=360; Ll+=dL)

{

x = R cos В sin L;

у = R cos В cos L;

z = R sin В;

(X, Y) = Перетворення координат (х, у, z);

Рисування відрізка до точки (X, Y);

}

Варіації форми кулі Наведемо деякі можливі варіації форми кулі та рівняння, що

описують їх координати.

.5,0

;

;

K

K

K

zz

yy

xx

===

.2

;

;

K

K

K

zz

yy

xx

===

Рис. 21. Еліпсоїди

Page 51: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

51

x= xK;

y=yK;

z=2 zK, якщо zK>0,

zK – інакше. Рис. 22. Наполовину еліпсоїд, наполовину - куля

x= xK;

y=yK;

z=R-0,5 zK, якщо zK>0,

zK – інакше. Рис. 23. Верхня частина – ввігнутий еліпсоїд

x= xK;

y=yK;

z=R+0,5 zK, якщо zK>0,

zK – інакше. Рис. 24. Половинки кулі рознесені

x= xK,

y=yK,

z=zK+2,5R (zK/R – 0,5)2, якщо

zK>R/2,

zK – інакше. Рис. 25. „Груша”

x= xK;

y=yK;

z=zK+R (B/90o)4, якщо B>0o,

zK – інакше. Рис. 26. „Крапля”

x= xK;

y=yK;

z=zK-R (B/90o)3. Рис. 27. Це не тор

Page 52: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

52

На рис. 21-27 для деформації форми кулі були використані перетворення координат тільки по осі z. На рис. 28, 29 виконуються перетворення також й координат x,y.

.2

;

;/2

K

K

KK

zz

yy

Rzxx

==

+=

Рис. 28. Зсув по х пропорційно квадрату z

.2

;

;/3

K

K

KK

zz

yy

Rzxx

==

+=

Рис. 29. Зсув по х пропорційно кубу z

5.2. Циліндр

Тут ми будемо використовувати формули параметричного

опису поверхні циліндру (рис.30). В одному з можливих різновидів такого описання застосовуються наступні параметри – довгота l та висота h.

Рис. 30. Циліндр

Page 53: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

53

Рис. 31. Каркас

х = R sin l;

у = R cos l; z = H h,

де l = 0...360°, h =-0.5... 0,5.

Величинами R та Н позначимо відповідно радіус та загальну висоту циліндра (рис. 30).

Каркасне зображення

Побудова каркасного зображення повністю аналогічна розглянутому вище способу для кулі. Для циліндра також рисуються меридіани (тут це вертикальні лінії) та паралелі (еліпси). На рис. 31 зображений каркас з прямих ліній – ребер вписаного багатогранника.

Однією з властивостей каркасного зображення без видалення невидимих точок є ілюзія невизначеності ракурсу. Незрозуміло – це вигляд згори чи вигляд знизу. Раніше ви, мабуть, вже помічали подібний ефект, коли ми розглядали зображення кулі.

5.3. Top

Функції параметричного опису поверхні тора запишемо в

наступному вигляді

х = (R +r cos ϕ) sin ω,

у = (R + r cos ϕ) cos ω,

z = r sin ϕ,

де R та r – великий та малий радіуси, ϕ и ω — широта та довгота.

Для замкненої поверхні кути ϕ та ω повинні змінюватися в повному коловому діапазоні, наприклад, від 0 до 360о або від -180o до +180о. На рис. 32 показані різноманітні способи відображення тору.

Page 54: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

54

Рис. 32. Просте зображення тору: а – каркас; б – поверхня з видаленими невидимими точками

Рисування тору засобами комп’ютерної графіки достатньо

просто може бути виконано на основі апроксимації багатогранником, подібно тому, що ми вже розглядали для кулі та циліндра. Повторимо запис алгоритму виведення багатогранника чотирикутними гранями, змінивши його для даного конкретного випадку.

for (ω =-180; ω <180; ω = ω +dω )

for (ϕ=-180; ϕ<180; ϕ= ϕ+dϕ)

{

Обчислення координат точки Ро для (ϕ , ω);

Обчислення координат точки Р1 для (ϕ+dϕ , ω);

Обчислення координат точки Р2 для (ϕ+dϕ , ω+dω);

Обчислення координат точки Р3 для (ϕ , ω+dω);

Визначення необхідних атрибутів для зафарбування.

Рисування чотирикутника (Ро, Р1, Р2, Р3).

}

Очевидно, що, чим меншої величини dω та dϕ , тим більша

кількість граней у вписаного багатокутника та тим краще такий багатогранник відповідає плавній поверхні тору. При використанні такого полігонального методу отримання зображення достатньо просто накласти текстуру (рис.33).

а б

Page 55: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

55

Рис. 33. Тор з текстурою

Запитання для самоконтролю

1. Що називається паралеллю? 2. Що називається меридіаном? 3. Наведіть принципи побудови каркасного зображення для кулі

та циліндра.

Page 56: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

56

Лекція 6. РЕДАКТОРИ ВЕКТОРНОЇ ГРАФІКИ COREL DRAW ТА ADOBE ILLUSTRATOR

Серед всіх редакторів для роботи з векторною графікою

можна виділити три основні: 1. Adobe Illustrator 2. Corel Draw 3. Macromedia Freehand

Залишаючи відкритим питання порівняння цих програмних продуктів, скажемо, що в даній главі ми розглянемо лише дві перші програми та основні принципи роботи з ними.

6.1. Створення простих об'єктів Рисування в векторних редакторах Corel Draw та Illustrator

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

Об’єкти в програмах векторної графіки можуть бути прості та складні. До простих об'єктів (графічних примітивів) відносяться наступні об’єкти:

1. Точка. 2. Лінія. 3. Прямокутник та його окремий випадок квадрат. 4. Еліпс та його окремий випадок коло. 5. Правильний багатокутник. 6. Трикутник. Загальні принципи створення графічних примітивів в

Illustrator та Corel однакові. Лінія, прямокутник, еліпс та правильний багатокутник в Illustrator рисуються за допомогою наступних інструментів:

- Pen – рисує лінію, точку та взагалі будь-який замкнений чи незамкнений контур;

Page 57: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

57

- Rectangle – рисує прямокутник та при натиснутій клавіші <Shift> – квадрат;

- Ellipse – рисує еліпс та при натиснутій клавіші <Shift> – коло;

- Polygon – рисує правильний шестикутник; якщо потрібно створити інший багатокутник включно з трикутником, потрібно обрати даний інструмент та одного разу клікнути лівою кнопкою мишки в певному місці аркушу, після цього в діалоговому вікні Polygon задати радіус описаного кола та кількість сторін.

В Corel Draw для створення графічних примітивів є такі інструменти:

- група інструментів „Свободная рука” – використовується для роботи з відрізками різної складності та типів;

- „Прямоугольник” – рисує прямокутник та при натиснутій клавіші <Ctrl> – квадрат;

- „Эллипс” – рисує еліпс та при натиснутій клавіші <Ctrl> – коло;

- „Полигон” – рисує правильний багатокутник та трикутник. При необхідності кількість сторін можна задати на панелі інструментів „Панель свойств” , яка розташовується під стандартною панеллю інструментів.

Як бачимо, створення правильних аналогів геометричних фігур виконується, як в Illustrator, так і в Corel, за допомогою клавіш, відповідно, <Shift> та <Ctrl>.

6.2. Операції з об’єктами Основними операціями, які можна проводити з цілими

об’єктами різної складності в програмах векторної графіки є: 1. Переміщення. 2. Масштабування. 3. Копіювання. 4. Групування та розгрупування.

Page 58: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

58

5. Блокування. 6. Повертання. 7. Зміна порядку. 8. Віддзеркалення. 9. Зсув. Далі ми розглянемо основні принципи проведення цих

операцій. Але перед цим потрібно навести деякі загальні принципи, які властиві всім операціям над об’єктами, як в Illustrator, так і в Corel.

Перш ніж приступати до операцій, потрібно спочатку виділити цей об’єкт. В Illustrator для цього використовуються

інструменти Selection для виділення об’єкта або їх групи та

Direct Selection для виділення об’єкта(ів) в групі або для виділення окремих вузлів та їх груп. В Corel для виділення об’єкта

або їх груп використовується інструмент „Указатель” . Після виділення об’єкта навколо нього з'являється габаритний

прямокутник, який відповідає мінімальному прямокутнику, що повністю вміщує об’єкт (рис.34).

а б

Рис. 34. Габаритний прямокутник: а – об’єкт в Corel, б – об’єкт в Illustrator

За допомогою габаритного прямокутника можна виконувати

наступні операції. В Corel: масштабування, віддзеркалення відносно грані

габаритного прямокутника, зсув та повертання.

Page 59: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

59

В Illustrator: масштабування, віддзеркалення відносно грані габаритного прямокутника та повертання.

Переміщення Як в Illustrator, так і в Corel операція переміщення

виконується наступним чином. Наводимо курсор мишки на контур об’єкта або, якщо об’єкт має заливку, на об’єкт взагалі та, тримаючи натиснутою ліву кнопку мишки, переміщуємо курсор, а разом з ним і об’єкт в потрібне місце, після чого відпускаємо кнопку мишки. В Illustrator, переміщуючи об’єкт при натиснутій клавіші <Shift>, ми переміщуємо його суворо по горизонталі або по вертикалі, або під кутом 45о. Такого ж ефекту можна досягти в Corel, якщо при переміщенні об’єкта тримати натиснутою клавішу <Ctrl> .

Масштабування Масштабування може бути виконаним за допомогою

габаритного прямокутника. Для цього потрібно навести курсор на один з кутів габаритного прямокутника та, після того як курсор набуде вигляду подвійно направленої стрілки, пересувати його, змінюючи таким чином розмір об’єкта. Також в Illustrator для цього можна скористатися командою Transform����Scale з меню Object, а в Corel можна скористатися командою „Преобразования����Масштаб” з меню „Компоновать” .

Копіювання Копіювання в Illustrator здійснюється простим переміщенням

об’єкта при натиснутій клавіші <Alt> . Звичайно є інші способи, проте такий спосіб, на наш погляд, є найзручнішим.

В Corel копіювання здійснюється за допомогою команди „Дублировать” з меню „Редактировать” . Також можна

Page 60: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

60

переміщувати об’єкт правою кнопкою мишки та після її відпускання у контекстному меню, що з'явилося, обрати команду „Копировать сюда” .

Зміна порядку

Поняття порядку об'єктів звичайно властиве об’єктам та подібне до прошарків, які є в програмах Photoshop та Illustrator. Прикладом порядку об'єктів в житті є звичайна стопка паперу. Аркуш паперу, що знаходиться повністю під іншим аркушем, не буде видно, доки його не пересунути на самий верх стопки. Переміщення об'єктів по цій „стопці” і є зміною порядку об'єктів.

В Corel для зміни порядку об'єктів застосовуються наступні команди з меню „Компановать����Порядок” :

„На перед” – перемістити об’єкт нагору; „На зад” – перемістити об’єкт на самий низ; „Вперед на один” – перемістити об’єкт на одну позицію вгору; „Назад на один” – перемістити об’єкт на одну позицію донизу. Окрім цього в Corel існує можливість перемістити

об’єкт позаду іншого (команда „Сзади…” з меню „Компановать����Порядок” ) та над іншим об’єктом (команда „Спереди…” з меню „Компановать����Порядок” ).

В Illustrator команди для зміни порядку об’єкта знаходяться в меню Object����Arrange:

Bring to front – пересунути об’єкт нагору відносно усіх інших об’єктів даного прошарку;

Bring forward – пересунути об’єкт на один порядок догори в межах даного прошарку;

Send backward – пересунути об’єкт на один порядок униз в межах даного прошарку;

Send to back – пересунути об’єкт донизу відносно усіх інших об’єктів даного прошарку.

Потрібно зробити два доповнення.

Page 61: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

61

1. Як в Corel так і в Illustrator доступ до команд зміни порядку об’єкта можна отримати, натиснувши на об’єкті правою кнопкою мишки та вибравши у контекстному меню команду „Порядок” в Corel та Arrange в Illustrator. З'явиться підменю, що містить необхідні команди.

2. Об’єкти не можуть змінювати порядок відносно один одного, якщо знаходяться в різних групах (див. далі).

Групування та розгрупування Група об'єктів – це об’єкт, що складається з певної кількості

об'єктів, які без розгрупування неможливо відділити від групи. Таку групу об'єктів можна виділяти одним клацанням лівої кнопки мишки на одному з об'єктів, що входить до групи. Якщо виділена група об'єктів, всі параметри, які змінюються, та операції, які проводяться з групою, поширюються на всі об’єкти, що входять до групи.

Щоб створити групу, тобто згрупувати об’єкти, необхідно: - в Illustrator: виділити певну кількість об'єктів, обвівши їх

рамкою та виконати команду Groop з меню Object (комбінація клавіш <Ctrl+G> );

- в Corel: виділити певну кількість об'єктів, обвівши їх рамкою та виконати команду „Группа” з меню „Компановать” (також комбінація клавіш <Ctrl+G> ).

Для того, щоб провести зворотну групуванню операцію, тобто розгрупувати об’єкти, необхідно:

- в Illustrator: виділити групу та з меню Object обрати команду Ungroop <Ctrl+Shift+G> ;

- в Corel: виділити групу та з меню „Компоновать” обрати команду „Разгруппировать” <Ctrl+U> .

В Illustrator для того, щоб виділити об’єкт, що входить до групи, незалежно від групи потрібно скористатись інструментом

Direct Selection . В такому разі для цього об’єкта можна задавати

Page 62: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

62

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

Блокування об’єкта Блокування об’єкта – це захист його від проведення над ним

будь-якої операції та зміни його параметрів. Для блокування та розблокування об’єкта або груп об'єктів в

Illustrator необхідно в меню Object обрати команди, відповідно, Lock����Selection <Ctrl+2> та Unlock All <Ctrl+Alt+2> .

Для блокування та розблокування об’єкта або груп об'єктів в Corel необхідно в меню „Компановать” обрати команди відповідно „ Заблокировать объект” та „Разблокирвать объект” .

Потрібно зазначити, що, оскільки в Corel заблокований об’єкт можна виділити, то команда „Разблокировать объект” розблокує виділений об’єкт. Для розблокування всіх заблокованих об'єктів необхідно виконати команду „Разблокировать Все объекты” з меню „Компоновать” .

Повертання

Повертання об’єкта – це повертання його точок навколо

певної точки, яка називається центром повертання. За умовчанням, як в Illustrator, так і в Corel ця точка розташовується в середині об’єкта.

Повертання можна, як в Illustrator, так і в Corel здійснювати за допомогою габаритного прямокутника. Для цього в Illustrator потрібно виділити об'єкт та навести курсор на кут габаритного прямокутнику, доки курсор не прийме вигляд вигнутої подвійно-направленої стрілки (рис. 35, б). Після цього, утримуючи натиснутою ліву кнопку мишки, необхідно повертати об’єкт.

Для повертання за допомогою габаритного прямокутника в Corel необхідно виділити об’єкт, потім клацнути лівою кнопкою мишки на центрі об’єкта та, після того як габаритний прямокутник

Page 63: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

63

змінить свій вигляд, навести курсор мишки на один з його кутів, доки курсор не прийме вигляд як на рис. 35, а. Після цього необхідно, утримуючи натиснутою ліву кнопку мишки, повертати об’єкт.

Для зміни положення центра обертання в Illustrator необхідно

скористатися інструментом Rotate . Необхідно виділити об’єкт, обрати інструмент Rotate на палітрі інструментів та клацнути в тому місці, де повинен бути центр обертання. Ви побачите, що точка, яка знаходиться на рис. 35, в у центрі об’єкта, змінить своє положення. Після того як задано центр обертання, можна повертати об’єкт за допомогою інструмента Rotate. Потрібно зазначити, що змінювати центр обертання об’єкта в Illustrator можна тільки при повертанні його інструментом Rotate.

В Corel для зміни положення центра обертання необхідно виділити об’єкт, потім клацнути лівою кнопкою мишки на центрі об’єкта (габаритний прямокутник змінить свій вигляд) та перетягнути точку, яка на рис.35, а знаходиться в центрі об’єкта.

Для повертання на кут 45о та 90о необхідно при повертанні в Corel утримувати натиснутою клавішу <Ctrl> , а в Illustrator – <Shift>.

Рис. 35. Повертання об’єкта а – повертання об’єкта в Corel за допомогою габаритного

прямокутника, в центрі об’єкта видно точку – центр повертання; б – повертання об’єкта в Illustrator за допомогою габаритного

прямокутника; в – повертання в Illustrator за допомогою інструмента Rotate,

в центрі об’єкта видно точку – центр повертання

а б в

Page 64: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

64

Віддзеркалення Принцип віддзеркалення показаний на рис. 36. Полягає в

тому, що точки A, B, C, D прямокутника ABCD після віддзеркалення відносно прямої O1O переходять відповідно в точки A1, B1, C1, D1 так, що DD2=D2D1, CC2=C2C1, BB2=B2B1, AA2=A2A1.

Рис. 36. Віддзеркалення об’єкта

Для віддзеркалення в Illustrator необхідно виділити об’єкт,

потім, натиснувши ліву кнопку мишки, вказати місце першої точки осі віддзеркалення, після чого вказати другу її точку. Якщо необхідно, щоб результатом віддзеркалення була копія об’єкта, то необхідно при встановленні місця другої точки утримувати натиснутою клавішу <Alt> .

Якщо кут нахилу осі відображення відомий заздалегідь, то можна скористатись діалоговим вікном Reflect, яке можна викликати, двічі натиснувши лівою кнопкою мишки на інструменті Reflect або виконавши команду Transform→Reflect… меню Object.

В Corel для віддзеркалення об’єкта відносно горизонтальної та вертикальної лінії потрібно скористатися двома кнопками „Кнопки зеркального отображения” на панелі інструментів „Панель свойств” .

Page 65: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

65

Зсув Зсув об’єкта можна робити як в Illustrator, так і в Corel. В

Illustrator зсув робиться за допомогою інструменту Shear . Для цього необхідно виділити об’єкт, обрати інструмент Shear на палітрі інструментів та, утримуючи натиснутою ліву кнопку мишки, зсунути об’єкт в потрібний бік. Результат зсуву по горизонталі показаний на рис. 37.

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

Рис. 37 а – оригінальний об’єкт, б – об’єкт після операції зсуву по горизонталі

6.3. Зміна властивостей об'єктів у Illustrator та Corel

Основними властивостями, які має кожен об’єкт, є: тип та колір контуру, колір заповнення, товщина контуру.

Колір контуру та заповнення в Illustrator Кольорами контуру та заповнення об’єкта в Illustrator можна

керувати за допомогою блоку управління кольором (рис. 38).

а б

Page 66: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

66

Рис. 38. Блок управління кольором

Для того, щоб активізувати індикатор заповнення замість

індикатора контуру або навпаки, необхідно клацнути лівою кнопкою мишки на індикаторі заповнення або натиснути клавішу <х>. Після цього можна обирати колір заповнення/контуру в палітрі Color (рис. 39). Звісно, для того щоб задати колір заповнення або контуру, необхідно спочатку виділити сам об’єкт.

Рис. 39. Палітра Color

Тип та товщина контуру в Illustrator

Змінювати тип контуру та товщину контуру в Illustrator

можна за допомогою палітри Stroke.

Параметри об’єкта в Corel Параметри об’єкта в Corel можна змінювати через докер

„Свойства объекта” , для появи якого на екрані потрібно клацнути на об’єкті правою кнопкою мишки та у контекстному меню, яке потім з'явиться на екрані, обрати команду „Свойства” .

Page 67: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

67

6.4. Робота з вузлами графічних об’єктів

Основою роботи в будь-якому векторному редакторі є робота з контурами та їх вузлами.

Типи опорних точок Існують два типи опорних точок – кутові та плавні (рис.40).

Рис. 40. Типи опорних точок

При зміні довжини та кута нахилу однієї направляючої кутової опорної точки, змінює ступінь кривизни тільки той сегмент кривої, який знаходиться з того ж боку опорної точки. В протилежному випадку, при зміні положення однієї направляючої плавної опорної точки, змінюють ступінь своєї кривизни сегменти кривої по обох боках опорної точки.

Для перетворення кутової опорної точки в плавну необхідно обрати інструмент Convert Anchor Point , клацнути лівою кнопкою мишки на опорній точці та, утримуючи кнопку натиснутою, потягнути курсор в бік.

Для перетворення плавної опорної точки в кутову необхідно обрати інструмент Convert Anchor Point та потягнути за одну з направляючих гладкої опорної точки.

В Corel перетворювати кутову опорну точку в плавну можна через панель інструментів „Панель свойств” , на якій знаходяться

піктограми: „Сделать заострение узла” – зробити опорну точку кутовою; „Сделать узел растяжения” – зробити опорну точку плавною. Звісно для того, щоб панель „Панель свойств” набула

Page 68: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

68

потрібного вигляду, необхідно виділити потрібний вузол (точку) кривої за допомогою інструменту „Форма” .

6.5. Робота з текстом

Як в Corel, так і в Illustrator існують два види тексту: простий та блочний. Простий текст підходить для введення окремих слів та рядків, блочний для введення абзаців та достатньо великих блоків тексту, які ще й можуть бути пов’язані між собою. Способи створення цих видів тексту в Illustrator та в Corel принципово не відрізняються. Для створення тексту в Corel необхідно обрати

інструмент „Текст” а в Illustrator – Type . Тепер для створення простого тексту в обох програмах потрібно клацнути лівою кнопкою мишки в потрібному місці аркушу. На аркуші з'явиться чорна вертикальна риска - каретка, що показує місце вводу тексту.

Для створення блочного тексту в обох програмах після обрання інструментів „Текст” або Type необхідно мишкою намалювати прямокутник текстового блоку.

Між простим та блочним текстом, окрім процесу їх створення, існують відмінності:

- при зміні розміру рамки, яка оточує текст, простий текст змінює свій розмір, пропорції, міжсимвольну та міжрядкову відстань, а блочний текст перерозподіляється в середині текстового блоку при постійному розмірі та інтервалах;

- в простому тексті для переходу на наступний рядок необхідно натиснути клавішу <Enter>, а блочний текст переходить на наступний рядок, коли досягає кромки текстового блоку;

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

палітри Type, яка викликається командою Type����Character з меню Window. В Corel параметри тексту задаються через панель інструментів „Панель свойств” , яка змінює свій вигляд при редагуванні тексту.

Page 69: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

69

6.6. Ефекти тіні, перетікання, перспективи та прозорості

Поняття градієнту та градієнтної сітки

Градієнт (градієнтна розтяжка) – декілька кольорів, що плавно

переходять один в інший. При цьому потрібно зазначити, що з якої б кількості кольорів не складався градієнт, змішуються тільки сусідні кольори.

В Illustrator для завдання структури градієнту використовується палітра Gradient, для виклику якої необхідно обрати команду Gradient з меню Window. В Corel для завдання структури градієнту використовується вже згадуваний докер „Свойства объекта” .

Градієнтна сітка (рис.41) відрізняється від звичайної градієнтної розтяжки тим, що може мати будь-яку довільну структуру. Для створення сітки потрібної структури до неї потрібно додавати вузли, видаляти їх, змінювати розташування вузлів, довжину та кут нахилу їх направляючих. Кожен вузол градієнтної сітки може мати свій колір, отже кольори двох сусідніх вузлів будуть перетікати один в інший.

Рис. 41. Градієнтна сітка

Ефект тіні

Як в Illustrator, так і в Corel можна до об’єкта додати ефект

падаючої від нього тіні, для чого потрібно спочатку виділити об’єкт. В Illustrator задати ефект тіні можна за допомогою

Page 70: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

70

діалогового вікна Drop Shadow, яке можна викликати, обравши команду Stylize����Drop Shadow… з меню Effect.

В Corel ефект тіні задається за допомогою інструмента

„Интерактивная тень” . Для цього необхідно обрати даний інструмент, навести курсор мишки на центр об’єкта, натиснути ліву кнопку мишки та, утримуючи її натиснутою, перевести курсор туди, де має бути центр тіні, після чого відпустити кнопку мишки. Параметри тіні в Corel задаються за допомогою панелі інструментів „Панель свойств” , яка набуде потрібного вигляду відразу після створення тіні або після її виділення.

Як в Illustrator так і в Corel основними параметрами тіні є: - зсув по осі х відносно об’єкта; - зсув по осі y відносно об’єкта; - прозорість тіні; - чіткість кромок тіні; - колір тіні.

Ефект перетікання Ефект перетікання – це поступовий перехід від одного об’єкта

до іншого з поступовою зміною форми та параметрів проміжних об'єктів. Кількість таких проміжних об'єктів може біти довільною. Ці об’єкти є проміжними ланками на шляху перетворення одного об’єкта в інший.

В Illustrator ефект перетікання можна створити двома способами.

1. За допомогою інструменту Blend . Для цього необхідно обрати цей інструмент на палітрі інструментів, потім послідовно клацнути лівою кнопкою мишки на першому та другому об’єкті перетікання.

2. Команда Make з меню Object����Blend. До того, як скористатися цією командою потрібно виділити два об’єкти, між якими буде відбуватись перетікання.

Page 71: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

71

Для зміни параметрів перетікання необхідно зробити подвійний клік на інструменті Blend та в діалоговому вікні Blend Options задати параметри перетікання: кількість проміжних об'єктів та відстань між ними.

В Corel можна створити перетікання також двома способами. 1. За допомогою інструмента „Интерактивное

перетекание” . Для цього необхідно обрати цей інструмент, навести курсор мишки на середину першого об’єкта та, утримуючи натиснутою ліву кнопку мишки, перетягнути курсор на центр другого об’єкта, після цього відпустити кнопку.

2. За допомогою докера „Смешивание” . Для його виклику необхідно обрати команду „Смешивание” з меню „Эффекты” . Для створення перетікання потрібно виділити два об’єкта, задати параметри перетікання в докері та натиснути кнопку „Принять” , яка знаходиться в нижній частині докера „Смешивание” .

Ефект прозорості

Завдання ефекту прозорості означає, що буде видно об’єкти, які знаходяться під тим об’єктом, до якого був застосований цей ефект. Основним параметром ефекту прозорості є ступінь прозорості (Opacity в Illustrator, „Фактор” в Corel), від якої залежить, наскільки прозорим буде об’єкт, а, отже, наскільки правильною буде передача кольорів об'єктів або їх частин, що знаходяться під ним.

Задати ступінь прозорості для об’єкта в Illustrator можна за допомогою палітри Transparency, яку можна викликати, обравши команду Transparency з меню Window.

В Corel для цієї мети використовується докер „Линза” . Його можна викликати, обравши з меню „Эффекты” команду „Линза” . Після цього у списку в цьому докері необхідно обрати параметр „Прозрачность” , потім задати параметри ефекту та натиснути кнопку „Применить” .

Page 72: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

72

Різновидом прозорості в Corel є так звана інтерактивна прозорість, тобто прозорість, ступінь якої змінюється по площині об’єкта. Для її створення слугує інструмент „Интерактивная

прозрачность” .

Ефект перспективи

Спеціальні засоби для створення ефекту перспективи є в

Corel, але відсутні в Illustrator. Перспективу в Illustrator можна створити за допомогою простих інструментів створення ліній, тобто намалювати її. В Corel для створення перспективи необхідно обрати об’єкт, який буде знаходитись в перспективі та обрати команду „Добавить перспективу” з меню „Эффекты” . Після цього на екрані з'явиться площина перспективи (рис.42), пересуваючи вершини якої, ми досягаємо потрібного нам ефекту перспективи.

Рис. 42. Площина перспективи з об’єктом

Запитання для самоконтролю

1. Які основні програми-редактори векторної графіки Вам відомі?

2. Що є найменшим елементом векторної графіки? 3. Які існують основні прості об’єкти в програмах векторної

графіки?

Page 73: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

73

4. Виконайте операції переміщення, масштабування, копіювання, групування та розгрупування, блокування, повертання, зміни порядку, віддзеркалення та зсуву над об’єктами в Illustrator.

5. Які існують основні властивості об’єкта та як їх змінити в програмі Illustrator?

6. Створіть криву лінію в програмі Illustrator та виконайте вирівнювання по горизонталі першого та останнього вузлів кривої.

7. Що таке градієнт? 8. Як створити градієнтну розтяжку та сітку в Illustrator? 9. Створіть два об’єкти різної форми та кольору заповнення в

Illustrator. Зробіть ефект плавного перетікання з одного об’єкта в інший.

Page 74: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

74

Лекція 7. MACROMEDIA FREEHAND , РЕДАКТОР ДІЛОВОЇ ГРАФІКИ VISIO ТА МАТЕМАТИЧНИЙ ПАКЕТ

MATLAB

У цій лекції розділі ми розглянемо можливості продуктів Matlab та Visio, які є потужними засобами вирішення деяких специфічних задач. Окрім даних програмних продуктів буде розглянуто векторний редактор Macromedia Freehand.

7.1. Математичний пакет Matlab

Matlab – це діалогова програма, що призначена для проведення математичних обчислень з візуальним поданням даних. Інструментарій Matlab знайде собі застосування в будь-якій області, де потрібні складні математичні обчислення. Matlab має інструментарій для виконання наступних завдань:

- дослідження та наукові розробки, моделювання в області зв’язку;

- відображення, обробка та створення географічних карт; - фінансовий та кількісний аналіз; - розробка систем зі зворотним зв’язком; - робота з нечіткою логікою (автоматичне управління,

послідовний прогноз); - аналіз нейронних мереж; - побудова двовимірних та тривимірних графіків; - анімація зображень; - оптимізація лінійних та нелінійних функцій та багато інших

завдань. Як приклад розглянемо побудову в середовищі Matlab

тривимірної поверхні, рівняння якої: )sin()sin( yxz += .

Оскільки Matlab – діалогова програма, ми створюємо поверхню шляхом набору потрібних функцій та операторів у вікні Окно управления (рис.43).

Page 75: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

75

Рис. 43. „Окно управления” Matlab

Починаємо з того, що задаємо масиви аргументів x та y.

» [x,y]=meshgrid(0:10,0:10)

Отримаємо результати: x =

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

0 1 2 3 4 5 6 7 8 9 10

y =

0 0 0 0 0 0 0 0 0 0 0

1 1 1 1 1 1 1 1 1 1 1

Page 76: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

76

2 2 2 2 2 2 2 2 2 2 2

3 3 3 3 3 3 3 3 3 3 3

4 4 4 4 4 4 4 4 4 4 4

5 5 5 5 5 5 5 5 5 5 5

6 6 6 6 6 6 6 6 6 6 6

7 7 7 7 7 7 7 7 7 7 7

8 8 8 8 8 8 8 8 8 8 8

9 9 9 9 9 9 9 9 9 9 9

10 10 10 10 10 10 10 10 10 10 10

Задаємо рівняння поверхні:

» z=sin(x)+sin(y)

Отримаємо масив z:

z =

Columns 1 through 7

0 0.8415 0.9093 0.1411 -0.7568 -0.9589 -0.2794

0.8415 1.6829 1.7508 0.9826 0.0847 -0.1175 0.5621

0.9093 1.7508 1.8186 1.0504 0.1525 -0.0496 0.6299

0.1411 0.9826 1.0504 0.2822 -0.6157 -0.8178 -0.1383

-0.7568 0.0847 0.1525 -0.6157 -1.5136 -1.7157 -1.0362

-0.9589 -0.1175 -0.0496 -0.8178 -1.7157 -1.9178 -1.2383

-0.2794 0.5621 0.6299 -0.1383 -1.0362 -1.2383 -0.5588

0.6570 1.4985 1.5663 0.7981 -0.0998 -0.3019 0.3776

0.9894 1.8308 1.8987 1.1305 0.2326 0.0304 0.7099

0.4121 1.2536 1.3214 0.5532 -0.3447 -0.5468 0.1327

-0.5440 0.2974 0.3653 -0.4029 -1.3008 -1.5029 -0.8234

Columns 8 through 11

0.6570 0.9894 0.4121 -0.5440

1.4985 1.8308 1.2536 0.2974

1.5663 1.8987 1.3214 0.3653

0.7981 1.1305 0.5532 -0.4029

Page 77: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

77

-0.0998 0.2326 -0.3447 -1.3008

-0.3019 0.0304 -0.5468 -1.5029

0.3776 0.7099 0.1327 -0.8234

1.3140 1.6463 1.0691 0.1130

1.6463 1.9787 1.4015 0.4453

1.0691 1.4015 0.8242 -0.1319

0.1130 0.4453 -0.1319 -1.0880

Після знаходження всіх потрібних даних створюємо область

рисунку, де буде розташовуватись наша поверхня. Це робиться за допомогою команди Рисунок з меню Файл����Создать. Тепер ми виводимо нашу поверхню у створену нами область. Результат показаний на рис. 44. » surf(z) ‘виводимо поверхню в область рисунку

» shg ‘показуємо рисунок

0

5

10

15

0

5

10

15-2

-1

0

1

2

Рис. 44. Поверхня z=sin(x)+sin(y) у вигляді зафарбованої поверхні

Також потрібну поверхню можна представити у контурному режимі, для чого вводимо:

» contour(z) ‘виводимо поверхню у контурному режимі

» shg ‘показуємо рисунок

Поверхня z=sin(x)+sin(y), представлена у контурному режимі, показана на рис.45.

Page 78: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

78

1 2 3 4 5 6 7 8 9 10 111

2

3

4

5

6

7

8

9

10

11

Рис. 45. Поверхня z=sin(x)+sin(y) у контурному режимі

Наведений приклад є демонстрацією лише однієї з багатьох

можливостей програми Matlab. Але, перед тим як перейти до огляду можливостей наступного програмного продукту, зазначимо, що пакет Matlab достатньо складний для опанування й вимагає не тільки досконалого знання інструментів самої програми, а й міцних теоретичних знань з відповідних розділів науки.

7.2. Microsoft Visio

Visio є векторним графічним редактором, що застосовується для створення зображень переважно ділової графіки. Серед позитивних рис даного програмного продукту відмітимо легкість його опанування та великий спектр задач, що вирішуються. У Visio можна створити наступні зображення:

- блок-схеми різних типів; - план офісу та поверху будівлі; - схему електричної мережі кімнати, офісу; - схему водогінної та каналізаційної мережі поверху; - схему охоронної сигналізації; - схеми баз даних; - електричні схеми; - різноманітні діаграми; - план місцевості; - схему організації комунікаційної мережі та ін.

Page 79: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

79

Як вже зазначалося, однією з позитивних рис програми є легкість опанування. Це досягається тим, що всі елементи зображень вже готові та об’єднані в групи. Користувачу необхідно лише обрати необхідну групу та шляхом перетягування додавати необхідні елементи до зображення.

Файлом програми Visio є файл з розширенням *.vsd. Ще однією позитивною рисою програми є повна інтеграція з Microsoft

Office. Зокрема, підтримується вставка до рисунку Visio об’єкта редактора формул та редагування зображення Visio безпосередньо з Word або Excel.

7.3. Macromedia Freehand Редактор векторної графіки Freehand має великий спектр

можливостей по створенню та редагуванню векторних зображень для Web-дизайну та друку. В загальному цей продукт подібний до програм Illustrator та Corel, які ми вже розглядали, проте має декілька особливостей. 1 Freehand вимагає менше ресурсів від комп’ютера, ніж Illustrator

та Corel, й тому ідеально підходить для вирішення невеликих за обсягом „робочих” завдань.

2 Як і в Corel, у Freehand присутні інструменти для легкого досягнення окремих цілей. Зокрема це: - створення ефекту вдавлення або об'ємності об’єкта

(інструмент Emboss ); - тривимірне обертання об’єкта (інструмент 3D-Rotation ); - створення ефекту стопки об'єктів з розмиттям найнижчого

об’єкта (інструмент Smudge ). Формат файлу програми *.fh10 (десята версія). Програма

здатна зберігати зображення в інших форматах, наприклад: SWF

(Macromedia Flash), BMP, JPEG, GIF, EPS, PDF, TIFF, RTF, AI,

HTML.

Page 80: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

80

Запитання для самоконтролю

1. Для чого призначена програма Matlab? 2. Яку область застосування має програма Microsoft Visio? 3. Які переваги має Microsoft Visio? 4. Створіть просту структурну схему класифікації графіки у

Microsoft Visio. 5. Розташуйте, будь ласка, за споживанням апаратних ресурсів у

порядку зростання основні програми векторної графіки: Corel, Illustrator та Freehand.

Page 81: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

81

Лекція 8. ГРАФІЧНИЙ РЕДАКТОР ADOBE PHOTOSHOP

Photoshop – найпопулярніша програма для роботи з растровими малюнками. З її допомогою можна не тільки створювати зображення фотографічної якості, а й редагувати, коректувати існуючі зображення та покращувати їх якість. Для цього Photoshop надає різноманітний інструментарій. В Photoshop можна працювати з величезною кількістю прошарків при створенні та редагуванні зображень. Крім того, в програмі є біля сотні фільтрів, що призначені для обробки та стилізації растрових зображень, за допомогою яких можна імітувати різноманітні техніки створення творів живопису та графіки. Далі ми розглянемо деякі можливості програми Photoshop в роботі з прошарками, в покращанні якості фотографій та в роботі з текстом та векторними об’єктами.

8.1. Редагування та покращання зображення

Зміна розміру зображення Якщо ми кажемо про зміну розміру зображення в Photoshop,

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

Для зміни розміру зображення необхідно обрати команду „Размер изображения…” з меню „Изображение” , після чого у діалоговому вікні „Размер рисунка” задати необхідні параметри. Також з цього діалогового вікна можна задати нову роздільну здатність зображення. Слід пам’ятати, що при збільшенні розміру растрового зображення його якість погіршується.

Для зміни розміру холста необхідно обрати команду „Размер холста…” з меню „Изображение” , після чого у діалоговому вікні „Размер картины…” необхідно задати новий розмір холста.

Page 82: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

82

Змінювати розмір холста можна також за допомогою інструменту „Кадрирование” , який буде розглянуто нижче.

Кадрування зображення Кадрування зображення – поширений метод редагування

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

виділити інструмент „Кадрирование” (клавіша <c>), обвести потрібну область прямокутною рамкою та натиснути клавішу <Enter> для проведення кадрування або клавішу <Esc> для відміни. Якщо необхідно, щоб обведена рамкою область була не прямокутною, а, наприклад, мала форму неправильного чотирикутника, то необхідно після обведення області зображення рамкою встановити на панелі інструментів згори прапорець „Перспектива” та, перетягуючи кути рамки, задати потрібну її форму.

Чіткість зображення Для додавання чіткості зображенню використовується

інструмент „Резкость” , фільтри „Специальное обострение” , „Резкие границы” , „Сделать четче” та „Нечеткая маска” . Для вибору певного фільтру необхідно обрати відповідну команду з меню „Фильтр����Резкость” .

Інструмент „Резкость” , а також фільтри „Специальное обострение” та „Сделать четче” збільшують контрастність між сусідніми пікселями. Вони впливають на кожний піксель зображення чи виділеної області (фільтри), або на пікселі, по яким користувач проводить пензлем (інструмент).

Що стосується фільтру „Резкие границы” , то цей фільтр шукає ділянки, де відбувається різка зміна контрастності. Змінам підлягають тільки такі ділянки.

Page 83: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

83

Команда „Нечеткая маска…” є більш складною, ніж усі інші команди підсилення чіткості. В процесі її застосування програма створює копію зображення або виділеної області, зменшує її чіткість, потім порівнює з оригіналом та визначає наявність границь. Після цього контрастність збільшується шляхом освітлення та затемнення пікселів, що розташовані по обидва боки від цих границь. Тобто, фільтр „Нечеткая маска” знаходить ділянки, де вже спостерігається висока контрастність, та збільшує її. На відміну від інших фільтрів підсилення чіткості, „Нечеткая маска” дозволяє користувачу контролювати свою роботу за допомогою діалогового вікна.

Видалення пилу та подряпин Для видалення пилу та подряпин, що досить часто

трапляються на старих фотознімках, Photoshop пропонує фільтр „Пыль и помехи” , для запуску якого необхідно обрати команду „Пыль и помехи…” з меню „Фильтр����Шум” . Після цього на екрані з'явиться діалогове вікно „Пыль и помехи” , в якому користувач може задати необхідні параметри: „Радиус” – кількість пікселів, яка одночасно оцінюється при пошуку пошкоджених ділянок; „Граница” – задає, наскільки колір одного пікселя повинен відрізнятися від інших, щоб це було сприйнято як наявність подряпини.

Виділення частин зображення Для того, щоб створити прошарок, позначити ділянку

зображення, до якої необхідно застосувати певний фільтр, та в інших випадках необхідно виділити частину зображення. Для виділення ділянок зображення Photoshop пропонує широкий набір інструментів.

1. „Прямоугольная область” – для виділення прямокутної ділянки зображення;

Page 84: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

84

2. „Овальная область” – для виділення ділянки зображення у формі еліпсу;

3. „Область(горизонтальная строка)” – для виділення ділянки зображення у вигляді вузької смуги;

4. „Область(вертикальная строка)” – для виділення ділянки зображення у вигляді вузького стовпчика;

5. „Лассо” – для обведення плавною лінією ділянки зображення довільної форми;

6. „Многоугольное Лассо” – для обведення ламаною лінією ділянки зображення довільної форми;

7. „Магнитное Лассо” – для проведення виділення по чіткій межі певної області на зображенні;

8. „Волшебная палочка” – для виділення всіх пікселів (суміжних або не суміжних), що мають певний колір; після вибору даного інструменту з'явиться панель інструментів, на якій можна задати наступні опції: „Обратная чувствительность” – задає, наскільки однакові повинні бути кольори пікселів, щоб пікселі входили в виділення; „Не грубо” – розмиття кромок виділеної області; „Непрерывный” – цей параметр встановлює, чи будуть виділятися всі пікселі зображення з подібним кольором, чи будуть виділятися тільки суміжні подібні пікселі; „Использовать все слои” – встановлює, чи враховуються при виділенні пікселі тільки активного прошарку або пікселі всіх прошарків, крім прихованих.

Працювати з існуючими виділеннями можна за допомогою

команд, які згруповані в меню „Выделение” . Серед команд цього меню можна виділити наступні:

1. „Все” – виділяє всю область зображення; 2. „Инвертировать выделение” – інвертує виділення, тобто

пікселі, які були виділеними стають невиділеними й навпаки;

3. „Убрать выделение” – знімає всі виділення;

Page 85: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

85

4. „Подобные” – виділяє пікселі з кольором, ідентичним до кольорів пікселів, що переважають у вже виділеній області;

5. Група „Модифицировать” – в ній знаходяться команди, які модифікують виділену область.

Зміна яскравості, режиму та контрастності зображення Яскравість та контрастність можна змінювати за

допомогою діалогового вікна „Яркость/Контрастность” , яке можна викликати командою „Яркость/Контрастность... ” з меню „Изображение����Регулировки” . До опції яскравості користувач також має доступ, коли обробляється зображення в режимі Lab. Для вибору режиму необхідно обрати меню „Изображение����Режим” та у верхній частині меню обрати один з режимів.

8.2. Інструменти Adobe Photoshop Тепер ми коротко розглянемо призначення основних

інструментів програми, окрім вже згадуваних.

1. „Кусочек” –застосовується у створенні зображень для Web та дозволяє в зображенні робити посилання на Web – сторінки;

2. „Штамп копий” – застосовується для копіювання пікселів (цікавий інструмент, який часто застосовується для покращання фотознімків);

3. „Кисть” –для малювання, аналог звичайного пензля;

4. „Ластик” – для стирання пікселів, замість яких з'являються пікселі з кольором, який був обраний в даний момент у якості фонового (аналог ластику);

5. „Размытие” – для розмиття зображення; 6. „Текст” – для введення тексту;

7. „Перо” – для створення векторних контурів, аналогічний подібному інструменту з Illustrator;

Page 86: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

86

8. „Пипетка” – для вибору певного кольору;

9. „Прямоугольник” – даний інструмент та інструменти, які знаходяться з ним в одній групі, застосовуються для створення векторних геометричних фігур;

10. „ Заливка” – призначений для заливки певної області кольором;

11. „Осветление” – освітлення; 12. „ Затемнение” – затемнення.

8.3. Робота з прошарками

Прошарки є важливою частиною Photoshop. В програмі

працювати з прошарками можна: - за допомогою меню „Слой” ; - за допомогою палітри „Слои” ; - команди „Трансформация” та „Произвольная трансформация” з меню „Редактирование” .

Прошарки схожі на порядок об'єктів у програмах Illustrator та Corel. Завжди видно тільки той прошарок, що знаходиться згори. Всі інші не видно або видно частково, якщо вони виходять за межі верхнього. Необхідно пам’ятати, що всі дії, ефекти, фільтри, виділення та інші засоби застосовуються тільки до активного прошарку, який на палітрі „Слои” підсвічується синім кольором.

В Photoshop з прошарками можна робити наступні операції: створення, переміщення, зміна порядку, видалення, додавання ефектів до прошарку, зміна розмірів, обертання, віддзеркалення, зсув.

Створення Прошарки можна створювати такими способами. Створити новий порожній прошарок на всю площину

зображення можна або за допомогою палітри „Слои” , або через меню „Слой����Новый” .

Page 87: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

87

Створити новий прошарок на основі виділеної області. Для цього необхідно виділити область, клацнути на ній правою кнопкою мишки та у контекстному меню обрати одну з наступних команд: або „Слой через Обрезание” – яка вирізає прошарок з виділеної області; або „Слой через Копирование” – яка копіює вміст виділеної області та створює на її основі прошарок.

Переміщення

Для переміщення прошарку його просто необхідно

перетягнути мишкою, утримуючи натиснутою ліву кнопку мишки. Необхідно пам’ятати, що для того, щоб пересувати прошарок, необхідно активізувати його за допомогою палітри „Слои” .

Зміна порядку Змінювати порядок прошарків зручно за допомогою палітри

„Слои” . Не можна змінювати порядок фонового прошарку.

Видалення Потрібно зазначити, що якщо видалити кольори пікселів

прошарку, він все одно залишається. Для повного видалення прошарку включно з його вмістом необхідно натиснути на кнопку „Удалить слой” в правому нижньому куті панелі „Слои” .

Додавання ефектів до прошарку Окрім застосування фільтрів, до кожного окремого прошарку

можна додавати декілька специфічних ефектів. Для цього необхідно клацнути правою кнопкою мишки на піктограмі прошарку в палітрі „Слои” , у контекстному меню обрати команду „Настройки смешивания...” . У діалоговому вікні „Стиль слоя” , яке з'явиться після цього, можна задати наступні ефекти прошарку:

Page 88: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

88

- прозорість прошарку „Матовость” ; - тінь прошарку, внутрішня „Внутренние тени” та зовнішня

„Падающие тени” ; - відблиск внутрішній „Внутренний отблеск” та зовнішній

„Внешний отблеск” ; - вдавлення або об'ємність „Фаска и рельеф” ; - накладання на прошарок текстури „Наложение шаблона” ,

суцільну заливку кольором „Наложение цвета” , градієнтну заливку „Наложение градиента” та обводити прошарок рамкою „Штрихование” та інші ефекти.

Операції зміни розмірів, обертання, віддзеркалення, зсуву Дані операції можна робити за допомогою команд

„Трансформация” та „Произвольная трансформация” з меню „Редактирование” . Після цього навколо прошарку з'явиться габаритний прямокутник, за допомогою якого можна проводити геометричні операції над прошарком, так само, як і з об’єктами в програмах векторної графіки. Ще раз нагадуємо, що всі операції застосовуються тільки до активного прошарку.

8.4. Робота з векторними об’єктами та текстом У програмі є два типи тексту: точковий та абзацний (рис.46). Для того, щоб створити точковий текст, необхідно на палітрі

інструментів обрати інструмент Horizontal Type та клацнути лівою кнопкою мишки на тому місці рисунку, де необхідно поставити текст.

Для того, щоб створити абзацний текст, необхідно на палітрі інструментів обрати інструмент Horizontal Type , клацнути лівою кнопкою мишки на тому місці рисунку, де необхідно поставити лівий верхній кут текстового блоку та, утримуючи кнопку натиснутою, пересувати курсор в те місце, де буде правий нижній кут блоку. В межах цього тестового блоку й буде набиратися текст.

Page 89: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

89

Рис. 46. Приклад тексту в Photoshop а – точковий текст, б – абзацний текст

Між точковим та абзацним текстом, окрім процесу їх

створення, існують наступні відмінності: - при зміні розміру рамки, яка оточує текст, точковий текст змінює свій розмір, пропорції, міжсимвольну та міжрядкову відстань, а абзацний текст перерозподіляється всередині текстового блоку при постійному розмірі та інтервалах;

- в точковому тексті для переходу на наступний рядок необхідно натиснути клавішу <Enter>, а абзацний текст переходить на наступний рядок, коли досягає кромки текстового блоку;

- точковий текст займає все більше місця по ходу набору нових символів, а абзацний текст обмежений межами рамки.

8.5. Програма Corel Photo-Paint

Коли ми розглядаємо Photoshop, ми не можемо не згадати ще

одну програму, яка є достатньо поширеною та за можливостями схожа на Photoshop. Це – Corel Photo-Paint. Ця програма входить до пакету Corel Draw (туди ж входить й однойменний векторний редактор).

Окрім стандартних можливостей для растрових редакторів, серед унікальних можливостей програми є можливість створення анімованих зображень у форматі GIF та відеороликів формату AVI. Також можна відмітити інтеграцію Photo-Paint з Corel.

а

б

Page 90: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

90

Запитання для самоконтролю

1. Як виконується зміна розміру та кадрування зображень у Photoshop?

2. Виділіть ділянку зображення за допомогою інструментів групи „Лассо – „Лассо” , „Многоугольное Лассо” , „Магнитное Лассо” , та змініть параметри яскравості та контрастності виділених областей зображення.

3. Зазначте основні дії, які можна робити з прошарками в Photoshop.

4. Якими способами можна створити нові прошарки в Photoshop?

5. Які є типи тексту у Photoshop та які їх відмінності? 6. Для чого призначений інструмент „Штамп копий” ?

Page 91: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

91

Лекція 9. СИСТЕМИ ОПТИЧНОГО РОЗПІЗНАВАННЯ

Про існування спеціальних систем, які „автоматично вводять текст в комп’ютер” знають навіть користувачі-початківці. Ззовні все виглядає просто та логічно. На зображенні, яке скановане, система знаходить фрагменти, в яких „впізнає” букви, а потім заміняє ці зображення справжніми буквами, або, по-іншому, їх машинними кодами. Так здійснюється перехід від зображення тексту до „справжнього” тексту, з яким можна працювати в текстовому редакторі.

Компанією «Біт» була розроблена спеціальна технологія розпізнавання символів, яка отримала назву „Фонтанного перетворення”, а на її основі комерційний продукт, що отримав високу оцінку. Це система оптичного розпізнавання FineReader.

9.1. Основні принципи

В основі фонтанного перетворення лежить принцип

цілісності. У відповідності до нього будь-який об’єкт, що сприймається, розглядається як ціле, що складається з частин, пов’язаних між собою певними визначеннями. Так, наприклад, друкована сторінка складається із статей, стаття – із заголовку та стовпчиків, стовпчики – із абзаців, абзаци – із рядків, рядки – із слів, слова – із букв. При цьому всі перелічені елементи тексту пов’язані між собою певними просторами та мовними відношеннями.

Для виділення цілого потрібно виділити його частини. Частини, в свою чергу, можна розглядати тільки у складі цілого. Тому цілісний процес сприйняття може відбуватися тільки в межах гіпотези про об’єкт, що сприймається. Після того, як було висунуте припущення про об’єкт, що сприймається, виділяються та інтерпретуються його частини. Потім робиться спроба „зібрати” з них ціле, щоб перевірити правильність вихідної гіпотези. Ясно, що

Page 92: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

92

об’єкт, який сприймається, може інтерпретуватися в межах більш великого цілого.

Так, читаючи речення, людина впізнає букви, сприймає слова, зв’язує їх в синтаксичні конструкції та розуміє сенс.

В технічних системах будь-яке рішення при розпізнаванні тексту приймається не однозначно, а шляхом послідовного висування та перевірки гіпотез та залучення як знань про сам об’єкт, що досліджується, так і знань загального контексту. Цілісне описання класу об'єктів відповідає двом умовам: по-перше, всі об’єкти даного класу задовільняють цьому описанню, а по-друге, жоден об’єкт іншого класу не задовільняє йому. Наприклад, клас зображень букви "К" повинен бути описаний так, щоб будь-яке зображення букви "К" в нього потрапляло, а зображення всіх інших букв – ні. Такий опис має властивість відображуваності, тобто забезпечує зображення об'єктів, які описуються: еталон букви для системи OCR дозволяє візуально зобразити букву, еталон слова для розпізнавання мови дозволяє сказати слово, а опис структури речення в синтаксичному аналізаторі дозволяє синтезувати правильне речення. З практичної точки зору відображуваність відіграє велику роль, оскільки дозволяє ефективно контролювати якість описань.

Існують два види цілісного описання: шаблонне та структурне.

У першому випадку опис являє собою зображення в растровому чи векторному представленні та задано клас перетворень (наприклад, повтор, масштабування та ін.).

У другому випадку опис представляється у вигляді графу, вузлами якого є складові елементи вхідного об’єкта, а дугами – просторові відношення між ними. Елементи можуть виявитися, в свою чергу, складними (тобто мати своє описання).

Звичайно, шаблонне описання простіше в реалізації, ніж структурне. Однак, воно не може використовуватися для описання об'єктів з високим ступенем змінюваності. Шаблонне описання,

Page 93: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

93

наприклад, може застосовуватися для розпізнавання тільки друкованих символів, а структурне – ще й для рукописних.

Цілісність сприйняття пропонує два важливих архітектурних рішення. По-перше, всі джерела знань повинні працювати по можливості одночасно. Не можна, наприклад, спочатку розпізнати сторінку, а потім словниково та контекстно обробити її, оскільки в цьому випадку неможливо буде здійснити зворотний зв’язок від контекстної обробки до розпізнавання. По-друге, об’єкт, який досліджується, повинен представлятися та оброблятися по можливості цілісно.

Перший крок сприйняття – це формування гіпотези про об’єкт, який сприймається. Гіпотеза може формуватися як на основі апріорної моделі об’єкта, контексту та результатів перевірки попередніх гіпотез (процес „згори-донизу”), так і на основі попереднього аналізу об’єкта („знизу-вгору”). Другий крок – уточнення сприйняття (перевірка гіпотези), при якому проводиться додатковий аналіз об’єкта в межах висунутої гіпотези та в повну силу залучається контекст.

Для зручності сприйняття необхідно провести попередню обробку об’єкта, не втративши при цьому істотної інформації про нього. Здебільшого попередня обробка зводиться до перетворення вхідного об’єкта в представлення, зручне для подальшої роботи (наприклад, векторизації зображення), або для отримання можливих варіантів сегментації вхідного об’єкта, з яких шляхом висування та перевірки гіпотез обирається правильний. Процес висування та перевірки гіпотез повинен бути віддзеркаленим в архітектурі програми. Кожна гіпотеза повинна бути об’єктом, який можна було б оцінити або порівняти з іншими. Тому здебільшого гіпотези висуваються послідовно, а потім об’єднуються в список та сортуються на основі попередньої оцінки. Для фінального вибору гіпотези активно використовується контекст та інші додаткові джерела знань.

Page 94: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

94

9.2. Розпізнавання символів

Сьогодні відомі три підходи до розпізнавання символів – шаблонний, структурний та ознаковий. Але принципу цілісності відповідають лише перших два.

Шаблонне описання простіше в реалізації, але, на відміну від структурного, воно не дозволяє описувати складні об’єкти з великим розмаїттям форм. Саме тому шаблонне описання застосовується для розпізнавання лише друкованих символів, в той час як структурне – для рукописних, які мають, зрозуміло, значно більше варіантів накреслення.

Шаблонні системи

Такі системи перетворюють зображення окремого символу на растрове, порівнюють його з шаблонами, які є в базі, та обирають шаблон з найменшою кількістю точок, відмінних від вхідного зображення. Шаблонні системи є достатньо стійкіми до дефектів зображення та мають високу швидкість обробки вхідних даних, але надійно розпізнають тільки ті шрифти, шаблони яких їм „відомі”. Якщо, шрифт, що розпізнається, хоча б трохи відрізняється від еталонного, шаблонні системи можуть робити помилки, навіть при обробці дуже якісних зображень.

Структурні системи

В таких системах об’єкт описується як граф, вузлами якого є елементи вхідного об’єкта, а дугами – просторові відношення між ними. Системи, які реалізують подібний підхід, здебільшого працюють з векторними зображеннями. Структурними елементами є лінії, що формують символ. Так, для букви "р" – це вертикальний відрізок та дуга.

До недоліків структурних систем слід віднести їх високу чутливість до дефектів зображення. Векторизація зображення може дати додаткові дефекти. Крім того, для цих систем, на відміну від шаблонних та ознакових, до цього часу ще не створені ефективні

Page 95: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

95

автоматизовані процедури навчання. Для FineReader структурні описання довелося створити вручну.

Ознакові системи

В ознакових системах усереднене зображення кожного символу подається як об’єкт в n-вимірному просторі ознак. Тут обирається алфавіт ознак, значення яких обчислюються при розпізнаванні вхідного зображення. Отриманий n-вимірний вектор порівнюється з еталонними, та зображення відноситься до найбільш подібного з них. Ознакові системи не відповідають принципу цілісності. Необхідна, але недостатня умова цілісності описання класу об'єктів (в нашому випадку це клас зображень, які представляють один символ), полягає в тому, що описанню повинні задовольняти всі об’єкти даного класу та жоден з об'єктів інших класів. Але, оскільки при обчисленні ознак втрачається істотна частина інформації, важко гарантувати, що до даного класу вдасться віднести тільки „рідні” об’єкти.

9.3. Структурно-плямовий еталон

Фонтанне перетворення суміщає в собі позитивні риси шаблонних та структурних систем та дозволяє уникнути недоліків, які властиві кожній з них окремо. В основі цієї технології лежить використання структурно – плямового еталону. Він дозволяє представити зображення у вигляді набору плям, пов’язаних між собою n-вимірними відношеннями, що задають структуру символу. Ці відношення (тобто розташування плям відносно одна одної) утворюють структурні елементи, що складають символ. Так, наприклад, відрізок – це один тип n-вимірних відношень між плямами, еліпс – другий, дуга – третій. Інші відношення задають просторове положення елементів, які утворюють символ.

В еталоні задаються: - ім'я; - обов’язкові, забороняючі та необов’язкові структурні

елементи;

Page 96: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

96

- відношення між структурними елементами; - відношення, що зв’язують структурні елементи з

описуючим прямокутником символу; - атрибути, що використовуються для виділення

структурних елементів; - атрибути, що використовуються для перевірки відношень

між елементами; - атрибути, що використовуються для оцінки якості

елементів та відношень; - позиція, з якої починається виділення елементу

(відношення локалізації елементів). Структурні елементи, що виділяються для класу зображень,

можуть бути вихідними та складовими. Вихідні структурні елементи – це плями, складові – відрізок, дуга, кільце, точка. В якості складових структурних елементів, в принципі, можуть бути взяті будь-які об’єкти, описані в еталоні. Крім того, вони можуть бути описані як через вихідні, так і через інші складові структурні елементи.

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

В якості відношень використовуються зв’язки між структурними елементами, які визначаються або метричними характеристиками цих елементів (наприклад, „довжина більше”), або їх взаємним розташуванням на зображенні (наприклад, „правіше”, „ доторкається”).

При створенні структурних елементів та відношень використовуються конкретизуючі параметри, що дозволяють визначити структурний елемент або відношення цього елементу в еталоні конкретного класу. Для структурних елементів конкретизуючими можуть бути, наприклад, параметри, що задають діапазон припустимої орієнтації відрізку, а для відношень –

Page 97: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

97

параметри, що задають граничну припустиму відстань між характерними точками структурних елементів у відношенні „доторкається”.

Розпізнавання з використанням структурно – плямового еталону відбувається так. Еталон накладається на зображення, та відношення між виділеними на зображенні плямами порівнюються з відношеннями плям в еталоні. Якщо виділені в зображенні плями та відношення між ними задовольняють еталон певного символу, то даний символ додається до списку гіпотез про результат розпізнавання вхідного зображення.

9.4. Розпізнавання рукописних текстів

Очевидно, розпізнавання рукописного тексту значно складніше ніж розпізнавання друкованого тексту. Якщо в останньому випадку ми маємо справу з обмеженою кількістю варіацій зображень шрифтів (шаблонів), то у випадку рукописного тексту кількість шаблонів значно більша. Додаткові труднощі вносять також інші співвідношення лінійних розмірів елементів зображень та ін.

Та все ж ми сьогодні можемо визнати, що основні етапи розробки технології розпізнавання рукописних (окремі символи, написані від руки) символів вже пройдені. В арсеналі Cognitive

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

Запитання для самоконтролю

1. Який принцип лежить в основі фонтанного перетворення? 2. Які існують види цілісного описання? 3. Які існують підходи до розпізнавання символів, які їх

особливості?

Page 98: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

98

Лекція 10. FINEREADER

10.1. Структурні компоненти, інтерфейс

Інтерфейс програми FineReader за принципами своєї побудови, як і велика кількість інших програм, має наступні складові елементи: рядок меню, панелі інструментів, вікно пакету, вікно зображення та тексту, вікно крупного плану. Далі ми розглянемо призначення кожного з цих елементів окремо.

Рядок меню Рядок меню містить такі меню:

- меню „Файл” у якому є наступні основні команди: � „Открыть изображение…” – призначена для відкриття

у FineReader графічного зображення, яке розпізнається; � „Сканировать изображение...” – призначена для

введення зображення у FineReader зі сканеру; � „Открыть пакет...” , „Новый пакет” , „Сохранить пакет как...” та „ Закрыть пакет” – призначені відповідно для відкриття існуючих пакетів, створення нового пакету, збереження пакету та закриття пакетів. Потрібно зазначити, що пакет – це група файлів, які містять зображення та розпізнаний текст, а також настройки FineReader;

� „Сохранить текст как...” – призначена для збереження розпізнаного тексту у вигляді файла (зокрема, документа Word або будь-якого іншого текстового файла);

- меню „Правка” основні команди якого, це – звичні нам команди для роботи з буфером обміну;

- меню „Вид” яке містить команди для включення/виключення зображення елементів інтерфейсу програми;

Page 99: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

99

- меню „Пакет” , що містить команди роботи з пакетами – відкриття сторінок, видалення текстових блоків в пакетах та ін.;

- меню „Изображение” , яке містить наступні основні команди: � „Тип блока” – призначена для зміни типу блоку, що

впливає на те, як буде розпізнавати програма даний блок;

� „Повернуть по часовой стрелке” , „Повернуть против часовой стрелки” , „Повернуть на 1800” – призначені для повертання відсканованого зображення;

� „ Зеркально отобразить относительно вертикали” , „ Зеркально отобразить относительно горизонтали” – призначені для дзеркального відображення відсканованого зображення;

� „Очистить изображение от мусора” – призначена для покращання якості відсканованого зображення шляхом визначення та видалення дефектів – пилу, подряпин, „шуму”;

- меню „Процесс” , яке містить команди для управління процесом сканування/розпізнавання;

- меню „Сервис” , що містить команди для задавання опцій програми, перегляду словників програми та еталонів;

- меню „Справка” , яке містить команди доступу до довідкової системи програми.

Панелі інструментів

Основними панелями інструментів FineReader є панель

Scan&Read та „Стандартная” . Взагалі, вимкнути або увімкнути відображення панелей інструментів в FineReader можна за допомогою команди „Панели инструментов” з меню „Вид” . Панель „Стандартная” , як і в багатьох інших програмах, містить основні команди для роботи: команди створення нового пакету та

Page 100: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

100

відкриття існуючого, команди роботи з буфером обміну та команди відміни або повторення певних дій.

Панель інструментів Scan&Read містить команди для запуску всіх етапів розпізнавання друкованого документу. Про ці етапи ми поговоримо далі.

Вікно пакету Воно зазвичай міститься в лівій частині вікна програми.

Дозволяє проводити навігацію по відсканованих сторінках, виділяти їх, видаляти. Якщо сторінка вже розпізнана, то в лівому нижньому куті її мініатюрного зображення у вікні пакету можна побачити піктограму сторінки. Керувати розміщенням вікна пакету можна за допомогою команди „Окно пакета” з меню „Вид” .

Вікно зображення та тексту Вікна зображення та тексту зазвичай відображаються в центрі

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

Вікно крупного плану

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

10.2. Технологія роботи з програмою Процес розпізнавання друкованого документа вимагає від

користувача проведення таких наступних операцій:

Page 101: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

101

1. Сканування друкованого документа. Для сканування, звичайно, необхідний сканер. Якщо сканера немає, й користувач відсканував документ на іншому комп’ютері та переніс відскановане зображення у вигляді файла, то потрібно відкрити цей файл одним з наведених способів:

- виконати команду „Открыть изображение...” з меню „Файл” ;

- натиснути на кнопку „Открыть” на панелі інструментів Scan&Read.

В обох випадках на екрані з'явиться діалогове вікно „Откыть изображение” , в якому можна вибрати необхідний файл. Звертаємо увагу на той факт, що роздільна здатність зображення для якісного розпізнавання повинна бути не нижче 300 dpi.

2. Розпізнавання отриманого растрового зображення. Перед розпізнаванням, якщо це необхідно, можна провести:

- повертання зображення; - дзеркально відобразити зображення; - визначити блоки на зображенні. У відсканованому

зображенні можуть бути такі типи блоків: текст, таблиця, картинка, штрих-код. Кожен з блоків FineReader розпізнає по особливому або взагалі не розпізнає (наприклад, блок картинки). Для визначення блоку зображення необхідно обвести потрібну область зображення, виділити отриманий прямокутник та обрати тип блоку з підменю, яке можна викликати, обравши команду „Тип блока” з меню „Изображение” ;

- обрати мову документа. Дуже важлива дія, оскільки при неправильно обраній мові документа, його зображення буде некоректно розпізнане. Обрати мову документа можна за допомогою списку на панелі інструментів „Стандартная” . Якщо документ був написаний, наприклад, переважно українською мовою,

Page 102: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

102

то в цьому списку необхідно обрати елемент Украинский й так далі.

Також перед розпізнаванням необхідно звернути увагу на вкладку „Распознавание” діалогового вікна „Опции” , яке можна викликати, обравши команду „Опции...” з меню „Вид” .

Після встановлення всіх параметрів та редагування зображення можна починати розпізнавання. Для цього необхідно натиснути на кнопку „Распознать” з панелі інструментів Scan&Read. Також можна для цього обрати команду „Распознать” з меню „Процесс” .

3. Збереження результатів. Після розпізнавання потрібних відсканованих зображень можна нарешті зберегти результати у файлі. Для цього можна натиснути кнопку „Сохранить” з панелі інструментів Scan&Read, після чого з'явиться діалогове вікно „Сохранить текст как” , у якому можна задати ім'я файла, в який буде збережено результати, тип цього файла та які сторінки з пакету будуть збережені. Також викликати діалогове вікно „Сохранить текст как” можна, обравши команду „Сохранить текст как...” з меню „Файл” .

Далі ми коротко розглянемо деякі додаткові можливості FineReader у розпізнаванні зображень.

Аналіз макету сторінки

Іноді може виникнути ситуація, в якій користувач вважає, що

FineReader краще за нього розділить зображення на блоки та правильно обере їх тип. У цьому випадку необхідно виконати аналіз макету сторінки, для чого існують команди „Анализ макета страницы” або „Анализ макета всех страниц” з меню „Процесс” . Зображення буде проаналізоване та розділене на блоки певного типу. Результат аналізу можна коректувати, змінюючи тип

Page 103: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

103

та розмір отриманих блоків. Звісно, можна створювати нові блоки та видаляти ті, які на думку користувача є невірними.

Зміна встановленого сканера

Може виникнути така ситуація, що, незважаючи на те, що сканер встановлений та увімкнений, FineReader не може його знайти. Для того, щоб вказати програмі, яким сканером користуватись для сканування зображення, необхідно обрати команду „Опции...” з меню „Сервис” та на вкладці „Сканирование/Открытие” цього діалогового вікна натиснути на кнопку „Выбрать драйвер” . Далі необхідно у списку діалогового вікна „Выбор TWAIN-драйвера” , що з'явиться на екрані, обрати драйвер сканеру. Якщо у списку не відображено жодного сканера, то сканер, який підключений до комп’ютера користувача, невірно встановлений у операційній системі.

Запитання для самоконтролю

1. Які складові елементи має діалогове вікно програми FineReader?

2. Вкажіть етапи розпізнавання друкованого документу. 3. Як можна розпізнавати вже відсканований документ? 4. Як можна змінити встановлений сканер у FineReader? 5. Які існують типи блоків у FineReader? 6. Яким чином визначити необхідну ділянку документа як блок

певного типу? 7. Для чого й як проводиться аналіз макета сторінки?

Page 104: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

104

Лекція 11. ПЕРЕВЕДЕННЯ РАСТРОВОГО ЗОБРАЖЕННЯ У ВЕКТОРНЕ ТА НАВПАКИ.

ADOBE STREAMLINE ТА COREL TRACE. ФОРМАТИ ФАЙЛІВ РАСТРОВОЇ ГРАФІКИ

(BMP, JPEG, GIF, PSD). ІНЖЕНЕРНА ДОКУМЕНТАЦІЯ У PDF-ФОРМАТІ.

ADOBE ACROBAT

11.1. Переведення растрового зображення у векторне та навпаки

Часто необхідно створити на основі растрового зображення

векторний малюнок. Наприклад, ми сканували сторінку книги та хочемо перевести малюнок, що був розташований на цій сторінці, у векторний формат.

Переведення растрового зображення у векторне називається трасируванням.

Існує два способи трасирування.

Автотрасирування Даний спосіб полягає в тому, що растрове зображення

переводиться у векторне за допомогою спеціальних програм трасирувальників, наприклад, Corel Trace або Adobe Streamline. В цих програмах користувач вказує файл растрового зображення та точність трасирування, після чого починає переведення у вектори. Результат можна зберегти у файлі формату векторної графіки.

На жаль, при трасируванні непростих зображень потрібне векторне зображення таким способом отримати неможливо. Програми інтерпретують пікселі растрового зображення як об’єкти – прямокутники. Таким чином, оскільки отримане зображення часто складається з досить великої кількості прямокутників, то при збільшенні такого векторного зображення ці прямокутники,

Page 105: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

105

збільшуючись, погіршують загальну якість векторного зображення. Інший спосіб трасирування більш копіткий, проте часто за його допомогою можна отримати якісні векторні зображення, що отримані з растрового малюнку.

Ручне трасування Ручне трасування – достатньо копіткий спосіб трасування та

вимагає від користувача знань не програм – трасувальників, а програм для роботи з векторною графікою (вже відомі нам Corel та Illustrator). Цей спосіб полягає в тому, що растровий малюнок імпортується у програму Illustrator, Corel або іншу програму для роботи з векторною графікою та блокується, щоб його не можна було випадково зсунути. Потім, за допомогою інструментів створення та редагування контурів, графічних примітивів, рисуються векторні контури точно по лініях, зображених на імпортованому растровому зображенні. До речі, необхідно зауважити, що колір ліній на імпортованому растровому малюнку та колір векторного контуру повинні сильно контрастувати один з іншим. Після закінчення растровий малюнок розблоковується та видаляється, а залишається лише чіткий векторний контур, що точно відповідає оригінальному малюнку. Звісно, таким способом також не можна трасирувати зображення з плавним переходом кольорів.

11.2. Формати файлів растрової графіки Правильний вибір формату файла – ще один фактор, завдяки

якому ми отримаємо придатне для використання зображення. Існує велика кількість, як растрових, так і векторних графічних форматів. Розглянемо лише деякі з них, хоча в табл. 1 показані всі основні формати векторної та растрової графіки. Кожен формат має свої специфічні особливості, які підходять для якихось певних цілей.

Page 106: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

106

Таблиця 1

Формат Обтра-вочні

контури

Канали технологічних

кольорів

Конту-ри

Вектор-ний текст

Прошарки Вико-рис-тання

Формати, орієнтовані на растрову графіку

PSD Так Так Так Так Так Загальн

а

BMP Так Ні Так Ні Ні RGB

DCS 2.0 Так Так Ні Ні Ні Друк

EPS Так Ні Ні Так Ні Друк

GIF Ні Ні Ні Ні Ні Web

JPEG Так Ні Так Ні Ні Web/

стиснен-ня

PCX Так Ні Так Ні Ні RGB

PDF Так Так Так Так Так Різне

PICT Ні Ні Так Ні Ні RGB

Pixar Так Ні Так Ні Ні Відео

PNG Так Ні Так Ні Ні Web

RAW Так Так Так Ні Ні Фото

SciTex Так Ні Так Ні Ні Скану-вання

Targa Так Ні Так Ні Ні Відео

TIFF Так Так Так Так Так Друк

WBMP Ні Ні Ні Ні Ні Web

Формати, орієнтовані на векторну графіку

AI Так Ні Так Так Так Дизайн

CDR Так Ні Так Так Так Дизайн

VSD Ні Ні Так Так Ні Ділова графіка

DWG Ні Ні Так Так Ні Інженер-

на графіка

WMF Ні Ні Так Так Ні Буфер обміну

Page 107: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

107

Детальніше розглянемо наступні формати.

Формат PSD

„Рідний” формат відомої програми Photoshop підтримує всі можливості даного програмного продукту. Файли, збережені в цьому форматі, можуть бути відкриті в програмах Adobe Indesign та Adobe Illustrator. Якщо ви працюєте в програмі Photoshop, то в багатьох випадках правильно проводити редагування зображень, збережених в форматі PSD, й лише фінальний варіант зображення зберігати в іншому потрібному вам форматі.

Формат BMP

Цей растровий графічний формат використовується здебільшого в середовищі Windows. Зображення в цьому форматі не можуть бути показані Web- броузерами, тому він непридатний для Web – дизайну. Також цей формат не може бути використаний друкарськими центрами та типографіями, оскільки він не підтримує кольоровий режим CMYK. Файли BMP можуть бути вставлені в документи Word та PowerPoint.

Файли BMP, які мають 4 та 8-ми бітову глибину кольору, можуть бути стиснені з використанням RLE (Run Length Encoding), який є схемою стиснення без втрати даних.

Формат GIF

Даний формат широко застосовується для створення зображень, призначених для розміщення на Web – сторінках. Особливо він підходить для збереження зображень, які включають в себе великі області, зафарбовані одним кольором, та не мають великих ділянок з плавними переходами кольорів. Багато логотипів та мультиплікаційних заставок, навігаційні елементи (банери та кнопки) можуть бути збереженими в форматі GIF. Але формат GIF не підходить для збереження більшості фотознімків та зображень, що включають в себе плавні переходи кольорів, оскільки збережені

Page 108: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

108

в цьому форматі зображення складаються не більше ніж з 256 різних відтінків (фотознімки можуть включати в себе від декількох тисяч до мільйонів різноманітних відтінків.

До спеціальних можливостей формату GIF належить підтримка анімаційних зображень та поетапне завантаження файла.

Формат JPEG

JPEG (Joint Photography Experts Group – Об’єднана група експертів з машинної обробки фотозображень) – з технічної точки зору, є скоріше алгоритмом стиснення файлів, ніж файловим форматом. Насправді форматом файлів є JFIF (JPEG File

Interchange Format), але здебільшого використовується позначення JPEG. Формат JPEG підтримує кольорові режими RGB, Grayscale та CMYK та використовується здебільшого для розміщення в мережі Internet фотознімків та інших зображень, що включають в себе плавні переходи кольору, оскільки в режимі RGB цей формат підтримує 24-бітову глибину кольору. Завдяки своїй особливості значно зменшувати розміри файлів, які створюються, формат JPEG широко використовується цифровими фотокамерами.

Формат TIFF

TIFF (Tagged Image File Format) та EPS – два файлових формати, які найчастіше використовуються в сфері комерційного друку. Файли в форматі TIFF можуть створюватися безпосередньо багатьма настільними сканерами та більшістю моделей цифрових фотокамер. Цей формат підтримує кольорові режими CMYK, RGB,

Lab, Indexed Color, Grayscale та Bitmap.

Формат WMF

Ще один „рідний” формат Windows. Слугує для передачі векторів через буфер обміну. Зрозумілий практично усім програмам Windows, що так або інакше пов’язані з векторною графікою. Проте, не дивлячись на уявну простоту та універсальність,

Page 109: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

109

користуватися форматом WMF варто тільки в крайніх випадках для передачі чистих векторів. WMF спотворює колір, не може зберігати ряд параметрів, які можуть бути застосовані до об'єктів в різноманітних векторних редакторах.

11.3. Інженерна документація у PDF-форматі. Adobe Acrobat

Зі зростанням інформатизації суспільства виникла

необхідність поширювати електронні документи на електронних носіях та в Інтернет. Для цього ідеально підходить формат PDF (Portable Document Format – переносний формат документу), який підтримується як комп’ютерами Macintosh, так і Windows – сумісними системами. Збережені в цьому форматі файли можуть бути переглянуті за допомогою вільно поширюваної програми Acrobat Reader, яка може працювати під управлінням майже будь-якої операційної системи.

Редагувати документ PDF за допомогою програми Acrobat

Reader не можна. Для більш потужної роботи з PDF-документами існує платна програма Adobe Acrobat. Після встановлення цієї програми користувач отримує можливість створювати PDF файли. Для забезпечення можливості створення PDF-файлів програма Adobe Acrobat встановлює до системи драйвер віртуального принтеру Acrobat Distiller. Пославши документ на друк через цей драйвер, користувач створює PDF-файл замість друкованої копії документу. Також для створення PDF-файлів можна користуватися самою програмою Acrobat Distiller.

Запитання для самоконтролю

1. Що називається трасируванням? 2. Які ви знаєте програми для трасирування? 3. Які є способи трасирування?

Page 110: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

110

4. Вкажіть основні формати файлів растрової графіки та їх особливості.

5. Вкажіть основні формати файлів векторної графіки та їх особливості.

6. Які файлові формати комп’ютерної графіки найчастіше використовуються в сфері комерційного друку?

7. Які файлові формати комп’ютерної графіки використовуються в Інтернет?

8. Яка програма призначена спеціально для відкриття та перегляду PDF-файлів?

Page 111: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

111

Заключення

В конспекті лекцій інформація подана таким чином, щоб студенти могли окреслити для себе коло застосувань комп'ютерної графіки та коло основних засобів побудови графічних об’єктів за допомогою комп’ютера. Даний конспект лекцій можна розглядати як вступ до вивчення спеціалізованих програмних продуктів, що працюють з комп'ютерною графікою, таких як AutoCad та 3dMax. Засвоївши матеріал даного конспекту, студенти будуть мати необхідні знання, необхідні для виконання індивідуальних робіт з дисциплін «Інженерна графіка та розпізнавання образів», «Креслення, інженерна та комп’ютерна графіка». Все це не тільки збільшує коло практичних навичок студента, а й робить ширшим його сприйняття комп’ютерних технологій.

Page 112: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

112

Список літератури

1. Музыченко В.Л., Андреев О.Ю. Самоучитель компьютерной графики.: Учебное пособие. – М.: Технолоджи – 3000, 2003. – 400с.

2. Порев В.М. Компьютерная графика. – С.Пб.: БХВ – Петербург, 2002. – 432 с.

3. Гетц К., Гилберт М. Программирование на Visual Basic 6 и VBA: Руководство разработчика. – К.: Издательская группа BHV, 2001. – 912 с.

4. Visual Basic 6.0. – С.Пб.: БХВ – Петербург, 2003. – 992 с. 5. Кузьменко В.Г. Visual Basic 6. Самоучитель. – М.: ООО Бином

- Пресс, 2003. – 432с. 6. Эпплман Д. Win32 API и Visual Basic. Для профессионалов. –

С.Пб.: Питер, 2001. – 1120 с. 7. Пономаренко С.И. Adobe Illustrator 10. – С.Пб.: БХВ –

Петербург, 2002. – 688 с. 8. Курушин В.Д. Графический дизайн и реклама. Самоучитель. –

М.: ДМК Пресс, 2001. – 272 с. 9. Крейг Дж. К., Уэбб Дж. Microsoft Visual Basic 6.0. Мастерская

разработчика/Пер. с англ. – 5-е изд. – М.: Издательско-торговый дом «Русская редакция», 2001. – 720 с.

Page 113: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень

Навчальне видання

ЛІЗУНОВ Петро Петрович ВАСИЛЬЄВА Ганна Леонідівна

БІЛОЩИЦКИЙ Андрій Олександрович ЛУПУ Світлана Едуардівна РЕЗНІКОВ Антон Сергійович

КОМП’ЮТЕРНА ГРАФІКА

Конспект лекцій

Редагування та коректура Н.М. Зубарєвої Комп’ютерна верстка і правка О.В. Кириченка

Підписано до друку Формат 60х84 1/16. Папір офсетний. Гарнітура Таймс. Друк на різографі. Ум. друк. арк. 6,51. Обл.-вид. арк. 7,0. Ум. фарбовідб. 58. Тираж 75 прим. Вид. № 38/I-05 Зам. № КНУБА, Повітрофлотський проспект, 31, Київ, Україна, 03680 E-mail: [email protected] Віддруковано в редакційно-видавничому відділі Київського національного університету будівництва і архітектури Свідоцтво про внесення до Державного реєстру суб’єктів видавничої справи ДК № 808 від 13.02.2002 р.

Page 114: КОМП ЮТЕРНА ГРАФІКАknuba.wcms.in.ua/wloads/90load.pdf · базовими навичками створення та редагування графічних зображень