ftab_help.pro
来自「basic median filter simulation」· PRO 代码 · 共 104 行
PRO
104 行
pro ftab_help,file_or_fcb,EXTEN_NO = exten_no, TEXTOUT = textout;+; NAME:; FTAB_HELP; PURPOSE:; Describe the columns of a FITS binary or ASCII table extension(s).;; CALLING SEQUENCE:; FTAB_HELP, filename, [ EXTEN_No = , TEXTOUT= ]; or; FTAB_HELP, fcb, [EXTEN_No=, TEXTOUT= ];; INPUTS:; filename - scalar string giving name of the FITS file. ; fcb - FITS control block returned by a previous call to FITS_OPEN;; OPTIONAL KEYWORD INPUTS:; EXTEN_NO - integer scalar or vector specifying which FITS extensions ; to display. Default is to display all FITS extension.; TEXTOUT - scalar number (0-7) or string (file name) determining; output device (see TEXTOPEN). Default is TEXTOUT=1, output ; to the user's terminal ;; EXAMPLE:; Describe the columns in the second and fourth extensions of a FITS ; file spec.fits and write the results to a file 'spec24.lis';; IDL> ftab_help,'spec.fits',exten=[2,4],t='spec24.lis';; SYSTEM VARIABLES:; Uses the non-standard system variables !TEXTOUT and !TEXTUNIT; which must be defined (e.g. with ASTROLIB) before compilation; NOTES:; The behavior of FTAB_HELP was changed in August 2005 to display; all extensions by default, rather than just the first extension; PROCEDURES USED:; FITS_READ, FITS_CLOSE, FITS_OPEN, FTHELP, TBHELP, TEXTOPEN, TEXTCLOSE; HISTORY:; version 1 W. Landsman August 1997; Corrected documentation W. Landsman September 1997; Don't call fits_close if fcb supplied W. Landsman May 2001 ; Default now is to display all extensions, EXTEN keyword can now; be a vector W. Landsman Aug 2005;-;---------------------------------------------------------------------- compile_opt idl2 if N_params() LT 1 then begin print,'Syntax - FTAB_HELP, fcb_or_filename, [EXTEN_NO=, TEXTOUT= ]' return endif sz = size(file_or_fcb) if sz[sz[0]+1] NE 8 then fits_open,file_or_fcb,fcb else fcb=file_or_fcb if fcb.nextend EQ 0 then begin message,'File contains no Table extensions',/INF if sz[sz[0]+1] NE 8 then fits_close,fcb else $ file_or_fcb.last_extension = exten_no return endif if N_elements(exten_no) EQ 0 then exten_no = indgen(fcb.nextend)+1 nprint = N_elements(exten_no) textopen,'ftab_help',textout=textout printf,!TEXTUNIT,' 'printf,!TEXTUNIT, 'FITS file: ' + fcb.filename printf,!TEXTUNIT,' ' for i=0, nprint-1 do begin fits_read,fcb, dummy, htab, /header_only,/no_pdu, exten_no=exten_no[i] ext_type = fcb.xtension[exten_no[i]] image = 0b case ext_type of 'A3DTABLE': binary = 1b 'BINTABLE': binary = 1b 'TABLE': binary = 0b 'IMAGE': image = 1b else: message,'ERROR - Extension type of ' + $ ext_type + ' is not a recognized FITS extension' endcase enum = exten_no[i] printf,!TEXTUNIT, 'Extension No: ' + strtrim(enum,2) if image then begin dimen = sxpar(htab,'NAXIS*') printf, !TEXTUNIT,'FITS Image Extension: Size ' + $ strjoin(strtrim(dimen,2),' by ') endif else begin if binary then tbhelp, htab, TEXTOUT = 5 $ else fthelp, htab, TEXTOUT = 5 printf,!TEXTUNIT,' ' endelse endfor if sz[sz[0]+1] NE 8 then fits_close,fcb else $ file_or_fcb.last_extension = enum textclose, textout=textout return end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?