EXAMPLE: INTRLACE.CMD


Contents Summary

Detailed Contents
1. Introduction
2. Starting DigImage
3. Basic Operation
4. Sample Session
5. Command Files
6. Movies
7. Coordinate Systems
8. Warnings, Errors and Crashes
9. Utilities
10. Macros
11. Other Considerations
12. Updates
Appendix A: Menus
Index


5.4 EXAMPLE: INTRLACE.CMD

Suppose we wish to apply the interlace filter used in our previous example to more than one buffer. We may write

################################################################
# IntrLace.CMD                                                 #
#   Command sequence for averaging the odd numbered lines in a #
#   range of buffers. If not nested, then prompt for buffer    #
#   range.                                                     #
#                                                              #
#   Passed variables:                                          #
#       !!1 First buffer                                       #
#       !!2 Last buffer                                        #
#   Local variables:                                           #
#       !!0 Buffer to be filtered                              #
################################################################
# Start from main menu
; Return to main menu

# If this command file is nested, then assume !!1 and !!2 contain
# required values, otherwise prompt user for buffer range
!!L>0 :RangeSpecified
  !^ Start with which buffer ?
  !!1:=!!B
  !^ Finish with which buffer ?
  !!2:=!!B
!!:RangeSpecified

# Check that !!2>=!!1. If not, swap.
!!2>=!!1 :LimitsOK
  !!0:=!!1
  !!1:=!!2
  !!2:=!!0
!!:LimitsOK

# Enter the appropriate filter menu 
F: Filter
I: Interlace filters
A  Average interlace information
2  Buffer containing foreground
S  Apply filter to whole screen
O  Use the odd numbered lines

# Initialise pointer
!!0:=!!1

# Loop through buffers
!!:NextBuffer

  # Filter buffer
  A  Average interlace information
  !!0  Buffer containing image to be filtered
  S  Apply filter to whole screen
  O  Use the odd numbered lines

  # Increment pointer and check for terminal count
  !!0+=1
!!0<=!!2 :NextBuffer

; Return to main menu


Leading spaces do not affect the interpretation of a command file line. We have used this feature to improve readability of the file by indenting some parts of the text.

Note that this version of INTRLACE.CMD may be used either as the top most level, in which case the user is prompted for the buffer range, on called from another command file, in which case !!1 and !!2 should contain the desired range prior to calling the routine: !!0, !!1 and !!2 will be preserved across the call, even though they may be altered by INTRLACE.CMD.

Goto next document (VTRGrab)


Links

SYSTEM OVERVIEW

Contents
Index

OTHER

DigImage documentation page
DigImage home page
Stuart Dalziel's home page


Stuart Dalziel, last page update: 21 June 1999