Создание анимированного изображения для блока "Субмодель"

Средства SimInTech позволяют создавать анимированные изображения для любых блоков, в т.ч. для блоков типа "Субмодель". Например, блок триггера может отображать своё текущее состояние, а на блоке-источнике сигнала может отображаться текущее значение и т.п.

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

Для создания анимированного изображения субмодели нужно выполнить следующие действия:

  • 1) Создать блок "Субмодель" и наполнить его содержимым.
  • 2) Выйти из редактирования субмодели на уровень окна проекта, нажав кнопку в окне модели.
  • 3) Выделить субмодель, вызвать по правому клику мыши контекстное меню и выбрать пункт "Свойства объекта". Откроется окно "Свойства" для выбранной субмодели.
  • 4) Во вкладке "Общие", в строке "Графическое изображение" перейти в столбец "Значение" и кликнуть на появившейся кнопке . Откроется окно графического редактора с рисунком, используемым в качестве пиктограммы для блока субмодели. По умолчанию, используется растровое изображение, которое можно удалить выделив его мышкой и нажав клавишу [Del].
  • 5) В окне графического редактора нужно с помощью графических примитивов создать изображение для пиктограммы субмодели. Для вызова панели примитивов нужно в меню окна графического редактора выбрать пункт "Вид ® Панель примитивов". Возможно использование подготовленного ранее изображения в формате ".gcn". Для этого нужно открыть файл рисунка с расширением ".gcn" через пункт меню "Файл ® Открыть…". В открывшемся окне нужно выбрать требуемый файл и нажать кнопку "Открыть" - изображение загрузится в окно редактора, полностью заменив собой предыдущее содержимое окна. Нужно иметь ввиду, файл используется только для чтения и загрузки его содержимого. Последующее редактирование не оказывает влияния на содержимое исходного файла: изменения будут сохранены в данных субмодели. Также пользователь может вновь сохранить изображение в виде файла, выбрав пункт меню "Файл ® Сохранить как…". В открывшемся окне нужно ввести имя нового файла ".gcn", либо указать существующий для перезаписи, и нажать кнопку "Сохранить".
  • 6) После того, как изображение создано, нужно создать сигнал, который будет связующим звеном между свойствами анимированных графических примитивов и динамическими значениями из субмодели. Для этого нужно вызвать окно "Сигналы" через пункт меню "Сервис ® Сигналы…". В появившемся окне нужно добавить необходимое количество сигналов, нажимая кнопку .
  • 7) Затем необходимо установить связь между созданными сигналами и свойствами графических примитивов. Это можно сделать с помощью окна редактирования связей (пункт меню "Сервис ® Связи…"), либо посредством скрипта на встроенном языке (пункт меню "Сервис ®Скрипт…").
  • 8) По окончании редактирования связей следует закрыть окно графического редактора, ответив "Да" на вопрос "Изменить изображение?". Изображение на блоке субмодели изменится в соответствии с внесенными правками. При выборе ответа "Нет" все внесенные изменения будут утеряны.
  • 9) Для завершения оформления связи между свойствами графических примитивов и динамическими значениями субмодели необходимо написать скрипт на уровне субмодели. Для этого необходимо открыть субмодель по двойному клику на изображении ее блока и выбрать слева вкладку "Параметры".
  • 10) В открывшейся вкладке нужно написать скрипт, передающий значения из субмодели в сигналы графической пиктограммы. Чтобы избежать создания дополнительных сигналов проекта, можно использовать значения, передаваемые внутри субмодели по линиям связи. Для этого нужно выбрать нужную связь в алгоритме субмодели и использовать ее имя в скрипте в формате MBTYWire<n>.Y[1], где <n> - номер линии связи, указанный в ее имени, например:
    signal_for_print_value = MBTYWire23.Y[1]

Если линия связи используется только для передачи значения в скрипт, то она может не соединяться с блоком-приемником сигнала.