авіть якщо робота відбувається за межами координат пристрою.
Змінюють положення поточного покажчика також процедури LineTo, LineRel, OutText. p> Всі процедури ініціалізації та очищення екрана (InitGraph, GraphDefaults, ClearDevice, SetGraphMode, SetViewPort і ClearViewPort) встановлюють поточний покажчик в положення (0,0).
Малювання графічних примітивів і фігур. Лінії і їх стилі
Процедура виведення лінії (відрізка) на екран (у поточному кольорі і стилі) визначена в наступному вигляді:
Line (Х1, Y1, Х 2, Y2: Integer)
Тут задаються координати початку (X1, Y1) і кінця (X2, Y2) відрізка. Можливі ще два методи малювання відрізків:
1. З поточної точки в точку із заданими координатами (X, Y). Виконується процедурою
2. LineTo (х, у: Integer )
3. Щодо поточної позиції. Положення поточного покажчика приймається за початок В«тимчасовихВ» координат (0,0) і вказується місце розташування кінця відрізка в них. Таке побудова робить процедура
4. LineRel ( dx , dy : b> Integer )
Координати кінців можуть перевищувати межі графічного вікна. При цьому частина відрізка може бути обрізана (але поточний покажчик переміститься в координати кінця відрізка).
У Турбо Паскалі можна керувати стилем ліній: задавати товщину, тип (суцільні лінії, пунктирні і т.п.). Для цього визначено такі типи і константи стилів зображуваних ліній:
TYPE
LineSettingsType = RECORD
LineStyle
: Word;
{стиль (тип)}
Pattern
: Word;
{шаблон типу}
Thickness
: Word;
{товщина}
END;
CONST
{Для значень поля LineStyle:}
SolidLn
= 0
{суцільна лінія}
DottedLn
= 1
{точкова лінія}
CenterLn
= 2
{штрихпунктирна лінія}
DashedLn
= 3
{пунктирна лінія}
UserBitLn
= 4
{тип лінії заданий явно шаблоном}
{Для значень поля Thickness :}
NormWidth = 1
{товщина лінії в один піксель}
ThickWidth = 3
{товщина лінії в три пікселя}
Щоб отримати інформацію про поточний стилі линяють, можна скористатися процедурою
GetLineSettings ( VAR LineType : LineSettingsType )
А щоб встановити новий стиль ліній, необхідно використовувати процедуру SetLineStyle ( LineStyle , Pattern , < b> Thickness : Word ), підставивши в неї відповідні значення. Якщо параметр LineStyle НЕ дорівнює UserBitLn , то значення параметра Pattern не грає ролі і зазвичай задається нулем. p> Розглянемо докладно варіант, коли LineStyle одно UserBitLn . У цьому випадку при визначенні типу лінії керуються такими міркуваннями:
1. Лінія являє собою сукупність відрізків, кожен з яких має довжину 16 пікселів. Якщо довжина лінії не ділиться на 16 без остачі, то останній відрізок обрізається.
2. Можна задати шаблон-комбінацію шістнадцяти світяться або погашених пікселів. Його представляють як безліч одиниць і нулів: 1 - світиться, 0 - немає. Наприклад, невеликий рівномірний пунктир задається як 1100110011001100 - всього 16 розрядів .
Оскільки Турбо Паскаль не дозволяє працювати з числами, представленими у двійковій системі числення, необхідно перевести отримане число в десяткову (52428) або в шестнадцатиричную ($ сссс) систему числення і підставити його фактичним параметром на місце Pattern при виклику SetLineStyle.
Uses Graph;
{підключений модуль Graph}
{$ I Initgraf.pas}
Схожі реферати:
Реферат на тему: Різновиди ліній передачі електромагнітної енергії: коаксіальна лінія, полос ...Реферат на тему: Лінія з виробництва сосисок продуктівністю 600 кг / рік. Котел під Продукт ...Реферат на тему: Проектування лінії зв'язку на базі мідних і волоконно-оптичних ліній зв ...Реферат на тему: Проектування поточної Лінії для Приготування вологих кормових сумішей при в ...Реферат на тему: Технологія цифрової абонентської лінії (Digital Subscribe Line, DSL)
|
Український реферат переглянуто разів: | Коментарів до українського реферату: 0
|
|
|