Реферат: Графические средства языка Паскаль
34. FUNCTION TextHeight(S: STRING): Word; - возвращает высоту текста в пикселах.
35. PROCEDURE SetVisualPage(Page : Word); - устанавливает видимую графическую страницу (если в данном графическом режиме есть несколько видеостраниц). Page - номер страницы, равный 0,1 и т.д.
36. PROCEDURE SetActivePage(Page : Word); - устанавливает текущую графическую страницу, куда будет направлен весь вывод. Две последние процедуры могут быть использованы для создания мультипликации.
37. PROCEDURE SetGraphMode(Mode: Integer); - устанавливает графическую моду. Большинство графических драйверов допускает несколько мод. Какой графический драйвер задействован в данном компьютере, можно узнать по значению параметра GrDriver после выполнения процедуры InitGraph. Присваивая этой переменной значение DETECT, мы не задаем никакого драйвера, а лишь указываем, что процедура сама должна определить этот драйвер. В Паскале определены следующие константы драйверов: DETECT=0, CGA=1, MCGA=2, EGA=3, EGA64=4, EGAMONO=5, IBM8514=6, HERCMONO=7, ATT400=8, VGA=9, PC3270=10. При успешном выполнении процедура InitGraph возвратит одно из этих значений через параметр GrDriver. Параметру GrMode присваивается значение установленной графической моды (от 0 до 4), причем устанавливается старшая мода. У драйвера VGA есть три моды, различающиеся разрешением экрана и количеством видеостраниц:
0 - 640 ´ 200, 4 страницы,
1 - 640 ´ 350, 2 страницы,
2 - 640 ´ 480, 1 страница.
Именованные константы для графических мод также описаны в модуле Graph; так, для перечисленных выше мод это: VGALo, VGAMed, VGAHi.
38. FUNCTION GetGraphMode : Integer; - возвращает установленную графическую моду.
39. PROCEDURE RestoreCrtMode; - устанавливает текстовый режим монитора. Эта процедура совместно с SetGraphMode может использоваться для отладки графических программ. Предположим, что мы написали, но пока еще не отладили графическую программу. Мы хотим вывести какую-либо информацию, вычисляемую программой, на экран, но использовать для вывода процедуру OutText довольно затруднительно. Организуем нашу программу следующим образом :
... InitGraph ... { здесь мы хотим вывести информацию } RestoreCrtMode; WRITELN(...
{ вернемся в графику } SetGraphMode(GetGraphMode); ...
40. FUNCTION GraphResult :Integer; - возвращает код завершения последней графической операции; если этот код равен grOK (=0), то операция выполнена успешно, в противном случае произошла ошибка.
Чтобы продемонстрировать некоторые из графических возможностей языка Паскаль, напишем программу, рисующую график функции cos2x на отрезке [0,6p].
USES Graph;
CONST ScreenColor = DarkGray; {цвет экрана}
LineColor = Yellow; {цвет кривой}
TextColor = White; {цвет подписей}
AxisColor = LightCyan; {цвет координатных осей}
CONST n = 200; {количество отрезков в графике}
LeftBlank = 100; {отступ слева}
RightBlank = 100; {отступ справа}
TopBlank = 100; {отступ сверху}
BottomBlank = 60 ; {отступ снизу}
TicSize = 5; {размер делений на осях}
PowerSize = 3; {размер цифры 2 (показатель степени)}
TicsNumY = 10; {количество делений на оси Y}
TicsNumX = 6; {количество делений на оси Y}
CONST x1=6*Pi;