Abs, Sqr в Pascal.

Abs - функция языка Паскаль, которая вычисляет модуль числа.
Sqr - функция языка Паcкаль, которая возводит число в квадрат.

Ввод символов с клавиатуры.

Ввод символов с клавиатуры почти не отличается от ввода чисел с клавиатуры. Для того чтобы ввести какие-то символы (буквы, знаки и т.д.) с клавиатуры необходимо для переменных использовать символьный тип данных Char.

Процедура Writeln в Pascal

Помимо зарезервированного слова Write, для вывода сообщения на экран в Pascal используется процедура Writeln. Отличие процедуры Writeln от оператора Write заключается в том, что Writeln после вывода сообщения на экран переводит курсор на другую ...

Циклы и массивы

Вложенный арифметический цикл. Часть 2.

Примеры использования различных операторов цикла. Вложенный цикл.

Массив строк типа STRING.

Одномерный массив строк используется для хранения в оперативной памяти компьютера промежуточного фрагмента текста с целью его обработки.

Процедура FloodFill закрашивает замкнутую область. Данная процедура имеет 3 параметра. Первые 2 параметра определяют точку с координатами, откуда начинается закраска. 3-й параметр определяет границу закраски.

 Процедура FloodFill.




Program Graphika15;
Uses Graph;
Procedure Graphinterface;
Var  gd, gm, error:Integer;
s:String;
Begin
gd:=detect;
s:=' ';
Initgraph(gd,gm,s);
error:=GraphResult;
if error<>GrOk then
begin
writeln(GraphErrorMsg(Error));
Halt(error)
end
end;
begin
Graphinterface;
SetColor(4);
setfillstyle(3,3);
Circle(150,150, 100);
setcolor(2);
circle(150,150,50);
FloodFill(150,150, 2);
ReadLn;
CloseGraph;
End.



Строка №19. Устанавливаем красный цвет для окружности.

Строка №20. Устанавливаем тип и цвет закраски.

Строка №21. Рисуем окружность.

Строка №22. Устанавливаем зеленый цвет для 2-ой окружности.

Строка №23. Рисуем 2-ую окружность.

Строка №24. Процедура FloodFill закрашивает замкнутую область. Первые 2 параметра являются координатой и определяют, какая область будет закрашена. В нашем примере эти параметры имеют значения 150 пикселей,150 пикселей. Эта точка входит в обе окружности, которые мы нарисовали. Поэтому какая-то из этих окружностей будет закрашена. Какая именно – зависит от 3-го параметра процедуры. Он определяет цветовую границу закраски. В нашем примере этот параметр равен 2, т.е. имеет зеленую цветовую границу. Поэтому будет закрашена зеленая окружность (та, что в строке №23).
Тип и цвет закраски установлен в строке №20.

Grafika v pascal, floodfill

Grafika v pascal, floodfill.


Теперь поменяем строку №24, установив в качестве цветовой границы красный цвет (строка №24 будет иметь вид FloodFill (150,150, 4)). После этих изменений границей закраски будет красная окружность.
После запуска программы получится:

Grafika v pascal, floodfill..


Если первые 2 параметра будут иметь другие координаты, которые выходят за пределы окружностей, то закрашена будет вся область, которая лежит за пределами окружностей.
Изменим строку №24 на такую: FloodFill(300,300, 4). В результате, будет закрашена область, лежащая за пределами обоих окружностей. Причем границей закраски будет красная окружность.

Grafika v pascal, floodfill...


Теперь изменим строку №24 на такую FloodFill(300,300, 2). В результате будет закрашена область, лежащая за пределами зеленой окружности.

Grafika v pascal, floodfill....


Если в качестве 3-го параметра указать несуществующую цветовую границу, то будет зарисован весь экран. Например, запишем строку №24 в таком виде FloodFill (300,300, 1). Здесь в качестве цветовой границы указан синий цвет, но в нашей программе нет замкнутых областей, имеющих синюю границу, поэтому будет зарисован весь экран.

Grafika v pascal, floodfill.....


Предыдущая статья : Процедуры Ellipse и FillEllipse.

Оглавление : Уроки Паскаль. Графика.

Следующая статья : Процедуры PieSlice и Sector.


Комментарии  

 
0 # Анастасия 27.03.2014 16:12
Спасибо! Очень помогли! :-)
Ответить
 

Добавить комментарий

Защитный код
Обновить

   ГлавнаяПаскальГрафика в Паскаль