Это старая версия документа!
Создание графики и анимации на холсте HTML5.
CONST black, white, red, green, blue; Наиболее распространённые цвета.
VAR mouseX, mouseY, width, height: INTEGER; focus: BOOLEAN;
PROCEDURE Start; Запуск рисования.
PROCEDURE NoLoop; Отключение режима циклической перерисовки.
PROCEDURE Loop; Включение режима циклической перерисовки.
PROCEDURE Redraw; Перерисовать холст.
* Установка процедур для обратных вызовов *
PROCEDURE SetPreloadProc(s: PROCEDURE); Установка процедуры для предварительной загрузки изображений и шрифтов.
PROCEDURE SetSetupProc(s: PROCEDURE); Установка процедуры для настройки модели.
PROCEDURE SetDrawProc(d: PROCEDURE); Установка процедуры для перерисовки.
PROCEDURE SetPressedProc(c: PROCEDURE); Установка процедуры для обработки нажатия мыши.
PROCEDURE SetReleasedProc(c: PROCEDURE); Установка процедуры для обработки отпускания мыши.
PROCEDURE SetOutProc(c: PROCEDURE); Установка процедуры для события выхода курсора с холста.
PROCEDURE SetOverProc(c: PROCEDURE); Установка процедуры для события появление курсора над холстом.
PROCEDURE SetKeyPressedProc(c: PROCEDURE(code: INTEGER)); Установка процедуры для события нажатия клавиш на клавиатуре.
PROCEDURE SetKeyTypedProc*(c: PROCEDURE(ch: CHAR)); Установка процедуры для события ввода литеры.
* Общие *
PROCEDURE SetFrameRate* (fps : INTEGER); Устанавливает частоту обновления холста, путём вызова процедуры, установленной в SetDrawProc.
PROCEDURE SetBackgroundRGB*(r, g, b: INTEGER); Устанавливает цвет фона холста в формате RGB.
PROCEDURE SetBackground(argb : INTEGER); Устанавливает цвет фона холста.
PROCEDURE SetSize(w, h : INTEGER); Устанавливает размеры холста.
PROCEDURE FillRGBA(r, g, b: INTEGER; a: REAL); Задаёт цвет заполнения геометрических фигур в формате RGBA.
PROCEDURE FillRGB(r, g, b: INTEGER); Задаёт цвет заполнения геометрических фигур в формате RGB.
PROCEDURE Fill(argb : INTEGER); Задаёт цвет заполнения геометрических фигур.
PROCEDURE NoFill; Отключает заполнение геометрических фигур цветом.
PROCEDURE StrokeRGBA(r, g, b: INTEGER; a: REAL); Задаёт цвет линий и обводки геометрических фигур в формате RGBA.
PROCEDURE StrokeRGB(r, g, b: INTEGER); Задаёт цвет линий и обводки геометрических фигур в формате RGB.
PROCEDURE Stroke(argb : INTEGER); Задаёт цвет линий и обводки геометрических фигур.
PROCEDURE NoStroke; Отключает обводку геометрических фигур.
PROCEDURE StrokeWidth(width : INTEGER); Задаёт толщину линии обводки.
PROCEDURE Smooth;
PROCEDURE NoSmooth;
* Геометрические фигуры *
PROCEDURE Point(x0, y0: REAL); Рисует точку с координатами x0 и y0.
PROCEDURE Line(x0, y0, x1, y1: REAL); Рисует линию из координаты x0, y0 в координату x1, y2.
PROCEDURE Ellipse(x, y, w, h: REAL); Рисует овал.
PROCEDURE Rect(x, y, w, h: REAL); Рисует квадрат.
PROCEDURE RectRounded(x, y, w, h, r: REAL); Рисует квадрат с закруглёнными углами.
* Геометрические фигуры с целыми аргументами *
PROCEDURE PointInt(x0, y0: INTEGER); PROCEDURE LineInt(x0, y0, x1, y1: INTEGER); PROCEDURE EllipseInt(x, y, w, h: INTEGER); PROCEDURE RectInt(x, y, w, h: INTEGER); PROCEDURE RectRoundedInt(x, y, w, h, r: INTEGER);
* Тексты *
PROCEDURE LoadFont(name: ARRAY OF CHAR): Font; Загружает шрифт по локальной ссылке не ресурс. Загрузка шрифта в профиле.
PROCEDURE SetFont(f: Font);
PROCEDURE StringWidth*(mystr: ARRAY OF CHAR; size: INTEGER): INTEGER;
PROCEDURE String(mystr: ARRAY OF CHAR; x, y: REAL; size: INTEGER);
PROCEDURE StringInt(mystr: ARRAY OF CHAR; x, y, size: INTEGER);
* Изображения *
PROCEDURE LoadImage* (name: ARRAY OF CHAR): Image;
PROCEDURE PlaceImage* (image: Image; x, y: REAL);
* Трансформация *
PROCEDURE Translate(x, y: REAL);
PROCEDURE PushMatrix;
PROCEDURE PopMatrix;
PROCEDURE Rotate(angle : REAL);