Позиціонування точки на графічній поверхні 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Позиціонування точки на графічній поверхні



 

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

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

Рис. 8.2. Користувацька система координат на поверхні форми з початком відліку в лівому нижньому кутку графічного поля

Координати поточної точки форми або елемента можна встановити (або отримати), скориставшись властивостями Currentx і Currenty. Наприклад, подані нижче команди встановлять координати (50, 100) для поточної точки форми.

Forml.CurrentX = 50

Forml.CurrentY =100

Встановити координати для поточної точки можна також накресливши точку-примітив на поверхні форми: Pset (X, Y), де X, Y – координати зображеної точки. Щоб точка-примітив не відображалась на екрані, необхідно їй присвоїти колір поверхні графічної області.

 

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

 

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

Викреслювання (виведення) графічних примітивів на графічній поверхні виконують за допомогою відповідних методів (табл. 8.2).

Таблиця 8.2

Методи викреслювання (виведення) графічних примітивів

 

Метод Дія
PSet Зображує точку
Line Залежно від значення параметрів креслить лінію, прямокутник або контур прямокутника
Circle Залежно від значення параметрів креслить коло, еліпс, дугу, круг або сектор
Print Виводить текст

 

8.4.1. Зображення точки

 

Точку на графічній поверхні зображують за допомогою методу PSet. Інструкцію виклику методу PSet у загальному вигляді можна записати таким чином:

Об'єкт.Pset Step(х,у),Color

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

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

Параметр Color задає колір точки. У ролі цього параметра можна використовувати одну з пойменованих констант (див. табл. 8.3), а також значення функції Rgb, яка повертає код кольору, заданий червоною, зеленою і синьою складовими (як відомо, будь-який колір можна отримати шляхом змішування в різних пропорціях червоної, зеленої та синьої фарб). У функції Rgb три параметри: перший задає частку червоної (red), другий – зеленої (green) третій – синьої (blue) складових. Значення кожного з параметрів має перебувати в діапазоні від 0 до 255. Наприклад, значенням функції Rgb (205, 127, 50) є код "золотого" кольору. Параметр Color не є обов'язковим. Якщо його не названо, то колір зафарбовування точки залежить від значення властивості Forecolor графічної поверхні, для якої застосовано метод.

Таблиця. 8.3

Константи, які використовуються при завданні кольору

Константа Колір
vbBlack Чорний
vbRed Червоний
vbGreen Зелений
vbYellow Жовтий
vbBlue Синій
vbMagenta Пурпурний
vbCyan Бірюзовий
vbWhite Білий

Ключове слово Step можна не зазаначати. У цьому випадку параметри x і у задають абсолютні координати точки. Якщо слово Step вживається, то координати точки роблять свій відлік від поточного положення покажчика графічного виведення.

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

 

8.4.2. Проведення лінії

 

Викреслювання прямої лінії відбувається за допомогою методу Line.

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

Об'єкт.Line Step(x1,y1) – Step(x2,y2), Color

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

Параметри x1 і y1 задають координати початкової точки лінії, а параметри х2 і у2 – координати точки кінця.

Параметр Сolor задає колір лінії. У ролі цього параметра можна використовувати одну з пойменованих констант (див. табл. 8.3) або значення функції Rgb. Параметр Color не вважається обов'язковим. Якщо його не вжито, то колір лінії залежить від значення властивості Forecolor графічної поверхні, на якій використано метод Line.

При цьому ключове слово Step можна не вживати. Тоді параметри x1, y1 і х2, у2 задають абсолютні координати кінця лінії. Якщо слово Step вжито перед параметрами x1, y2, координати початкової точки лінії відліковуються від покажчика графічного виведення. Коли ж слово Step вжито перед параметрами х2, у2, то координати кінцевої точки лінії починають свій відлік від її початку.

Товщину і вид (стиль) лінії визначають відповідно до властивостей DrawWidth і DrawStyle графічної поверхні, на якій використовують метод Line. У табл. 8.4 перелічено константи, використовуючи які, можна задати вид лінії. Слід звернути увагу: лінія, товщина якої більш ніж 1 піксел, може бути тільки суцільною, бо провести її пунктирною неможливо.

 

Таблиця 8.4

Константи, для використовуються для завдання графічної поверхні лінії

Константа Вид (стиль) лінії
VbSoli Суцільна
VbDash Штрихова (довгі штрихи)
VbDot Пунктирна (короткі штрихи)
VbDashdot Штрих-пунктирна
VbDashDotDot Штрих, два пунктири

 

8.4.3. Креслення прямокутника

 

Метод Line дозволяє зобразити не тільки лінію, але й прямокутник (див. рис. 8.3).

Рис. 8.3. Використання методу Lineдля креслення прямокутника

Інструкцію виклику методу Line, що забезпечує зображення прямокутника, в загальному вигляді записуємо таким чином:

Об'єкт.Line Step(x1,y1) – Step(х2,у2),Color,В

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

Параметри x1 і y1 задають координати лівого верхнього (нижнього) кута прямокутника, а параметри х2, у2 – координати правого нижнього (верхнього) кута.

Параметр В вказує на те, що за допомогою методу Line потрібно накреслити прямокутник, його колір задає параметр Сolor. У ролі цього параметра можна використовувати одну з пойменованих констант (див. табл. 8.3) або значення функції Rgb. Параметр Сolor вважаеється обов'язковим. Якщо його не використано, то колір залежить від значення властивості ForeColor графічної поверхні, на якій застосовано метод.

Товщину і вид (стиль) лінії прямокутника визначають відповідно до властивостей DrawWidth і DrawStyle графічної поверхні, на якій використано метод Line. У ролі властивості DrawStyle можна використовувати одну з наведених у табл. 8.4 констант. Якщо товщина лінії, яка обмежує прямокутник більш ніж 1 піксель, то розмір прямокутника (по зовнішній межі) буде більшим від розміру поля, заданого параметрами x1, y1 і х2, у2. Щоб розмір прямокутника (по зовнішній межі) дорівнював розміру графічного поля (у тому випадку, коли ширина межі перевищує 1 піксель), то властивості DrawStyle треба присвоїти значення vbInsideSoiid. Тоді лінія межі буде накреслена так, що її зовнішній край буде розташований точно в межах графічного поля, заданого точками (x1, y1) і (х2, у2).

Колір і стиль зафарбовування внутрішнього поля прямокутника визначають відповідно до властивостей FillColor і FilStyle тієї графічної поверхні, на якій застосовано метод. За умовчуванням значення властивості FillStyle відповідає vbSFTransparent, тому метод застосовується тільки для зображення меж прямокутника. Щоб внутрішнє поле прямокутника було зафарбовано, задане властивістю FillColor значення властивості FillStyle має відповідати vbFSSoiid (суцільне тонування). Внутрішнє поле прямокутника також може бути заштриховане. Константи, за допомогою яких можна задати стиль зафарбовування, наведені в табл. 8.5.

Ключове слово Step можна не вживати. В цьому випадку параметри x1, y1 і х2, у2 задають абсолютні координати кутів прямокутника.

Якщо слово Step вживається перед параметрами x1, y1, то координати лівого верхнього (нижнего) кута прямокутника починають відлік від поточного положення покажчика графічного виведення.

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

Якщо замість параметра В вжито параметр BF, то метод передбачає зображення зафарбованого прямокутника, колір межової лінії та колір зафарбовування якого збігатимуться. Колір прямокутника в цьому випадку визначить параметр Сolor або (якщо його не використовують) властивість ForeColor. Слід звернути увагу, що після того як за допомогою методу Line буде намальовано прямокутник, покажчик графічного виведення перебуватиме в точці (х2, у2).

Таблиця 8.5

Стилі зафарбовування внутрішнього поля прямокутника

Константа Спосіб (стиль) зафарбовування
vbFSTranspparent Внутрішнє поле прямокутника не фарбується
vbFSSolid Звичайне (суцільне) зафарбовування
vbHorisontalLine Горизонтальне штрихування
vbVerticalLine Вертикальне штрихування
vbUpwardDiagonal Діагональне штрихування (нахил ліній уліво)
vbDownwardDiagonal Діагональне штрихування (нахил ліній управо)
vbCross Клітинка
vbDiagonalCross Діагональна клітинка

 

 

8.4.4. Зображення кола й круга

 

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

Об'єкт.Circle Step(x,y), r, Color

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

Параметри x1 і y1 задають координати центра кола (круга). Якщо вжито слово Step, то положення центра починає відлік від поточного положення покажчика графічного виведення.

Параметр r задає значення радіуса кола (круга).

Параметр Сolor визначає колір кола або межової лінії. У ролі цього параметра можна використовувати одну з пойменованих констант (див. табл. 8.3) або значення функції Rgb. Параметр Сolor не вважається обов'язковим. Якщо цей параметр не використано, то колір кола або межової лінії залежить від значення властивості ForeColor графічної поверхні, на якій застосовано метод.

Товщину і вид (стиль) лінії кола або межової лінії визначають відповідно до властивостей DrawWidth і DrawStyle графічної поверхні, на якій використано метод.

Колір і стиль зафарбовування внутрішнього поля кола визначають відповідно до властивостей FillColor і FillStyle тієї графічної поверхні, на якій застосовано метод. Щоб внутрішню область кола було зафарбовано, значення властивості FillStyle має відрізнятись від значення vbFSTransparent.

 

8.4.5. Креслення дуги й сектора

 

Інструкцію виклику методу Circle, що забезпечує зображення дуги або сектора в загальному вигляді, можна записати таким чином:



Поделиться:


Последнее изменение этой страницы: 2016-09-19; просмотров: 332; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.145.16.90 (0.025 с.)