Main Content

matlab.io.hdfeos.gd.setTileComp

名前空間: matlab.io.hdfeos.gd

埋め込み値のあるフィールドに対するタイル配置と圧縮の設定

構文

setTileComp(gridID,fieldname,tilesize,compCode,compParm)

説明

setTileComp(gridID,fieldname,tilesize,compCode,compParm) は、埋め込み値をもっていたフィールドに、タイル配置と圧縮を設定します。この関数は、gd.defFieldgd.setFillValue の後に適用しなければなりません。compCode の引数は、以下の値のいずれかになります。

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

compParm は、圧縮方式が 'deflate' である場合に指定され、この値は 0 から 9 の整数でなければなりません。

この関数は HDF-EOS ライブラリ C API の関数 GDsettilecomp に相当しますが、MATLAB® は FORTRAN スタイルの並べ替えを使用するので、tilesize パラメーターは、C ライブラリ API とは逆の順序になります。

タイル配置が 2 行 2 列、埋め込み値が -999、圧縮方式が deflate の温度フィールドを定義します。

import matlab.io.hdfeos.*
gfid = gd.open('myfile.hdf','create');
upleft = [210584.50041 3322395.95445];
lowright = [813931.10959 2214162.53278];
gridID = gd.create(gfid,'UTMGrid',120,200,upleft,lowright);
spherecode = 0; zonecode = 40;
projparm = zeros(1,13);
gd.defProj(gridID,'utm',zonecode,spherecode,projparm);
gd.defDim(gridID,'Time',10);
gd.defField(gridID,'Pollution',{'XDim','YDim','Time'},'float');
gd.setFillValue(gridID,'Pollution',single(7));
gd.setTileComp(gridID,'Pollution',[40 20 1],'deflate',5);
gd.detach(gridID);
gd.close(gfid);