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
визуально идентифицировать целевой объект в документе требований.
RMI использует программное обеспечение, которое включает специальное управление Microsoft® ActiveX®, чтобы включить навигацию к объектам Simulink из документов Excel® и Microsoft Word. Можно использовать это то же управление в любом другом приложении, которое поддерживает ActiveX в рамках его документов.
Управление выведено из кнопки и имеет значок Simulink. Существует два свойства экземпляра, которые задают, как управление работает. tooltipstring
свойство отображено в подсказке управления. MLEvalCmd
свойство является вектором символов, который вы передаете программному обеспечению MATLAB для оценки, когда вы кликаете по управлению.
Когда вы создаете интерфейс к внешнему инструменту, можно автоматизировать процедуру для установления ссылок. Таким образом, вы не должны вручную обновлять поля диалогового окна. Этот тип автоматизации происходит как часть основанного на выборе соединения для определенных встроенных типов, таких как документы Excel и Microsoft Word.
Автоматизировать процедуру для установления ссылок:
Выберите объект Simulink или Stateflow и элемент во внешнем документе.
Вызовите действие создания ссылки или в меню Simulink или в команде или подобном механизме во внешнем приложении.
Идентифицируйте документ и текущий элемент с помощью поддержки сценариев внешнего инструмента. Передайте эту информацию программному обеспечению MATLAB. Создайте ссылку требования на выбранный объект с помощью API RMI можно следующим образом:
Создайте пустую структуру ссылки с помощью следующей команды:
rmi('createempty')
Заполните поля структуры ссылки на основе целевого местоположения в документе требований.
Присоедините ссылку на объект с помощью следующей команды:
rmi('cat')
Определите команду навигации MATLAB, которую необходимо встроить во внешний инструмент, с помощью navCmd
метод:
[ navCmd, objPath ] = rmi('navCmd',obj)
Создайте элемент навигации во внешнем документе с помощью поддержки сценариев внешнего инструмента. Установите команду навигации 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