Main Content

matlab.io.hdfeos.sw.defComp

パッケージ: matlab.io.hdfeos.sw

グリッド フィールド圧縮の設定

構文

defComp(swathID,compscheme,compparm)

説明

defComp(swathID,compscheme,compparm) は、後続の定義に対してフィールド圧縮を設定します。圧縮方式は 1 次元フィールドには適用されません。compscheme は次の値のいずれかにできます。

'rle'連長圧縮
'skphuff'スキッピング ハフマン
'deflate'GZIP 圧縮
'none'圧縮なし

圧縮方式が 'deflate' の場合、compparm 入力は、deflate 圧縮レベル (0 ~ 9 の整数) です。その他の圧縮方式では、compparm を省略することができます。

圧縮を指定して定義されたフィールドは、1 回での呼び出しで sw.writeField に書き込まれなければなりません。

この関数は、HDF-EOS ライブラリ C API の関数 SWdefcomp に相当します。

import matlab.io.hdfeos.*
swfid = sw.open('myfile.hdf','create');
swathID = sw.create(swfid,'MySwath');
sw.defDim(swathID,'Track',4000);
sw.defDim(swathID,'Xtrack',2000);
sw.defDim(swathID,'Bands',3);
sw.defComp(swathID,'rle');
dims = {'Xtrack','Track'};
sw.defDataField(swathID,'Pressure',dims,'float');
sw.defComp(swathID,'deflate',5);
sw.defDataField(swathID,'Opacity',dims,'float');
sw.defComp(swathID,'skphuff');
dims = {'Xtrack','Track','Bands'};
sw.defDataField(swathID,'Spectra',dims,'float');
sw.defComp(swathID,'none');
dims = {'Xtrack','Track'};
sw.defDataField(swathID,'Temperature',dims,'float');
sw.detach(swathID);
sw.close(swfid);