exponenta event banner

matlab.io.hdfeos.sw.defDataField

Пакет: matlab.io.hdfeos.sw

Определение нового поля данных в пределах свата

Синтаксис

defDataField(swathID,fieldname,dimlist,dtype)
defDataField(swathID,fieldname,dimlist,dtype,mergeCode)

Описание

defDataField(swathID,fieldname,dimlist,dtype) определяет поле данных, которое должно храниться в образце, идентифицированном swathID.

dimlist входные данные могут представлять собой векторы символов массива ячеек или строковый массив, содержащий имена измерений, или одиночный вектор символов или строковый скаляр, если существует только одно измерение. dimlist должен быть упорядочен таким образом, чтобы первым был указан самый быстрый изменяющийся размер. Это противоположно порядку, в котором размеры перечислены в C API.

dtype является типом данных поля и может быть одним из следующих значений.

  • 'double'

  • 'single'

  • 'int32'

  • 'uint32'

  • 'int16'

  • 'uint16'

  • 'int8'

  • 'uint8'

  • 'char'

defDataField(swathID,fieldname,dimlist,dtype,mergeCode) определяет поле данных, которое может быть объединено с другими полями данных в соответствии со значением mergeCode. mergeCode вход может быть 'automerge' или 'nomerge'. Если mergeCode является 'automerge'затем библиотека HDF-EOS попытается объединить поля света в один объект. Это не следует делать, если требуется получить доступ к полям захвата по отдельности с помощью другого интерфейса. По умолчанию mergeCode является 'nomerge'.

Примечание

Чтобы гарантировать, что поля, определенные sw.defDataField правильно установлены в файле, образец должен быть отсоединен, а затем повторно присоединен перед записью в какие-либо поля.

Эта функция соответствует SWdefdatafield в API библиотеки HDF-EOS, но поскольку MATLAB ® использует упорядочение в стиле FORTRAN, dimlist реверсирован по отношению к API библиотеки C.

Примеры

import matlab.io.hdfeos.*
swfid = sw.open('myfile.hdf','create');
swathID = sw.create(swfid,'MySwath');
sw.defDim(swathID,'GeoTrack',2000);
sw.defDim(swathID,'GeoXtrack',1000);
sw.defDim(swathID,'DataTrack',4000);
sw.defDim(swathID,'DataXtrack',2000);
sw.defDim(swathID,'Bands',3);
sw.defDimMap(swathID,'GeoTrack','DataTrack',0,2);
sw.defDimMap(swathID,'GeoXtrack','DataXtrack',1,2);
dims = {'GeoXtrack','GeoTrack'};
sw.defGeoField(swathID,'Longitude',dims,'float');
sw.defGeoField(swathID,'Latitude',dims,'float');
dims = {'DataXtrack','DataTrack','Bands'};
sw.defDataField(swathID,'Spectra',dims,'float');
sw.detach(swathID);
sw.close(swfid);