exponenta event banner

Преобразование данных между Java и MATLAB

Обзор

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

Например, рассмотрим следующую инструкцию Java ®:

result = theFourier.plotfft(3, data, new Double(interval));

Третий аргумент имеет тип java.lang.Double, который преобразуется в MATLAB 1 на 1 double массив.

Полный список правил для преобразования между типами данных компилятора Java и MATLAB SDK™ см. в разделе Правила преобразования данных между Java и MATLAB.

Вызов методов MWAray

Правила преобразования применяются не только при вызове собственных методов, но и при вызове конструкторов и заводских методов, принадлежащих MWArray классы. Например, следующий код вызывает конструктор для MWNumericArray класс с Java double вход. Продукт MATLAB Compiler SDK преобразует Java double ввод в экземпляр MWNumericArray наличие ClassID имущество MWClassID.DOUBLE. Это эквивалент MATLAB 1-на-1 double массив.

double Adata = 24;
MWNumericArray A = new MWNumericArray(Adata);
System.out.println("Array A is of type " + A.classID());

При выполнении этого примера результаты будут следующими:

Array A is of type double

Указание типа

Для определения преобразования типа MATLAB в тип Java необходимо указать определенный тип данных в конструкторе. Продукт MATLAB Compiler SDK преобразуется в указанный тип вместо того, чтобы следовать правилам преобразования по умолчанию.

Следующий код указывает, что A должен быть построен как 16-битный целочисленный массив MATLAB 1 на 1:

double Adata = 24;
MWNumericArray A = new MWNumericArray(Adata, MWClassID.INT16);

Создание буферизованных изображений из массива MATLAB

Используйте renderArrayData метод для:

  • Создание буферизованного изображения из данных в данном массиве MATLAB.

  • Убедитесь, что массив имеет три размера (высоту, ширину и цветовой компонент).

  • Убедитесь, что цветовой компонент имеет красный, зеленый и синий порядок.

    Поиск по renderArrayData в Javadoc для получения информации о входных параметрах, возвращаемых значениях, выданных исключениях и примерах. Javadoc расположен в matlabroot/help/javabuilder/MWArrayAPI.