Студопедия — В графическом режиме
Студопедия Главная Случайная страница Обратная связь

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

В графическом режиме






 

Бит AND-маски   Бит XOR-маски   Цвет пикселя на экране  
    Цвет фона      
    Белый цвет      
    Текущий цвет пикселя      
    Побитовая инверсия текущего цвета   пикселя  

С помощью различных масок можно установить любую форму курсора и добиться его видимости на любом фоне. Для режимов 4, 5 и 13h используются только четные столбцы в битовых масках; в противном случае курсор при использовании матрицы 16 х 16 имел бы слишком большие размеры. Для остальных режимов «прореживание» столбцов масок курсора не выполняется.

В графических режимах, кроме формы курсора, описывается так называемое «горячее пятно» (hotspot ) в относительных координатах, за точку отсчета которых принят верхний левый угол прямоугольника 16 х 16 пикселей. «Горячее пятно» – это тот пиксель, на который указывает в данный момент графический курсор. Описание курсора манипулятора «мышь» в графическом режиме выполняет функция АХ = 9 прерывания 33h. Далее приводится ее спецификация.

Привызове:

АХ = 0009Н – установка курсора «мыши» в графическом режиме;

ВХ – номер столбца «горячего пятна» курсора относительно верхнего левого угла прямоугольника курсора;

СХ – номер строки «горячего пятна» курсора относительноверхнего левого угла прямоугольника курсора;

ES: DX – указатель на 32 слова масок: первые 16 слов образуют AND-маску, следующие 16 слов – XOR-маску. Использование битов этих масок иллюстрирует табл. 1.

Возврат: нет.

Приведем текст Си-функцииустановки графического курсора манипулятора «мышь»:

Параметры charhot_spot_row, charhot_spot_col – относительные координаты «горячего пятна» курсора «мыши» в прямоугольнике курсора; unsignedintfarscreen_and_cursor_masks – указатель на две подряд расположенные маски экрана и курсора; первые 16 слов массива образуют маску экрана, следующие 16 – маску курсора.

include < dos.h>

void set_graph_cursor(int hot_spot_row,

int hot_spot_column,

unsigned int far screen_and_cursor_masks);

struct REGPACK r;

r. r_ax = 9;

r.r_bx = hot_spot_column;

r.r_cx= hot_spot_row;

r.r_es=FP_SEG(screen_and_cursor_masks);

r.r_dх=FP_QFF(screen_and_cursor_masks); intr(0x33, & r);

Для получения графического курсора, видимого на любом фоне, поступают следующим образом. Маску экрана (AND-маскy) задают состоящей из слов FFFFh, а маску курсора (XOR-маску) описывают так, чтобы в ней стояли единицы в тех битах, которые образуют очертание курсора, а нули – во всех остальных битах маски. В качестве примера приводится вызов функции set_graph_cursor 0 для задания графического курсора в форме наклонной стрелки. Формирование битовой карты этого курсора поясняет рис. 2

 

Рис. 2.XOR-маскаотображения курсора в виде стрелки

 

 

static unsigned screen_and cursor_masks AND-маска

Oxffff, Oxffff, Oxffff, Oxffff,

Oxffff, Oxffff, Oxffff, Oxffff,

Oxffff, Oxffff, Oxffff, Oxffff,

Oxffff, Oxffff, Oxffff, Oxffff,







Дата добавления: 2014-11-10; просмотров: 577. Нарушение авторских прав; Мы поможем в написании вашей работы!



Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Типовые примеры и методы их решения. Пример 2.5.1. На вклад начисляются сложные проценты: а) ежегодно; б) ежеквартально; в) ежемесячно Пример 2.5.1. На вклад начисляются сложные проценты: а) ежегодно; б) ежеквартально; в) ежемесячно. Какова должна быть годовая номинальная процентная ставка...

Выработка навыка зеркального письма (динамический стереотип) Цель работы: Проследить особенности образования любого навыка (динамического стереотипа) на примере выработки навыка зеркального письма...

Словарная работа в детском саду Словарная работа в детском саду — это планомерное расширение активного словаря детей за счет незнакомых или трудных слов, которое идет одновременно с ознакомлением с окружающей действительностью, воспитанием правильного отношения к окружающему...

ФАКТОРЫ, ВЛИЯЮЩИЕ НА ИЗНОС ДЕТАЛЕЙ, И МЕТОДЫ СНИЖЕНИИ СКОРОСТИ ИЗНАШИВАНИЯ Кроме названных причин разрушений и износов, знание которых можно использовать в системе технического обслуживания и ремонта машин для повышения их долговечности, немаловажное значение имеют знания о причинах разрушения деталей в результате старения...

Различие эмпиризма и рационализма Родоначальником эмпиризма стал английский философ Ф. Бэкон. Основной тезис эмпиризма гласит: в разуме нет ничего такого...

Индекс гингивита (PMA) (Schour, Massler, 1948) Для оценки тяжести гингивита (а в последующем и ре­гистрации динамики процесса) используют папиллярно-маргинально-альвеолярный индекс (РМА)...

Studopedia.info - Студопедия - 2014-2024 год . (0.012 сек.) русская версия | украинская версия