Специфікація BTRON3 (Український переклад) | Розділ 6: Графічні примітиви (Display Primitives)
Повернутися до змісту розділу Графічних примітивів
Попередня сторінка: 2.2 Базові графічні концепції (Повернутися)
Наступна сторінка: 2.4 Функції малювання геометричних фігур (Перейти)
| gini_dsp |
| Initialize Display Primitive Subsystem |
| Ініціалізація підсистеми графічних примітивів |
|
【Синтаксис / Прототип】
ERR gini_dsp(void)
【Детальний опис】
Виконує початкову системну ініціалізацію графічної підсистеми Display Primitives, виділяє внутрішні таблиці та буфери ядра. Зазвичай викликається автоматично при старті операційної системи.
【Значення, що повертається】
= 0 (E_OK) : Успішне виконання
< 0 : Помилка (EG_NOSPC — недостатньо системної пам'яті)
| gfin_dsp |
| Finish Display Primitive Subsystem |
| Завершення роботи підсистеми графічних примітивів |
|
【Синтаксис / Прототип】
ERR gfin_dsp(void)
【Детальний опис】
Завершує функціонування підсистеми Display Primitives, скидає буфери на відеоадаптер та звільняє всі виділені ресурси пам'яті.
【Значення, що повертається】
= 0 (E_OK) : Успішне виконання
< 0 : Помилка (EG_CTX)
| gopn_dev |
| Open Device Drawing Environment |
| Створення середовища малювання для пристрою (Open Device GID) |
|
【Синтаксис / Прототип】
GID gopn_dev(TC *dev, B *par)
【Параметри】
TC *dev Символьна назва графічного пристрою у кодуванні TRON Code (наприклад, "display")
B *par Вказівник на додаткові параметри пристрою (NULL = за замовчуванням)
【Значення, що повертається】
>= 0 Успіх: дескриптор середовища малювання (GID)
< 0 Помилка (EG_ADR, EG_DEV, EG_LIMIT, EG_NOEXS, EG_NOSPC)
【Детальний опис】
Створює новий екземпляр середовища малювання GID, прив'язаний безпосередньо до відеопам'яті (VRAM) або екранного пристрою dev.
| gopn_mem |
| Open Memory Drawing Environment |
| Створення середовища малювання в оперативній пам'яті (Off-screen Memory GID) |
|
【Синтаксис / Прототип】
GID gopn_mem(TC *dev, BITMAP *bmap, B *par)
【Параметри】
TC *dev Назва сумісного пристрою (або NULL для системного за замовчуванням)
BITMAP *bmap Вказівник на опис цільової бітової карти у віртуальній пам'яті
B *par Параметри колірної специфікації CSPEC (NULL = сумісні з dev)
【Значення, що повертається】
>= 0 Успіх: дескриптор позаекранного середовища малювання (GID)
< 0 Помилка (EG_ADR, EG_DEV, EG_LIMIT, EG_NOSPC, EG_PAR)
【Детальний опис】
Створює позаекранне графічне середовище в оперативній пам'яті RAM на основі бітової карти bmap для рендерингу без мерехтіння (Double Buffering).
| gcls_env |
| Delete Drawing Environment |
| Видалення середовища малювання (Close GID) |
|
【Синтаксис / Прототип】
ERR gcls_env(GID gid)
【Параметри】
GID gid Дескриптор середовища малювання
【Значення, що повертається】
= 0 (E_OK) : Успіх
< 0 : Помилка (EG_GID — недійсний дескриптор)
【Детальний опис】
Знищує середовище малювання gid та звільняє пов'язані з ним системні структури даних.
| gnew_env |
| Duplicate Drawing Environment |
| Дублювання середовища малювання (Duplicate GID) |
|
【Синтаксис / Прототип】
GID gnew_env(GID gid)
【Параметри】
GID gid Дескриптор вихідного середовища малювання
【Значення, що повертається】
>= 0 Дескриптор нового здубльованого середовища (GID)
< 0 Помилка (EG_GID, EG_NOSPC)
【Детальний опис】
Створює нове середовище малювання, яке успадковує всі поточні атрибути (кольори, лінії, патерни, маски) та використовує ту саму бітову карту, що й вихідне gid.
| gini_env |
| Reset Drawing Environment |
| Скидання параметрів середовища малювання |
|
【Синтаксис / Прототип】
ERR gini_env(GID gid)
【Параметри】
GID gid Дескриптор середовища малювання
【Значення, що повертається】
= 0 (E_OK) : Успіх
< 0 : Помилка (EG_GID)
【Детальний опис】
Скидає всі графічні атрибути середовища малювання gid (кольори переднього/заднього плану, товщину ліній, маски відсікання) до системних значень за замовчуванням.
| gget_spc |
| Get Device Specification |
| Отримання характеристик графічного пристрою за ім'ям |
|
【Синтаксис / Прототип】
ERR gget_spc(TC *dev, DEV_SPEC *spec)
【Параметри】
TC *dev Символьна назва графічного пристрою
DEV_SPEC *spec Буфер у пам'яті для збереження характеристик пристрою
【Значення, що повертається】
= 0 (E_OK) : Успіх
< 0 : Помилка (EG_ADR, EG_DEV, EG_NOEXS)
| gget_dev |
| Get Drawing Environment Device Name |
| Отримання назви пристрою середовища |
|
【Синтаксис / Прототип】
ERR gget_dev(GID gid, TC *dev)
【Параметри】
GID gid Дескриптор середовища малювання
TC *dev Буфер для збереження ім'я пристрою у кодуванні TRON Code
【Значення, що повертається】
= 0 (E_OK) : Успіх
< 0 : Помилка (EG_ADR, EG_GID)
| gget_dsp |
| Get Device Specification by GID |
| Отримання специфікації пристрою за дескриптором GID |
|
【Синтаксис / Прототип】
ERR gget_dsp(GID gid, DEV_SPEC *spec)
【Параметри】
GID gid Дескриптор середовища малювання
DEV_SPEC *spec Буфер для збереження специфікації пристрою
【Значення, що повертається】
= 0 (E_OK) : Успіх
< 0 : Помилка (EG_ADR, EG_GID)
| gget_csp |
| Get Color Specification |
| Отримання колірної специфікації середовища |
|
【Синтаксис / Прототип】
ERR gget_csp(GID gid, CSPEC *cspec)
【Параметри】
GID gid Дескриптор середовища малювання
CSPEC *cspec Буфер для збереження структури колірної специфікації CSPEC
【Значення, що повертається】
= 0 (E_OK) : Успіх
< 0 : Помилка (EG_ADR, EG_GID)
| gset_bcs |
| Set Color Conversion Specification |
| Встановлення параметрів колірної конверсії |
|
【Синтаксис / Прототип】
ERR gset_bcs(GID gid, CSPEC *cspec)
【Параметри】
GID gid Дескриптор середовища малювання
CSPEC *cspec Вказівник на специфікацію колірної конверсії
【Значення, що повертається】
= 0 (E_OK) : Успіх
< 0 : Помилка (EG_ADR, EG_GID, EG_PAR)
| gget_bcs |
| Get Color Conversion Specification |
| Отримання параметрів колірної конверсії |
|
【Синтаксис / Прототип】
ERR gget_bcs(GID gid, CSPEC *cspec)
【Параметри】
GID gid Дескриптор середовища малювання
CSPEC *cspec Буфер для збереження специфікації конверсії
【Значення, що повертається】
= 0 (E_OK) : Успіх
< 0 : Помилка (EG_ADR, EG_GID)
| gset_col |
| Set Color Map Entries |
| Запис елементів у колірну палітру (Set Palette) |
|
【Синтаксис / Прототип】
W gset_col(GID gid, UW p, COLOR *cv, UW cnt)
【Параметри】
GID gid ID середовища малювання
UW p Початковий індекс палітри для запису (0..255)
COLOR *cv Масив структур кольорів для запису
UW cnt Кількість елементів для оновлення
【Значення, що повертається】
>= 0 Кількість успішно встановлених кольорів
< 0 Помилка (EG_ADR, EG_ENV, EG_GID, EG_PAR)
【Детальний опис】
Записує масив кольорів cv у системну колірну карту (Color Map) середовища gid, починаючи з індексу p.
| gget_col |
| Get Color Map Entries |
| Зчитування елементів колірної палітри (Get Palette) |
|
【Синтаксис / Прототип】
W gget_col(GID gid, UW p, COLOR *cv, UW cnt)
【Параметри】
GID gid ID середовища малювання
UW p Початковий індекс палітри
COLOR *cv Масив у пам'яті для збереження кольорів
UW cnt Кількість записів для зчитування
【Значення, що повертається】
>= 0 Кількість фактично зчитаних елементів палітри
< 0 Помилка (EG_ADR, EG_ENV, EG_GID, EG_PAR)
| gcnv_col |
| Convert Color to Pixel Value |
| Перетворення кольору RGB у значення пікселя (Color to Pixel) |
|
【Синтаксис / Прототип】
W gcnv_col(GID gid, COLOR cv, PIXVAL *pixv)
【Параметри】
GID gid ID середовища малювання
COLOR cv Колір для перетворення (структура COLOR)
PIXVAL *pixv Буфер для збереження розрахованого піксельного значення
【Значення, що повертається】
>= 0 Похибка наближення кольору (0 = точний збіг, 100 = протилежний колір)
< 0 Помилка (EG_ADR, EG_GID, EG_PAR)
| gset_msk / gget_msk |
| Set/Get Mask Pixel Value |
| Встановлення та зчитування маскового пікселя прозорості |
|
【Синтаксис / Прототип】
ERR gset_msk(GID gid, PIXVAL pixv)
ERR gget_msk(GID gid, PIXVAL *pixv)
【Детальний опис】
Встановлює або зчитує масковий піксель pixv, який використовується для створення прозорих областей під час растрових операцій малювання.
| gset_clp / gget_clp |
| Set/Get Clipping Region |
| Встановлення та зчитування області відсікання (Clipping Region) |
|
【Синтаксис / Прототип】
ERR gset_clp(GID gid, GRGN *clip)
ERR gget_clp(GID gid, GRGN *clip, W csize, W *a_size)
【Детальний опис】
Встановлює або зчитує складну область відсікання малювання clip (Clipping Region). Будь-які графічні операції за межами області відсікання відкидаються.
| gset_fra / gget_fra |
| Set/Get Frame Rectangle |
| Встановлення та зчитування прямокутника кадру (FrameRect) |
|
【Синтаксис / Прототип】
ERR gset_fra(GID gid, RECT *rp)
ERR gget_fra(GID gid, RECT *rp)
【Детальний опис】
Задає або повертає прямокутну рамку кадру середовища малювання FrameRect.
| gset_vis / gget_vis |
| Set/Get Visible Rectangle |
| Встановлення та зчитування прямокутника видимості (VisibleRect) |
|
【Синтаксис / Прототип】
ERR gset_vis(GID gid, RECT *rp)
ERR gget_vis(GID gid, RECT *rp)
| gset_for / gget_for |
| Set/Get Forward Rectangle List |
| Встановлення та зчитування списку передніх прямокутників перекриття |
|
【Синтаксис / Прототип】
ERR gset_for(GID gid, RLIST *rlp)
ERR gget_for(GID gid, RLIST *rlp, W size, W *a_size)
| gsiz_pat / gcre_pat |
| Size/Create Pattern Image |
| Визначення розміру та створення внутрішнього патерну малювання |
|
【Синтаксис / Прототип】
ERR gsiz_pat(GID gid, UW kind, UW hsize, UW vsize, W *size)
ERR gcre_pat(GID gid, PAT *def, UB *loc, UB **pat, W *size, W cvt)
【Детальний опис】
Розраховує розмір пам'яті та створює внутрішній графічний патерн заповнення (Pattern) для використання при малюванні примітивів.
| gset_lmk / gget_lmk |
| Set/Get Line Mask Pattern |
| Встановлення та зчитування бітової маски лінії (пунктир) |
|
【Синтаксис / Прототип】
ERR gset_lmk(GID gid, UW nbytes, UB *mask)
W gget_lmk(GID gid, UB *mask)
| gget_bmp / gget_bnd |
| Get Bitmap / Bounds |
| Отримання цільової бітової карти та меж растру |
|
【Синтаксис / Прототип】
ERR gget_bmp(GID gid, BITMAP *bmap)
ERR gget_bnd(GID gid, RECT *rp)
| gmov_bnd / gmov_cor |
| Move Bitmap Bounds / Coordination |
| Зсув меж растру та переміщення системи координат |
|
【Синтаксис / Прототип】
ERR gmov_bnd(GID gid, W dh, W dv)
ERR gmov_cor(GID gid, W dh, W dv)
【Детальний опис】
Виконують зсув початкової точки растру або переміщують початок координат системи $(X, Y)$ на величину $(dh, dv)$.
| gcnv_abs / gcnv_rel |
| Convert Coordinates (Absolute <-> Relative) |
| Перетворення між абсолютними та відносними координатами |
|
【Синтаксис / Прототип】
ERR gcnv_abs(GID gid, PNT *pp)
ERR gcnv_rel(GID gid, PNT *pp)
【Детальний опис】
Транслюють координати точки pp між відносною системою координат середовища малювання та абсолютними фізичними координатами екрана.
| gloc_env |
| Lock/Unlock Drawing Environment |
| Блокування / розблокування середовища малювання (Lock GID) |
|
【Синтаксис / Прототип】
ERR gloc_env(GID gid, W lock)
【Параметри】
GID gid ID середовища малювання
W lock 1 = заблокувати доступ інших процесів; 0 = розблокувати
【Значення, що повертається】
= 0 (E_OK) : Успіх
< 0 : Помилка (EG_GID)
【Детальний опис】
Забезпечує атомарне блокування екранного середовища gid для відвернення міжпроцесного конфлікту при послідовному малюванні кількох примітивів.
Повернутися до змісту розділу Графічних примітивів
Попередня сторінка: 2.2 Базові графічні концепції (Повернутися)
Наступна сторінка: 2.4 Функції малювання геометричних фігур (Перейти)