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 см. в разделе «Правила преобразования данных между Java и MATLAB Compiler SDK™ типами данных».

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

Правила преобразования применяются не только при вызове собственных методов, но и при вызове конструкторов и заводских методов, принадлежащих 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.