Книга: Описание языка PascalABC.NET
Класс PictureABC
Разделы на этой странице:
Класс PictureABC
Класс PictureABC является потомком класса ObjectABC и представляет графический объект Рисунок.
Конструкторы класса PictureABC
constructor Create(x,y: integer; fname: string); Создает рисунок с координатами левого верхнего угла (x,y), считывая его из файла fname |
constructor Create(x,y: integer; p: Picture); Создает рисунок с координатами левого верхнего угла (x,y), считывая его из объекта p |
constructor Create(g: PictureABC); Создает рисунок - копию рисунка g |
Свойства класса PictureABC
property Transparent: boolean; Прозрачен ли рисунок |
property TransparentColor: GColor; Цвет, считающийся прозрачным |
property ScaleX: real; Масштаб рисунка по оси X относительно исходного изображения. При отрицательных значениях происходит зеркальное отражение относительно вертикальной оси |
property ScaleY: real; Масштаб рисунка по оси Y относительно исходного изображения. При отрицательных значениях происходит зеркальное отражение относительно вертикальной оси |
Методы класса PictureABC
procedure ChangePicture(fname: string); Меняет изображение рисунка, считывая его из файла fname |
procedure ChangePicture(p: Picture); Меняет изображение рисунка, считывая его из объекта p |
procedure FlipVertical; Зеркально отображает рисунок относительно вертикальной оси |
procedure FlipHorizontal; Зеркально отображает рисунок относительно горизонтальной оси |
procedure Save(fname: string); Сохраняет рисунок в файл fname |
function Clone: PictureABC; Возвращает клон рисунка |
Свойства, унаследованные от класса ObjectABC
property Left: integer; Отступ графического объекта от левого края |
property Top: integer; Отступ графического объекта от верхнего края |
property Width: integer; Ширина графического объекта |
property Height: integer; Высота графического объекта |
property dx: integer; x-координата вектора перемещения объекта при вызове метода Move. По умолчанию установлено в 0. Для неподвижных объектов может быть использовано для хранения любой дополнительной информации, связанной с объектом |
property dy: integer; y-координата вектора перемещения объекта при вызове метода Move. По умолчанию установлено в 0. Для неподвижных объектов может быть использовано для хранения любой дополнительной информации, связанной с объектом |
property Center: Point; Центр графического объекта |
property Position: Point; Левый верхний угол графического объекта |
property Visible: boolean; Видим ли графический объект |
property Color: GColor; Цвет графического объекта |
property FontColor: GColor; Цвет шрифта графического объекта |
property Text: string; Текст внутри графического объекта |
property TextVisible: boolean; Видимость текста внутри графического объекта |
property TextScale: real; Масштаб текста относительно размеров графического объекта, 0<=TextScale<=1. При TextScale=1 текст занимает всю ширину или высоту объекта. По умолчанию TextScale=0.8 |
property FontName: string; Имя шрифта для вывода свойства Text |
property FontStyle: FontStyleType; Стиль шрифта для вывода свойства Text |
property Number: integer; Целое число, выводимое в центре графического объекта. Для вывода используется свойство Text |
property RealNumber: real; Вещественное число, выводимое в центре графического объекта. Для вывода используется свойство Text. Вещественное число выводится с одним знаком после десятичной точки |
property Owner: ContainerABC; Владелец графического объекта, ответственный также за перерисовку графического объекта внутри себя (по умолчанию nil) |
Методы, унаследованные от класса ObjectABC
procedure MoveTo(x,y: integer); Перемещает левый верхний угол графического объекта к точке (x, y) |
procedure MoveOn(a,b: integer); Перемещает графический объект на вектор (a, b) |
procedure Move; override; Перемещает графический объект на вектор, задаваемый свойствами dx, dy |
procedure Scale(f: real); override; Масштабирует графический объект в f раз (f>1 - увеличение, 0<f<1 - уменьшение) |
procedure ToFront; Переносит графический объект на передний план |
procedure ToBack; Переносит графический объект на задний план |
function Bounds: System.Drawing.Rectangle; Возвращает прямоугольник, определяющий границы графического объекта |
function PtInside(x,y: integer): boolean; override; Возвращает True, если точка (x, y) находится внутри графического объекта, и False в противном случае |
function Intersect(g: ObjectABC): boolean; Возвращает True, если изображение данного графического объекта пересекается с изображением графического объекта g, и False в противном случае. Белый цвет считается прозрачным и не принадлежащим объекту |
function IntersectRect(r: System.Drawing.Rectangle): boolean; Возвращает True, если прямоугольник графического объекта пересекается прямоугольником r, и False в противном случае |
function Clone0: ObjectABC; override; Возвращает клон графического объекта |
procedure Draw(x,y: integer; g: Graphics); override; Защищенная. Не вызывается явно. Переопределяется для каждого графического класса. Рисует объект на объекте g: Graphics |
destructor Destroy; Уничтожает графический объект |
- Модуль ABCObjects: обзор
- Диаграмма классов
- Класс ObjectABC
- Класс BoundedObjectABC
- Класс RectangleABC
- Класс SquareABC
- Класс EllipseABC
- Класс CircleABC
- Класс RoundRectABC
- Класс RoundSquareABC
- Класс TextABC
- Класс RegularPolygonABC
- Класс StarABC
- Класс PictureABC
- Класс MultiPictureABC
- Класс BoardABC
- Класс ObjectBoardABC
- Мультирисунки
- Массив всех графических объектов Objects
- Переменные, процедуры и функции модуля ABCObjects
- Ускорение перерисовки графических объектов
- Совмещение графического вывода модулей ABCObjects и GraphABC