Перейдите к объектам Simulink из внешних документов

RMI включает несколько функций, которые упрощают интерфейсы навигации создания во внешних документах. Внешнее приложение, которое отображает ваш документ, должно поддержать прикладной программный интерфейс (API) для связи с MATLAB.

Обеспечьте идентификаторы уникального объекта

Каждый раз, когда вы создаете ссылку требования для Simulink® или объекта Stateflow®, RMI использует глобально уникальный идентификатор для того объекта. Этот идентификатор идентифицировал объект. Идентификатор не изменяется, если вы переименовываете или перемещаете объект, или добавляете или удаляете ссылки требования. RMI использует уникальный идентификатор только, чтобы разрешить объект в модели.

Используйте функцию rmiobjnavigate

Функция rmiobjnavigate идентифицирует объект Simulink или Stateflow, подсвечивает, что объект, и выявляет окно редактора экрана. Когда вы перейдете к модели Simulink из внешнего приложения, вызовите эту функцию.

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

Определите команду навигации

Чтобы создать ссылку требования для объекта Simulink или Stateflow, в посдказке MATLAB, используют следующую команду, чтобы найти команду навигации, где obj является указателем или исключительно разрешенным именем для объекта:

[ navCmd, objPath ] = rmi('navCmd', obj);

Возвращаемые значения метода navCmd:

  • navCmd — Вектор символов, который перешел к объекту, когда оценено программным обеспечением MATLAB.

  • objPath — Вектор символов, который идентифицирует объект модели.

Отправьте navCmd в программное обеспечение MATLAB для оценки при навигации от внешнего приложения до объекта obj в модели Simulink. Используйте objPath, чтобы визуально идентифицировать целевой объект в документе требований.

Используйте управление навигацией ActiveX

RMI использует программное обеспечение, которое включает специальное управление Microsoft® ActiveX®, чтобы включить навигацию к объектам Simulink из документов Excel® и Microsoft Word. Можно использовать это то же управление в любом другом приложении, которое поддерживает ActiveX в рамках его документов.

Управление выведено от кнопки и имеет значок Simulink. Существует два свойства экземпляра, которые задают, как управление работает. Свойство tooltipstring отображено в подсказке управления. Свойство MLEvalCmd является вектором символов, который вы передаете программному обеспечению MATLAB для оценки, когда вы кликаете по управлению.

Типичная кодовая последовательность для установления средств управления навигацией

Когда вы создаете интерфейс к внешнему инструменту, можно автоматизировать процедуру для установления ссылок. Таким образом, вы не должны вручную обновлять поля диалогового окна. Этот тип автоматизации происходит как часть основанного на выборе соединения для определенных встроенных типов, таких как документы Excel и Microsoft Word.

Автоматизировать процедуру для установления ссылок:

  1. Выберите объект Simulink или Stateflow и элемент во внешнем документе.

  2. Вызовите действие создания ссылки или из меню Simulink или из команды или подобного механизма во внешнем приложении.

  3. Идентифицируйте документ и текущий элемент с помощью поддержки сценариев внешнего инструмента. Передайте эту информацию программному обеспечению MATLAB. Создайте ссылку требования на выбранный объект с помощью API RMI можно следующим образом:

    1. Создайте пустую структуру ссылки с помощью следующей команды:

      rmi('createempty')
    2. Заполните поля структуры ссылки на основе целевого местоположения в документе требований.

    3. Присоедините ссылку на объект с помощью следующей команды:

      rmi('cat')
  4. Определите команду навигации MATLAB, которую необходимо встроить во внешний инструмент, с помощью метода navCmd:

    [ navCmd, objPath ] = rmi('navCmd',obj)

  5. Создайте элемент навигации во внешнем документе с помощью поддержки сценариев внешнего инструмента. Установите команду навигации MATLAB в свойстве.

    При использовании объектов навигации ActiveX, обеспеченных внешним инструментом, набор свойство MLEvalCmd к navCmd и набору свойство tooltipstring к objPath.

Вы задаете реализацию кода MATLAB этой процедуры как функция SelectionLinkFcn в файле определения типа ссылки. Следующие файлы в matlabroot, \toolbox\shared\reqmgt\+linktypes содержит примеры того, как реализовать эту функциональность:

linktype_rmi_doors.m
linktype_rmi_excel.m
linktype_rmi_html.m
linktype_rmi_text.m