matlab.io.hdfeos.gd.defComp
パッケージ: matlab.io.hdfeos.gd
グリッド フィールド圧縮の設定
構文
defComp(gridID,compscheme,compparm)
説明
defComp(gridID,compscheme,compparm)
は、後続のフィールド定義に対して HDF フィールド圧縮を設定します。圧縮方式は 1 次元フィールドには適用されません。compscheme
は次の値のいずれかです。
'rle' | 連長圧縮 |
'skphuff' | スキッピング ハフマン |
'deflate' | Gzip deflate |
'none' | 圧縮なし |
圧縮方式が 'deflate'
の場合、compparm
は、deflate 圧縮レベル (0 ~ 9 の整数) です。その他の圧縮方式では、compparm
を省略することができます。
フィールドが圧縮を指定して定義される場合、gd.writeField
の 1 回の呼び出しで書き込まれなければなりません。それが不可能な場合は、タイル配置の使用を検討してください。
この関数は、HDF-EOS ライブラリ C API の関数 GDdefcomp
に相当します。
例
連長圧縮を使用して極心平射図法の Pressure
フィールドのあるグリッドを作成し、次に deflate 圧縮を指定して Opacity
フィールドを作成します。
import matlab.io.hdfeos.* gfid = gd.open('myfile.hdf','create'); gridID = gd.create(gfid,'PolarGrid',100,100,[],[]); projparm = zeros(1,13); projparm(6) = 90000000; gd.defProj(gridID,'ps',[],'WGS 84',projparm); dims = { 'XDim', 'YDim' }; gd.defComp(gridID,'rle'); gd.defField(gridID,'Pressure',dims,'float'); gd.defComp(gridID,'deflate',5); gd.defField(gridID,'Opacity',dims,'float'); gd.detach(gridID); gd.close(gfid);