Unidata - To provide the data services, tools, and cyberinfrastructure leadership that advance Earth system science, enhance educational opportunities, and broaden participation. Unidata
         
  advanced  
 

Unidata McIDAS-X
McBASI script, GEWCOMP.MCB


REM ? GEWCOMP.MCB - Create composite of GOES-East and GOES-West images
REM ?
REM ? Name:    GEWCOMP.MCB
REM ?
REM ? Purpose: 1) Create composite of GOES-East and GOES-West images in
REM ?             a north-western quadraspheric projection
REM ?
REM ? Invocation:  
REM ?      RUN wwww eeee oooo hh d ssss FILE=GEWCOMP.MCB
REM ?            |    |   |    | |  |_________ ADDE scratch member
REM ?            |    |   |    | |____________ display the image (Y/N) ?
REM ?            |    |   |    |______________ nominal hour for composite
REM ?            |    |   |___________________ ADDE dataset output member
REM ?            |    |_______________________ ADDE dataset GOES-East member
REM ?            |____________________________ ADDE dataset GOES-West member
REM ?
REM ? Method:
REM ?      GEWCOMP.MCB basically:
REM ?        o gets and validates user inputs
REM ?        o makes a copy of the "standard" image; remaps the specified
REM ?          west sector (perhaps selected by time) into the standard
REM ?          projection
REM ?        o makes a copy of the east half of the "standard" image; remaps
REM ?          the specified east sector (perhaps selected by time) into the
REM ?          standard projection
REM ?        o composites the remapped east and west sectors using the MERGE
REM ?          option
REM ?        o displays the composite image if the user asked for it
REM ?
REM ? NOTES:
REM ?      1) IMORTANT:  You can not default positional parameters with
REM ?         an 'X'.  If you do, that positional parameter is interpreted
REM ?         as a space by RUN.  This has the undesired effect of having
REM ?         one less positional parameter on the command line.  Use NONE
REM ?         for a place holder for character positionals (ie: 'p1') if 
REM ?         you want to save only the image/TOPO composites).
REM ?
REM ?         Example:
REM ?         
REM ?         RUN RTIMAGES/GW-IR RTIMAGES/GE-IR MYDATA/IMAGES.1234 22 Y N FILE=GEWCOMP.MCB
REM ?
REM   History: 960311 - Created from Advanced McIDAS Workshop discussion
REM            980601 - ADDEized while removing updates of SYSKEY.TAB and
REM                     ROUTE.SYS
REM            980903 - Changed name from G89COMP.MCB to GEWCOMP.MCB
REM                     Changed G8- to GE- and G9- to GW- internally
REM                     Changed TOPO/TOPOQUAD to TOPO/QUAD
REM ? ----------

REM Definition of variables used in the following:
REM
REM       Variable      Use
REM Input:    W$         ADDE GOES-West member
REM           E$         ADDE GOES-East member
REM           O$         ADDE GOES-West-East member
REM           H$         nominal hour for both images
REM           L$         display the resultant composite image (Y/N)?
REM           S$         ADDE scratch member
REM Internal: B$         BAND of original image
REM           D$         DAY of original image
REM           T$         TIME of original image
REM           P$         ADDE position
REM           L          counter
REM

REM First, get input ADDE dataset members and nominal image time
1   INPUT W$, E$, O$, H$, L$, S$

REM Check to make sure that west sector was specified
    IF W$ = "" PRINT "You must specify an input GOES-West sector":STOP

REM Check to make sure that east sector was specified
    IF E$ = "" PRINT "You must specify an input GOES-East sector":STOP

REM Check to make sure that output sector was specified
    IF O$ = "" PRINT "You must specify an output composite sector":STOP

REM Get time or specify default of most recent for both
    IF H$ = "" GOTO 2
    IF MID$(H$,1,1) = "N" LET H$ = "": GOTO 2
    H$ = "TIME=" + H$ + ":00 " + H$ + ":59"

REM See if user wants to load the resulting composite image
2   IF L$ = "" LET L$ = "N":GOTO 3
    IF MID$(L$,1,1) <> "Y" LET L$ = "N":GOTO 3
    L$ = "Y"

REM Get scratch member or specify default
3   IF S$ = "" LET S$ = "MYDATA/IMAGES.9990":GOTO 10
    IF MID$(S$,1,1) = "N" LET S$ = "MYDATA/IMAGES.9990"

REM Check to see that the West sector exists; if not exit with a warning
10  KEYIN "IMGLIST ";W$;" ";H$;" DEV=FNN IMGLIST.OUT"
    OPEN "IMGLIST.OUT",10,80
    INPUT @10,A$:INPUT @10,A$
    IF MID$(A$,1,4) = EOF$ PRINT "GOES-West member not found":STOP
    INPUT @10,A$:INPUT @10,A$:INPUT @10,A$

    P$=MID$(A$,1,4)
    L = 4
11  IF MID$(P$,1,1) <> " " GOTO 12
    P$ = MID$(P$,2,L)
    L = L - 1
    GOTO 11
    
12  KEYIN "IMGCOPY TOPO/QUAD ";O$;" SIZE=ALL DEV=NNN"
    KEYIN "IMGREMAP ";W$;".";P$;" ";O$;" SMOOTH=YES NO DEV=NNN"
    CLOSE 10

REM Check to see that the East sector was exists; if not exit with a warning
20  KEYIN "IMGLIST ";E$;" ";H$;" DEV=FNN IMGLIST.OUT"
    OPEN "IMGLIST.OUT",10,80
    INPUT @10,A$:INPUT @10,A$
    IF MID$(A$,1,4) = EOF$ PRINT "GOES-East member not found":STOP
    INPUT @10,A$:INPUT @10,A$:INPUT @10,A$

    P$=MID$(A$,1,4)
    L = 4
21  IF MID$(P$,1,1) <> " " GOTO 22
    P$ = MID$(P$,2,L)
    L = L - 1
    GOTO 21
    
22  D$=MID$(A$,28,5)
    T$=MID$(A$,35,8)
    B$=MID$(A$,55,1)
    KEYIN "IMGCOPY TOPO/QUAD ";S$;" SIZE=592 602 LINELE=0 601 DEV=NNN"
    KEYIN "IMGREMAP ";E$;".";P$;" ";S$;" SMOOTH=YES NO DEV=NNN"
    CLOSE 10

REM Composite the two masked images
30  KEYIN "IMGREMAP ";S$;" ";O$;" MERGE=YES DEV=NNN"
    KEYIN "IMGCHA ";O$;" SS=70 BAND=";B$;" DAY=";D$;" TIME=";T$;" MEMO='GOES East-West Composite' DEV=NNN"

REM Load the image if the user asked for it
40  IF L$ = "N" GOTO 900
    KEYIN "IMGDISP ";O$;" MAG=-2 EU=IMAGE SF=YES REFRESH='EG;MAP H;BAR SU=IRTEMP'"

REM Delete scratch data member
100 KEYIN "IMGDEL ";S$;" DEV=NNN"

REM Done!
999 PRINT "GEWCOMP: Done":STOP
 
 
  Contact Us     Site Map     Search     Terms and Conditions     Privacy Policy     Participation Policy
 
National Science Foundation (NSF) UCAR Office of Programs University Corporation for Atmospheric Research (UCAR)   Unidata is a member of the UCAR Office of Programs, is managed by the University Corporation for Atmospheric Research, and is sponsored by the National Science Foundation.
P.O. Box 3000     Boulder, CO 80307-3000 USA     Tel: 303-497-8643     Fax: 303-497-8690