simbio.diagram.setBlock

Установите свойства блока схемы SimBiology

Описание

пример

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

Примечание

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

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

  2. Экспортируйте модель от приложения до рабочей области MATLAB® путем выбора Export> Export Model to MATLAB Workspace на вкладке Home приложения.

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

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');

Приложение открывает и показывает модель во вкладке Diagram.

На вкладке Home приложения выберите Export> Export Model to MATLAB Workspace.

В диалоговом окне SimBiology Model Export нажмите OK, чтобы экспортировать модель с именем переменной 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.

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');

Приложение открывает и показывает модель во вкладке Diagram.

На вкладке Home приложения выберите Export> Export Model to MATLAB Workspace.

В диалоговом окне SimBiology Model Export нажмите OK, чтобы экспортировать модель с именем переменной 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 в виде a Compartment, Species, Reaction, Rule, или Parameter объект, или как массив объектов.

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

Пример: 'FontName'

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

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

Доступные свойства блока следуют.

PropertyName Описание

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'центр , или 'none'

Visible

Отметьте, чтобы указать, отображается ли блок в схеме. Установите свойство на false скрыть блок.

Пример: 'Position'

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

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

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

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

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

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

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

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

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

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

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

Объект Species в виде SimBiology Species объект. speciesObj должен быть скаляр.

Объект Expression в виде a Reaction или Rule объект. Объект правила может быть правилом скорости или повторенным правилом присвоения. exprObj должен быть скаляр.

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

свернуть все

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

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

Введенный в R2021a