Интеграция простой функции MATLAB

Цель этих примеров состоит в том, чтобы подсветить основные шаги, требуемые для интеграции функции MATLAB®.

Простой график

Цель

drawgraph функционируйте отображает график входных параметров x и y. Цель примера состоит в том, чтобы показать вам как:

  • Используйте продукт MATLAB Compiler SDK™, чтобы преобразовать функцию MATLAB (drawgraph) к методу класса.NET (Plotter) и перенесите класс в блок.NET (PlotComp).

  • Доступ к компоненту в приложении C# (PlotApp.cs) путем инстанцирования Plotter класс и использование MWArray библиотека классов, чтобы обработать преобразование данных.

    Примечание

    Для получения информации об этих классах преобразования данных см. Справочник по библиотеке классов MWArray MATLAB, доступный в matlabroot\help\dotnetbuilder\MWArrayAPI папка, где matlabroot представляет вашу папку установки MATLAB

  • Создайте и запустите PlotCSApp приложение, с помощью Визуальной среды разработки Studio®.NET.

Процедура

  1. Если вы уже не сделали так, скопируйте файлы для этого примера можно следующим образом:

    1. Скопируйте следующую папку, которая поставляется с продуктом MATLAB к вашей папке работы:

      matlabroot\toolbox\dotnetbuilder\Examples\VSVersion\NET\PlotExample
    2. В командной строке MATLAB измените папку в новый PlotExample\PlotComp подпапка в вашей папке работы.

  2. Запишите drawgraph функционируйте, когда вы были бы любая функция MATLAB.

    Этот код уже находится в вашей папке работы в PlotExample\PlotComp\drawgraph.m.

  3. Из галереи Apps MATLAB откройте приложение Library Compiler.

  4. Создайте компонент.NET. Смотрите, что инструкции в Генерируют блок.NET и Создают Приложение.NET для получения дополнительной информации. Используйте следующую информацию:

    Название проектаPlotComp
    ClassName Plotter
    Файл, чтобы скомпилироватьdrawgraph.m

  5. Запишите исходный код для приложения C#, это получает доступ к компоненту.

    Пример приложения для этого примера находится в matlabroot\toolbox\dotnetbuilder\Examples\VSVersion\PlotExample
    \PlotCSApp\PlotApp.cs
    .

    Распечатку программ показывают здесь.

     PlotApp.cs

    Программа делает следующее:

    • Создает два массива двойных значений

    • Создает Plotter объект.

    • Вызывает drawgraph метод, чтобы построить уравнение с помощью plot MATLAB функция.

    • Использование MWNumericArray представлять данные, необходимые drawgraph метод, чтобы построить уравнение.

    • Использует try-catch блокируйтесь, чтобы отловить и обработать любые исключения.

    Оператор

     Plotter plotter= new Plotter(); 

    создает экземпляр Plotter класс и оператор

    plotter.drawgraph((MWNumericArray)plotValues);
    

    явным образом бросает нативный plotValues к MWNumericArray и затем вызывает метод drawgraph.

  6. Создайте PlotCSApp приложение с помощью Visual Studio.NET.

    1. PlotCSApp папка содержит файл проекта Visual Studio.NET для этого примера. Откройте проект в Visual Studio.NET путем двойного клика по PlotCSApp.csproj в Проводнике Windows®. Можно также открыть его с рабочего стола путем щелчка правой кнопкой по PlotCSApp.csproj> Open Outside MATLAB.

    2. Добавьте ссылку на MWArray компонент, который является matlabroot\toolbox\dotnetbuilder\bin\architecture\framework_version\mwarray.dll.

    3. Добавьте или, при необходимости, зафиксируйте местоположение ссылки на PlotComp компонент, который вы создали на предыдущем шаге. (Компонент, PlotComp.dll, находится в \PlotExample\PlotComp\x86\V2.0\Debug\distrib подпапка вашей рабочей области.)

  7. Создайте и запустите приложение в Visual Studio.NET.

Телефонная книга

Цель

Цель

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

Примечание

Для получения информации об этих классах преобразования данных см. Справочник по библиотеке классов MWArray MATLAB, доступный в matlabroot\help\dotnetbuilder\MWArrayAPI папка, где matlabroot представляет вашу папку установки MATLAB

Процедура

  1. Если вы уже не сделали так, скопируйте файлы для этого примера можно следующим образом:

    1. Скопируйте следующую папку, которая поставляется с MATLAB к вашей папке работы:

      matlabroot\toolbox\dotnetbuilder\Examples\VSVersion\NET\PhoneBookExample
    2. В командной строке MATLAB, cd к новому PhoneBookExample подпапка в вашей папке работы.

  2. Запишите makephone функционируйте, когда вы были бы любая функция MATLAB.

    Следующий код задает makephone функция:

    function book = makephone(friends)
    %MAKEPHONE Add a structure to a phonebook structure
    %   BOOK = MAKEPHONE(FRIENDS) adds a field to its input structure.
    %   The new field EXTERNAL is based on the PHONE field of the original.
    %   Copyright 2006-2012 The MathWorks, Inc.
    
    book = friends;
    for i = 1:numel(friends)
        numberStr = num2str(book(i).phone);
        book(i).external = ['(508) 555-' numberStr];
    end

    Этот код уже находится в вашей папке работы в PhoneBookExample\PhoneBookComp\makephone.m.

  3. Из галереи Apps MATLAB откройте приложение Library Compiler.

  4. Создайте компонент.NET. Смотрите, что инструкции в Генерируют блок.NET и Создают Приложение.NET для получения дополнительной информации. Используйте следующую информацию:

    Название проектаPhoneBookComp
    ClassName PhoneBook
    Файл, чтобы скомпилироватьmakephone

  5. Запишите исходный код для приложения, это получает доступ к компоненту.

    Пример приложения для этого примера находится в matlabroot\toolbox\dotnetbuilder\Examples\VSVersion.NET
    PhoneBookExample\PhoneBookCSApp\PhoneBookApp.cs
    .

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

    Распечатку программ показывают здесь.

     PhoneBookApp.cs

    Программа делает следующее:

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

    • Инстанцирует Phonebook класс как thePhonebook объект, как показано:
      thePhonebook = new phonebook();

    • Вызывает makephone метод, чтобы создать модифицированную копию структуры путем добавления дополнительного поля, как показано:
      result = thePhonebook.makephone(1, friends);

  6. Создайте thePhoneBookCSApp приложение с помощью Visual Studio.NET.

    1. PhoneBookCSApp папка содержит файл проекта Visual Studio.NET для этого примера. Откройте проект в Visual Studio.NET путем двойного клика по PhoneBookCSApp.csproj в Windows Explorer. Можно также открыть его с рабочего стола путем щелчка правой кнопкой по PhoneBookCSApp.csproj> Open Outside MATLAB.

    2. Добавьте ссылку на MWArray компонент, который является matlabroot\toolbox\dotnetbuilder\bin\architecture\framework_version
      \mwarray.dll.

    3. При необходимости добавьте (или зафиксируйте местоположение), ссылка на PhoneBookComp компонент, который вы создали на предыдущем шаге. (Компонент, PhoneBookComp.dll, находится в \PhoneBookExample\PhoneBookComp\x86\V2.0\Debug\distrib подпапка вашей рабочей области.)

  7. Создайте и запустите приложение в Visual Studio.NET.

    PhoneBookApp программа должна отобразить вывод:

    Friends: 
    2x2 struct array with fields:
        name
        phone
    Result: 
    2x2 struct array with fields:
        name
        phone
        external
    Result record 2:
    Mary Smith
    3912
    (508) 555-3912
    
    Entire structure:
    Number of Elements: 4
    Dimensions: 2-by-2
    Number of Fields: 3
    Standard MATLAB view:
    2x2 struct array with fields:
        name
        phone
        external
    Walking structure:
    Element 1
       name: Jordan Robert
       phone: 3386
       external: (508) 555-3386
    Element 2
       name: Mary Smith
       phone: 3912
       external: (508) 555-3912
    Element 3
       name: Stacy Flora
       phone: 3238
       external: (508) 555-3238
    Element 4
       name: Harry Alpert
       phone: 3077
       external: (508) 555-3077

Для просмотра документации необходимо авторизоваться на сайте