Цель этих примеров состоит в том, чтобы выделить основные шаги, необходимые для интеграции MATLAB® функция.
The drawgraph функция отображает график параметров входа x и y. Цель примера - показать, как:
Используйте продукт MATLAB Compiler SDK™ для преобразования функции MATLAB (drawgraph) к методу класса .NET (Plotter) и перенести класс в сборку .NET (PlotComp).
Доступ к компоненту в приложении C # (PlotApp.cs) путем создания экземпляров Plotter Класс и использование MWArray библиотека классов для обработки преобразования данных.
Примечание
Для получения информации об этих классах преобразования данных смотрите MATLAB MWArray Class Ссылка, доступный в папка, где matlabroot\ help\dotnetbuilder\MWArrayAPImatlabroot представляет вашу папку установки MATLAB
Создайте и запустите PlotCSApp приложение, с использованием Visual Studio® Среда разработки .NET.
Если вы еще не сделали этого, скопируйте файлы для этого примера следующим образом:
Скопируйте следующую папку, которая поставляется с продуктом MATLAB, в вашу рабочую папку:
matlabroot\toolbox\dotnetbuilder\Examples\VSVersion\NET\PlotExample
В командной строке MATLAB смените папку на новую PlotExample\PlotComp подпапка в рабочей папке.
Напишите drawgraph функция, как и любая функция MATLAB.
Этот код уже находится в вашей рабочей папке в PlotExample\PlotComp\drawgraph.m.
Из галереи Apps MATLAB откройте приложение Library Compiler.
Создайте .NET компонент. Для получения дополнительной информации см. инструкции в разделе «Создание сборки .NET и создание приложения .NET». Используйте следующую информацию:
| Имя проекта | PlotComp |
| Имя класса | Plotter |
| Файл для компиляции | drawgraph.m |
Запись исходного кода для приложения C #, которое обращается к компоненту.
Пример применения для этого примера приведен в .matlabroot\ toolbox\dotnetbuilder\Примеры\VS Version\ PlotExample
\ PlotCSApp\PlotApp.cs
Список программ показан здесь.
Программа делает следующее:
Создает два массива двойных значений
Создает Plotter объект.
Вызывает drawgraph метод для построения графика уравнения с помощью MATLAB plot функция.
Использует MWNumericArray для представления данных, необходимых drawgraph метод для построения графика уравнения.
Использует try-catch блок для поимки и обработки любых исключений.
Оператор
Plotter plotter= new Plotter();
создает образец Plotter класс и оператор
plotter.drawgraph((MWNumericArray)plotValues);
явное отображение собственного plotValues на MWNumericArray и затем вызывает метод drawgraph.
Создайте PlotCSApp приложение с использованием Visual Studio .NET.
The PlotCSApp папка содержит файл проекта Visual Studio .NET для этого примера. Откройте проект в Visual Studio .NET двойным кликом мыши PlotCSApp.csproj в Windows® Исследователь. Вы также можете открыть его с рабочего стола, щелкнув правой кнопкой мыши PlotCSApp.csproj > Open Outside MATLAB.
Добавьте ссылку на MWArray компонент, который matlabroot\ toolbox\dotnetbuilder\bin\ architecture\framework_version\mwarray.dll.
Добавьте или, при необходимости, исправьте местоположение ссылки на PlotComp компонент, созданный на предыдущем шаге. (Компонент, PlotComp.dll, находится в \PlotExample\PlotComp\x86\V2.0\Debug\distrib подпапка рабочей области.)
Создайте и запустите приложение в Visual Studio .NET.
Цель
The makephone функция принимает массив структур как вход, изменяет его и поставляет измененный массив как выход.
Примечание
Для получения информации об этих классах преобразования данных смотрите MATLAB MWArray Class Ссылка, доступный в папка, где matlabroot\ help\dotnetbuilder\MWArrayAPImatlabroot представляет вашу папку установки MATLAB
Если вы еще не сделали этого, скопируйте файлы для этого примера следующим образом:
Скопируйте следующую папку, которая поставляется с MATLAB, в вашу рабочую папку:
matlabroot\toolbox\dotnetbuilder\Examples\VSVersion\NET\PhoneBookExample
В командной строке MATLAB, cd на новый PhoneBookExample подпапка в рабочей папке.
Напишите 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.
Из галереи Apps MATLAB откройте приложение Library Compiler.
Создайте .NET компонент. Для получения дополнительной информации см. инструкции в разделе «Создание сборки .NET и создание приложения .NET». Используйте следующую информацию:
| Имя проекта | PhoneBookComp |
| Имя класса | PhoneBook |
| Файл для компиляции | makephone |
Запись исходного кода для приложения, которое обращается к компоненту.
Пример применения для этого примера приведен в .matlabroot\ toolbox\dotnetbuilder\Примеры\VS Version\ NET\
PhoneBookExample\PhoneBookCSApp\PhoneBookApp.cs
Программа задает массив структур, содержащий имена и телефонные номера, изменяет его с помощью функции MATLAB и отображает полученный массив структур.
Список программ показан здесь.
Программа делает следующее:
Создает массив структур, используя MWStructArray для представления примерных данных телефонной книги.
Создание экземпляров Phonebook класс как thePhonebook объект, как показано:
thePhonebook = new phonebook();
Вызывает makephone метод создания измененной копии структуры путем добавления дополнительного поля, как показано:
result = thePhonebook.makephone(1, friends);
Создайте PhoneBookCSApp приложение с использованием Visual Studio .NET.
The PhoneBookCSApp папка содержит файл проекта Visual Studio .NET для этого примера. Откройте проект в Visual Studio .NET двойным кликом мыши PhoneBookCSApp.csproj в проводнике Windows. Вы также можете открыть его с рабочего стола, щелкнув правой кнопкой мыши PhoneBookCSApp.csproj > Open Outside MATLAB.
Добавьте ссылку на MWArray компонент, который matlabroot\ toolbox\dotnetbuilder\bin\ architecture\framework_version
\mwarray.dll.
При необходимости добавьте (или исправьте местоположение) ссылку на PhoneBookComp компонент, созданный на предыдущем шаге. (Компонент, PhoneBookComp.dll, находится в \PhoneBookExample\PhoneBookComp\x86\V2.0\Debug\distrib подпапка рабочей области.)
Создайте и запустите приложение в Visual Studio .NET.
The 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