c subroutine contour(zz,idimx,nx,ny,cint,cmin,cmax) dimension zz(idimx,ny) include 'cpwrk.h' data icls/13/ external drawcl c c If cint=0, then let conpack pick contour levels, otherwise c force cint as contour level: c if (cint.le.0.) then call cpseti('CLS -- contour level selector',icls) call cpsetr('CIS -- contour interval specifier',cint) call cpsetr('CMN -- contour minimum',cmin) call cpsetr('CMX -- contour maximum',cmax) call cpsetc('ILT - info label text', + 'MIN $ZMN$, MAX $ZMX$, INT $CIU$') c c If cint > 0, then hardwire min, max, and interval: c (cint > 0 from getinp, cmin < cmax, icls not used) c else call cpseti('CLS -- contour level selector',1) call cpsetr('CIS -- contour interval specifier',cint) call cpsetr('CMN -- contour minimum',cmin) call cpsetr('CMX -- contour maximum',cmax) c write(6,"('contour hardwiring cmin=',e12.4,' cmax=',e12.4, c + ' cint=',e12.4)") cmin,cmax,cint endif c c Initialize conpack and pick contour levels: c (ncl = number of contour levels) c call cprect(zz,idimx,nx,ny,rwrk,lrwrk,iwrk,liwrk) call cppkcl(zz,rwrk,iwrk) call cpgeti('NCL -- number of contour levels',ncl) c c Loop through contour levels: c (set dashed pattern for levels < 0) c do i=1,ncl call cpseti('PAI -- parameter array index',i) call cpgetr('CLV -- contour level',clev) if (clev.lt.0.) + call cpsetc('CLD -- contour line dash pattern', + '$$''''$$''''$$') call cpseti('CLU -- contour level use flag',3) enddo call arinam(iama,liama) call cplbam(zz,rwrk,iwrk,iama) call cpcldm(zz,rwrk,iwrk,iama,drawcl) call cplbdr(zz,rwrk,iwrk) c return end c ccccccccccccccccccccccccccccccccccccccccccccccccccccccc c subroutine drawcl(xcs,ycs,ncs,iai,iag,nai) dimension xcs(*),ycs(*),iai(*),iag(*) idr=1 do i=1,nai if (iai(i).lt.0) idr=0 enddo if (idr.ne.0) call curved(xcs,ycs,ncs) return end