Lua-интерфейс Renga

Скрипты, описывающие геометрическое представление шаблона стиля, расположение портов и поведение параметров из файла описания параметров JSON, создаются в отдельном файле с расширением LUA. Описанию встроенных функций, взаимодействующих с Renga, посвященна данная часть руководства.

Примечание

Кроме использования встроенных функций, разработчики могут использовать в скриптах стандартные библиотеки Lua package library, string manipulation, table manipulation, mathematical functions.

Style Template API предоставляет средства для описания шаблонов стилей (объекты, классы, функции и системные перечисления). Функции, создающие различные геометрические примитивы в Renga, а также системные перечисления (enums), доступны в любой части скрипта. Условно можно сказать, что они относятся к глобальному пространству имён (или в терминах Lua — в глобальном окружении). Также выделяются в отдельное пространство имён Style функции для работы с текущим стилем:

Примечание

Подробнее см. справочное руководство Renga STDL

Style Template API

Namespace

Объекты

глобальный

Модельная геометрия

Функции, порождающие

геометрические примитивы

Базовые типы геометрии

Графические примитивы

Планарная геометрия

Твёрдотельная 3D-геометрия

Системные перечисления

Вспомогательные функции

Style

Функции для работы с текущим стилем

Parameter

Таблицы групп параметров (определенных в JSON)

Port

Точки подключения (порты) оборудования

Общие примеры:

Пример 1. Создание твердотельной 3D-геометрии в виде сферы, радиусом radius и с центром в точке origin:
1local solid = CreateSphere(radius, origin)
Пример 2. Создание экземпляра планарной геометрии GeometrySet2D() :
1local planarGeometry = GeometrySet2D()
Пример 3. Создание точки в трёхмерном пространстве:
1local origin = Point3D(x, y, z)

Функции для работы с текущим стилем

Пространство имён Style (или в терминах Lua - таблица) содержит функции, которые создают различный уровень детализации стиля (детальный, условный или символьный), а также функции, управляющие доступом к параметрам и портам.

Таблицы Parameters и Ports также являются объектами таблицы Style.

Добавить детальную модельную геометрию объекта в стиль

SetDetailedGeometry(detailedGeometry)
Parameters:

detailedGeometry (ModelGeometry) – Задает модельную геометрию.

Пример 4. Добавление детальной модельной геометрии в стиль:
1Style.SetDetailedGeometry(detailedGeometry)

Добавить условную модельную геометрию объекта в стиль

SetSymbolicGeometry(symbolicGeometry)
Parameters:

symbolicGeometry – Задает модельную геометрию.

Пример 5. Добавление условной модельной геометрии в стиль:
1Style.SetSymbolicGeometry(symbolicGeometry)

Добавить символьную модельную геометрию объекта в стиль

SetSymbolGeometry(symbolGeometry)
Parameters:

symbolGeometry – Задает модельную геометрию.

Пример 5. Добавление символьной модельной геометрии в стиль:
1Style.SetSymbolGeometry(symbolGeometry)