c ******************* subroutine fgrads_str(LFN,jcol,siz,clon,clat,str) c ******************* character (*) str n1 = len (str) ifont = 2 write(LFN,*)'"query ll2xy ', clon,' ',clat,'"' write(LFN,*)'x=subwrd(result,1)' write(LFN,*)'y=subwrd(result,2)' write(LFN,*)'"set font ',ifont,'"' write(LFN,*)'"set strsiz ',siz,'"' write(LFN,*)'"set string ',jcol,'"' c write(LFN,*)'"set string ',jcol,' c 5"' write(LFN,*)'"draw string "x" "y" ', str(1:n1),'"' c print *," LFNLFN ",LFN,n1 return end c ******************* subroutine fgrads_recf1(LFN,jcol,clon,clat,d) c ******************* c subroutine koja bojadise poligon zadata.... c LFN - logical file number bllon=clon-d bllat=clat-d urlon=clon+d urlat=clat+d write(LFN,*)'"query ll2xy ', bllon,' ',bllat,'"' write(LFN,*)'x1=subwrd(result,1)' write(LFN,*)'y1=subwrd(result,2)' write(LFN,*)'"query ll2xy ', urlon,' ',urlat,'"' write(LFN,*)'x2=subwrd(result,1)' write(LFN,*)'y2=subwrd(result,2)' write(LFN,*)'"set line ',jcol,'"' write(LFN,*)'"draw recf "x1" "y1" "x2" "y2" "' return end c ******************* subroutine fgrads_recf(LFN,jcol,bllon,bllat,urlon,urlat) c ******************* c subroutine koja bojadise poligon zadata.... c LFN - logical file number write(LFN,*)'"query ll2xy ', bllon,' ',bllat,'"' write(LFN,*)'x1=subwrd(result,1)' write(LFN,*)'y1=subwrd(result,2)' write(LFN,*)'"query ll2xy ', urlon,' ',urlat,'"' write(LFN,*)'x2=subwrd(result,1)' write(LFN,*)'y2=subwrd(result,2)' write(LFN,*)'"set line ',jcol,'"' write(LFN,*)'"draw recf "x1" "y1" "x2" "y2" "' return end c ****************** subroutine fgrads_line(LFN . ,jcol,jstil0,jthic,bllon,bllat,urlon,urlat) c ****************** jstil = 1 if ( jstil0.ge.1.and.jstil0.le.7) jstil = jstil0 write(LFN,*)'"query ll2xy ', bllon,' ',bllat,'"' write(LFN,*)'x1=subwrd(result,1)' write(LFN,*)'y1=subwrd(result,2)' write(LFN,*)'"query ll2xy ', urlon,' ',urlat,'"' write(LFN,*)'x2=subwrd(result,1)' write(LFN,*)'y2=subwrd(result,2)' write(LFN,*)'"set line ',jcol,jstil,jthic,'"' write(LFN,*) '"draw line "x1" "y1" "x2" "y2' return end c ********************* subroutine fgrads_legend(LFN,siz,jcol,n,icola,tresh,str) c ********************* character *5 name character (*) str dimension icola(n) dimension tresh(n+1) ls = len ( str ) write (LFN,*) '"q gxinfo"' write (LFN,*) 'lx=sublin(result,3)' write (LFN,*) 'ly=sublin(result,4)' write (LFN,*) ' x1=subwrd(lx,4)' write (LFN,*) ' x2=subwrd(lx,6)' write (LFN,*) ' y1=subwrd(ly,4)' write (LFN,*) ' y2=subwrd(ly,6)' write(LFN,*)'"set strsiz ',siz,'"' write(LFN,*)'"set string ',jcol,' l 4"' write(LFN,*)'ss=',siz dx = 6./n c dx = 0.2 dy = 1.10 c write(LFN,*)'y1=y1-0.15' write(LFN,*)'y2=y1+0.25' write(LFN,*)'n=',n write(LFN,*)'dx=',dx write(LFN,*)'ss=',siz if ( ls.gt.0) then write(LFN,*)'"draw string "x1" "y2+1*ss" ', str(1:ls),'"' endif do j=1,n write(LFN,*)'j1=',j write(LFN,*)'x2=x1+dx' write(LFN,*)'"set line ',icola(j),'"' write(LFN,*)'"draw recf "x1" "y1" "x2" "y2" "' write(name,"(f5.1)") tresh(j) write(LFN,*)'"set string ',jcol,' l 4"' write(LFN,*)'"draw string "x1" "y1+ss" ', name,'"' write(LFN,*)'say x1" " y1" " x2" " y2' write(LFN,*)'x1=x2' enddo return end c ******************* subroutine fgrads_rece(LFN,jcol,jstil0,jthic,clat,clon,dlmd1,dphd) c ******************* c LFN - logical file number dlmd=dlmd1/cosd(clat) blon=clon blat=clat-dphd rlon=clon+dlmd rlat=clat call fgrads_line(LFN . ,jcol,jstil0,jthic,blon,blat,rlon,rlat) blon=rlon blat=rlat rlon=blon-dlmd rlat=blat+dphd call fgrads_line(LFN . ,jcol,jstil0,jthic,blon,blat,rlon,rlat) blon=rlon blat=rlat rlon=blon-dlmd rlat=blat-dphd call fgrads_line(LFN . ,jcol,jstil0,jthic,blon,blat,rlon,rlat) blon=rlon blat=rlat rlon=blon+dlmd rlat=blat-dphd call fgrads_line(LFN . ,jcol,jstil0,jthic,blon,blat,rlon,rlat) return end c ******************