DRAW Coastline / Lakes and Rivers / Prefecture boundary (WSHORE)


WSHORE, RSHORE, PSHORE
NAME
     wshore - Draw coast, lake and rivers with small scale
     rshore - Define the range to draw coastlines etc. by 'pshore'
     pshore - Draw coast, lake, rivers, prefecture boundary with larger scale

SYNOPSIS

      call rshore(m, is, in, kw, ke)
      call rshore(is, in, kw, ke)
  m           [int]   Specify whether old Tokyo Datum (m¡á0) or WGS (m¡á1) to
                      use as a reference geodetic system.
                      Must be m=0 or m=1. Otherwise, the calling is treated as
                      the second form with 4 arguments, where old Tokyo Datum
                      (m¡á0) is assumed.
  is, in      [int]   Specify latitude range to draw.
                      Must be 20 <= is < in <= 50 .
  kw, ke      [int]   Specify longitude range to draw.
                      Must be 120 <= kw < ke <= 155 .

      external conv
      call wshore(xorg, yorg, mpen, scl, conv)
      call pshore(xorg, yorg, mpen, scl, conv)
  xorg, yorg  [float] Coordinates (in cm) of the origin in the drawing.
  mpen        [int]   Specify pen numbers to draw coast / lakes and rivers /
                      prefecture boundary in the form of 3 digits number:
                      pen numbers for prefecture boundary / lakes and rivers /
                      coast on the digits of 100 / 10 / 1 , respevtively.
                      As a special case, if mpen=99, the coast of world is
                      drawn by current pen.
  scl         [float] Reduction rate.  Coordinate values of scl given by 'conv'
                      is represented by 1 cm of length on the drawing.
                      (If the coordinate values are in km, the drawing scale is
                       1 : (scl*100,000) .)
  conv    [ext.symb.] External procedure name to define projection, i.e.,
                      the name of subroutine with 4 arguments as follows:
                         subroutine conv(alat, alon, xe, yn)
                      where Lat. (alat) and Lon. (alon) is converted into
                      drawing coordinates toward right (xe) and upward (yn) .

EXAMPLE

      external cviken
      call cvinit(100, 35.*60., 135.*60., 0., 0.)
      call psopn("wshore.ps","A4P")
      call plots(2., 2.)
      call plot(8., 7., -3)
      call wshore(0., 0., 12, 250., cviken)
      do 50 i=20,50,5
        call cviken(float(i*60), 7200., xe, yn)
        call plot(xe/250., yn/250., 3)
        do 50 k=121,155
          call cviken(float(i*60), float(k*60), xe, yn)
          call plot(xe/250., yn/250., 2)
   50 continue
      do 60 k=120,155,5
        call cviken(1200., float(k*60), xe, yn)
        call plot(xe/250., yn/250., 3)
        do 60 i=21,50
          call cviken(float(i*60), float(k*60), xe, yn)
          call plot(xe/250., yn/250., 2)
   60 continue
      call plot(0., 16., -3)
      call wrect(-8., -8., 16., 10.)
      call scisor(-8., -8., 16., 10.)
      call cvinit(253, 0., 0., 0., 0.)
      call cviken(float(35*60), float(135*60), xo, yo)
      call rshore(1, 34, 36, 133, 136)
      call pshore(-xo/12., -yo/12., 212, 12., cviken)
      call plot(-8., 0., 3)
      do 70 k=-90,90
        call cviken(float(35*60), float(135*60+k), xe, yn)
        call plot((xe-xo)/12., (yn-yo)/12., 2)
   70 continue
      do 80 k=134,136
        call plot(0., -8., 3)
        do 80 i=-60,30
          call cviken(float(35*60+i), float(k*60), xe, yn)
          call plot((xe-xo)/12., (yn-yo)/12., 2)
   80 continue
      call plote
      call pscls
      stop
      end