Re: MAP

From: NCAR G Talk (ncargt)
Date: Tue Jun 03 1997 - 13:40:49 MDT


>
> Dear Madame/Sir:
>
> I recently find that when I use
>
> mappos(.1, .9, .2, .8)
>
> and
>
> supmap (9, 0., 180., 0., -5., 120., 5., 300., 2, 0, 2, 1, ierr)
>
> The map comes good but the question is that the latitudinal
> extent (5S~5N) is not as large as I set (.2~.8).
>
> The map is reasonable considering the actual condition. But when we
> focus a narrow belt near the equator, we would like to amplify the
> latitudinal extent to see the detail over this narrow belt.
>
> I am desperately hope to improve the map in this case.
>
> Any comments and suggestions are wellcomed.
>
> Thank you.

Dear Boyin Huang,

The problem you are having is caused because SUPMAP tries to shape
the aspect of the map to the map limits you specified in your SUPMAP
call.
 
You can easily force limits by switching your SUPMAP calls to the
equivalent and more flexible, EZMAP calls. The idea is to:
 
  1) define the projection, position and map limits
 
  2) initialize the drwing of the map and extract the viewport/window
     coordinates
 
  3) reset the viewport to the desired limits (0.1, 0.9, 0.2, 0.8)
 
  4) draw the map using the distorted aspect ratio.
 
If this is not what you were looking for, please send email to
consult1@XXXXXX
enjoyable experience.
 
 
------------------------------------------------------------------------
 
      program huang
      call opngks

c Draw the map using SUPMAP
      call mappos(.1, .9, .2, .8)
      call supmap (9, 0., 180., 0., -5., 120., 5., 300.,
     X 2, 0, 2, 1, ierr)
      call frame

c Draw the map using EZMAP calls
      clat = 0.
      clong = 180.
      cpoint = 0.
      py1 = -5.
      px1 = 120.
      py2 = 5.
      px2 = 300.

c Define the projection, position and map limits
      call maproj('ME',clat, clong, cpoint)
      call mappos(.1, .9, .2, .8)
      call mapstc('OU','CO')
      call mapsti('GR',0)
      call mapsti('DO', 1)
      call mapset('CO', py1, px1, py2, px2)

c Initialize map and get current viewport/window settings
      call mapint
      call getset(vpl,vpr,vpb,vpt,wdl,wdr,wdb,wdt,ndum)

c Reset the viewport to (0.,1, 0.9, 0.2, 0.8)
      call set(0.1, 0.9, 0.2, 0.8, wdl, wdr, wdb, wdt, ndum)
      write(6,'(4f6.2,4f8.2)')vpl, vpr, vpb, vpt, wdl, wdr, wdb, wdt

c Draw the map
      call mapgrd
      call maplbl
      call maplot

      call getset(vpl,vpr,vpb,vpt,wdl,wdr,wdb,wdt,ndum)
      write(6,'(4f6.2,4f8.2)')vpl, vpr, vpb, vpt, wdl, wdr, wdb, wdt

      call frame
      call clsgks
      stop
      end

-NCARG Talk Staff



This archive was generated by hypermail 2b29 : Wed Jun 28 2000 - 09:45:39 MDT