([dec]) ; PURPOSE: Converts a scanned file to a SPIDER format. ; [dec] = decimation factor for 'DC S' command ; 0 = Get value from param file (key=16) ; 1 = Full sized image ; 2 = 1/2 size ; 4 = 1/4 size FR ?Parameter file? [params] ; params FR ?Input micrograph? [raw] ; raw{****[num]} FR ?SPIDER output file? [spider] ; mic ; ----- Get zip & format flags from parameter file ----------------- UD 1,[zip] [params] UD 2,[format] [params] ; ----------- Checks if files are gzip compressed ------------------- IF ([zip]*[format].GT.0) THEN VM ; Both tif & zip flags set gunzip [raw].gz ESLEIF ([zip].GT.0) THEN VM ; Zip, but not tif, flag set echo " Unzipping file " VM gunzip [raw].$DATEXT.gz ENDIF ; ----------- Conversion based on scanner type ------------------- IF ([format].eq.0) THEN CP ; Already a SPIDER file, put in output file [raw] ; File (input) [spider] ; File (output) ELSEIF ([format].eq.1) THEN UD 3,[nsam] ; HiScan raw file, Get X,Y size parameters [params] ; Params file (input) UD 4,[nrow] ; [params] CP FROM RAW 16 ; Bits / pixel [raw] ; File (input) [nsam],[nrow] ; Size (342) ; Header bytes (1) N _1 ; File (output) AR _1 ; File (input) [spider] ; File (output) P1*(-1)+5 ELSEIF ([format].eq.2) THEN AR ; Perkin Elmer scanned file _1 ; File (output) [spider] LOG(P1+1) ; Scaling ELSEIF ([format].eq.3) THEN VM ; ZI tif file. Overview should always = 1 zi2spi [raw] [spider].$DATEXT 1 ELSEIF ([format].EQ.4) THEN CP FROM NIKON ; Nikon Tif Scanner file [raw] [spider] ENDIF ; ----------- Rezip if necessary ------------------- IF ([zip]*[format].GT.0) THEN VM ; Both tif & zip flags set gzip [raw] ELSEIF ([zip].EQ.1) THEN ; VM ; Recompress the file gzip [raw].$DATEXT ENDIF ; ----------- Size reduction, if any ------------------- IF ([dec].LT.1) THEN UD 16,[dec] ; Get reduction factor from param file [params] ; Param file (input) ENDIF IF ([dec].GT.1) THEN ; Reduction DC S ; Reduce size [spider] _1 ; File (input) [dec],[dec] ; Reduction CP ; Copy _1 ; File (input) [spider] ; File (output) ENDIF RE