Создание макропрограмм

Материал из K3-Macro
Макро | Создание макропрограмм | Переменные и выражения | Вызов из ZIP | Типовые параметры | Создание геом. объектов | Буфер обмена | Сценарии | Параметрические библиотеки | Геометрические характеристики | Атрибуты | Структурные объекты | Текстовые файлы | Системные параметры | Работа с файлами | Редактирование объектов | Удаление объектов | Размеры | Штриховка | Объект «Текст» | Камера | Работа с видом | Наборы параметров | Запрос информации у пользователя | Фильтры | Слои | Графы | Универсальные плоские объекты | Функции работы с системой | Функции работы с объектами сцены | Работа с динамически подключаемыми библиотеками | Функции работы с массивами | Работа со строками | Математические функции | Работа с файлами DBF dBASE IV | Унифицированная работа с базами данных | Вычисление выражений | Присвоение имени объекту | Откатка и восстановление команд | Изменение режима трассировки макропрограмм | Вызов внешних приложений и задач | Проверка условия | Проверка типа переменной | Установкв статуса вывода сообщений | Выдача системного сообщения | Выбор объектов | Версия системы | Информация о системе | Проверка принадлежности к списку | Помещение строки в буфер команд | Получение метапути | Установка курсора ожидания | Мебельные команды и функции для макропрограммирования‎

Макропрограммы системы K3 представляют собой последовательность команд и операторов языка системы, записанную в текстовый файл. Этот файл может создаваться любым текстовым редактором, в том числе и встроенным в систему текстовым редактором.

Каждая команда системы описывается своим ключевым словом и списком параметров, который может за ним следовать. Например, команда «Создать точку с координатами {18,20,30}» будет выглядеть следующим образом:

point 18,20,30 done;


где point — ключевое слово, а остальной текст описывает конкретные параметры данной команды.

Каждая команда может быть набрана не полностью, а только несколько первых символов. Количество этих символов зависит от конкретной команды. Например, вместо point можно набрать p, po, poi и т.д. Однако в макропрограммах рекомендуется использовать полное название команды.

Прописные и строчные буквы в именах команд, функций, массивов и переменных равнозначны.

Каждая команда должна завершаться символом «;» (точка с запятой).

Кроме команд системы в тексте макропрограммы можно использовать операторы макроязыка, такие как:

  • Оператор присваивания;
  • Условный оператор;
  • Оператор перехода;
  • Оператор вызова подпрограммы;
  • Оператор выхода в вызывающую макропрограмму;
  • Оператор выхода в интерактивный режим.

При описании будут использованы следующие типографские соглашения:

Обычный шрифт

Используется для обычного текста описания

Полужирный шрифт

Используется для выделения отдельных фрагментов описания, названия пунктов меню, клавиш и пр., а также описываемой команды или функции.

Полужирный шрифт в блоке

Указывает, что это имя функции или команды K3 (Например: Abs, DbOpen). Такие слова должны набираться в точности так, как они приведены (но можно игнорировать регистр букв, например, допустимо abs, DBOPEN).

Обычный шрифт

Используется для описания стандартных ключей K3, а также имен команд и функций в тексте описания.

ЗАГЛАВНЫЕ БУКВЫ в блоке

Используются для условного обозначения типа данных входного параметра или результата, возвращаемого функций. В качестве типа используются следующие условные обозначения:

  • DOUBLE — число с плавающей точкой;
  • INT — целое число;
  • LOGICAL — число (либо 0, либо 1);
  • STRING — строка;
  • VARNAME — имя переменной или массива;
  • ARRAY — массив;
  • VOID — пустой результат;
  • VARIANT — параметр или результат может быть разных типов;

Курсив используется для условного обозначения входного параметра или имени переменной.

Моноширинный шрифт в сером боксе

Используется для описания примеров.

Зелёный моноширинный шрифт

Используется в тексте примеров для обозначения результата, возвращаемого функцией, который она выдает в окно диалога. Вывод результата в окно диалога является удобным средством для изучения поведения функции или выражения. Для этого перед выражением необходимо поставить знак присваивания "=".



Текст в рамке


Используется для примечаний и фрагментов, на которые необходимо обратить внимание.

Дополнительно к этому через вертикальную черту (|) перечислены возможные альтернативы. В угловых скобках (<>) указаны параметры команды или функции. Фигурные скобки ({}) в описании команд (не в примерах) служат для группировки элементов. Квадратные скобки ([]) служат для обозначения необязательных параметров и/или ключевых слов.

Например:

colorpicture [rend] <VPort> {yes | no}

...следует читать так. Команда colorpicture требует указания параметра <VPort>, перед которым может стоять (а может и не стоять) необязательный ключ rend. После указания следует ввести одно из двух ключевых слов yes или no, но не оба сразу и не упуская хотя бы одного из них.


Макро | Создание макропрограмм | Переменные и выражения | Вызов из ZIP | Типовые параметры | Создание геом. объектов | Буфер обмена | Сценарии | Параметрические библиотеки | Геометрические характеристики | Атрибуты | Структурные объекты | Текстовые файлы | Системные параметры | Работа с файлами | Редактирование объектов | Удаление объектов | Размеры | Штриховка | Объект «Текст» | Камера | Работа с видом | Наборы параметров | Запрос информации у пользователя | Фильтры | Слои | Графы | Универсальные плоские объекты | Функции работы с системой | Функции работы с объектами сцены | Работа с динамически подключаемыми библиотеками | Функции работы с массивами | Работа со строками | Математические функции | Работа с файлами DBF dBASE IV | Унифицированная работа с базами данных | Вычисление выражений | Присвоение имени объекту | Откатка и восстановление команд | Изменение режима трассировки макропрограмм | Вызов внешних приложений и задач | Проверка условия | Проверка типа переменной | Установкв статуса вывода сообщений | Выдача системного сообщения | Выбор объектов | Версия системы | Информация о системе | Проверка принадлежности к списку | Помещение строки в буфер команд | Получение метапути | Установка курсора ожидания | Мебельные команды и функции для макропрограммирования‎