matlab.io.fits.insertBTbl
在当前 HDU 后面插入二进制表
语法
insertBTbl(fptr,nrows,ttype,tform,tunit,extname,pcount)
说明
insertBTbl(fptr,nrows,ttype,tform,tunit,extname,pcount)
紧跟当前 HDU 之后插入新的二进制表扩展。所有后续扩展都将相应下移,以便为新扩展腾出空间。如果没有任何其他后续扩展,就会向文件末尾处追加新的表扩展。如果 FITS 文件当前为空,那么,此例程在向其追加表之前,会先创建一个虚拟主数组。新扩展变为 CHDU。如果文件中有后续扩展,并且表包含可变长度的数组列,则 pcount
必须指定数据堆的预期最终大小。否则,pcount
必须为零。
将 ttype
、tform
和 tunits
指定为字符向量元胞数组或字符串数组。
此函数对应于 CFITSIO 库 C API 中的 fits_insert_btbl (ffibin)
函数。
示例
紧随主数组创建一个表。然后,紧挨着表的前面插入一个新表。
import matlab.io.* fptr = fits.createFile('myfile.fits'); ttype = {'Col1','Col2'}; tform = {'9A','1D'}; tunit = {'m/s','candela'}; fits.createTbl(fptr,'binary',10,ttype,tform,tunit,'my-table'); fits.movRelHDU(fptr,-1); fits.insertBTbl(fptr,5,ttype,tform,tunit,'my-new-table',0); fits.closeFile(fptr); fitsdisp('myfile.fits');