СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Приложение к уроку мастер-класса : «Урок по графике PascalABC»

Категория: Информатика

Нажмите, чтобы узнать подробности

Приложение к уроку мастер-класса : «Урок по графике PascalABC».

Данный материал будет полезен и для учащихся в качестве раздаточного материала для работы.

Просмотр содержимого документа
«Приложение к уроку мастер-класса : «Урок по графике PascalABC»»

Приложение к уроку мастер класса : «Урок по графике PascalABC»

1. Графические примитивы


SetPixel(x,y,color: integer);


Закрашивает один пиксел с координатами (x,y) цветом color.

GetPixel(x,y): integer;

Возвращает текущее значение цвета для пиксела с координатами (x,y).

MoveTo(x,y: integer);

Передвигает невидимое перо к точке с координатами (x,y); эта функция работает в паре с функцией LineTo(x,y).

LineTo(x,y: integer);


Рисует отрезок от текущего положения пера до точки (x,y); координаты пера при этом также становятся равными (x,y).

Line(x1,y1,x2,y2: integer);


Рисует отрезок с началом в точке (x1,y1) и концом в точке (x2,y2).

Circle(x,y,r: integer);

Рисует окружность с центром в точке (x,y) и радиусом r.

Ellipse(x1,y1,x2,y2: integer);


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

Rectangle(x1,y1,x2,y2: integer);

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

RoundRect(x1,y1,x2,y2,w,h: integer);

Рисует прямоугольник со скругленными краями; (x1,y1) и (x2,y2) задают пару противоположных вершин, а w и h – ширину и высоту эллипса, используемого для скругления краев.

Arc(x,y,r,a1,a2: integer);


Рисует дугу окружности с центром в точке (x,y) и радиусом r, заключенной между двумя лучами, образующими углы a1 и a2 с осью OX (a1 и a2 – вещественные, задаются в градусах и отсчитываются против часовой стрелки).

Pie(x,y,r,a1,a2: integer);


Рисует сектор окружности, ограниченный дугой (параметры процедуры имеют тот же смысл, что и в процедуре Arc).

Chord(x,y,r,a1,a2: integer);

Рисует фигуру, ограниченную дугой окружности и отрезком, соединяющим ее концы (параметры процедуры имеют тот же смысл, что и в процедуре Arc).

TextOut(x,y: integer; s: string);

Выводит строку s в позицию (x,y) (точка (x,y) задает верхний левый угол прямоугольника, который будет содержать текст из строки s).

FloodFill(x,y,color: integer);


Заливает область одного цвета цветом color, начиная с точки (x,y).

FillRect(x1,y1,x2,y2: integer);

Заливает прямоугольник, заданный координатами противоположных вершин (x1,y1) и (x2,y2), цветом текущей кисти.

Polygon(var a; n: integer);


Строит ломаную по n точкам, координаты которых заданы в массиве a элементов типа Point.

Polyline(var a; n: integer);

Строит замкнутую ломаную по n точкам, координаты которых заданы в массиве a элементов типа Point.






2. Цветовые константы и функции для работы с цветом

Модуль GraphABC содержит константы и функции для работы с цветами. Тип ColorType, описывающий цвет, определен следующим образом:

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 – серебряный

Для работы с цветами используются следующие функции.


RGB(r,g,b: integer): ColorType;

Возвращает целое значение, являющееся кодом цвета, который содержит красную, зеленую и синюю составляющие с интенсивностями r, g и b соответственно (r, g и b – целые в диапазоне от 0 до 255, причем, 0 соответствует минимальной интенсивности, 255 – максимальной).

GetRed(color: ColorType): integer;

Выделяет красную составляющую из цвета color (целое в диапазоне от 0 до 255);

GetGreen(color: ColorType): integer;

Выделяет зеленую составляющую из цвета color (целое в диапазоне от 0 до 255);

GetBlue(color: ColorType): integer;

Выделяет синюю составляющую из цвета color (целое в диапазоне от 0 до 255).
















3. Действия с пером

PenX: integer;

PenY: integer;

Возвращают текущие координаты пера.


SetPenColor(color: integer);

Устанавливает цвет пера, задаваемый параметром color.

PenColor: integer;

Возвращает текущий цвет пера

SetPenWidth(w: integer);

Устанавливает ширину пера, равную w пикселам.

PenWidth: integer;

Возвращает текущую ширину пера

SetPenStyle(ps: integer);

Устанавливает стиль пера, задаваемый параметром ps.

PenStyle: integer;

Возвращает текущий стиль пера.

SetPenMode(m: integer);

Устанавливает режим пера, задаваемый параметром m.

PenMode: integer;

Возвращает текущий режим пера. Режим пера определяет, как цвет пера взаимодействует с цветом поверхности.

Стили пера задаются следующими именованными константами:

Режимы пера задаются следующими именованными константами:

pmCopy

– обычный режим; при рисовании цвет поверхности заменяется цветом пера;

pmNot

– режим инвертирования; при рисовании цвет поверхности инвертируется (становится негативным), а цвет пера при этом игнорируется.






















4. Действия с кистью

SetBrushColor(color: integer);

Устанавливает цвет кисти, задаваемый параметром color.

BrushColor: integer;

Возвращает текущий цвет кисти.

SetBrushPicture(fname: string);

Устанавливает в качестве образца для закраски кистью образец, хранящийся в файле fname, при этом текущий цвет кисти при закраске игнорируется.

ClearBrushPicture;

Очищает рисунок-образец, выбранный для кисти.

SetBrushStyle(bs: integer);

Устанавливает стиль кисти, задаваемый параметром bs.

BrushStyle: integer;

Возвращает текущий стиль кисти.

Стили кисти задаются следующими именованными константами:








































5. Действия со шрифтом

SetFontColor(color: integer);

Устанавливает цвет шрифта.

FontColor: integer;

Возвращает  текущий цвет шрифта.

SetFontSize(sz: integer);

Устанавливает  размер шрифта в пунктах.

FontSize: integer;

Возвращает  текущий размер шрифта в пунктах.

SetFontName(name: string);

Устанавливает  наименование шрифта.

FontName: string;

Возвращает  текущее наименование шрифта.

По умолчанию установлен шрифт, имеющий наименование MS Sans Serif.
Наиболее распространенные шрифты – это Times, Arial и Courier New.
Наименование шрифта можно набирать без учета регистра.

SetFontStyle(fs: integer);

Устанавливает  стиль шрифта.

FontStyle: integer;

Возвращает  текущий стиль шрифта.

TextWidth(s: string): integer;

Возвращает ширину строки s в пикселях при текущих настройках шрифта.

TextHeight(s: string): integer;

Возвращает высоту строки s в пикселях при текущих настройках шрифта.



Стили шрифта задаются следующими именованными константами:

fsNormal – обычный;

fsBold – жирный;

fsItalic – наклонный;

fsBoldItalic – жирный наклонный;

fsUnderline – подчеркнутый;

fsBoldUnderline – жирный подчеркнутый;

fsItalicUnderline – наклонный подчеркнутый;

fsBoldItalicUnderline – жирный наклонный подчеркнутый.













6. Действия с рисунками

Работа с рисунками в модуле GraphABC производится либо с помощью описателей (целых чисел, однозначно определяющих рисунок), либо с помощью объектов класса Picture. Работа с помощью описателей позволяет манипулировать рисунками, используя обычные процедуры и функции и не используя классы.

Каждый рисунок, хранящийся во время работы программы в оперативной памяти, имеет описатель (дескриптор), представляющий собой целое число. Это число возвращается функцией загрузки рисунка из файла LoadPicture, а также функцией создания рисунка CreatePicture, после чего передается в качестве первого параметра во все остальные процедуры и функции работы с рисунками.

LoadPicture(fname: string): integer;

n:=LoadPicture(fname) – загружает рисунок из файла с именем fname в оперативную память и возвращает описатель рисунка в целую переменную n; если файл не найден, то возникает ошибка времени выполнения. Загружать можно рисунки в формате .bmp, .jpg или .gif.

DrawPicture(n,x,y: integer);

Выводит рисунок с описателем n в позицию (x,y) графического окна.

DrawPicture(n,x,y,w,h: integer);

Выводит рисунок с описателем n в позицию (x,y) графического окна, масштабируя его размеры к ширине w и высоте h. Если w, то рисунок зеркально отражается относительно вертикальной прямой, проходящей через x, если же h, то рисунок зеркально отражается относительно горизонтальной прямой, проходящей через y.

DrawPicture(n: integer; x,y: integer; r: Rect);

Выводит часть рисунка с описателем n, заключенную в прямоугольнике r, в позицию (x,y) графического окна.

DrawPicture(n: integer; x,y,w,h: integer; r: Rect);

Выводит часть рисунка с описателем n, заключенную в прямоугольнике r, в позицию (x,y) графического окна, масштабируя его размеры к ширине w и высоте h. Если w, то рисунок зеркально отражается относительно вертикальной прямой, проходящей через x, если же h, то рисунок зеркально отражается относительно горизонтальной прямой, проходящей через y.

CopyRect(n: integer; dest: Rect; n1: integer; src: Rect);

Копирует часть рисунка с описателем n1, заключенную в прямоугольнике src, в прямоугольник dest рисунка с описателем n.

DestroyPicture(n: integer);

Удаляет рисунок с описателем n из оперативной памяти, описатель рисунка при этом становится недействительным.

SetPictureSize(n,w,h: integer);

Устанавливает размер рисунка с описателем n равным w на h пикселей.

PictureWidth(n: integer): integer;

Возвращает ширину рисунка с описателем n.

PictureHeight(n: integer): integer;

Возвращает высоту рисунка с описателем n.

PictureTransparent(n: integer): boolean;

Возвращает режим прозрачности рисунка с описателем n.

SetPictureTransparent(n: integer; b: boolean);

Устанавливает (b=True) или отключает (b=False) режим прозрачности при рисовании рисунка с описателем n. Если b=True, то при его рисовании фон не отображается. Фоновым считается цвет левого нижнего пиксела рисунка.


8


Учитель Смелова В.Н.