
pro plot_xyscan,tmap,sx,sy,pk,trx,wran,$
    cord=cord,gost=gost

; use same setting as plot_3maps except here only two.
;Restriction: for speed, many things shoudl have been done
;   before this routine.
; e.g. the main program which calles this routine should have
; window,0,xs=xwt,ys=ywt
; device,decompo=0
; !p.multi=[0,2,1]
 !p.charsize=1.1
; !p.font=-1
; loadct,5
;
;
;--------------------------------

sz=tmap*trx[1,1] ; set the vertical scale

;-------rotation matrix & scan point
px =pk[0]    & py =pk[1]
axx=trx[0,0] & axy=trx[0,1] & axz=trx[0,2]
azx=trx[2,0] & azy=trx[2,1] & azz=trx[2,2]

;--size/position stuff (similar to those in plot_3maps.pro
xwt =790-245+4 & ywt =320 ; xwt =xwt-xw-3
xw  =245 & yw  =245
xpos=[20,xwt-xw-20]
ypos=[20,  20  ]
xnon=[' ',' ']
postit=[20,300]
x=reform(sx[*,0])
;------- scan along x & rotate
xscan1=reform(sx(*,py)); 1,2,3 means x,y,z-components
xscan2=reform(sy(*,py))
xscan3=reform(sz(*,py))
xscan1_ = axx*xscan1 + axy*xscan2 + axz*xscan3
xscan3_ = azx*xscan1 + azy*xscan2 + azz*xscan3

;------- scan along y & rotate
yscan1=reform(sx(px,*)); 1,2,3 means x,y,z-components
yscan2=reform(sy(px,*))
yscan3=reform(sz(px,*))
yscan1_ = axx*yscan1 + axy*yscan2 + axz*yscan3
yscan3_ = azx*yscan1 + azy*yscan2 + azz*yscan3

;------ just do a dumb thing
if NOT keyword_set(gost) then begin
 gost=intarr(51,51) & gost[0,0]=255 & gost=bytscl(gost)
endif

;xyouts,postit[0],postit[1],bigtit,charsiz=2,charthic=2,/dev
;--------------plot top view on the left panel---------
 xp0=xpos[0] & xp1=xp0+xw & yp0=30 & yp1=yp0+yw
 tvscl,congrid(sz,xw,yw),xp0,yp0,xs=xw,ys=yw,/device
 contour,sz,xst=5,yst=5,/noerase,/nodata, $
        pos=[xp0,yp0,xp1,yp1],/dev, $
    tit='Map in process', $
    xticks=1,yticks=1,xtickn=xnon,ytickn=xnon
;-----------plot a perspective views of x & y scans----
 xp0=xpos[1] & xp1=xp0+xw
 tv,bytarr(xw, yw),xp0,yp0,xs=xw,ys=yw,/device
plot,x,x,/nodata, /noerase,$
    xr=wran[0:1],yr=wran[2:3],$
        pos=[xp0,yp0,xp1,yp1],/dev, $
    tit='X,Y-Slices',xst=5,yst=5,$
    xticks=1,yticks=1,xtickn=xnon,ytickn=xnon

oplot,xscan1_,xscan3_,thick=2
oplot,yscan1_,yscan3_,thick=2

if keyword_set(cord) then begin
 for k=0,8 do oplot,cord[k,*,0],cord[k,*,1],linest=1
 for k=0,8 do oplot,cord[*,k,0],cord[*,k,1],linest=1
endif

return
end
