Главная » Free Pascal » Выделение локальной области на графическом экране Free Pascal

0

На графическом экране можно создать временное поле рисования с помощью процедуры SetViewPort:

SetViewPort(x1, y1, x2, y2, Clip);

Координаты точек (x1, y1) и (x2, y2) задают левый верхний и правый нижний углы прямоугольной области, которая с этого момента становится полем рисова- ния. В момент создания такой локальной области она чистится, а курсор перево- дится в начало локальной системы координат, т. е. в точку (x1, y1) полного графи- ческого экрана. Параметр Clip может принимать одно из двух значений — True или False. В первом случае включается режим отсечения, при котором результаты построений, выходящие за пределы установленной локальной области, на экране не отображаются. Во втором случае объекты, выходящие за пределы локального окна, на графическом экране рисуются (рис. 15.17) — листинг 15.11.

   Листинг 15.11. Программа  viewport                                           

program viewport; uses Graph;

var

gd,gm: SmallInt; begin

gd:=D8bit; gm:=m800x600; InitGraph(gd,gm,”);

SetViewPort(50,50,150,100,true); Rectangle(0,0,100,50); Circle(50,25,30);

SetViewPort(200,50,300,100,false);

Rectangle(0,0,100,50);

Circle(50,25,30);

readln; CloseGraph;

end.

Рис. 15.17. Слева — область с отсечением, справа — без отсечения

Для очистки локальной области рисования используется процедура ClearView- Port.

Источник: Кетков, Ю. Л., Свободное программное обеспечение. FREE PASCAL для студентов и школьников, Ю. Л. Кетков, А. Ю. Кетков. — СПб.: БХВ-Петербург, 2011. — 384 с.: ил. + CD-ROM — (ИиИКТ)

По теме:

  • Комментарии