Pascal ABC

 

ГЛАВНАЯ
УСТАНОВКА
ОКНО ПРОГРАММЫ
ЛИНЕЙНЫЕ АЛГОРИТМЫ
ЧЕРТЁЖНИК
GraphABC
    РОБОТ
АЛГОРИТМЫ С ВЕТВЛЕНИЯМИ
АЛГОРИТМЫ С ПОВТОРЕНИЯМИ
ПРОЦЕДУРЫ И ФУНКЦИИ
ТЕСТЫ
ТВОРЧЕСКИЕ РАБОТЫ
ОЛИМПИАДНЫЕ ЗАДАНИЯ
 
 

 

 

 

 

GraphABC ◊

Точка, отрезок, окружность, прямоугольникРисуем линииРисуем окружностиПодписываем рисункиМаленькие картиныСоставление алгоритмлв. Часть1 Часть 2Часть 3Часть 4Часть 5Более сложные  программы

Точка, отрезок, окружность, прямоугольник

В компьютерные игры играть любите? А ведь компьютерная  игра - это большая программа с дополнением маленькими программами. К малым относятся звуковые и видео файлы, а так же картинки и прочие нужные файлы.

Модуль GrahpABC позволит вам побыть в роли художников-оформителей. Сначала все покажется очень трудным, но потом ....

Познакомьтесь с функциями, которые помогут вам нарисовать точку, отрезок, окружность и прямоугольник.

procedure SetPixel(x,y,color: integer); - закрашивает один пиксел с координатами (x,y) цветом color (точка).

procedure Line(x1,y1,x2,y2: integer); - рисует отрезок с началом в точке (x1,y1) и концом в точке (x2,y2).

procedure Circle(x,y,r: integer); - рисует окружность с центром в точке (x,y) и радиусом r.

procedure Rectangle(x1,y1,x2,y2: integer); - рисует прямоугольник, заданный координатами противоположных вершин (x1,y1) и (x2,y2).

procedure SetPenColor(color: integer); - устанавливает цвет пера, задаваемый параметром color.

function PenColor: integer; - возвращает текущий цвет пера.

procedure SetPenWidth(w: integer); - устанавливает ширину пера, равную w пикселам.

 

type ColorType=integer; - стандартные цвета задаются символическими константами:

clBlack – черный
clPurple – фиолетовый
clWhite – белый
clMaroon – темно-красный
clRed – красный
clNavy – темно-синий
clGreen – зеленый
clBrown – коричневый
clBlue – синий
clSkyBlue – голубой
clYellow – желтый
clCream – кремовый

  

clAqua – бирюзовый
clOlive – оливковый
clFuchsia – сиреневый
clTeal – сине-зеленый
clGray – темно-серый
clLime – ярко-зеленый
clMoneyGreen – цвет зеленых денег
clLtGray – светло-серый
clDkGray – темно-серый
clMedGray – серый
clSilver – серебряный

 

А вот и первый пример.

Пример 1. Нарисуем Дом.

program dom;

uses graphabc;

begin

setwindowsize (640,480);

setwindowtitle ('Дом');

setpencolor (clbrown);

setpenwidth (2);

rectangle(100,100,270,200);

setbrushstyle (bsdiagcross);

setbrushcolor(cllime);

rectangle(130,120,160,160);

rectangle(210,120,240,160);

line(100,100,185,50);

line(185,50,270,100);

line(145,120,145,160);

line(130,130,145,130);

line(225,120,225,160);

line(210,130,225,130);

circle(185,75,12);

setbrushstyle (bssolid);

floodfill(110,110,clteal);

floodfill(120,97,clltgray);

setfontcolor(clyellow);

setfontstyle(fsbold);

setfontsize(1);

setbrushcolor(clteal);

textout (104,104,'№49');

end.

 

Рассмотрим используемые функции в программе:

Название функции

Что обозначает

program dom;

Название программы dom

uses graphabc; Вызов модуля graphabc
begin Начало программы
setwindowsize (640,480) procedure SetWindowSize(w,h: integer); - устанавливает ширину и высоту графического окна
setwindowtitle ('Дом') procedure SetWindowTitle(s: string); - устанавливает заголовок графического окна
setpencolor (clbrown) procedure SetPenColor(color: integer); - устанавливает цвет пера, задаваемый параметром color

clbrown – коричневый

setpenwidth (2)

 

procedure SetPenWidth(w: integer); - устанавливает ширину пера, равную w пикселам
rectangle(100,100,270,200) procedure Rectangle(x1,y1,x2,y2: integer); - рисует прямоугольник, заданный координатами противоположных вершин (x1,y1) и (x2,y2).

 

setbrushstyle (bsdiagcross) procedure SetBrushStyle(bs: integer); - устанавливает стиль кисти, задаваемый параметром bs

bsdiagcross -

setbrushcolor(cllime) procedure SetBrushColor(color: integer); - устанавливает цвет кисти, задаваемый параметром color

cllime - ярко-зеленый

rectangle(130,120,160,160)

rectangle(210,120,240,160)

рисование прямоугольников

line(100,100,185,50);

line(185,50,270,100);

line(145,120,145,160);

line(130,130,145,130);

line(225,120,225,160);

line(210,130,225,130);

 

procedure Line(x1,y1,x2,y2: integer); - рисует отрезок с началом в точке (x1,y1) и концом в точке (x2,y2)

circle(185,75,12);

procedure Circle(x,y,r: integer); - рисует окружность с центром в точке (x,y) и радиусом r

setbrushstyle (bssolid); procedure SetBrushStyle(bs: integer); - устанавливает стиль кисти, задаваемый параметром bs

bssolid -

floodfill(110,110,clteal);

floodfill(120,97,clltgray);

 

procedure FloodFill(x,y,color: integer); - заливает область одного цвета цветом color, начиная с точки (x,y)

clteal - сине-зеленый

clltgray - светло-серый

setfontcolor(clyellow);

procedure SetFontColor(color: integer); - устанавливает цвет шрифта

clyellow - желтый

setfontstyle(fsbold);

procedure SetFontStyle(fs: integer); - устанавливает  стиль шрифта

fsbold - жирный;

setfontsize(1);

procedure SetFontSize(sz: integer); - устанавливает  размер шрифта в пунктах

setbrushcolor(clteal);

procedure SetBrushColor(color: integer); - устанавливает цвет кисти, задаваемый параметром color

clteal - сине-зеленый

textout (104,104,'№49');

procedure TextOut(x,y: integer; s: string); - выводит строку s в позицию (x,y) (точка (x,y) задает верхний левый угол прямоугольника, который будет содержать текст из строки s)

end.

Конец программы

Можешь загрузить!       Пример 1

Задания для самостоятельного выполнения

1. Измените цвет дома.(floodfill(110,110,clteal) заменить на floodfill(110,110,clPurple))

2. Измените цвет крыши. (floodfill(120,97,clltgray) заменить на floodfill(120,97,clYellow))

3. Измените способ закрашивания окон. (setbrushstyle (bsdiagcross) заменить на setbrushstyle (bsBDiagonal))

4. Измените цвет закрашивания окон. (setbrushcolor(cllime) заменить на setbrushcolor(clBlue))

5.Измените цвет надписи на доме. (setfontcolor(clyellow) на setfontcolor(clWhite))

Результат:

6. Составьте алгоритм, который нарисует точку, отрезок, прямоугольник, окружность.

Пример 2. Нарисуем 5 точек.

Можешь загрузить!       Пример 2

Пример 3. Нарисуем 6 линий.

Можешь загрузить!       Пример 3_1   Пример 3_2  

Пример 4. Нарисуем 6 прямоугольников.

Можешь загрузить!       Пример 4 1    Пример 4 2

Пример 5. Нарисуем 5 окружностей.

 

Можешь загрузить!       Пример 5_1   Пример 5_2

Проверка знаний Тест: Точка, линия, прямоугольник и окружность

 

 

CЕРВИС

Copyright © 2008 Гимназия №1 имени К.Калиновского г.Свислочь © Синица А.А.