simbio.diagram.setLine

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

Описание

пример

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

Примечание

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

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

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

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

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

пример

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

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

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

пример

simbio.diagram.setLine(sObj) отображает имена и возможные значения конфигурируемых свойств линии, соединенной с объектом SimBiology sObj. Этот синтаксис требует, чтобы к sObj была подключена только одна линия. Если существует несколько линий, связанных с sObj, задайте линию путем предоставления двух объектов в качестве входов, которые соединяются линией. Функции возвращают пустой массив ячеек, когда свойство не имеет конечного набора возможных значений. sObj должно быть скалярным.

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

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

пример

simbio.diagram.setLine(obj1,obj2,___) устанавливает свойства линии, соединяющей объекты SimBiology obj1 и obj2 использование любого из предыдущих входных параметров. obj1 и obj2 должно быть скалярным.

simbio.diagram.setLine(obj1,obj2) отображает конфигурируемые свойства линии, соединяющей объекты SimBiology obj1 и obj2. obj1 и obj2 должно быть скалярным.

Примеры

свернуть все

Вы можете программно настроить внешний вид линий, соединенных с блоками в схеме.

Откройте 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);
sv = simbio.diagram.getLine(x)
sv = 

  struct with fields:

          Color: [66 66 66]
    Connections: [1×2 SimBiology.ModelComponent]
          Width: 1

Измените цвет линии на красный и увеличьте ширину линии.

simbio.diagram.setLine(x,'Color','red','Width',2)

Можно также запросить свойства линии, которая соединяет два объекта. Для примера получите значения свойств линии, которая соединяет виды y1 и Reaction1.

y1 = m1.Species(2);
r1 = m1.Reactions(1);
simbio.diagram.getLine(y1,r1)
ans = 

  struct with fields:

          Color: [66 66 66]
    Connections: [1×2 SimBiology.ModelComponent]
          Width: 1

Измените цвет линии на новое значение RGB и увеличьте ширину линии.

simbio.diagram.setLine(y1,r1,'Color',[0.6 0.2 0.6],'Width',3)

Входные параметры

свернуть все

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

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

Пример: 'Color'

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

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

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

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

Color

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

  • Триплет RGB, такой как [1 1 0]

  • Вектор символов или строка, представляющая название цвета, например 'y' или 'yellow'

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

Connections

Свойство только для чтения, в котором перечислены объекты, соединенные линией

Width

Ширина линии, заданная как положительная скалярная величина

Пример: 'Width'

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

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

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

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

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

Пример: 'green'

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

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

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

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

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

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

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

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

свернуть все

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

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

Введенный в R2021a