exponenta event banner

systemcomposer.view. Представление

Класс, представляющий представление архитектуры

    Описание

    Используйте View класс для управления представлениями архитектуры для модели System Composer™.

    Создание

    Создание вида.

    objView = createView(objModel)

    createView метод является конструктором для systemcomposer.view.View класс.

    Свойства

    развернуть все

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

    Пример: 'NewView'

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

    Корневая группа элементов, определяющая представление, указанная как systemcomposer.view.ElementGroup объект.

    Архитектурная модель, к которой принадлежит вид, заданная как systemcomposer.arch.Model объект.

    Универсальный уникальный идентификатор представления, заданный как символьный вектор.

    Пример: '91d5de2c-b14c-4c76-a5d6-5dd0037c52df'

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

    Запрос выбора, связанный с представлением, указанный как systemcomposer.query.Constraint объект.

    Критерий группирования, указанный в форме как строковый массив свойств '<profile>.<stereotype>.<property>'.

    Пример: {"AutoProfile.MechanicalComponent.mass","AutoProfile.MechanicalComponent.cost"}

    Цвет архитектуры вида, определяемый как символьный вектор. Цвет может быть именем 'blue', 'black', или 'green' или значение RGB, закодированное в шестнадцатеричной строке '#FF00FF' или '#DDDDDD'. Недопустимый цвет приводит к ошибке.

    Пример: color = get(objViewArchitecture,'Color')

    Описание архитектуры представления, указанное как символьный вектор.

    Пример: description = get(objView,'Description')

    Пример: set(objView,'Description',description)

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

    Включать ли ссылочные модели, указанные как логические со значениями 1 (true) или 0 (false).

    Пример: included = get(objView,'IncludeReferenceModels')

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

    Функции объекта

    modifyQueryИзменение структуры представления запросов и групп свойств
    runQueryПовторное выполнение запроса представления архитектуры для модели
    removeQueryУдалить запрос представления архитектуры
    destroyУдалить элемент модели

    Примеры

    свернуть все

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

    1. Импортируйте пакет с запросами.

    import systemcomposer.query.*;

    2. Откройте файл проекта Simulink ® для системы бесключевого ввода.

    scKeylessEntrySystem

    3. Загрузите пример модели в системный Composer™.

    zcModel = systemcomposer.loadModel('KeylessEntryArchitecture');

    Пример 1: Просмотр состояния компонентов оборудования

    Создайте отфильтрованное представление, которое выбирает все компоненты оборудования в модели архитектуры и группирует их с помощью ReviewStatus собственность.

    1. Создайте запрос для выбора всех компонентов оборудования.

    hwCompQuery = HasStereotype(IsStereotypeDerivedFrom('AutoProfile.HardwareComponent'))
    hwCompQuery = 
      HasStereotype with properties:
    
        AllowedParentConstraints: {1x3 cell}
                   SubConstraint: [1x1 systemcomposer.query.IsStereotypeDerivedFrom]
                  SkipValidation: 0
    
    

    2. Используйте запрос для создания представления.

    zcModel.createView('Hardware Component Review Status',...
     'Select',hwCompQuery,... % Query to use for the selection
     'GroupBy',{'AutoProfile.BaseComponent.ReviewStatus'},... % Stereotype property to qualify by
     'IncludeReferenceModels',true,... % Include components in referenced models
     'Color','purple');

    3. Откройте галерею видов архитектуры.

    zcModel.openViews

    Пример 2: Ракурс поставщика системы локатора FOB

    В этом примере показано, как создать ракурс произвольной формы, который вручную извлекает компоненты из системы локатора FOB, а затем группирует их с использованием существующих и новых компонентов ракурса для поставщиков. В этом примере группы элементов, группы компонентов в представлении используются для программного заполнения представления.

    1. Создайте архитектуру представления.

    fobSupplierView = zcModel.createView('FOB Locator System Supplier Breakdown',...
        'Color','lightblue');

    2. Добавление подгруппы с именем 'Supplier D'. Добавить FOB Locator Module в подгруппу элементов вида.

    supplierD = fobSupplierView.Root.createSubGroup('Supplier D');
    supplierD.addElement('KeylessEntryArchitecture/FOB Locator System/FOB Locator Module');

    3. Создание новой подгруппы для 'Supplier A'.

    supplierA = fobSupplierView.Root.createSubGroup('Supplier A');

    4. Добавьте все приемники FOB для просмотра подгруппы элементов.

    FOBLocatorSystem = zcModel.lookup('Path','KeylessEntryArchitecture/FOB Locator System');
    
    % Find all the components which contain the name "Receiver"
    receiverCompPaths = zcModel.find(...
        contains(systemcomposer.query.Property('Name'),'Receiver'),...
        FOBLocatorSystem.Architecture);
    
    supplierA.addElement(receiverCompPaths)

    Подробнее

    развернуть все

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