12
Руководство пользователя
×

7.2 Параметр агрегата (parameter)

 Параметры агрегата применяются для замены в агрегате одних объектов на другие без изменения описания проекта-прототипа данного агрегата.
Параметр агрегата не является самостоятельным объектом. Он представляет собой дополнительный атрибут уже существующего объекта. Параметрами агрегата могут быть объявлены объекты следующих типов:
Геометрические и массово-инерционные объекты:
Основные объекты:
Объекты контроля и управления:
Объекты структуризации:
Объявить параметром агрегата можно любой объект вышеперечисленного типа, который создан непосредственно в проекте-прототипе и не прикреплен к какому-либо звену.
Для объявления объекта параметром агрегата в языке описания ММС используется следующий оператор:
set parameters = (список имен объектов);
Этот оператор должен быть записан в проекте-прототипе агрегата.
В программном комплексе имеются также диалоговые средства для объявления объектов параметрами агрегата.
При создании агрегата значения его параметров могут быть переопределены. Если параметр агрегата не переопределен, то он сохраняет то значение, которое было указано в проекте-прототипе. Порядок записи параметров при их переопределении - произвольный. Запись переопределения параметров агрегата в операторе создания агрегата аналогична записи необязательных именованных параметров. Но в этом случае перед именем переопределяемого параметра агрегата ставится символ «#» и указывается его тип. Также можно переопределять параметры агрегата созданными по месту объектами. Указывать тип переопределяемого параметра обязательно в том случае, если по выражению после знака «=» нельзя однозначно определить тип переопределяемого параметра.
При переопределении параметра-звена геометрический центр и цвет звена не переопределяются. Видимость определяется видимостью звена-значения. Для переопределения звеньев используется механизм жесткого соединения звеньев.
Нельзя переопределять датчик, созданный методом «Переменный датчик с заданным начальным значением» (sensor var).
Особенности переопределения списков объектов приведены в разделе «Список (list)» главы «Объекты структуризации».
Пример
/* Проект 1:  файл - project1.elr*/
scalar a = 3;
point s = point(1, 2, 3);
....
set parameter = a;
set parameter = s;
/* Проект 2 */
node baseNode1 = nodePoint(point(5, 2, 12));
point p1 = point(5, 6, 7);
assembly ass = assembly2(“project1.elr”, baseNode=baseNode1, #point s=p1);
...
В данном примере значением параметра s будет точка с координатами (5,6,7), а значение параметра a не изменится.