matlab.io.hdfeos.sw.defComp
包: matlab.io.hdfeos.sw
设置网格区域压缩
语法
defComp(swathID,compscheme,compparm)
说明
defComp(swathID,compscheme,compparm)
设置后续定义的字段压缩。压缩方案不适用于一维字段。compscheme
可以为以下值之一:
'rle' | 行程长度编码 |
'skphuff' | 跳过 Huffman |
'deflate' | GZIP 压缩 |
'none' | 无压缩 |
当压缩方案为 'deflate'
时,compparm
输入为 deflate 压缩级别,它是一个介于 0 和 9 之间的整数。对于其他压缩方案,可以忽略 compparm
。
对于定义了压缩的字段,写入时必须单独调用 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);