PascalABC.NET

Класс 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;
        Уничтожает графический объект