exponenta event banner

simbio.diagram.setBlock

Задать свойства блока диаграммы SimBiology

Описание

пример

simbio.diagram.setBlock(sObj,propertyNames,propertyValues) задает значения указанных свойств блока объекта SimBiology или массива объектов sObj.

Примечание

Перед запуском функции в командной строке:

  1. Откройте соответствующую модель SimBiology в приложении SimBiology Model Builder.

  2. Экспортируйте модель из приложения в рабочую область MATLAB ®, выбрав команду Экспорт > Экспорт модели в рабочую область MATLAB на вкладке Главная страницы приложения.

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

simbio.diagram.setBlock(sObj,S) устанавливает значения свойств sObj использование структуры S. Имена полей S являются именами свойств, а значения полей - значениями свойств.

пример

simbio.diagram.setBlock(sObj,Name,Value) задает значения свойств, заданные одним или несколькими аргументами «имя-значение».

Name - имя свойства и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Можно указать сочетание аргументов «имя-значение», структур и пар массивов ячеек имен свойств и значений в одном вызове функции.

пример

simbio.diagram.setBlock(sObj) отображает имена и возможные значения конфигурируемых свойств блока объекта SimBiology sObj. sObj должен быть скалярным.

outStruct = simbio.diagram.setBlock(sObj) возвращает структуру outStruct содержит имена и возможные значения конфигурируемых свойств блока объекта SimBiology sObj. sObj должен быть скалярным.

CV = simbio.diagram.setBlock(sObj,propertyName) возвращает массив ячеек возможных значений CV для свойства блока propertyName. sObj должен быть скалярным.

пример

simbio.diagram.setBlock(speciesObj,exprObj,___) устанавливает значения указанных свойств блока объекта вида speciesObj который подключен к объекту выражения exprObj. Можно указать любую комбинацию Name,Value пары, структуры и пары массивов ячеек имен свойств и значений, как показано в предыдущих синтаксисах.

Используйте этот синтаксис для настройки Position, Pin, и Visible свойства конкретного клонированного блока при наличии нескольких клонов одного вида. Клоны имеют одинаковые значения для всех остальных свойств.

пример

simbio.diagram.setBlock(speciesObj,exprObj) отображает имена конфигурируемых свойств блока объекта вида speciesObj который связан с объектом выражения (реакция, правило скорости или повторяющееся правило назначения) exprObj.

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

Примеры

свернуть все

Можно программно регулировать внешний вид и расположение блоков диаграммы модели SimBiology.

Откройте окно lotka в приложении SimBiology Model Builder.

simBiologyModelBuilder('lotka');

Приложение откроется и отобразит модель на вкладке Схема.

На вкладке Главная приложения выберите Экспорт > Экспорт модели в рабочую область MATLAB.

В диалоговом окне «Экспорт модели SimBiology» нажмите кнопку «ОК» для экспорта модели с именем переменной m1.

Перейдите в командную строку MATLAB и убедитесь, что модель m1 находится в рабочей области. Получите список видов модели.

m1.Species
ans = 

   SimBiology Species Array

   Index:    Compartment:    Name:    Value:    Units:
   1         unnamed         x        1               
   2         unnamed         y1       900             
   3         unnamed         y2       900             
   4         unnamed         z        0               

Получить текущую форму блока вида х.

x = m1.Species(1);
v = simbio.diagram.getBlock(x,'Shape')
v =

    'rounded rectangle'

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

simbio.diagram.setBlock(x,'Shape')
ans =

  8×1 cell array

    {'rounded rectangle'}
    {'rectangle'        }
    {'oval'             }
    {'triangle'         }
    {'hexagon'          }
    {'chevron'          }
    {'parallelogram'    }
    {'diamond'          }

Установите форму видового блока на овал.

simbio.diagram.setBlock(x,'Shape','oval')

Получить текущее положение блока. Первые два числа представляют координаты x и y относительно верхнего левого угла (x = 0, y = 0) диаграммы. Последние два числа представляют ширину и высоту блока.

simbio.diagram.getBlock(x,'Position')
ans =

   223   137    30    15

Установите новое местоположение.

simbio.diagram.setBlock(x,'Position',[260 130 30 15])

Можно также настроить несколько свойств.

simbio.diagram.setBlock(x,'FaceColor','yellow','FontSize',20,'TextLocation','center')

При наличии нескольких клонированных блоков для одного и того же вида на диаграмме SimBiology можно программно регулировать положение и видимость конкретного клона, указывая блок выражения, к которому подключен клонированный вид. Другими словами, можно изменить Position, Pin, и Visible свойства, специфичные для отдельного клона. Все остальные свойства имеют одинаковые значения для всех клонов одного вида.

Откройте окно gprotein в приложении SimBiology Model Builder.

simBiologyModelBuilder('gprotein');

Приложение откроется и отобразит модель на вкладке Схема.

На вкладке Главная приложения выберите Экспорт > Экспорт модели в рабочую область MATLAB.

В диалоговом окне «Экспорт модели SimBiology» нажмите кнопку «ОК» для экспорта модели с именем переменной m1.

Перейдите в командную строку MATLAB и убедитесь, что модель m1 находится в рабочей области. Получите список видов модели.

m1.Species
ans = 

   SimBiology Species Array

   Index:    Compartment:    Name:    Value:       Units:
   1         unnamed         G        7000               
   2         unnamed         Gd       3000               
   3         unnamed         Ga       0                  
   4         unnamed         RL       0                  
   5         unnamed         L        6.022e+17          
   6         unnamed         R        10000              
   7         unnamed         Gbg      3000 

Видовой блок Gbg клонируют и соединяют с двумя реакциями: G protein activation и G protein complex formation. Получить текущее положение клонированного блока, подключенного ко второй реакции.

Gbg = m1.Species(7);
r2 = m1.Reaction(2);
simbio.diagram.getBlock(Gbg,r2,'Position')
ans =

   393   307    30    15

Открепите клонированный блок и переместите его в другое положение.

simbio.diagram.setBlock(Gbg,r2,'Pin',false,'Position',[391 340 30 15])

Входные аргументы

свернуть все

Объект SimBiology, указанный как Compartment, Species, Reaction, Rule, или Parameter или в виде массива объектов.

Имя свойства блока, указанное как символьный вектор или строка. Можно указать только одно имя свойства.

Пример: 'FontName'

Типы данных: char | string

Имена свойств блока, заданные как символьный вектор, строка, строковый вектор или массив ячеек символьных векторов. Можно указать несколько имен свойств в качестве 1-by-N или N-by-1 массив имен ячеек.

Ниже приведены доступные свойства блока.

Имя свойстваОписание

Connections

Свойство «Только для чтения», содержащее список объектов, подключенных к входному блоку

Cloned

Флаг только для чтения, указывающий, существует ли для входного объекта несколько блоков. Клонировать можно только видовые блоки.

EdgeColor

Цвет кромки блока, заданный как одно из следующих значений:

  • Триплет RGB, например [1 1 0]

  • Символьный вектор или строка, представляющая имя цвета, например 'y' или 'yellow'

Для получения более подробной информации см. ColorSpec (Color Specification).

ExpressionLines

Флаг для отображения строк из блока выражения в другие компоненты модели, на которые ссылается выражение, указанный как 'show' или 'hide'. Это свойство можно задать для реакций или правил.

FaceColor

Цвет грани блока, указанный как одно из следующих значений:

  • Триплет RGB, например [1 1 0]

  • Символьный вектор или строка, представляющая имя цвета, например 'y' или 'yellow'

Для получения более подробной информации см. ColorSpec (Color Specification).

FontName

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

  • 'Arial'

  • 'Arial Black'

  • 'Arial Narrow'

  • 'Comic Sans MS'

  • 'Courier'

  • 'Courier New'

  • 'Georgia'

  • 'Helvetica'

  • 'Impact'

  • 'Times New Roman'

  • 'Trebuchet MS'

  • 'Verdana'

FontSize

Размер шрифта текста блока, заданный как положительный скаляр

FontWeight

Толщина шрифта текста блока, указанная как 'plain', 'bold', 'italic', или 'bold italic'

Object

Свойство только для чтения, которое перечисляет соответствующий объект SimBiology блока

Pin

Флаг, указывающий, можно ли переместить блок или нет. Задайте для свойства значение false , чтобы разрешить перемещение блока на схеме.

Position

Положение и размер блока, заданного как четырехэлементный вектор [x,y,width,height]. Положение верхнего левого угла диаграммы равно x = 0 и y = 0. SimBiology настраивает все положения блоков относительно этого угла. Позиции блоков можно настроить на отрицательные позиции.

Rotate

Поворот блока, заданный как скаляр от 0 до 360. Нельзя поворачивать блоки отсека.

Shape

Фигура блока, заданная как символьный вектор или строка. Допустимые параметры:

  • 'rounded rectangle'

  • 'rectangle'

  • 'oval'

  • 'triangle'

  • 'hexagon'

  • 'chevron'

  • 'parallellogram'

  • 'diamond'

Блоки отсека должны быть 'rounded rectangle' или 'rectangle'.

TextColor

Цвет текста блока, указанный как одно из следующих значений:

  • Триплет RGB, например [1 1 0]

  • Символьный вектор или строка, представляющая имя цвета, например 'y' или 'yellow'

Для получения более подробной информации см. ColorSpec (Color Specification).

TextLocation

Расположение текста блока относительно блока, указанное как одно из следующих: 'top', 'left', 'bottom', 'right', 'center', или 'none'

Visible

Флажок, указывающий, виден ли блок на схеме. Задайте для свойства значение false чтобы скрыть блок.

Пример: 'Position'

Типы данных: double | char | string | cell

Значения свойств, задаваемые как символьный вектор, строка, строковый вектор, числовой вектор, логический скаляр или массив ячеек.

Если propertyNames является массивом ячеек 1-by-N или N-by-1, propertyValues может быть массивом ячеек одинаковой длины, содержащим соответствующие значения для каждого свойства в propertyNames.

Если sObj является вектором и propertyNames содержит одно имя свойства и propertyValues содержит одно значение, функция обновляет указанное свойство всех объектов до указанного значения.

Если sObj является вектором, содержащим M объектов, и propertyNames является массивом ячеек 1-by-N или N-by-1, propertyValues может быть массивом ячеек M-by-N, чтобы каждый объект обновлялся различным набором значений для списка свойств в propertyNames.

Пример: [140 210 30 15]

Типы данных: double | logical | char | string | cell

Имена свойств и соответствующие значения, задаваемые как структура или массив структуры. Каждое имя поля соответствует имени свойства, а значение поля является значением свойства.

Если sObj является вектором и S является скалярной структурой, функция настраивает все объекты на одинаковые значения свойств.

Для каждого объекта можно указать другой набор значений свойств. Для этого укажите S в виде массива той же длины, что и sObj.

Типы данных: structure

Видовой объект, указанный как SimBiology Species объект. speciesObj должен быть скалярным.

Объект выражения, указанный как Reaction или Rule объект. Объектом правила может быть правило тарифа или правило повторного назначения. exprObj должен быть скаляром.

Выходные аргументы

свернуть все

Возможные значения свойств, возвращаемые в виде массива значений ячеек. CV является массивом пустых ячеек, если свойство не имеет конечного набора возможных значений.

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

Представлен в R2021a