Цель примера состоит в том, чтобы показать вам, как сделать следующее:
Используйте продукт MATLAB® Compiler SDK™, чтобы преобразовать функцию MATLAB (drawplot.m
) в метод класса Java® (plotter
) и перенести класс в пакет Java (plotdemo
).
Доступ к функции MATLAB в приложении Java (createplot.java
) путем инстанцирования класса plotter
и использования библиотеки классов MWArray
, чтобы обработать преобразование данных.
Для полной справочной информации об иерархии классов MWArray
смотрите пакет com.mathworks.toolbox.javabuilder
.
Создайте и запустите приложение createplot.java
.
Функция drawplot.m
отображает график входных параметров x
и y
.
Если вы уже не сделали так, скопируйте файлы для этого примера можно следующим образом:
Скопируйте следующую папку, которая поставляется с MATLAB к вашей папке работы:
matlabroot\toolbox\javabuilder\Examples\PlotExample
В подсказке команды MATLAB, cd
к новой подпапке PlotExample
в вашей папке работы.
Если вы уже не сделали так, установил переменные окружения, которые требуются на машине разработки. Смотрите Конфигурируют Вашу Среду Java.
Запишите функцию drawplot.m
, когда вы были бы любая функция MATLAB.
Следующий код задает функцию drawplot.m
:
function drawplot(x,y) plot(x,y);
Этот код уже находится в вашей папке работы в PlotExample\PlotDemoComp\drawplot.m
.
В то время как в MATLAB, дайте следующую команду, чтобы открыть приложение Library Compiler:
libraryCompiler
Вы создаете пакет Java при помощи приложения Library Compiler, чтобы создать класс Java, который переносит ваш код MATLAB. Для примера смотрите, Генерируют Пакет Java и Сборку приложение Java.
Используйте следующую информацию для своего проекта:
Название проекта | plotdemo |
ClassName | plotter |
Файл, чтобы скомпилировать | drawplot.m |
Запишите исходный код для приложения, это получает доступ к функции MATLAB.
Пример приложения для этого примера находится в
.matlabroot\toolbox\javabuilder\Examples\PlotExample\PlotDemoJavaApp\createplot.java
Программа изображает простую параболу в виде графика от уравнения y = x 2.
Распечатку программ показывают здесь.
Программа делает следующее:
Создает два массива двойных значений, использование MWNumericArray
, чтобы представлять данные должно было построить уравнение.
Инстанцирует класса plotter
как объекта thePlot
, как показано:
thePlot = new plotter();
Вызывает метод drawplot
, чтобы построить уравнение с помощью функции plot
MATLAB, как показано:
thePlot.drawplot(x,y);
Использует блок try-catch
, чтобы отловить и обработать любые исключения.
Скомпилируйте приложение createplot
с помощью javac
. При вводе этой команды гарантируйте, что нет никаких пробелов между путями в аргументе
. Например, не должно быть никакого пробела между matlabroot
javabuilder.jar;
и .\distrib\plotdemo.jar
в следующем примере. cd
к вашей папке работы. Гарантируйте, что createplot.java
находится в вашей папке работы
На Windows® выполните эту команду:
javac -classpath
.;matlabroot
\toolbox\javabuilder\jar\javabuilder.jar;
.\distrib\plotdemo.jar createplot.java
На UNIX® выполните эту команду:
javac -classpath .:matlabroot/toolbox/javabuilder/jar/javabuilder.jar: ./distrib/plotdemo.jar createplot.java
Запустите приложение.
Чтобы запустить файл createplot.class
, выполнить одно из следующих действий:
На Windows введите:
java -classpath .;matlabroot\toolbox\javabuilder\jar\javabuilder.jar; .\distrib\plotdemo.jar createplot
На UNIX введите:
java -classpath .:matlabroot/toolbox/javabuilder/jar/javabuilder.jar: ./distrib/plotdemo.jar createplot
Необходимо использовать ту же основную версию Java, который поставляется с MATLAB. Чтобы узнать, что запускает версия Java MATLAB, введите следующую команду MATLAB:
version -java
Если вы работаете на Mac 64-битная платформа, необходимо добавить флаг -d64
в команде Java. Смотрите Ограничения Цели MATLAB Compiler SDK Java для более определенной информации.
Программа createplot
должна отобразить вывод.