Цель этих примеров состоит в том, чтобы выделить основные шаги, необходимые для интеграции 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