110
C.3. Описание на модула UniGRAPH
procedure DrawBar(X, Y: cardinal);
Действие: Рисува запълнен правоъгълник, единият връх на който се определя от текущото
положение на курсора, а другият - от зададените координати, които могат да
бъдат абсолютни или относителни в зависимост от зададения вид от процедурата
SetCoordType.
procedure DrawCircle(rX, rY: cardinal);
Действие: Рисува елипса с център в текущото положение на курсора и радиуси: rX по оста
X и rY по оста Y.
procedure DrawDisk(rX, rY: cardinal);
Действие: Рисува запълнена елипса с център в текущото положение на курсора и радиуси:
rX по оста X и rY по оста Y.
procedure DrawShape(var Shape; Rot, Scale: shortcard);
Действие: Изпълнява зададена последователност от действия: придвижване на графическия
курсор без рисуване и придвижване с рисуване. Рисунката се получава чрез
последователно начертаване на отсечки. За целта трябва да са дадени указания
за новото положение на курсора чрез полярни координати: направление на
движението и дължина на отсечката до новата точка. Дължината се задава с
числа от 1 до 16 (в разстояния между две съседни логически точки). Посоката се
задава чрез ъгъл спрямо хоризонталната ос по посока на движение на часовата
стрелка, чиято големина се определя с числа от 0 до 7 (в единици от по 45°). С
параметъра Shape се определя една последователност от N на брой движения
на курсора или придвижвания с рисуване, необходими за получаване на
исканото изображение. Тези данни са разположени в N последователни байта
предхождани от дума, съдържаща това число N. Числото се предполага
записано със старша част, предхождаща младшата (обратно на представянето
на числата в UniPascal). Всеки от следващите N байта задава едно елементарно
движение (със или без чертаене на отсечка) на графичния курсор.
Информацията за това действие се записва в байта, както следва: Съдържание 1
в бит 7 е указание, че при движени курсора трябва да рисува, а нула - курсора
да се придвижва без рисуване. Битовете от 6 до 4 определят ъгъла, а тези от 3
до 0 - големината на отсечката (0 задава единица разстояние, 1 задава две
единици, и т.н. 15 задава 16 единици).
С параметъра ROT се задава завъртане на определеното със Shape и още
ненарисувано изображение на ъгъл определен с число от 0 до 7 (определен по
същия начин, както при елементарните движения).
С параметъра SCALE се задава увеличаване (мащабиране) на определеното със
Shape и още ненарисувано изображение чрез число от 0 до 15 (0 - означава, че
изображението няма да бъде увеличавано, 1 - удвояване на дължината на всяка
отсечка, и т.н. 15 - 16 пъти увеличаване на дължината на всяка отсечка).
procedure FreeScreen;
Действие: Освобождава заетата за графичен екран памет, ако заявката за създаване на
графичен екран е била дадена от същата програма. В противен случай не прави
нищо.
function GetVmode: word;
Действие: Връща една дума, която съдържа: текущия видеорежим в старшия байт на
думата и атрибута/палитрата в младшия байт на думата.
<<  <  GO  >  >>

Вернуться к началу сайта