Показаны различия между двумя версиями страницы.
Следующая версия | Предыдущая версия | ||
ob:visual:draw:ru [2022/10/02 20:34] iadenisov создано |
ob:visual:draw:ru [2023/11/14 15:13] (текущий) iadenisov |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
+ | Документация проекта [[https:// | ||
+ | |||
+ | ====== Модуль Draw ====== | ||
+ | |||
+ | |||
Создание графики и анимации на холсте HTML5. | Создание графики и анимации на холсте HTML5. | ||
- | CONST | + | CONST\\ |
- | | + | |
- | | + | |
- | VAR | + | VAR\\ |
- | | + | |
- | | + | |
+ | |||
+ | PROCEDURE **Start** | ||
- | PROCEDURE Start; | ||
Запуск рисования. | Запуск рисования. | ||
- | PROCEDURE NoLoop; | + | PROCEDURE |
Отключение режима циклической перерисовки. | Отключение режима циклической перерисовки. | ||
- | PROCEDURE Loop; | + | PROCEDURE |
Включение режима циклической перерисовки. | Включение режима циклической перерисовки. | ||
- | PROCEDURE Redraw; | + | PROCEDURE |
Перерисовать холст. | Перерисовать холст. | ||
- | *** Установка процедур для обратных вызовов *** | ||
- | 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 |
Установка процедуры для события нажатия клавиш на клавиатуре. | Установка процедуры для события нажатия клавиш на клавиатуре. | ||
- | PROCEDURE SetKeyTypedProc*(c: | + | PROCEDURE |
Установка процедуры для события ввода литеры. | Установка процедуры для события ввода литеры. | ||
- | *** Общие *** | ||
- | PROCEDURE SetFrameRate* (fps : INTEGER); | + | ===== Общие ===== |
+ | |||
+ | |||
+ | PROCEDURE | ||
Устанавливает частоту обновления холста, | Устанавливает частоту обновления холста, | ||
путём вызова процедуры, | путём вызова процедуры, | ||
- | PROCEDURE SetBackgroundRGB*(r, | + | PROCEDURE |
Устанавливает цвет фона холста в формате RGB. | Устанавливает цвет фона холста в формате RGB. | ||
- | PROCEDURE SetBackground(argb : INTEGER); | + | PROCEDURE |
Устанавливает цвет фона холста. | Устанавливает цвет фона холста. | ||
- | PROCEDURE SetSize(w, h : INTEGER); | + | PROCEDURE |
Устанавливает размеры холста. | Устанавливает размеры холста. | ||
- | PROCEDURE FillRGBA(r, g, b: INTEGER; a: REAL); | + | PROCEDURE |
Задаёт цвет заполнения геометрических фигур в формате RGBA. | Задаёт цвет заполнения геометрических фигур в формате RGBA. | ||
- | PROCEDURE FillRGB(r, g, b: INTEGER); | + | PROCEDURE |
Задаёт цвет заполнения геометрических фигур в формате RGB. | Задаёт цвет заполнения геометрических фигур в формате RGB. | ||
- | PROCEDURE Fill(argb : INTEGER); | + | PROCEDURE |
Задаёт цвет заполнения геометрических фигур. | Задаёт цвет заполнения геометрических фигур. | ||
- | PROCEDURE NoFill; | + | PROCEDURE |
Отключает заполнение геометрических фигур цветом. | Отключает заполнение геометрических фигур цветом. | ||
- | PROCEDURE StrokeRGBA(r, | + | PROCEDURE |
Задаёт цвет линий и обводки геометрических фигур в формате RGBA. | Задаёт цвет линий и обводки геометрических фигур в формате RGBA. | ||
- | PROCEDURE StrokeRGB(r, | + | PROCEDURE |
Задаёт цвет линий и обводки геометрических фигур в формате RGB. | Задаёт цвет линий и обводки геометрических фигур в формате RGB. | ||
- | PROCEDURE Stroke(argb : INTEGER); | + | PROCEDURE |
Задаёт цвет линий и обводки геометрических фигур. | Задаёт цвет линий и обводки геометрических фигур. | ||
- | PROCEDURE NoStroke; | + | PROCEDURE |
Отключает обводку геометрических фигур. | Отключает обводку геометрических фигур. | ||
- | PROCEDURE StrokeWidth(width : INTEGER); | + | PROCEDURE |
Задаёт толщину линии обводки. | Задаёт толщину линии обводки. | ||
- | PROCEDURE Smooth; | + | PROCEDURE |
- | PROCEDURE NoSmooth; | + | PROCEDURE |
- | *** Геометрические фигуры *** | + | ===== Геометрические фигуры |
+ | |||
+ | |||
+ | PROCEDURE **Point** (x0, y0: REAL)\\ | ||
+ | PROCEDURE **PointInt** (x0, y0: INTEGER) | ||
- | PROCEDURE Point(x0, y0: REAL); | ||
Рисует точку с координатами x0 и y0. | Рисует точку с координатами x0 и y0. | ||
- | PROCEDURE Line(x0, y0, x1, y1: REAL); | + | PROCEDURE |
+ | PROCEDURE **LineInt** (x0, y0, x1, y1: INTEGER) | ||
Рисует линию из координаты x0, y0 в координату x1, y2. | Рисует линию из координаты x0, y0 в координату x1, y2. | ||
- | PROCEDURE Ellipse(x, y, w, h: REAL); | + | PROCEDURE |
+ | PROCEDURE **EllipseInt** (x, y, w, h: INTEGER) | ||
Рисует овал. | Рисует овал. | ||
- | PROCEDURE Rect(x, y, w, h: REAL); | + | PROCEDURE |
+ | PROCEDURE **RectInt** (x, y, w, h: INTEGER) | ||
Рисует квадрат. | Рисует квадрат. | ||
- | PROCEDURE RectRounded(x, | + | PROCEDURE |
+ | PROCEDURE **RectRoundedInt** (x, y, w, h, r: INTEGER) | ||
Рисует квадрат с закруглёнными углами. | Рисует квадрат с закруглёнными углами. | ||
- | *** Геометрические фигуры с целыми аргументами *** | ||
- | PROCEDURE PointInt(x0, | ||
- | PROCEDURE LineInt(x0, y0, x1, y1: INTEGER); | ||
- | PROCEDURE EllipseInt(x, | ||
- | PROCEDURE RectInt(x, y, w, h: INTEGER); | ||
- | PROCEDURE RectRoundedInt(x, | ||
+ | ===== Тексты ===== | ||
- | *** Тексты *** | + | PROCEDURE |
+ | PROCEDURE **StringInt** (mystr: ARRAY OF CHAR; x, y, size: INTEGER) | ||
+ | |||
+ | Рисует строку размера ' | ||
+ | |||
+ | PROCEDURE **LoadFont** (name: ARRAY OF CHAR): Font | ||
- | PROCEDURE LoadFont(name: | ||
Загружает шрифт по локальной ссылке не ресурс. Загрузка шрифта в профиле. | Загружает шрифт по локальной ссылке не ресурс. Загрузка шрифта в профиле. | ||
- | PROCEDURE SetFont(f: Font); | + | PROCEDURE |
+ | |||
+ | Выбор шрифта для последующей орисовки текстов. | ||
+ | |||
+ | PROCEDURE **StringWidth**(mystr: | ||
+ | |||
+ | Вычисляет ширину строки установленным шрифтом с заданным размером. | ||
- | PROCEDURE StringWidth*(mystr: | ||
- | PROCEDURE String(mystr: | ||
- | PROCEDURE StringInt(mystr: | + | ===== Изображения ===== |
- | *** Изображения *** | + | PROCEDURE |
- | PROCEDURE | + | PROCEDURE |
- | PROCEDURE PlaceImage* (image: Image; x, y: REAL); | ||
+ | ===== Трансформация ===== | ||
- | *** Трансформация *** | ||
- | PROCEDURE Translate(x, | + | PROCEDURE |
- | PROCEDURE PushMatrix; | + | PROCEDURE |
- | PROCEDURE PopMatrix; | + | PROCEDURE |
- | PROCEDURE Rotate(angle : REAL); | + | PROCEDURE |