Работа с параметрами

После импорта шаблона категории в Renga, все параметры, описанные в JSON, будут являться объектами таблицы Style и храниться в группе, к которой они принадлежат.

Примечание

Имена групп параметров и параметров берутся из JSON

Доступ к группе параметров

Получить группу параметров по имени

GetParameterGroup(groupName)
Parameters:

groupName (String) – Задает идентификатор (имя) группы параметров.

Returns:

Группа параметров

Return type:

ParameterGroup

Методы группы параметров

Получить параметр по имени из группы

:GetParameter(parameterName)
Parameters:

parameterName (String) – Задает идентификатор (имя) параметра.

Returns:

Параметр

Return type:

Parameter

Доступ к параметрам

Получить доступ к нужному параметру в скриптовой части можно следующими способами:

Получить таблицу значений всех параметров

GetParameterValues()
Returns:

Таблица значений всех параметров вида [имя группы][имя параметра][значение параметра].

Return type:

table of Parameters

Пример 1. Присвоение локальной переменной width значения параметра bodyWidth из группы параметров Dimensions
1local parameters = Style.GetParameterValues()   -- получение таблицы значений всех параметров
2
3local width = parameters["Dimensions"].bodyWidth

Эта запись эквивалентна:

Пример 2.
1local width = parameters.Dimensions.bodyWidth

Получить параметр по имени группы и параметра

GetParameter(groupName, parameterName)
Parameters:
Returns:

Параметр

Return type:

Parameter

Примечание

Имена групп параметров и параметров берутся из JSON

Пример 3. Присвоение локальной переменной width значения параметра bodyWidth из группы параметров Dimensions с использованием функций GetParameter() и метода GetValue()
1local width = Style.GetParameter("Dimension", "bodyWidth"):GetValue()

Методы параметров

Получить значение параметра

:GetValue()
Returns:

Значение параметра.

Общие методы групп параметров и параметров

Включить или отключить отображение в редакторе стилей объекта

:SetVisible(isVisible)
Parameters:

isVisible – Булевое значение (true/false)

Return type:

Boolean

Пример 3. Скрытие группы параметров Dimension из диалога стилей объекта.
1Style.GetParameterGroup("Dimension"):SetVisible(false)

Установить возможность редактирования в редакторе стилей объекта

:SetEnabled(isEnabled)
Parameters:

isEnabled – Булевое значение (true/false)

Return type:

Boolean

Доступ к контейнеру параметров сущности проекта

Контейнер параметров может быть получен из Entity.

Добавлено в версии 2.0:

CastToParameterContainer(entity)
Parameters:

entity (Entity) – Задает сущность Renga, объект или стиль.

Returns:

Контейнер параметров сущности

Return type:

ParameterContainer

Получить значения параметров контейнера

Добавлено в версии 2.0:

:GetParameterValues()
Returns:

Таблица значений параметров.

Return type:

table of Parameters

Пример 4. Получение стиля арматурного стержня и его параметров
1local style = Project.GetRebarStyle(rebarStyleId)
2local rebarParameters = CastToParameterContainer(style):GetParameterValues()
3local rebarDiameter = rebarParameters.RebarDiameter