Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ekzamen_po_op.docx
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
68.6 Кб
Скачать
  1. Графика

В Delphi имеются классы существенно упрощающие использование графических средств:

  • TCanvas – контекст изображения

  • TFont - шрифт

  • TPen – перо

  • TBrush – заливка

Связанные с этими классами объекты при необходимости создаются автоматически для всех визуальных компонент, однако не все классы доступны у определенных визуальных компонент.

Для работы с изображениями используются:

  • TPicture – контейнер для изображений

  • TIcon - значок

  • TBitmap – растровые изображения

  • TMetafile - метафайл

  • TImage – базовый класс для графических объектов изображения

Рисование:

Поверхность рисования представляет собой объект класса TCanvas, который называется холстом.

Любая поверхность рисования включает в себя шрифт, перо и заливку. Перо и заливка используются для прорисовки фигур, а шрифт – для управления атрибутами текста.

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

Текущая позиция определяется горизонтальной (х) и вертикальной (у) координатами.

По умолчанию начало системы координат находится в левом верхнем углу поверхности рисования, отсчет координат осуществляется в пикселах.

Для перемещения указателя используется:

MoveTo (x:integer;y:integer);//указатель перемещается в позицию с координатами х,у.

Рисование геометрических фигур:

  • Arc (x1,y1,x2,y2,x3,y3,x4,y4: integer) – рисование дуги

  • Ellipse (x1,y1,x2,y2:integer) – эллипс с заполнением

  • LineTo (x,y:integer)-линия от указателя до точки

  • Rectangle (x1,y1,x2,y2: integer) – заполненный прямоугольник

  • Pie (x1,y1,x2,y2,x3,y3,x4,y4:integer) – замкнутая фигура с закругленным верхом

  • FillRect (const rect:integer) – прямоугольник с заполнением

  • FrameRect (const rect:integer) – незаполненный прямоугольник

  • Polygon (const point: array of point) – многоугольник с заполнением

  • PolyLine (const point: array of point) – незаполненный многоугольник

Процедура CopyRect (Dest:TRect; Canvas: TCanvas; Source:TRect) копирует прямоугольную область, размеры которой заданы параметром Source из исходной поверхности, заданной параметром Canvas, в прямоугольную область Dest.

Адресатом операции является поверхность, для которой была вызвана процедура.

Если исходная и результирующая поверхности имеют разные размеры, то копируемый образ масштабируется под размеры области Dest, т. е результирующей поверхности.

Свойство ClipRect определяет границы области поверхности рисования в пределах которой осуществляется прорисовка. Часть изображения выходящая за пределы этого прямоугольника отсекается и не выводится.

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

Draw (x,y:integer; Graphic:TGraphic); - процедура вывода изображения на поверхность рисования, в которой х,у – левый верхний угол начала вывода, а параметр Graphic задает выводимое изображение.

Занимаемая изображением область зависит от размера изображения. Если рисунок не входит, то применяется процедура StrechDraw(), в которой для изображения задается прямоугольная область.

Свойство LoadFromFile используется для загрузки изображения в переменную.

Установка параметра шрифта:

  • Name – имя шрифта

  • Style – стиль ( bold – жирный, underline – нижнее подчеркивание, italic – курсив)

  • Size - размер

  • Color – цвет

Свойства TPen:

  • Style – стиль рисования

  • psSolid – сплошная прорисовка

  • psDash - штрихи

  • psDot - пунктир

  • psClear – невидимая линия

  • Width - размер пера

  • Mode –как перо при рисовании линий взаимодействует с имеющимися линиями

  • pmBlack – всегда черный

  • pmWhite – всегда белый

  • pmNop – не изменяется

  • pmNot – инверсия при повторном рисовании

  • pmCopy – совпадение с цветом, указанным в свойстве Color

  • pmNotCopy – инверсия цвета пера

Свойства Brush (кисть):

  • Style - стили

  • bsSolid – сплошная заливка

  • bsClear – нет заливки

  • bsGorizontal – горизонтальные линии

  • bsVertical – параллельные вертикальные линии

  • bsfDiagonal – диагональные линии направленные вверх

  • bsbDiagonal - диагональные линии направленные вниз

  • bsGross – прямая решетка

  • bsDiagGross – диагональная решетка

  • BitMap – изображение в качестве стиля кисти

Последовательность дейтвий при создании анимации:

  1. Вывести объект на экран

  2. Подождать

  3. Стереть объект с экрана

  4. Вывести объект с некоторым смещением

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]