#
# test05.rb
#
# $Id: test05.rb,v 1.1 2000/11/22 14:36:00 keiko Exp $
#

require "narray"
require "numru/dcl"

include NumRu
include Math


np = 14
nx = 73
ny = 37
xmin = 0
xmax = 360
ymin = -90
ymax = 90
p = NArray.new(Float, nx*ny)

#-- data ---
ctr = ['cyl','mer','mwd','hmr','ek6','ktd','con',
       'coa','coc','bon','otg','pst','azm','aza']
fct = NArray[0.12, 0.12, 0.14, 0.14, 0.14, 0.14, 0.11,
               0.16, 0.12, 0.12, 0.40, 0.12, 0.12, 0.17]

i = 0
File.foreach('t811231.dat') do |line|
  line.split(" ").each do |data|
    p[i] = data.to_f
    i += 1
  end
end
p.reshape!(nx, ny)

190.step(245, 5) do |r|
  amin=r
  amax=r+5
#       IDX=(R-180)*1.4*1000+999
  idx=((r-170)*1.25).to_i*1000+999
  DCL::uestlv(amin, amax, idx)
end

#-- graph ---
iws = (ARGV[0] || (puts ' WORKSTATION ID (I)  ? ;'; DCL::sgpwsn; gets)).to_i
DCL::sgopn iws

DCL::sglset('LSOFTF', false)
DCL::sgrset('STLAT1', 75.0)
DCL::sgrset('STLAT2', 60.0)
DCL::umlset('LGRIDMJ', false)
DCL::umrset('DGRIDMN', 30.0)

for i in 0..np-1
  DCL::sgfrm
  DCL::sgssim(fct[i], 0.0, 0.0)
  DCL::sgsmpl(165.0, 60.0, 0.0)
  DCL::sgsvpt(0.1, 0.9, 0.1, 0.9)
  DCL::sgswnd(xmin, xmax, ymin, ymax)

  if (ctr[i] == 'otg')
    DCL::sgstxy(-180.0, 180.0, 0.0, 90.0)
  else
    DCL::sgstxy(-180.0, 180.0, -90.0, 90.0)
  end
  DCL::sgstrn(DCL::isgtrc(ctr[i]))
  DCL::sgstrf

  DCL::sglset('LCLIP', true)
  DCL::slpwwr(1)
  DCL::slpvpr(1)
  cttl = DCL::sgtrnl(DCL::isgtrc(ctr[i]))
  DCL::sgtxzr(0.5, 0.95, cttl, 0.03, 0, 0, 3)

  DCL::uetone(p)
  DCL::udcntr(p)
  DCL::umpmap('coast_world')
  DCL::umpglb
  DCL::slpvpr(1)
end

DCL::sgcls

