;+
; Project     : SOHO - LASCO
;
; Name        : 
;
; Purpose     : 
;
; Category    : 
;
; Explanation : 
;
; Syntax      : 
;
; Examples    : 
;
; Inputs      : None
;
; Opt. Inputs : None
;
; Outputs     : None
;
; Opt. Outputs: None
;
; Keywords    : None
;
; Common      : 
;
; Restrictions:                                  
;
; Side effects: Not known
;
; History     : Version 1, 02-Sep-1995, B Podlipnik. Written
;
; Contact     : BP, borut@lasco1.mpae.gwdg.de
;-

PRO rescale,img1,x1,y1,r1,img2,x2,y2,r2,tmp
 
 IF r1*r2 LE 0 THEN RETURN	; check if rescale is possible
 
 s1 = size(img1)
 s2 = size(img2)
 s = FLOAT(r1 / r2)

 imgr = CONGRID(img2,s2(1)*s,s2(2)*s,/INTERP)

 t = size(imgr)

 x2n = x2 * s  ; new CRPIX1,CRPIX2
 y2n = y2 * s  
                 
 xs = x1-x2n  ; x,y shift 
 ys = y1-y2n  

 nx = t(1) + ABS(x1-x2n) ; x,y dim. for tmp array
 ny = t(2) + ABS(y1-y2n)
 
 CASE t(3) OF
    1: tmp = BYTARR(nx,ny)
    2: tmp = INTARR(nx,ny)
    3: tmp = LONARR(nx,ny)
    4: tmp = FLTARR(nx,ny)
 ELSE: donothing = 0
 ENDCASE
                  
 tmp(0:t(1)-1,0:t(2)-1) = imgr
 tmp = SHIFT(tmp,xs,ys)
 
RETURN
END
