Fortran для персонального компьютера
..pdfСМ. ТАКЖЕ
getphyscoord, getviewcoord, getviewcoord_w, moveto.
7.24 Вычисление размера области экрана. IMAGESIZE, IMAGESIZE_W
СИНТАКСИС
imsize = imagesize( xl, yl, x2, y2 )
ДЕЙСТВИЕ
Функция imagesize возвращает число байтов, требуе мых для хранения образа, определяемого ограничивающим прямоугольником. Функция imagesize определяет указанный прямоугольник в координатах порта просмотра* (xl ,у1) и (х2,у23.
ЗАМЕЧАНИЕ Требуемый размер памяти определяется по следующим
формулам:
xwid = abs( xl - х2 ) + 1 ywid = abs( yl - y 2 ) + 1
imsize = 4 + fNT( ( xwid * bitsperpixel + 7 )/8 ) * INT( ywid)) Значение bitsperpixel возвращается функцией
getvideoconfig как элемент соответствующей структуры. Функция imagesize_w определяет ограничивающий
прямоугольник в оконных координатах.
Функции imagesize и imagesizc_w возвращают значение размера области хранения образа в байтах.
СМ. ТАКЖЕ getvideoconfig.
7.25 Рисование линии. LINETO, LINETO_W
СИНТАКСИС
dummy = lineto( х, у )
ДЕЙСТВИЕ
Функция lineto рисует линию из текущей позиции до заданной точки (х,у) в координатах порта просмотра.
Функция lineto_w рисует линию с использованием окон ных координат.
ЗАМЕЧАНИЕ Линия рисуется с использованием текущего цвета и сти
ля изображения. При отсутствии ошибок функция lineto уста навливает текущую позицию в точку с координатами (х,у), а функция lineto_w - в точку с оконными координатами.
В случае применения процедуры floodfill для заполне ния цветом замкнутой фигуры, нарисованной при помощи функции lineto, фигура должна быть нарисована с использо
ванием шаблона сплошной линии”.
Процедуры lineto и lineto__w возвращают ненулевое зна чение, если линия рисуется успешно; в противном случае воз вращается 0.
ЗАМЕЧАНИЕ Текст выводится, начиная с текущей позиции текста.
Для вывода текста с использованием специального шрифта, необходимо использовать функцию outgtext.
Возвращаемое значение отсутствует.
СМ. ТАКЖЕ
setactivepage, settextposition.
7.29 Рисование сектора эллипса. PIE, PIE_W
СИНТАКСИС
dummy = pie( control, xl, yl, x2, y2, x3, y3, x4, y4 )
ДЕЙСТВИЕ
Функция pie выполняет рисование выреза фигуры эл липса с использованием координат порта просмотра. Центр эллиптической дуги совпадает с центром ограничивающего прямоугольника, координаты которого определяются точками (xl,yl) и (х2,у2). Дуга начинается в месте пересечения ее вектором с координатами (хЗ,уЗ) и кончается в точке пересе чения вектором с координатами (х4,у4).
Функция pie_w использует систему оконных координат.
ЗАМЕЧАНИЕ Вырез рисуется с использованием текущего цвета. Па
раметр control может быть одной из символических констант, приведенных в описании функции ellipse.
Параметр) управления, задаваемый значением JGFILLINTERKJ R, эквивалентен последовательному вызову функции floodfill с использованием центра эллипса в качестве начальной точки и текущего цвета для ограничивающей ли нии.
Функции pie и pie_w возвращают ненулевое значение, если процедура рисования выполняется успешно; в противном
случае возвращается значение 0.
СМ. ТАКЖЕ
arc, ellipse, floodfill, getcolor, lineto, rectangle, setcolor, setfillmask.
7.30 Вывод области памяти на экран. PUTIMAGE, PUTIMAGEJW
СИНТАКСИС
CALL putimage ( х, у, image, action)
ДЕЙСТВИЕ
Процедура putimage отображает на экране образ, сохра няемый в буфере image. Верхний левый угол образа помеща ется в точку с координатами порта просмотра (х,у).
Процедура putimage_w оперирует с оконными ко ординатами.
ДЕЙСТВИЕ
Функция registerfonts выполняет инициализацию шрифтов графической библиотеки.
ЗАМЕЧАНИЕ
Файлы шрифтов должны быть зарегистрированы до то го, как будет использоваться любая другая библиотечная функция работы со шрифтами.
Функция registerfonts читает специфицированные фай лы и загружает информацию заголовка в память. Каждый заголовок шрифта занимает в памяти до 140 байт.
Параметр filename есть спецификация пути и имя файла с расширением .FON. Параметр filename может содержать стандартные символы универсального сопоставления.
Ф у н к ц и и р а б о т ы с о ш р и ф т а м и о к а з ы в а ю т в о з д е й с т в и е
т о л ь к о н а в ы в о д ф у н к ц и и o u t g t e x t .
Возвращается положительное значение, указывающее номер успешно зарегистрированного шрифта; в противном случае возвращается отрицательное значение из числа следу ющих:
-1 Нет заданного файла или каталога
-2 Один или более .FON файлов являются двоичными -3 Один или более .FON файлов испорчены
СМ. ТАКЖЕ
getfontinfo, getgtextextent, outgtext, setfont, unregisterfonts.
7.33 Переопределение палитры.
REMAPALLPALETTE, REMAPPALETTE
СИНТАКСИС
dummy = remapallpalette( colors ) dummy = remappalette( index, color)
ДЕЙСТВИЕ
Функция remapallpalette одновременно выполняет пере назначение всех доступных индексов цветов. Параметр colors указывает на массив значений цветов.
ЗАМЕЧАНИЕ
Число отображаемых цветов зависит от числа цветов, поддерживаемых в текущем видеорежиме. В 16-и цветном ре жиме отображаются цвета, с номерами от 0 до 15. В 8-и цвет ном режиме отображаются цвета с номерами от 0 до 7; в 4-х цветном режиме используется одна из стандартных палитр, поддерживаемых в EGA. В двухцветном режиме поддержива
ются два цвета: черный и белый.
В случае успешного выполнения функция remapallpalette возвращает ненулевое значение; в противном случае возвращается значение 0. В случае успешного выпол нения функция remappalette возвращает предыдущее зна чение цвета для заданного индекса цвета; в противном случае возвращается значение -1.
выбрать текущую активную страницу. По умолчанию при нимается страница с номером 0.
ЗАМЕЧАНИЕ
Анимация на экране может осуществляться сменой отображаемых на экране графических страниц. Функция setvisualpage используется для отображения полной графиче ской страницы во время заполнения графическими процеду рами другой графической страницы.
Указанные функции могут использоваться для управ ления выводом текста при работе с функциями обработки тек ста, например: gettextcolor, gettextcursor, gettextposition, outtext, settextcolor, settextcursor, set text position, settextwindow и wrapon, вместо стандартных функций ввода/вывода компилятора языка ФОРТРАН.
При успешном выполнении возвращается номер преды дущей активной страницы. В противном случае возвращается значение -1.
СМ. ТАКЖЕ
getactivepage, setvisualpage, gettextcolor, gettextposition, outtext, settextcolor, settextposition, settextwindow, setvideomode, setvisualpage и wrapon.
7.36 Установка цвета фона. SETBKCOLOR
СИНТАКСИС
dummy = setbkcolor( color)
ДЕЙСТВИЕ
Функция setbkcolor устанавливает текущий цвет фона в соответствии со значением цвета color.
ЗАМЕЧАНИЕ
В цветном текстовом режиме (например, $ТЕХТС80) данная функция принимает индекс цвета. Значение для цве тов, принимаемых по умолчанию, указывается табл.6.15. На пример, setbkcolor(2) устанавливает цвет фона в индекс цвета 2. Фактически отображаемый цвет зависит от отображения палитры для значения 2 элемента изображения. По умолча нию в цветном текстовом режиме принимается значение зеле
ного цвета.
В цветномграфическом режиме (например, JERESCOLOR) данная функция принимает значение цвета. Значение цвета фона задается символической константой, определенной во включаемом файле FGRAPH.FD. Например, setbkcolor($GREEN) устанавливает цвет фона в графическом режиме в зеленый цвет. Указанные символические константы реализованы для обеспечения удобства при определении и об работке наиболее часто используемых цветов. Фактический диапазон цветов является значительно большим.
Ф ункция setcolor принимает значение типа INTEGERM в качестве параметра, являющегося индексом цвета.