Графические возможности PASCAL ABC
Учитель МБОУ СОШ №48 Тучина Е.В
PAINT
Подключение дополнительных
библиотек
Для работы в графическом режиме необходимо подключение модуля GraphABC .
Program prim;
Uses crt, GraphABC;
Var …;
Begin
…
End.
Графический режим
(0,0)
640 точек
480 точек
Управление экраном
SetWindowWidth(w) - устанавливает ширину
графического окна
SetWindowHeight(h) - устанавливает высоту
графического окна
SetWindowSize(w,h) – устанавливает ширину и высоту графического окна
Program prim;
uses crt, graphABC;
begin
SetWindowWidth(800);
SetWindowHeight(600);
end.
Очистка графического окна
ClearWindow - очистка графического окна белым цветом
ClearWindow(color) - очистка графического окна указанным цветом
Program prim;
uses crt, graphABC;
begin
SetWindowWidth(800);
SetWindowHeight(600);
clearWindow(clSkyBlue);
end.
Графические примитивы
точка
линия
прямоугольник
эллипс
окружность
сектор
дуга
Линии
Line(x1,y1,x2,y2) - рисует отрезок с началом в точке (х1,у1) и концом в точке (х2,у2)
(X2;Y2)
(X1;Y1)
(X;Y)
LineTo(x,y) - рисует отрезок от текущего положения пера до точки с координатами х,у
Линии
SetPenColor(color) - устанавливает цвет пера
SetPenWidth(n) - устанавливает ширину пера, равную n пикселям
Program prim;
uses crt, graphABC;
var x,j,i:integer;
begin
SetPenWidth(3);
SetPenColor(clred);
Line(30,100,600,500)
end.
Используемые цвета
clAqua
clLime
бирюзовый
clBlack
clMaroon
ярко-зеленый
черный
темно-красный
clBlue
clNavy
синий
clBrown
clPurple
темно-синий
фиолетовый
коричневый
clRed
clDarkGray
clSkyBlue
красный
clFuchsia
темно-серый
голубой
сиреневый
clTeal
clGray
сине-зеленый
clWhite
clGreen
серый
белый
зеленый
clYellow
clLtGray
желтый
светло-серый
Прямоугольник
Rectangle(x1,y1,x2,y2) - рисует прямоугольник,
заданный координатами вершин
X1,Y1
X2,Y2
FloodFill(x,y,color) - заливает область от точки с координатами х,у до границы цветом color
Нарисуем землю
Program prim;
uses crt, graphABC;
begin
SetWindowWidth(800);
SetWindowHeight(600);
clearWindow(clSkyBlue);
Rectangle(0,400,1000,600);
FloodFill(10,450,clgreen);
end.
Нарисуем домик
{домик}
SetPenWidth(3);
Rectangle(50,300,300,500);
FloodFill(60,450,clLtGray);
{крыша}
Line(40,300,175,200);
LineTo(310,300);
LineTo(40,300);
FloodFill(175,250,clBrown);
{окно}
Rectangle(70,350,170,450);
FloodFill(75,400,clYellow);
Line(70,380,170,380);
Line(120,380,120,450);
{дверь}
Rectangle(200,350,270,500);
FloodFill(250,450,clBrown);
Окружность
Circle(x,y,r) - рисует окружность с центром в точке (х,у)
и радиусом r
r
(X,Y)
Эллипс
Ellipse(x1,y1,x2,y2) - рисует эллипс, вокруг которого
описан прямоугольник с заданными координатами
X1,Y1
X1,Y1
X2,Y2
X2,Y2
Нарисуем аллею деревьев
x:=400;
Rectangle(x,300,x+10,500);
FloodFill(x+3,350,clBrown);
Ellipse(x-30,150,x+40,350);
FloodFill(x,200,clgreen);
Нарисуем аллею деревьев
x:=400;
for j:=1 to 4 do
begin
Rectangle(x,300,x+10,500);
FloodFill(x+3,350,clBrown);
Ellipse(x-30,150,x+40,350);
FloodFill(x,200,clgreen);
x:=x+100;
end;
Нарисуем солнышко
{солнышко}
SetPenColor(clYellow);
Line(30,100,170,100);
Line(100,30,100,170);
Line(50,50,150,150);
Line(50,150,150,50);
Circle(100,100,40);
FloodFill(100,100,clYellow);
Спасибо за внимание!
Program prim;
uses crt, graphABC;
var x,j:integer;
begin
SetWindowWidth(800);
SetWindowHeight(600);
clearWindow(clSkyBlue);
Rectangle(0,400,1000,600);
FloodFill(10,450,clgreen);
{домик}
SetPenWidth(3);
Rectangle(50,300,300,500);
FloodFill(60,450,clLtGray);
{окно}
Rectangle(70,350,170,450);
FloodFill(75,400,clYellow);
Line(70,380,170,380);
Line(120,380,120,450);
{дверь}
Rectangle(200,350,270,500);
FloodFill(250,450,clBrown);
{крыша}
Line(40,300,175,200);
LineTo(310,300);
LineTo(40,300);
FloodFill(175,250,clBrown);
{аллея деревьев}
x:=400;
for j:=1 to 4 do
begin
Rectangle(x,300,x+10,500);
FloodFill(x+3,350,clBrown);
Ellipse(x-30,150,x+40,350);
FloodFill(x,200,clgreen);
x:=x+100;
end;
{солнышко}
SetPenColor(clYellow);
Line(30,100,170,100);
Line(100,30,100,170);
Line(50,50,150,150);
Line(50,150,150,50);
Circle(100,100,40);
FloodFill(100,100,clYellow);
end.