Введение в модуль GraphABC
Внешний вид
(перенаправлено с «Основы PascalABC.Net/Модуль GraphABC»)
GraphABC - модуль для растровой графики на PascalABC.NET.
Данный модуль является устаревшим (может быть в будущем исключен из среды) и специфическим для PascalABC.NET и не поддерживается другими диалектами Pascal и остальными языками. Современный аналог - GraphWPF.
Процедуры и функции для рисования примитивов
[править]В GraphABC существует множество процедур и функций для рисования линий, прямоугольников, ломаных и текста. Но перед рисованием Вам следует уяснить то, что изначально все примитивы будут рисоваться черным цветом - изначальным цветом кисти.
Процедура или функция | Описание |
---|---|
procedure PutPixel(x, y: integer; c: Color)
|
Заливает пиксель с координатами (x, y) цветом c. |
procedure Line(x, y, x1, y1: integer)
|
Рисует линию от точки с координатами (x, y) до точки с координатами (x1, y1) текущим цветом кисти. |
procedure Line(x, y, x1, y1: integer; c: Color)
|
Рисует линию от точки с координатами (x, y) до точки с координатами (x1, y1) цветом c. |
procedure FillCircle(x, y, r: integer)
|
Заполняет окружность с координатами центра (x, y) и радиусом r текущим цветом кисти. |
procedure DrawCircle(x, y, r: integer)
|
Рисует контур окружности с координатами центра (x, y) и радиусом r текущим цветом кисти. |
procedure FillEllipse(x, y, x1, y1: integer)
|
Заполняет эллипс, который ограничен прямоугольником с координатами противоположных вершин (x, y) и (x1, y1), текущим цветом кисти. |
procedure DrawEllipse(x, y, x1, y1: integer)
|
Рисует контур эллипса, который ограничен прямоугольником с координатами противоположных вершин (x, y) и (x1, y1), текущим цветом кисти. |
procedure FillRectangle(x, y, x1, y1: integer)
|
Заполняет прямоугольник, который задан координатами противоположных вершин (x, y) и (x1, y1), текущим цветом кисти. |
procedure DrawRectangle(x, y, x1, y1: integer)
|
Рисует контур прямоугольника, который задан координатами противоположных вершин (x, y) и (x1, y1), текущим цветом кисти. |
procedure FillRoundRect(x, y, x1, y1, w, h: integer)
|
Заполняет скругленный прямоугольник, который задан координатами противоположных вершин (x, y) и (x1, y1), текущим цветом кисти. А w и h - ширина и высота эллипсов, которые отвечают за скругления краев прямоугольника. |
procedure DrawRoundRect(x, y, x1, y1, w, h: integer)
|
Рисует контур скругленного прямоугольника, который задан координатами противоположных вершин (x, y) и (x1, y1), текущим цветом кисти. А w и h - ширина и высота эллипсов, которые отвечают за скругления краев прямоугольника. |
procedure Arc(x, y, r, c1, c2: integer)
|
Рисует дугу окружности с координатами центра (x, y) и радиусом r, ограниченную двумя лучами, угол поворота которых определен c1 и c2 против часовой стрелки. |
procedure DrawPie(x, y, r, c1, c2: integer)
|
Рисует контур сектора окружности с координатами центра (x, y) и радиусом r, ограниченную двумя лучами, угол поворота которых определен c1 и c2 против часовой стрелки. |
procedure FillPie(x, y, r, c1, c2: integer)
|
Заполняет сектор окружности с координатами центра (x, y) и радиусом r, ограниченную двумя лучами, угол поворота которых определен c1 и c2 против часовой стрелки. |
procedure TextOut(x, y: integer; t: string)
|
Выводит текст t в прямоугольник, у которого верхняя левая точка имеет координаты (x, y). |
procedure DrawTextCentered(x, y: integer; t: string)
|
Выводит отцентрированный в прямоугольнике (у которого верхняя левая точка имеет координаты (x, y)) текст t. |
procedure FloodFill(x, y: integer; c: Color)
|
Заполняет область одного цвета (цвета точки с координатами (x, y), начиная с нее). |
procedure LineTo(x, y: integer)
|
Рисует прямую от текущей позиции кисти до точки с координатами (x, y) текущим цветом кисти. |
procedure LineTo(x, y: integer; c: Color)
|
Рисует прямую от текущей позиции кисти до точки с координатами (x, y) цветом c. |
procedure MoveTo(x, y: integer)
|
Устанавливает позицию кисти в точку с координатами (x, y). |
function GetPixel(x, y: integer): Color
|
Возвращает цвет пикселя с координатами (x, y). |
Функции работы с цветом
[править]Процедура или функция | Описание |
---|---|
function RGB(r, g, b: integer): Color
|
Возвращает цвет со значениями компонентов r, g и b. |
function ARGB(r, g, b: integer): Color
|
Возвращает цвет со значениями компонентов r, g и b и компонентом прозрачности a. |
function clRandom(): Color
|
Возвращает случайный цвет. |
function GetRed(c: Color): integer
|
Возвращает значение красной компоненты цвета c. |
function GetGreen(c: Color): integer
|
Возвращает значение зеленой компоненты цвета c. |
function GetBlue(c: Color): integer
|
Возвращает значение синей компоненты цвета c. |
Текущее перо Pen
[править]Процедура момент функция | Описание |
---|---|
procedure SetPenColor(c: Color)
|
Установит в качестве текущего цвета кисти цвет c. |
procedure SetPenWidth(w: integer)
|
Установит ширину кисти равную w. |
procedure SetPenStyle(s: DashStyle)
|
Установит стиль кисти для текущей кисти.
|
function PenColor(): Color
|
Возвращает текущий цвет кисти. |
function PenWidth(): integer
|
Возвращает размер текущей кисти. |
function PenStyle(): DashStyle
|
Возвращает стиль текущей кисти.
|
function PenX(): integer
|
Возвращает координату X текущей позиции кисти. |
function PenY(): integer
|
Возвращает координату Y текущей позиции кисти. |
Текущий шрифт Font
[править]Процедура момент функция | Описание |
---|---|
procedure SetFontColor(c: Color)
|
Установит в качестве текущего цвета текста цвет c. |
procedure SetFontStyle(s: integer)
|
Установит стиль кисти для текущей шрифта.
|
function FontColor(): Color
|
Возвращает текущий цвет шрифта. |
function FontStyle(): integer
|
Возвращает текущий стиль шрифта.
|
Графическое окно
[править]Процедура момент функция | Описание |
---|---|
procedure ClearWindow()
|
Очищает окно белым цветом. |
procedure Clear(c: Color)
|
Очищает окно цветом c. |
procedure SetWindowIsFixedSize(s: boolean)
|
Зафиксирует размер графического окна если s = true, в противном случае - пользователь сможет изменять размеры окна. |
procedure SetWindowWidth(w: integer)
|
Установит ширину графического окна, равную w. |
procedure SetWindowHeight(h: integer)
|
Установит высоту графического окна, равную h. |
procedure NormalizeWindow()
|
Установит размеры и позицию графического окна, какие они были до сворачивания или разворачивается окна. |
procedure MinimizeWindow()
|
Сворачивает графическое окно. |
procedure MaximizeWindow()
|
Разворачивает во весь экран графическое окно. |