@title{ImageWorks and the PCI Image Handler}{Image Display Tool}
@keyword{ImageWorks}{Handler}

 ImageWorks (or PCI Image Handler) is an image display and manipulation program
 from PCI Enterprises, and is part of PCI's image analysis software.
 Imageworks must be licensed in order to use all available functions.
 If this program is NOT licensed, then it becomes the PCI Image Handler,
 which can load images and perform a few other sample ImageWorks functions,
 for demonstration purposes only.

 Througout this on-line help documentation, this program is referred to
 by its licensed name ``ImageWorks'', instead of its unlicenced name
 ``Image Handler''.  If you would like to license this program and enable all
 functions, contact PCI at:

  PCI Enterprises
  50 West Wilmot Street, Unit 200E
  Richmond Hill, Ontario, Canada  L4B 1M5
  Tel: (905) 764-0614
  Fax: (905) 764-9604
  Email: sales@pci.on.ca

 In the United States, contact:

  PCI Remote Sensing Corporation
  1925 N. Lynn Street, Suite 803
  Arlington, VA  22209, U.S.A.
  Tel: (703) 243-3700
  Fax: (703) 243-3705
  Email: sales@pci.on.ca

 See Also: {CLWORKS}ClassWorks

1	Customizing
@keyword{Customization}{Fonts}

 Customizing the Appearance of ImageWorks.

 ImageWorks resources, such as fonts and colours, can be customized on
 operating systems which use X-Windows Motif, through the .Xdefaults
 file which resides in the user's login directory. The resources
 available are as follows: 

  imageworks*fontList:              <font>   (e.g., fixed)

 General purpose font for most of the application. 

  imageworks*annotationFont:        <font>   (e.g., fixed)

 Extra font available in image and graphic annotation. 

  imageworks*fixedFont:             <font>   (e.g., 10x20)

 Font used in areas requiring monospaced characters (e.g. main text
 in Help Panel). 

  imageworks*background:            <colour>  (e.g., grey)

 Background colour for most panels. 

  imageworks*MenuBar*background:    <colour>  (e.g., thistle)

 Colour of all menu bars. 

  imageworks*TitleBar*background:   <colour>  (e.g., lightsteelblue)

 Colour for all title bars.

 Available fonts and colours will depend on your system. Under some
 environments (such as HP VUE) customization is handled by means other
 than the .Xdefaults file. See the operating system user documentation for 
 these environments.

 To set these resources system wide, an app-default file may be
 created called `imageworks', with the same format as the .Xdefaults
 file. It is typically placed in the directory
 /usr/lib/X11/app-defaults. 

1	Copyright
@keyword{Copyright}

   ImageWorks, Version 5.3.1, Release date: April 1, 1995
 
                           COPYRIGHT

 Software copyrighted (c) by PCI, 50 West Wilmot St., Richmond
 Hill, Ontario, CANADA, L4B 1M5. Tel: (905) 764-0614 

                       RESTRICTED RIGHTS
 
                      CANADIAN GOVERNMENT

 Use, duplication, or disclosure is subject to restrictions as set
 forth in DSS 9400-18 `General Conditions - Short Form - Licensed
 Software'. 

                       U.S. GOVERNMENT

 Use, duplication, or disclosure is subject to restrictions as set
 forth in FAR clause 52.227-19 `Commercial Computer Software -
 Restricted Rights' and in subparagraph (c) (1) (ii) of the
 `Rights in Technical Data and Computer Software Clause' at DFARS
 52.227-7013. 

1	Command Line Options
@keyword{Command Line}{-datasize}{-image}{-graphic}
@keyword{-nocontrol}{-noconfig}{-mainwin}{-share}{-noshare}
@keyword{-debug}{-nodebug}{-mmap}{-nommap}{-8}{-24}{-play}{-cmd}

  Usage: imageworks [options]

 ImageWorks accepts a number of command line options. Some of these
 are for debugging purposes, while others can be used to defined
 operating modes.  Following is a list of command line options:

@verbatim
  -datasize x_size y_size 
@end

 The -datasize option is used to define the size of the image and
 graphic planes in memory. It overrides the datasize defined in the
 parameter file (PRM.PRM), and suppresses the ImageWorks Configuration
 Panel.  The default size is 512 x 512, if there is no PRM.PRM file.

@verbatim
  -image n_planes 
@end

 The -image option allows the number of in-memory image planes to be 
 configured. The argument overrides the number of image planes defined 
 in the parameter file, and suppresses the ImageWorks Configuration Panel.
 The default number of image planes is 3, if there is no parameter file.

@verbatim
  -graphic n_planes 
@end

 The -graphic option allows the number of in-memory graphic planes 
 to be configured. The argument overrides the number of graphic planes 
 defined in the parameter file, and suppresses the ImageWorks Configuration
 Panel. The default number of graphic planes is 8, if there is no parameter
 file. The number of graphic planes may not exceed 16. 

@verbatim
  -nocontrol 
@end

 The -nocontrol option suppresses the popping up of the ImageWorks
 General Control panel. This is primarily useful for hands off demos.

@verbatim
  -noconfig
@end

 The -noconfig option suppresses the popping up of the ImageWorks 
 configuration panel.  This is primarily useful for hands off demos.

@verbatim
  -name window-name
@end

 This option allows the name appearing on the window frame of the main
 ImageWorks window to be overridden.  This is the equivalent of setting a
 non-default value in the VDn: parameter in the PRM.PRM file.

@verbatim
  -mainwin display-name 
@end

 Normally all of the ImageWorks panels appear on the display determined
 by the DISPLAY environment variable, or the -display command line
 option. The -mainwin option allows the user to place just the main
 image window on a different display, allowing for dual-headed function.
 The `display-name' value should be the name of the display to which the 
 main image window is to be redirected.

@verbatim
  -cmd procedure_name
@end

 The -cmd command line argument is used to pass an EASI Modelling Procedure
 to be executed after ImageWorks startup.  The argument is the name of an
 EASI procedure to be executed.  The filename should be all in upper case,
 and with the extension ".EAS".  Only the base portion of the filename should
 be provided (eg. `filter' instead of FILTER.EAS).

@verbatim
  -play recording_file
@end

 The -play command is used to trigger automatic execution of a user 
 interaction recording created with the Macro Recorder.  The pathname to
 the file to be executed should be provided as an argument.  The macro will
 be ``played'' after the configuration panel has been popped down, so for
 a fully automated startup the -noconfig commandline argument should also
 be used.

@verbatim
  -share 
  -noshare 
@end

 The -share option is used to turn on use of the X Windows Shared
 Memory extension where possible. The -noshare option is used to
 ensure the extension is not used. The shared memory extension speeds
 up redraw speed on the screen, sometimes by as much as a factor of
 three if the display is local to the machine running ImageWorks.
 However, on many systems the shared memory extension causes problems
 with proper screen updating when performing Image, Graphic, and
 Vector editing. Thus shared memory is defaulted to not being used.

 People wishing to squeeze extra graphic performance out of
 ImageWorks are encouraged to try out the -share option. 

@verbatim
  -mmap 
  -nommap 
@end

 The -mmap option enables the used of memory mapped disk IO where
 possible. Its use is equivalent to defining the environment
 variable ``ENABLE_MMAP''. The -nommap option disables memory mapped
 disk IO, even if the ``ENABLE_MMAP'' environment variable is defined.

 Memory mapped disk IO can provide IO speedups of up to a factor of
 three on some machines. However, on at least a few machines, the use
 of memory mapped IO can cause problems. Those interested in speeding
 up IO are encouraged to experiment with the -mmap option.  This option 
 only works on some systems.

@verbatim
  -8 
@end

 The -8 option forces ImageWorks to consider only 8 bit visuals. 

@verbatim
  -24 
@end

 The -24 option forces ImageWorks to consider only 24 bit visuals. 

@verbatim
  -extra
@end

 This option will enable several extra options in the ``Tools'' pulldown 
 menu and possibly elsewhere.  These functions are not considered to
 be release ready, but may be interesting to experiment with.

@verbatim
  -showerror 
@end

 On the Sun, standard out and standard error are redirected to
 /dev/null. The -showerror option prevents this redirection. 

@verbatim
  -debug [n]
@end

 The -debug option places ImageWorks in debugging mode. Plentiful output 
 is sent to standard error.

@verbatim
  -nodebug 
@end

 The -nodebug option ensures that ImageWorks is not run in debugging mode. 

1	Configuration
@keyword{Configuration}{Imagery!Configuration}{Graphics!Configuration}

 The ImageWorks Configuration Panel allows the user to 
 set up the configuration of an ImageWorks session according 
 to the database file on which the user is going to work. 

 According to the number of channels and the image size of a  
 database, the user can choose to have an ImageWorks session
 that can display an image with an appropriate size containing
 a specific number of image/graphic planes.

 The Configuration panel is invoked automatically if the user
 does not specify any options when starting ImageWorks. The
 automatic invocation will not take place if ImageWorks is 
 launched from VDINIT or XPACE.

 The Configuration panel contains three main sections: the
 `Configuration Method', `File Information' and a
 `User Defined Information' section.

 The Configuration panel also displays an approximate memory requirement that 
 must be available to execute ImageWorks.

 Pressing the ``Accept'' push button will start ImageWorks
 with the specified configuration, whereas the ``Exit'' push
 button will quit ImageWorks. If the selected configuration method 
 is ``Use Image File...'', the user will be able to
 press the ``Accept & Load'' push button to start ImageWorks
 and load in the specified database file.

2	Configuration Method

 This section allows the user to select a configuration
 method. An image file can be selected (Use Image File...)
 or appropriate configuration information can be entered
 in the ``User Defined Information'' area (User Defined).

 By selecting ``Use Image File...'' 
 the user will be able to select a database file;
 the configuration information from the database file will then be 
 displayed in the ``File Information'' section.

 By selecting ``User Defined'', the user will be able
 to enter configur information in the ``User Defined
 Information'' section.  The ``File Information'' section will 
 be cleared.
 
 NOTE: The selected configuration method is displayed in the
 title bar after ``Configuration Method:''.

2	File Information Section

 The File Information section gives some basic information   
 about the database file on which the user chooses to work. 
 This section is only accessible when the user selects the
 ``Use Image File...'' method.

 This section displays the size of the image and the number
 of channels from a selected database.  Knowing the size of 
 the database window, and the number of channels it contains, 
 the user can configure the ImageWorks session accordingly.

 The ``Reduce to'' scale allows the user to specify a 
 percentage of the database image size that the user
 will view.  When the user selects a database file, the 
 reduction slider value will be initially set to a default value. 
 The up/down arrows permit the user to step up/down to another
 reduction value.

2	User Defined Information

 The User Defined Information section allows the user 
 to set the size of the imagery, the size of the ImageWorks window, 
 and the number of image and graphic planes to be used.

 The values in the text fields can be changed by using the
 up/down arrows or by just typing in a value.

 The X and Y input text fields for the Image Size allow the user
 to specify the size of the image to be used in ImageWorks.

 The X and Y input text fields for the Visible Window allow
 the user to specify the size of the ImageWorks display window.

 NOTE: The X and Y window size cannot exceed the physical
 screen(or monitor) size and must not be greater than
 the Image Size.

 Pressing the 1:1 Aspect push button will change the values
 for the Visible Window such that the image to be displayed
 has a 1:1 aspect ratio and is 2/3 the size of the physical
 screen.

 The user can specify the number image planes to be used in
 ImageWorks. This can either be in 8-bit or 32-bit real.

 NOTE: A maximum of 128 image planes can be specified.  You can
 start ImageWorks with zero image planes.

 The user can choose the number of graphic planes to be 
 displayed in ImageWorks via the Graphic Planes radio buttons.

 See Also: VDINIT, {..|..|}Command Line Options

1	Control Panel
@keyword{Gun Graphics Vectors Imagery Enable Disable Zoom Cursor}
@index{Colour Gun Mappings}{Graphics!Enable}{Imagery!Colour Guns}{Zoom}

 The ImageWorks Control Panel is used to view and control many
 aspects of the ImageWorks configuration. The image display mode
 (Off/RGB/BW/PC), colour gun mappings, graphic plane enabledness, and vector
 layer enabledness are all controlled from the Control Panel.  The Control
 panel also allows for quick enhancement, zooming, panning, and viewing of
 cursor coordinates.

 The Control Panel is launched automatically when ImageWorks is
 started. If it is popped down, it can be popped back up by selecting
 ``Control Panel'' from the ``Tools'' menu.

 The top section of the Control Panel is the cursor area. On the Cursor
 title bar is an option menu controlling the cursor coordinates to
 be displayed beneath the title bar.  The possible cursor coordinate values 
 are Display (for display coordinates), Database (for current file 
 coordinates), Geocoded (for georeferenced coordinates if possible), and 
 Geographic (for geographic (Lat/Long) coordinates).  See the Cursor 
 Control section for a more detailed explanation of these four options.

 Beneath the cursor title bar are the cursor coordinates in the current 
 selected grid system. These fields are output only, but the coordinates
 may be updated on the Cursor Control panel.  On occasions when it is 
 impossible to translate the cursor position into the requested coordinates 
 the cursor position will be blank.

 Below the cursor position are three fields indicating the digital image
 values of the pixel pointed to by the cursor.  Each of these values is
 separated from the image plane to which it corresponds by a colon.  The image
 planes selected for the Red, Green, and Blue colour guns are the ones 
 displayed.

 Beneath the Cursor area is the Image control area. The
 overall display mode of ImageWorks is set using the pull down menu on
 the ``Imagery'' title bar. The `Off' button disables the display of imagery.
 The `RGB' button enables the three plane RGB display mode. The `BW'
 button enables the black and white display mode. Black and white display
 mode is the same as
 RGB mode, except that all three colour guns are locked on the same image
 plane. The `PC' button enables the Pseudocolour display mode in which
 one image plane is run through a Pseudocolour Table (PCT) to produce
 a colour image.  This colour image may appear black and white if a 
 grey scale is used in the Pseudocolour table.

 Below the Image title bar is the image plane to colour gun mapping
 table. Each image plane (to a maximum of 8) has a numbered column in
 the table with three rows, one for each colour gun. In each row,
 exactly one image plane will be selected indicating the source of
 data for the colour gun. The selected image plane is highlighted in
 the colour of the corresponding colour gun.  To view more image planes 
 beyond the first eight, use the Image Info panel, or the DCP PACE program.

 For example, the following would indicate that ImageWorks is using
 image plane one for red, image plane two for green, and image plane
 three for blue; image plane four is currently not displayed.

@verbatim
  Image plane:  1  2  3  4
  Red     	X  o  o  o
  Green         o  X  o  o
  Blue          o  o  X  o
@end

 The Graphics area is used to enable and disable the display of graphic
 planes easily. The ``All On'' and ``All Off'' buttons on the
 title bar are used to enable or disable all the graphic planes at
 once. The buttons under the title bar are used to enable or disable
 one graphic plane at a time. The graphic planes are enabled when
 they appear depressed.  If there are no graphic planes available this
 area will be missing from the Control Panel.

 The Vectors area is used to enable and disable the display of vector layers
 easily. The ``All On'' and ``All Off'' buttons on the
 title bar are used to enable or disable all the vector layers at
 once. The buttons under the title bar are used to enable or disable
 one vector layer at a time. The vector layers are enabled when
 they appear depressed.  No more than eight vector layers can be controlled
 from the Control Panel, and blank buttons indicate that no corresponding 
 vector layer yet exists.

 The Enhancements area is used to apply quick enhancements to the
 currently visible image planes. This is done by creating Lookup
 Tables (LUTs) to improve the contrast of the imagery. The `None'
 button sets the LUT for each of the image planes to a linear ramp.
 This results in no changes to the imagery data values.

 The Infreq, Linear, Equal, and Root buttons apply an infrequency, linear,
 equalization, or square root curve to the LUT, based on end points
 between which the curve is applied. The end-points are computed by
 examining the histogram of the sub-window of image data showing in the
 main image window, ignoring values of 0 and 255, and applying a 2%
 tail trim.  The infrequency enhancement does not apply a 2% tail trim.

 To better visualize the LUT that these enhancements are creating,
 pop up the LUT Editing panel (from the Edit pulldown menu) before 
 applying the different quick enhancements on the control panel.  
 This panel is discussed in more detail in the LUT Editing subtopic.

 The last area of the Control Panel is the Zoom area. On the title
 bar is a Zoom Level Control. The pull down menu allows you to select
 the magnification value.  The `off' selection indicates ``overview'' 
 mode which means that an overview of all the data in memory is being 
 shown. This is the same as magnification level 1, if the size of the 
 data in memory is the same as the size of the window in which it is 
 being viewed.  

 Beneath the zoom title bar is a graphic representation of the current
 view window. The outer box, a slight indentation, represents the
 area of all the data in memory. The black box inside indicates the
 window of data currently being viewed in the main image window. When
 the view is zoomed in, the inner box will only contain a small
 part of all the data. This inner box can also be grabbed and
 dragged with the mouse cursor to change the view window. 

 See Also: {..|Cursor}Cursor Control, {..|}Image Info, DCP

1	PCT Editing
@keyword{PCT!Editing}

 The PCT Editing panel contains functions for creating and/or
 modifying the in-memory Pseudocolour Table. The PCT Editing panel
 can be launched by selecting "PCT" from the "Edit" menu on
 the main ImageWorks window.

 The Close button on the PCT Editing panel closes the PCT Editing.
 The Cancel button closes the PCT Editing panel, and restores the PCT
 that was in effect when the PCT Editing panel was first opened. 

2	Predefined Pseudocolour Tables

 The Predefined Pseudocolour Table buttons allow the user to quickly
 replace the existing PCT with a standard PCT provided by the
 systems.

 Smooth 

  - A colour ramp running from dark blue to green to yellow to red 
    to magenta. 

 Stepped 

  - A series of short colour ramps. 

 Grey Ramp 

  - A simple grey ramp with 0 mapped to black, and 255 mapped to
    white. 

 Random 

  - A more or less random set of colours. 

 One step Undo is available after the selection of a predefined
 Pseudocolour table, via the "Undo" button. 

2	Current Pseudocolour Table

 The Current Pseudocolour Table area of the PCT Editing panel
 provides a graphical and textual display of the current PCT. These
 displays are used both for information, and to select a new colour 
 table entry to edit.

 The colour bar on the left is a graphical representation of the PCT,
 with the top representing an input value of zero, and the bottom an
 input value of 255.

 The scrollable table on the right is a textual representation of the
 current PCT. The table consists of four columns, and 256 entries.
 The first column is the input grey level. The second, third, and
 fourth columns are the red, green, and blue output values for the
 given input value. Either the scroll bar or the arrow buttons can
 be used to scroll through the PCT. The textual PCT representation is
 not directly editable.

 It is possible to click in either the scrollable PCT window, or the
 graphical PCT window in order to select a "Grey Level" to modify in
 the Colour Selection area of the PCT Panel. The selected entry
 becomes the new Grey Level value to edit; changes to the previous 
 PCT entry are lost unless they were already applied. 

2	Colour Selection

 The colour selection portion of the PCT Editing panel is used to
 modify the output colour of the currently selected PCT entry ("Grey
 Level").

 It consists of a horizontal colour sampling bar across the top, a
 current colour chip on the right, a slider and text field for the
 red, green, and blue components, a current grey level text field, and
 the Apply and Undo buttons.

 The horizontal colour sampling bar is used to conveniently select a
 new colour value. Clicking within this bar will modify the current
 red, green, and blue components within the Colour Selection area to
 match the point clicked on. As usual, the colour change is not made
 to the current PCT until the Apply button is pressed.

 The colour slider bars are used to modify the red, green, and blue
 colour components of the currently mixed colour. The current component
 values are shown in the text fields to the right of the slider bars. 
 These fields are also editable.

 The colour chip on the right is present to show the presently mixed
 colour. It is for information purposes only, and clicking on it does
 nothing.

 When the "Hold Colour" button is depressed, selecting a new grey 
 value will not cause the currently mixed colour to be changed.

 The "Grey Level" text field shows the entry in the PCT for which
 colour selection is being performed. This field is editable; however,
 each time the current Grey Level is changed, the colour selection area
 is reloaded with the colour of the newly selected "Grey Level", unless
 the "Hold Colour" button is depressed.

 The Apply button is used to place the currently mixed colour in the
 Colour Selection area back into the PCT. The "Current PCT" is not
 changed until the Apply button is pressed, applying the new colour 
 to the Current PCT, and updating the main image window to reflect 
 the new PCT.

 The Undo button is used to undo the last change to the "Current
 PCT". It will undo the last "Apply" operation, or the last
 Predefined PCT operation. Also note that the Cancel button will
 cancel all changes to the PCT since the PCT Editing panel was popped
 up. 

1	LUT Editing
@keyword{LUT!Editing}{Imagery!Histogram}

 The LUT Editing panel contains functions for modifying the in-memory 
 Lookup Tables and image planes according to a specified LUT.  The 
 LUT Editing panel can be launched by selecting "LUT" from 
 the "Edit" menu on the main ImageWorks window.

 The launched LUT Editing panel will contain small "postage stamp" sized
 LUT graphs. These graphs are output only and can not be edited directly.
 The number of graphs available will vary depending on the screen and
 font size of the system. This panel is meant to provide a quick overview 
 of the LUTs currently being applied to the image planes. 

 Each graph has two elements: an option menu and a drawn area showing
 the LUT. The option menu is used to tie the graph to a particular channel.
 By selecting "Channel X" (where X is a channel number), the graph will 
 show the LUT currently being applied to that channel. If the graph should
 be tied to a particular colour gun, choose "Red", "Green", or "Blue". The
 graph will then show the LUT for the image plane currently tied to that
 colour gun. Changing the gun mappings will cause these graphs to update
 appropriately.

 The LUT Graphs contain three different pieces of information. The
 black line is a representation of the current LUT. The grey
 histogram in the background is a histogram of the image data without
 the LUT applied and the coloured histogram in the foreground is the
 image data with the LUT applied. If the graph is tied to a colour
 gun, the foreground histogram is drawn in this colour. A graph that
 is tied to a specific channel has its foreground histogram drawn
 in dark grey.

 To actually edit an LUT, click any of the mouse buttons in the drawn LUT
 area. This will cause an LUT Editor to be launched that will allow
 the editing of that LUT. There can be more than one LUT Editor on screen
 simultaneously. Each graph can launch a different LUT Editor. 

 The editor size can be chosen with the radio buttons at the bottom of the
 LUT Editing panel. A large editor is useful for having finer control
 when editing the LUT. A small editor might be required if the size
 of the screen cannot accommodate the larger editor size. If there is 
 already an LUT editor on screen and another is requested of a different
 size, the old one is popped down and a new one reflecting the new size
 is displayed. 


2	LUT Editor

 The LUT Editor is an interactive panel that allows the direct editing
 of an image plane's lookup table.

 It is composed of several areas. There is a section for controlling
 which histograms are shown in the drawing area as well as how the histogram
 is computed. The main editing area contains a large graphical representation
 of the LUT for interactive editing with the mouse. To the right of the main 
 editing area is a another LUT graph showing a backup LUT copy. Below this is 
 an area for applying a mathematical function to the LUT. Finally, there are
 textfields that can be used to enter LUT values directly. The panel
 features a button at the bottom of the panel which will apply the lookup
 table to the image plane, changing the image data permanently.


3	Histogram Area
 
 There are two option menus in this area. The first one titled "Showing"
 is used to select which histograms are drawn in the main editing area.
 The second titled "Computed From" is used to select a mask which will
 be used to define an area of the image plane from which the histogram
 is computed.

 There are two histograms of interest: the original image data histogram 
 with no LUT applied and the new histogram with the LUT applied. Using
 the "Showing" option menu, it is possible to choose which of these histograms
 is drawn in the main editing area. This option does not apply to the
 LUT Editing panel with the "postage stamp" LUTs.

 Using the "Compute From" option menu, the user may select a mask from
 under which to compute the raw or (pre-LUT) histogram. Possible selections 
 include "All Data" for a histogram of the entire image plane, "Viewed Data" 
 for a histogram of the area currently showing in the main image window, or a 
 specific graphic plane for a histogram of the imagery underneath that graphic 
 plane.  The histograms shown in the LUT graphs are intended as an aid in
 setting function end points, and visualizing data distribution. 

3	Editing Graph

 The graph contains three different pieces of information. The
 black line is a representation of the current LUT. The grey
 histogram in the background is a histogram of the image data without
 the LUT applied and the coloured histogram in the foreground is the
 image data with the LUT applied. If the graph is tied to a colour
 gun, the foreground histogram is drawn in this colour. A graph that
 is tied to a specific channel has its foreground histogram drawn
 in dark grey.

 The black line represents the values in the lookup table, with the left side
 of the graph representing an input value of 0, and the right side of
 the graph an input value of 255. The height of the white line above
 the bottom of the graph corresponds to the output value. At the
 bottom the output value is 0, while at the top the output value is
 255.

3	Interactive Editing

 There are three methods of interactively editing the LUTs (black lines) 
 directly in the LUT graph displays.

 The first is to click and drag the left mouse button in the graph area 
 to trace out a section of the LUT. When the left button is released the
 modified LUT will be applied to the imagery in the main image
 window. This technique is called direct tracing. While the mouse is moved 
 through the graph, the current position of the cursor is shown in the 
 title bar for the lookup table.

 The second method, piecewise interpolation, is performed by pressing
 the middle button at one point, and dragging out a straight line to
 a second point.

 The third technique allows the user to drag the entire LUT to the
 left or the right. This is done by pressing the right mouse button
 in the graph area, and dragging the whole graph left or right
 before releasing the mouse button. This can also be accomplished
 in single step increments using the "left arrow" and "right arrow" 
 buttons while the editing area has input focus. 

 On motif systems, the drawing area can usually be given input 
 focus by clicking the mouse in it. Alternately, the tab key can be 
 used to traverse the tab groups until the drawing area is selected. 
 Unfortunately, the drawing area will not be highlighted in any special 
 way when it is selected so the user may have to experiment with the arrow 
 keys until it is clear that the drawing area has input focus.

 Currently there is no provision for moving the whole LUT up or
 down. 

3	Secondary LUT

 To the right of the main editing area is another graph showing a backup
 copy of the LUT. When the LUT Editor panel is launched, a backup copy of 
 the LUT is saved. The "Copy" button will copy the current LUT being edited 
 over the saved LUT. The "Toggle" button will switch between the currently
 editing LUT and the saved one. These two buttons create a sort of "undo" 
 function as well as allowing easy comparison of two sets of LUTs via 
 the toggle. 

3	Applying Functions

 The "Apply" button is used to apply a mathematical function as part
 of the LUT.  The function is applied within bounds defined
 by the markers along the bottom and sides of the main editing graph.

 The markers along the left side of the graph determine the minimum and 
 maximum output grey level values, while the markers along the bottom of 
 the graph determine the range of input data values within which the 
 function is applied. The markers can be moved by clicking on them
 and dragging them. The values can also be entered directly with
 textfields. 

 If the function name ends with "w/Tail", this means for regions
 outside of the minimum and maximum grey level values (i.e. horizontal
 markers), the tails will be set to the end point values. If the
 function names ends with "Piece", this means that only the 
 LUT values between the minimum and maximum grey level values will
 be affected. All other parts of the LUT will remain unchanged.

3	Direct Entry

 The two textfields labelled "X:" and "LUT(X):" can be used to enter
 lookup table values directly for a particular input/output pair.
 These fields are also updated while the mouse is in the main editing graph.

3	Permanent Apply LUT
@keyword{LUT Encoding}

 The panel contains a "Permanent Apply LUT->Image" button. This button 
 allows the user to create a new image from the specified LUT. That is, 
 the result of the image data with the applied LUT is written to the image 
 plane. Once the "Permanent Apply LUT->Image" button is pressed, the 
 original data of the image plane is lost.

1	Graphic Info
@keyword{Graphics!Info}{Graphics!Enable}{Graphics!Colour}
@keyword{Graphics!Georeferencing}

 The Graphic Plane Info panel contains functions for viewing and 
 modifying descriptor, visibility, and colour information, as well
 as viewing the data source information. The Graphic Plane Info panel 
 can be launched by selecting the "Graphic Info" option from the 
 "View" pulldown menu in ImageWorks.

 The first section of the panel is the "Graphic Planes" list. This is
 the list of graphic planes in memory with their descriptors. One plane
 at a time may be selected from this list, to view and modify details
 in the "Selected Object" area of the panel.

 The graphic plane number or "Id" of the selected graphic plane is
 shown just below the "Selected Object" title bar. Below this are the
 "Visibility" and "Colour" selectors. The Visibility radio buttons are
 used to enable and disable the graphic plane. The "Colour" option
 menu is used to select a colour from a short list of named colours.
 To set graphic plane colours that are not in the list it is
 currently necessary to use the DCP PACE task.

 Following these selectors is an editable graphic plane descriptor. This
 descriptor is normally loaded from the source file, and may be saved
 to the destination file if the graphic plane is saved.

 Following this descriptor are the source file name, bitmap segment, and 
 subwindow if the contents of the graphic plane were loaded directly from a
 file. This information will be blank if the graphic plane was loaded
 using IVB, or created with graphic editing.

 The Georeferencing section displays georeferencing information of a
 selected graphic plane. This section is known as a GeoEdit control.  There 
 is an option menu that can be used to display different coordinate systems. 
 The georeferencing information of each graphic plane can be edited. 

 See Also: GeoEdit

1	Graphic Editing
@keyword{Graphics!Editing}

 The Graphic Editing panel contains functions for modifying graphic 
 planes. Tracing, creating shapes, flood filling areas and annotation 
 are available. It is also possible to set line styles, font styles, 
 and font sizes.

 The Graphic Editing panel can be invoked by selecting the "Graphic"
 option from the "Edit" pulldown menu in ImageWorks.

 The top area of the Graphic Editing panel contains a list of graphic
 planes available in which to draw.  One of these is selected at all 
 times, and only the selected plane(s) will be affected by drawing actions.
 Selecting a graphic plane will enable it (make it visible) if it is 
 not already visible.

 The Operation area of the Graphic Editing panel contains a button
 for each major operation that can be done. At any one time only one
 of these buttons may be depressed, indicating the current operation
 mode. Descriptions of each of the operation modes follows in the
 subtopics Shapes, Lines, Cut, Copy, Paste, Flood Fill, and Annotation.

 The Style Modifiers area of the Graphic Editing panel contains
 additional modifiers for the graphic operation.

 The first option indicates whether the graphic operations should 
 result in the clearing or setting of areas of the graphic plane. 
 Clearing can be thought of as erasing.  When clear is off, you will
 be drawing into the graphic plane; when it is on, you will be erasing
 data in the graphic plane.  Remember that operations performed in a 
 graphic plane do not affect any image planes.  The Default is "off".
 If clear is off, the graphic plane's bits will be set to 1 by graphic 
 operations; if clear is on, the graphic plane's bits will be set to 0.

 The next option is the line width. All shapes and lines drawn are
 affected by the line width set here. This is even true of solid
 shapes.

 The last options are those dealing with the annotation font style
 and size. These are discussed in the Annotation subtopic. 

2	Shapes
@keyword{Circle}{Box}

 The Circle, Solid Circle, Box, and Solid Box operations are
 considered shape operations, and they all operate similarly.

 When one of the shape operations is active, it is possible to drag
 out a copy of the shape, seeing the outline as the drag takes place.
 When the drag is released, the shape is burned into the selected
 graphic plane.  The Escape key may be used to cancel an action 
 during a drag.

 Specifically, one depresses the left mouse button in the Main Image
 Window, drags the mouse while holding down the button, and releases
 when the shape has been dragged out to the desired size.
 

2	Lines
@keyword{Trace}{Line}{Polyline}{Polygon}

 The Trace, Line, PolyLine, Polygon, and Trace&Close operations are
 all considered to be line operations, and they operate similarly.

 Each of the line operations creates one or more line segments which
 are affected by the line width option under Style Modifiers. In each
 case the line operations are controlled by depressing the left mouse
 button, dragging and releasing.  The Escape key may be used to cancel 
 an action during a drag.

 The Line operation creates a new disconnected line segment for each
 Drag sequence. The PolyLine operation creates a new line segment
 connected to the last for each Drag sequence. The Polygon operation
 acts the same as the PolyLine operation, but closes the polyline to 
 form a polygon when you terminate polygon mode.

 Trace mode creates a series of short line segments as the cursor is
 dragged around with the left mouse button depressed. Trace & Close
 mode is similar to Trace mode, except that it closes the traced
 polygon when the left mouse button is released. 

2	Cut, Copy and Paste
@keyword{Cut}{Copy}{Paste}

 The Cut, Copy, and Paste functions allow the user to cut or copy 
 rectangles of a graphic plane to a hidden clipboard.  Later this
 stored rectangle may be pasted into another location in the same
 or a different graphic plane.  

 The Cut and Copy functions work identically with the exception that
 Cutting a block of graphics will blank out the selected rectangle,
 while Copying does not affect the selected area.  After Cut or Copy 
 mode has been selected on the Graphic Editing Panel, a rectangle is 
 dragged out with the left mouse button depressed and the cut/copy takes 
 place when the mouse button is released.  The Escape key may be used 
 to cancel an action during a drag.

 The Paste function writes the contents of the graphic clipboard to the
 currently specified graphic plane.  Note, however, that the pasted
 graphic is added without obliterating the existing graphics.  The 
 saved graphic is not destroyed any may be pasted multiple times.  
 After selecting Paste on the Graphic Editing Panel, the paste box may 
 be dragged around in the image window while the left mouse button is 
 depressed.  When the mouse button is released the saved graphic data 
 is added to the target region.  

 Note that the contents of the graphic clipboard are persistent when 
 the selected graphic plane is changed, so a region can be Cut or 
 Copied from one graphic plane and Pasted into another.

 The Clear mode buttons have no effect on the Cut, Copy, and Paste functions.

2	Flood Fill
@keyword{Flood Fill}

 The Flood Fill operation allows for the filling of outlined areas
 in a graphic plane.  The fill operation is triggered by a left or
 right mouse click in the main image window of ImageWorks.  The fill 
 operation is affected by the Clear mode buttons.

 The fill operation is bounded by any "eight connected" line. That is, the 
 fill operation will not expand diagonally (therefore the fill will not pass 
 through diagonal holes).

 The Trace & Close, and Polygon operations are specially designed to
 create areas guaranteed to contain fill operations. 

 The flood fill mode will be terminated after a left mouse click, but
 will persist after a right click.

2	Annotate
@keyword{Annotation!Graphics}{Graphics!Annotation}{Text}{Fonts}

 The Annotate operation is used to place text of a selected font, 
 style, and size at a desired location in a graphic plane.  Annotation 
 is affected by the Clear mode Style Modifier.  If the Clear mode is on, 
 the text will be burned out of the graphic plane.

 The fonts offered are loaded from Metafont `gf' files located in 
 /pci/etc, or (on X/Motif systems) from the X Server.  It is theoretically
 possible for the user to add Metafont `gf' files to the /pci/etc/fonts.lst
 file if they obtain additional gf fonts from other sources.

 On X/Motif systems it is possible to select one additional font by its name 
 in a user's X initialization file (i.e. .Xdefaults). The resource to be 
 set is `annotationFont'.  If the following line is placed in the 
 X initialization (i.e. .Xdefaults) file, the named system font 
 (in this case *screen-bold*-14-*) should appear on the list of fonts 
 available within the Graphic Editing panel of ImageWorks: 

  *annotationFont: *screen-bold*-14-*

 When the Annotate operation is active, and keyboard focus is in the
 main image window of ImageWorks, all keystrokes will be added to a
 string placed at the current cursor position. Either the backspace,
 or the delete key should delete the last character from the string.

 Dragging the image cursor with the left mouse button should result 
 in the string being dragged as well.  Dragging with the right 
 mouse button will rotate and scale the text, pivoting around a
 point half way along the text string.  

 The string is actually burned into, or out of, the graphic plane
 when the <Enter> key is hit, or annotation mode is exited.  Hitting
 enter will also result in the image cursor moving down by the height
 of a line of text.  This is to allow for the convenient entering of
 multiple lines of text.

1	Image Info
@keyword{Imagery!Info}{Imagery!Data Type}{Imagery!Colour Gun Mapping}
@keyword{Imagery!Georeferencing}

 The Image Plane Info panel contains functions for viewing
 descriptor and data source information, as well as modifying the
 image plane descriptor, data type, and main image window gun mapping. 
 The Image Plane Info panel can be launched by selecting the "Image Info" 
 option from the "View" pulldown menu in ImageWorks.

 The first section of the panel is the "Image Planes" list. This is
 the list of image planes in memory with their descriptors. One plane at
 a time may be selected from this list, to view and modify details in
 the "Selected Object" area of the panel.

 The image plane number or "Id" of the selected image plane is shown
 just below the "Selected Object Info" title bar.  Following this is an
 editable image plane descriptor. This descriptor is normally loaded
 from the source file, and may be saved to the destination file if
 the image plane is saved.

 Also in this area is a toggle switch to change the current image plane
 between storing data in 8 bit unsigned form, and 32 bit floating point.

 Beside the toggle switch are three push buttons representing whether
 the current image plane is currently mapped to the red, green, or blue
 colour guns in the Main Image Window.  It is possible to press these
 buttons to change the video gun mapping.  This is the primary method of
 viewing image planes beyond the up to sixteen image planes which appear
 on the Control Panel.

 Following this is the source file name, channel number, and subwindow
 if the contents of the image plane were loaded directly from a
 file. This information will be blank if the image plane was loaded
 using IVI, or created by image editing.

 The Georeferencing section displays georeferencing information of a
 selected image plane. This section is known as a GeoEdit control.  There 
 is an option menu that can be used to display different coordinate systems. 
 The georeferencing information of each image plane can be edited. 

 See Also: GeoEdit

1	Image Editing
@keyword{Imagery!Editing}

 The Image Editing panel contains functions for modifying the
 visible image planes. Therefore, you should use the Control Panel to
 specify which image planes you wish to affect.  

 Tracing, creating shapes, and annotation are available. It is also 
 possible to set line styles, font styles, and font size.

 The Image Editing panel can be launched by selecting the "Image"
 option from the "Edit" pulldown menu in ImageWorks.

 The Operation area of the Image Editing panel contains a button for
 each major operation that can be done. At any one time only one of
 these buttons may be depressed, indicating the current operation
 mode. Descriptions of each of the operation modes follows in the
 subtopics Shapes, Lines, Cut, Copy, Paste, and Annotation.

 The Style Modifiers area of the Image Editing panel contains
 additional modifiers for the image operation.

 The first option is the colour to be written by an image drawing
 operation. The default is white, or a value of 255 in each of the
 affected planes.  Any other value may be mixed using the colour
 mixing controls.

 The next option is the line width. All shapes and lines drawn are
 affected by the line width set here. This is even true of solid
 shapes.

 The last options are those dealing with the annotation font style
 and size. These are discussed in the Annotation subtopic. 

2	Shapes
@keyword{Box}{Circle}

 The Circle, Solid Circle, Box and Solid Box operations are
 considered shape operations, and they all operate similarly.

 When one of the shape operations is active, it is possible to drag
 out a copy of the shape, seeing the outline as the drag takes place.
 When the drag is released, the shape is burned into the selected
 image planes.  The Escape key may be used to cancel an action during 
 a drag.

 Specifically, one depresses the left mouse button in the Main Image
 Window, drags the mouse while holding down the button, and releases
 when the shape has been dragged out to the desired size. 

2	Lines
@keyword{Trace}{Line}{Polyline}{Polygon}

 The Trace, Line, PolyLine, Polygon, and Trace&Close operations are
 all considered to be line operations, and they operate similarly.

 Each of the line operations creates one or more line segments which
 are affected by the line width option under Style Modifiers. In each
 case the line operations are controlled by depressing the left mouse
 button, dragging and releasing.  The Escape key may be used to cancel 
 an action during a drag.

 The Line operation creates a new disconnected line segment for each
 Drag sequence.  The PolyLine operation creates a new line segment
 connected to the last for each Drag sequence. The Polygon operation
 acts the same as the PolyLine operation, but closes the polyline to 
 form a polygon when polygon mode is terminated.

 Trace mode creates a series of short line segments as the cursor is
 dragged around with the left mouse button depressed. Trace & Close
 mode is similar to Trace mode, except that it closes the traced
 polygon when the left mouse button is released. 

2	Cut, Copy and Paste
@keyword{Cut}{Copy}{Paste}

 The Cut, Copy and Paste functions allow the user to cut or copy 
 rectangles of the viewed image planes to a hidden clipboard.  Later this
 stored rectangle may be pasted into another location in the same
 or different image planes.

 The Cut and Copy functions work identically with the exception that
 Cutting a block of imagery will blank out (set to zero) the selected 
 rectangle,  while Copying does not affect the selected area.  After 
 selecting Cut or Copy mode on the Image Editing Panel a rectangle is 
 dragged out with the left mouse button depressed and the cut/copy takes 
 place when the mouse button is released. The Escape key may be used 
 to cancel an action during a drag.

 The Paste function overwrites a region of imagery with the contents 
 of the image clipboard.  The saved imagery is not destroyed
 and may be pasted multiple times.  After Paste on the Image Editing 
 Panel has been selected, the paste box may be dragged around in the
 image window while the left mouse button is depressed.  When the
 mouse button is released the saved imagery data is added to the 
 target region.  

 Note that the contents of the imagery clipboard are persistent when the
 viewed image plane(s) are changed, so a region can be Cut or Copied from
 one image plane and Pasted into another.  The Cut and Copy functions will
 grab one or three image planes worth of unenhanced image data
 when the Cut or Copy takes place.  The enhancement and/or PCT of the
 image window are not associated with the data in the clipboard.

 The Clear mode buttons have no effect on the Cut, Copy, and Paste functions.

2	Annotate
@keyword{Annotation!Imagery}{Imagery!Annotation}{Text}{Fonts}

 The Annotate operation is used to place text of a selected font
 style and size at a desired location in the selected image planes.

 The fonts offered are loaded from Metafont `gf' files located in 
 /pci/etc, or (on X/Motif systems) from the X Server.  It is theoretically
 possible for the user to add Metafont `gf' files to the /pci/etc/fonts.lst
 file if they obtain additional gf fonts from other sources.

 On X/Motif systems it is possible to select one additional font by its name 
 in a user's X initialization file (i.e. .Xdefaults). The resource to be 
 set is `annotationFont'.  If the following line is placed in the 
 X initialization (i.e. .Xdefaults) file, the named system font 
 (in this case *screen-bold*-14-*) should appear on the list of fonts 
 available within the Graphic Editing panel of ImageWorks: 

  *annotationFont: *screen-bold*-14-*

 When the Annotate operation is active, and keyboard focus is in the
 main image window of ImageWorks, all keystrokes will be added to a
 string placed at the current cursor position. Either the backspace
 or the delete key should delete the last character from the string.

 Dragging the image cursor with the left mouse button should result 
 in the string being dragged as well.  Dragging with the right 
 mouse button will rotate and scale the text, pivoting around a
 point half way along the text string.  

 The string is actually burned into the image plane(s) when the
 <Enter> key is hit, or annotation mode is exited. Hitting enter will
 also result in the image cursor moving down by the height of a line
 of text. This is to allow for the convenient entering of multiple
 lines of text.

1	DEM Editing
@keyword{DEM!Editing}{Imagery!Editing}{Elevation!Editing}

 The DEM (Digital Elevation Model) Editing panel contains functions for 
 modifying DEM data.  The editing functions are especially useful in cleaning
 up elevation models which have been automatically extracted from satellite or
 airphoto stereo pairs (for example, from the EASI/PACE programs SDEM and 
 ADEM).  Usually DEM data is 16-bit signed integer data which has been read 
 into a 32-bit real channel in ImageWorks.

 A set of graphical editing tools is provided, enabling the user to perform
 the following functions:

 - creating editing masks
 - interpolating elevations to cover areas with no elevation information
 - filtering out 'noisy' elevation points
 - smoothing out irregularities to create a more pleasing elevation model
 - 'bulldozing' areas/lines of data to a particular elevation
 - setting areas (such as lakes) to constant values

 The DEM Editing panel can be invoked by selecting the "DEM..." option from
 the "Edit" pulldown menu in ImageWorks.

 The DEM Editing panel has five sections each of which is described below.

2	Information

 The section contains general information that controls the editing and
 display process.

 The "Elevation Channel" selector allows the selection of the channel on
 which to operate.  All operations will be applied to the channel shown. 
 To select a different channel, click on the current channel, then select
 the new channel from the ones presented.  The default channel is the one 
 that is being shown or the previous channel edited.

 The "RE-Enhance" button allows one to re-enhance the current LUT 
 while viewing 
 the DEM.  This is best used in conjunction with zooming in, which enables 
 the user to distinguish elevations easily.  This button is especially useful
 if the data being edited is in a 32-bit real channel.

 The "Failed" and "Background" labels identify input fields that allow the
 user to specify the failed and background values associated with the DEM.
 Areas where elevation should exist, but for some reason is missing, 
 are indicated by using the 'Failed' value.  Areas outside the DEM area where 
 no elevation data is meant to exist are indicated by the 'Background' value.

 Note:  many of the functions in the DEM editing panel will not be 
 accessible unless a failed and background value are entered.

 The "Elevation at cursor" field prints out the elevation at the current
 cursor position.  This is supplied for user convenience.  To see a window
 of values, the "Numeric Window ..." option from the "Edit" pulldown menu
 should be used.
 
2	Mask Operations

 This section contains various editing tools which allow the user to create 
 an area of interest mask which can be used to control various fill, filtering,
 and interpolation functions.  

 This mask is independent of any other graphics planes within ImageWorks and 
 may only be edited within the DEM Editing panel.

 The "Show Mask" toggle button will either enable or disable the display of 
 the graphic mask.  While the graphic mask is not visible, the Mask Editing 
 operation buttons such as Trace, Polygon, and Fill will be insensitive.  

 Note: only the visibility of the graphic mask is controlled by the Show Mask 
 toggle; any operations which use the graphic mask will still work correctly 
 even though the mask itself is not visible.  

 To select a new mask colour, click on the current colour, then select the 
 new colour from the menu presented. 

 The "Clear Mask" button will clear the entire graphic mask.

 The "Trace", "Trace&Close", "PolyLine", and "Polygon" buttons allow an
 area to be outlined, later to be filled.  These operations are activated by
 selecting the button and then using the left mouse button to move the
 cursor over the DEM, outlining an area of interest.  While these operations
 are active the button will appear depressed.

 The "PolyLine" operation creates a new line segment connected to the last, 
 for each Drag sequence. The "Polygon" operation acts the same as the 
 "PolyLine" operation, but closes the polyline to form a polygon when you 
 terminate polygon mode.  

 "Trace" mode creates a series of short line segments as the cursor is dragged
 around with the left mouse button depressed. "Trace&Close" mode is similar 
 to Trace mode, except that it closes the traced polygon when the left mouse 
 button is released.

 The "Fill@Cursor" button is used to flood fill an outlined area on the
 mask.  Select this function then move the cursor to the area and click the
 left mouse button to initiate the fill.  This function is deactivated
 after each left mouse button click; if the right mouse button is used the
 function remains active and another area can be filled.  

 Note:  ensure the areas to be filled are CLOSED polygons before filling
 them; otherwise, the filling will leak out and fill the entire image. 
 The "Trace&Close", and "Polygon" operations are specifically designed to
 create areas guaranteed to contain fill operations.
 
 The "Fill Failed@Cursor" button is used to flood fill an area of failed
 values.  Activate this function, then move the cursor to a part of the DEM
 with failed values.  Click the left mouse button to initiate the fill.
 This function is deactivated after each left mouse button click; if the 
 right mouse button is used the function remains active and another area 
 can be filled.

 The "Fill all Failed" button is used to flood fill ALL of the areas with
 failed values in the entire DEM.
 
2	Area Fills Under Mask

 The buttons in this section initiate fill operations under the mask.

 "Fill Using Value" sets all pixels (DEM values) under the mask to the
 value specified by the user in the "Value" text field.  

 For example, using the Mask Operations the user traces and fills a mask over
 a lake.  The elevation of the lake is read off a map and entered into the
 "Value" text field.  The "Fill Using Value" button is then used to set
 all the DEM values for the lake to the known lake elevation.

 "Fill Using Average" is similar to the "Fill Using Value" operation 
 except that all the pixels (DEM values) under the mask are set to the 
 average value of the elevations under the mask.  The current average value 
 is shown to the left of this button.

 For example, the user knows that a particular residential area is basically
 flat; however, the DEM has many bumps due to buildings etc...  The user
 masks the residential area, then uses the average elevation for the area
 as the new elevation.  This removes the bumps.

 "Fill Each Polygon with Polygon Average" is similar to the "Fill Using
 Average" function; however, each individual polygon in the mask is identified
 and its average is calculated independently and used to fill the polygon.
 If there is only one polygon in the mask, this is equivalent to the
 "Fill Using Average" function.
 
2	Bulldoze a Line

 This operation creates a series of short line segments as the cursor is
 dragged around with the left mouse button depressed.  The imagery under the
 work mask will be changed to the value specified in the "Value" field.

 The "Line Width" buttons allow the user to select the width of the line
 (in pixels).  The width only applies to the "Bulldoze" function, not the
 operations within the "Mask" section.

 The user may enter a value in the "Value" text field to be used in the 
 "Bulldoze Using Value" operations.  Any 32-bit floating point value may
 be entered.

2	Filtering and Interpolation

 This section contains three functions to clean up a DEM.  All three 
 functions may be applied to the entire DEM ("Entire DEM" button), or just
 the DEM under a mask ("Under Mask" button).

 All  functions require the user to define a "Failed" value.  In
 addition, if the current graphic mask is clear (empty), the "Under Mask" 
 buttons will not work.

 The "Remove Noise" function is used to discard any artifacts which may be 
 in the DEM.  This function is made up of two separate filters.  The first
 filter calculates the average and variance of the eight elevation values 
 directly surrounding each pixel (excluding failed and background pixels).
 If the center pixel is more than two standard deviations away from the 
 average, it is replaced with the failed value.  This filter tends to remove 
 small areas of "noisy" pixels. The second filter counts up the number of 
 failed values directly surrounding each pixel.  If there are five or more 
 failed pixels then the center pixel is set to a failed value.  This tends 
 to 'grow' failed areas on the rational that the pixels adjacent to failed 
 areas tend to have a high probability of being noise (errors).
 
 Note:  these two filters were chosen on the basis of experience and 
 experimentation.  There is no strict  mathematical or algorithmic rational
 for their selection.  It is possible that they will remove some good values
 as well as bad values.

 The "Interpolate" function replaces failed values with elevation values,
 interpolated from the good elevation values from the edges of the failed 
 area.  The interpolation algorithm used was selected for its speed and
 simplicity rather than the quality of its results.  It should be adequate
 for small areas (areas of 200 or less pixels) but should not be used 
 for large failed areas.  The algorithm linearly interpolates elevations 
 between two good values using rows and columns, and then generates a single 
 value for a pixel based on the row and column values, weighted by their 
 distance from the failed area edges.

 The "Smooth" function uses a 3 by 3 Gaussian smoothing filter.   Pixels 
 having Failed or Background values will not be altered and will not be used
 in smoothing calculations.  Smoothing can be applied multiple times, having
 a cumulative effect.

 The "Remove Noise", "Interpolate", and "Smooth" filters were designed to
 be used iteratively.  For example:  the user selects the "Remove Noise"
 function twice, then the "Interpolate" function once, and the "Smooth"
 function three times.

2	DEM Editing Hints

 Every DEM is special and requires some thought and creativity in performing
 editing; there are few fixed rules.  The DEM editing panel and other
 ImageWorks functions can be used together to get the desired results.

 The following example shows how an editing function could be performed on
 the DEM extracted from a SPOT satellite stereo pair using the 
 EASI/PACE SDEM program in the Satellite Ortho and DEM Package.

 The user opens an ImageWorks session with one 8-bit channel and one 32-bit
 real channel, and loads the satellite image into channel 1 and the DEM
 into channel 2 (the 32-bit real channel).  The PCT editing panel is 
 opened to select the "Stepped" pseudocolour table since this better shows
 elevation data.

 The DEM editing panel is opened and the user selects channel 2 as the
 DEM to edit.  Note:  the DEM editing panel fills in the Failed and 
 Background values automatically from the channel descriptor that SDEM made.
 In this case the failed value is -10 and the background -20.

 The user notes that there are a number of urban areas which were extracted
 poorly; not only are there failed values, but there are a lot of bad/noisy 
 values.  
 The user masks these areas and sets the entire area to the failed value
 using the "Fill using Value" function, then interpolates these areas using
 the Interpolate "Under Mask" option.  Then the user clears the mask.

 The user also notes a large area which failed to interpolate due to cloud
 coverage in a mountainous area.  Since the area is so large and the relief 
 so complex, interpolating this area would be impossible.  So the user decides 
 it should just be ignored.  The user masks out this area and sets it to
 the Background value using the "Fill using Value" function.  

 The user notes that the numerous lakes in the area are not flat, and in some
 cases are full of bad values and failures (typically since lakes themselves
 have no features for the automatic DEM extraction to match on).  For now
 the user ignores the lake areas since this will be fixed at a later stage.

 At this point the user selects the "Remove Noise" function for the entire
 DEM and uses it twice, followed by the "Interpolate" for the the "Entire DEM"
 (which interpolates all the failed values so none are left) and the 
 "Smoothing" function twice.  This creates a good DEM except for lake areas.

 Examining the corresponding SPOT image (which was originally loaded into 
 channel 1) the user notes that lakes in a SPOT image have very low grey 
 levels, typically 10 or less.  Using the "Modelling..." tool the user 
 enters the following equation:

               if (%1 <= 10) %2 = -10

 In other words, if a pixel in channel 1 has a grey level of 10 or less, make
 the corresponding pixel in channel 2 (the DEM) -10, or the failed value.

 All the lakes have now been set to failed values in the DEM, removing the
 original DEM values and interpolated values.  The user now locates a large
 lake and creates a mask for the lake using the "Fill Failed@Cursor" button.
 Looking up the elevation for the lake, the user enters this value for the 
 "Fill Using
 Value" function, which sets the entire lake to a nice flat surface at the
 correct elevation.  The mask is then cleared using the "Clear Mask" function
 and the next large lake selected.

 Finally the user notes the dozens (hundreds) of little lakes left over, still
 identified by failed values.  Lacking the time to locate and fill each little
 lake, the user opts for the following method:  the "Fill all Failed" button
 is used to create a mask covering all the remaining lakes; the Interpolate
 "Using Mask" option is then used interpolate values for the failed values in
 the lakes by using the shore of the lake; then the "Fill Each Polygon with 
 Polygon Average" button is used.  This last step identifies each lake as a 
 polygon and uses the average elevation for the lake as the elevation for each
 pixel in the lake (this makes it flat and approximately at the correct 
 elevation).

1	Vector Info
@keyword{Vectors!Info}{Vectors!Georeferencing}{Vectors!Enable}
@keyword{Vectors!Colour}

 The Vector Layer Info panel contains functions for viewing and 
 modifying descriptor, visibility, colour, and width information, as
 well as viewing the data source information. The Vector Layer Info 
 panel can be launched by selecting the "Vector Info" option from the 
 "View" pulldown menu in ImageWorks.

 The first section of the panel is the "Vector Layers" list. This is
 the list of vector layers in memory with its descriptor. One layer
 at a time may be selected from this list, to view and modify details
 in the "Selected Object" area of the panel.

 The vector layer number or "Id" of the selected vector layer is
 shown just below the "Selected Object" title bar. Below this are the
 "Visibility", "Width" and "Colour" selectors. The Visibility radio
 buttons are used to enable and disable the graphic plane. The
 "Width" option menu is used to select a width with which the vector
 is drawn in the image window. The "Colour" option menu is used to
 select a colour in which to display the vector layer.

 Following this is an editable vector layer descriptor. This descriptor 
 is normally loaded from the source file, and may be saved to the 
 destination file if the vector layer is saved.

 Following this descriptor is the source file name, vector segment 
 number and subwindow if the contents of the vector layer were loaded 
 directly from a file. This information will be blank if the graphic 
 plane was created with the vector editing panel.

 The Georeferencing section displays georeferencing information on a
 selected vector layer in a control known as a GeoEdit.  There is an 
 option menu that can be used to select different coordinate systems. 
 The georeferencing information can be edited and may be saved when the 
 vector layer is saved. 

 See Also: GeoEdit

1	Vector Editing
@keyword{Vectors!Colour}{Vectors!Create}{Vectors!Editing}
@keyword{Vectors!Deleting}
@keyword{Measurement}{Distance}{Area}

 NOTE: Only available on Motif systems.

 The Vector Editing panel contains functions for modifying the
 contents of a vector layer, deleting a layer, and creating a new
 layer.

 A vector layer contains two types of structures: points and lines.
 A point is represented in an Image Window by crosshairs (smaller
 than the crosshairs used for the Image Window cursor) which
 intersect at the location of the point. Lines are represented by
 polylines; that is, a line can be made up of any number of vertices.

 The Vector Editing panel can be invoked by selecting the "Vector"
 option from the "Edit" pulldown menu in ImageWorks.

 The top area of the Vector Editing panel, labeled "Vector Layers",
 contains a list of the vector layers visible in the Main Image
 Window. Editing operations can only take place within one layer at a
 time. The current layer which is selected for editing is highlighted
 in the list. A new vector layer is created each time a vector
 segment is loaded from a file or the "New Layer" button is selected in
 the "Operation" section of the Vector Editing panel. The "Highlight"
 button indicates the colour in which the currently selected structure
 within the current layer is drawn. The "Colour" button indicates the
 colour in which all other structures in the current layer are drawn.
 The "Width" button indicates how wide, in pixels, structures in the
 current layer are drawn.

 The "Operation" area of the Vector Editing Panel contains three groups
 of buttons. The first group contains the operations that can be
 performed on a single structure. The second group contains
 operations that insert a new line or point into a layer. The third
 group contains operations for creating a new layer and deleting an
 existing layer.

 The "Current Structure" area of the Vector Editing panel contains four
 editable text fields showing the attribute of the current structure
 ("Attribute"), a number identifying the current vertex within the
 current structure ("Vertex Id"), and the position of the current vertex 
 in georeferenced coordinates ("Position").  For point structures, the 
 Vertex Id value is always 1; for line structures this value is in the 
 range 1 to n where n is the total number of vertices in the line.  The 
 length of the polyline, and the area of polygon if the vector is
 closed are also displayed in this area.  If possible these values
 are displayed in real world coordinates (metres); otherwise they are
 displayed in pixels.

 Selecting the "Accept" button accepts all editing operations that have
 been made on the current structure and allows another structure to
 be selected. Selecting the "Undo" button undoes the most recent single
 editing operation. Selecting the "Cancel" button undoes all the
 editing operations on the current structure since it was last
 selected.

 The "Vertices" area of the panel contains a list of the positions, in
 georeferenced coordinates, of all the vertices in the current
 structure. Selecting an item on this list makes the vertex at that
 position the current vertex. 

2	Selecting Structures and Vertices

 When the Vector Editing panel is active and none of the operation
 buttons are depressed, the Main Image Window is in selection mode.

 If no structure is currently selected or the currently selected
 structure has not been edited, then depressing the left mouse button
 in the Main Image Window will select and highlight the structure
 nearest to the Image Window cursor and the vertex on that structure
 nearest to the cursor. The current structure is visible because it
 is drawn in the highlight colour; the current vertex is emphasized by
 drawing a box around it. As the mouse is moved around with the left
 button depressed, the current structure/vertex will be updated to
 reflect the new position of the cursor. The selection operation is
 complete when the left mouse button is released.

 If the current structure has been edited, then only different
 vertices on the current structure can be selected with the left
 mouse button. To select another structure, the editing operations
 must either be accepted or cancelled by using either the "Accept" or
 "Cancel" button in the Vector Editing panel. 

2	Operations

 Move Vertex - When the left mouse button is depressed and dragged in
 the Main Image Window, the current structure is partially redrawn
 with the current vertex moved to the position of the Image Window
 cursor. When the button is released, the entire structure is
 updated.

 Delete Vertex - The current vertex is removed from the current
 structure and the structure is redrawn. For point structures the
 point is removed from the vector layer.

 Insert Vertex - When the left mouse button is depressed in the Main
 Image Window a vertex is inserted in the current structure between
 the current vertex and the adjacent vertex which is nearest to the 
 Image Window cursor. If the current vertex is an endpoint and the 
 cursor is nearer to the current vertex than the next adjacent vertex, 
 then the inserted vertex will extend the line.

 Snap to Vertex - The current vertex is moved to the nearest vertex
 not on the current structure.

 Move Line - When the left mouse button is depressed and dragged in
 the Main Image Window the current structure is redrawn with the
 current vertex moved to the position of the Image Window cursor and
 all vertices moved a corresponding amount.

 Copy Line - The current line is duplicated.  When the left mouse button 
 is depressed and dragged in the Main Image Window the newly duplicated
 structure is dragged till the left button is released.

 Delete Line - The current structure is removed from the vector
 layer.

 Join Lines - The new current vertex becomes the closest endpoint 
 in the current structure; this is one vertex where the join will 
 take place. The second vertex of the join is selected by depressing 
 the left mouse button in the Main Image Window near the desired 
 structure. A line will be drawn connecting the current vertex in the 
 current structure with the nearest endpoint in the structure nearest 
 to the Image Window cursor. Dragging the cursor updates the connecting 
 line. Releasing the mouse button merges the two selected structures into 
 one.

 Snap to Line - The current vertex is moved to the nearest point not
 on the current structure. If the nearest point is not a vertex then
 a vertex is inserted at that position in that structure.

 Rotate Line - When the left mouse button is depressed and dragged in
 the Main Image Window, the current structure is rotated about the
 current vertex in such a way as to follow the mouse movement.

 Stretch Line - When the left mouse button is depressed and dragged
 in the Main Image Window the vertices between the current vertex and
 the endpoint nearest the Image Window cursor are rotated and scaled
 about the current vertex by amounts which position the endpoint at
 the same location as the Image Window cursor. For closed lines, all
 vertices are rotated and scaled about the current vertex by an
 amount which would then position the vertex on the current structure
 nearest to the Image Window cursor at the location of the Image
 Window cursor.

 Break Line - The current structure is modified to include only the
 vertices from an endpoint to the current vertex. A new line
 structure is created in the vector layer which includes the vertices
 from the current vertex to the other endpoint.

 Close Line - If the first and last vertices of a structure do not
 have the same position then a vertex is added to the structure which
 has the same position as the first vertex.

 Snap to Dark - Snaps vertices to a dark feature.  
 This feature is designed to aid in digitizing linear features such as
 roads or rivers & streams.  Typically this operation is used to correct for 
 small errors when digitizing such features.  
 The imagery around each vertex of the current structure will
 be analyzed, searching for pixels of lower intensity (darker).  
 The vertex will then be moved to the darker regions.  For wide regions that 
 may span several pixels, the algorithm will attempt to move the vertex to 
 the center of the features.  Other features of lower intensity near the 
 structure to be corrected may cause erroneous results.  This operation is 
 only applied to the current structure and may be undone.  Snap to Dark 
 works only in Black & White mode.

 Snap to Bright - Snaps vertices to a bright feature.  This is equivalent to 
 the Snap to Dark, but for features which have a higher intensity relative 
 to the background. The vertex will then be moved to the lighter regions.  
 The algorithm analyses imagery from the red gun in a local area around 
 the vertices.  Snap to Brigh works only in Black & White mode.

 New Line - After pressing this button, depressing and releasing
 the left mouse button in the Main Image Window adds a new vertex in
 a new line structure at the location of the Image Window cursor. To
 stop adding vertices to a line, select another operation in the
 Operation area of the Vector Editing panel or select the "Accept",
 "Undo", or "Cancel" button.

 New Point - Depressing and releasing the left mouse button in the
 Main Image Window inserts a new point structure in the vector layer
 positioned at the location of the Image Window cursor.

 New Layer - Activates a panel which creates a new vector layer.
 The panel has fields for a descriptor and georeferencing information
 which the user must specify in order to create a new vector layer.
 The base colour and width of the vector layer can also be specified 
 by using the appropriate option menus.
 Selecting the "Accept" button will create a vector layer according
 to the specified options. The "Cancel" removes the New Layer panel
 and returns back to the Vector Editing panel.

 Delete Layer - Removes the currently selected vector layer from the
 application. A panel asking to confirm the operation is presented
 since this operation cannot be undone. If the layer has been edited
 but not saved, the changes will be lost. 

 See Also: GeoEdit

2	DLG Attributes
@keyword{DLG Attributes}{Attributes}

 The DLG Attributes panel is launched from the "DLG Attributes" button on
 the Vector Editing panel.  

 The DLG Attributes panel displays a text equivalent to the DLG attribute
 which has the major and minor attributes encoded into one number.  The
 actual string translations are based on the attribute data in the file
 $PCIHOME/etc/dlg.att.

 The DLG Attributes panel will not generate meaningful output for vectors
 that do not have DLG attribute organization.  Some DLG attributes may not
 be recognized.

1	Multi-Histogram
@keyword{Histogram!Multi-Histogram Panel}{Imagery!Histogram}

 The Multi-Histogram panel allows the user to visualize histograms of
 one or more image planes under a bitmap mask.  This panel can be 
 launched by selecting "Histograms" from the "View" pulldown 
 menu in ImageWorks.  

 The Multi-Histogram panel displays one or more histograms of image
 values.  The horizontal dimension represents the grey level values 
 from 0 on the left to 255 on the right.  The tick marks along the 
 bottom show the 64, 128, and 192 points on the histogram.  

 The vertical dimension is a representation of the percentage of the 
 pixels in the sample area that have the indicated grey level value.  
 Labels on the left side of the histogram show the maximum percentage
 representable on the graph.  If the top label is "5%", and a spike of
 the histogram rises to half the height of the graph, then the grey
 level at that spike represents about 2 1/2% of the sampled area of
 the image.

 The maximum percentage can be controlled by the slider bar beneath
 the "Maximum Percentage Shown" title bar.

 The buttons beneath the "Image Planes" title bar allow the selection
 of one or more image planes for which histograms will be shown.  The 
 histogram title will indicate the image plane and sampling area being 
 displayed.

 The "Graphic Mask" area of the panel allows the selection of the sampling
 area.  This can be the area under any of the graphic masks, or just the 
 area of the image that is currently showing in the main image viewing 
 window, or all the data in the image plane.

 The histograms on this panel will be updated every time the image data,
 bitmap masks, or image view windows change.  If the "Showing" mask area
 is chosen, it is possible to roam around the image planes, seeing 
 dynamically how the histograms of different image planes change from
 area to area.

1	Numeric Values
@keyword{Digital Matrix Imagery}
@index{Imagery!Numeric Values}{Numeric Values}

 The Numeric Values, or Digital Image Display report is a text
 display of the digital values in one or more image planes, centered
 on the current cursor position.

 The Digital Image Display panel can be launched by selecting the
 "Numeric Values" entry on the ``View'' pulldown menu of ImageWorks.
 The panel will be created with a digital matrix for each of the
 image planes visible at the time the panel is created.

 Multiple panels may be created, by selecting ``Numeric Values'' from the
 ``View'' menu multiple times. If the image plane to colour gun mappings
 are changed between launches of the Digital Matrix report, each of
 the reports will display the digital data from a different image
 plane. 

 The grey level for the single pixel under the cursor is displayed on the
 General Control Panel.

1	Set Georeferenced Map Area
@keyword{Georeferencing}

 The Set Georeferenced Map Area panel allows the user to either set 
 or edit the georeferencing information of an image.  This panel also 
 permits the user to specify the area to which an image will be loaded 
 in the ImageWorks window.

 The Set Georeferenced Map Area panel can be invoked by selecting the
 "Set Map Area" option from the "View" pulldown menu in ImageWorks.

 The top area of the panel contains georeferencing information.
 There is an option menu to select different coordinate systems, and 
 there are fields to display (or edit) the UTM Zone, the upper left 
 corner coordinates, and the lower right corner coordinates.  This is 
 known as a ``GeoEdit'' control.

 The next section of the panel contains two radio boxes for selection 
 of the "Informational Only" or "User Controlled" mode.
  
 The "Informational Only" mode displays the georeferencing values of the 
 image that is initially loaded into ImageWorks.

 The "User Controlled" mode permits the user to specify the area represented
 by the ImageWorks work area.  Note that this is the entire work area
 in memory, not necessarily just what is shown in the view window.

 When an image is loaded with the "User Controlled" mode selected, the 
 portion of the image, and the area of the display it is loaded to will
 be adjusted according to the georeferenced bounds established in this panel.

  - NOTE: For UTM coordinate systems, it is important to specify the 
    UTM ZONE if the image that will be loaded contains UTM Zone 
    information.

 The following example shows how the Set Georeferenced Map 
 Area panel can be used:

  - Start ImageWorks.

  - Load the demonstration database file called "irvine.pix".

  - Launch the "Set Georeferenced Map Area" panel.

  - In the "Informational Only" mode, the panel displays the
    georeferencing information of "irvine.pix". 
    NOTE: The image is in UTM coordinates and has a Zone number.

  - In the "User Controlled" mode, the user can choose to  
    edit the georeferencing information of the database file.

  - Toggling back and forth between the "Informational Only" and
    "User Controlled" mode will clear any edited georeferenced
    values to their corresponding default values. 

  - To set a georeferenced map area for an image that will be loaded in
    ImageWorks, make sure that the "User Controlled" mode is
    selected. If required, enter a UTM Zone value similar to 
    that of the image that will be loaded.  
    Then load the demonstration file called "eltoro.pix".
    The image from "eltoro.pix" will align within the specified 
    georeferenced values.

 NOTE: Once two or more images of different coordinate systems are
 loaded and assigned to a specified georeferenced area, switching
 to the "Informational Only" mode would not display any relevant 
 georeferencing information.

 The georeferencing information of each image can be viewed by 
 selecting "Image Info" from the "View" pulldown menu.

 See Also: {|}Image Info, GeoEdit

1	ImageWorks Linking
@keyword{Georeferencing}{Linked Windows}

 NOTE: Only available on Unix.

 The ``Link Windows...'' entry on the ``View'' pulldown menu in ImageWorks 
 pops up a Link Control panel that allows a user to link the cursor in one 
 ImageWorks session to that of another ImageWorks session.

 To employ this feature it is necessary to have two or more ImageWorks
 sessions running on the same machine, started by the same user as
 determined by the userid.  Then the user selects the "Link" radio button on
 the Link Control panel of each of the ImageWorks sessions to enable the
 link.  

 After this is done, moving the cursor in one of the linked ImageWorks 
 sessions should cause the cursor to track in all other linked ImageWorks 
 sessions.  The locations will track according to the georeferenced 
 location of the cursor if the georeferencing types match, otherwise they 
 will track according to the ImageWorks pixel/line coordinates.

 The link option can be tried out on the demonstration files irvine.pix,
 eltoro.pix, and map100.pix.  First launch three copies of ImageWorks, 
 from the command line, or from VDINIT.  Then load them with the 
 demonstration file irvine.pix using the "Load Imagery" panel in the
 "File" pulldown menu.  Then select the "Link" toggle from the "View"
 menu in each of the ImageWorks sessions.  Thereafter, moving the
 cursor in any one of the ImageWorks sessions should result in the
 cursor tracking to the same georeferenced location in the other two
 ImageWorks windows.

 Linked cursors can be disabled by selecting the ``Unink'' radio button
 on the Link Control panel.

1	Cursor Control
@keyword{Cursor!Colour}{Cursor!Position}{Cursor!Enable}

 The Cursor Control panel is used to display and update the state of the
 cursor in the main ImageWorks display window.
 In particular it is possible to change the cursor colour, enable it,
 disable it, and move it to a new position using the Cursor Control panel.
 The Cursor Control panel is launched from the "Cursor" entry on
 the "Tools" menu in ImageWorks.  

 The Cursor Mode radio buttons can be used to enable and disable the 
 cursor.  This area will correctly show whether the cursor is currently
 enabled or disabled, even if it was changed by the DCP PACE program.

 The Cursor Colour option menu can be used to modify the cursor colour.  If
 the cursor colour is changed using the PACE program DCP, or by some other 
 means, the displayed colour on this panel may be incorrect.

 The four pairs of text fields display the cursor coordinates in different 
 coordinate systems.  It is possible to modify the coordinates displayed 
 in any of these text fields in order to move the cursor.  This means it 
 is possible to move the cursor in any of the supported coordinate schemes.

 The first coordinate system is Display coordinates.  This is measured in
 terms of the size of the image planes in memory in ImageWorks (as determined
 in VDINIT or the ImageWorks Configuration Panel) which may be larger than 
 the window in which the imagery is being displayed.  The location is 
 displayed as a pixel / line pair.

 The second coordinate system is Database coordinates.  This representation
 is based on the assumption that the currently selected file has been loaded
 based on the most recently selected input window in the Image or Graphic
 load panels.  If no input window has been selected, the entire database 
 is assumed.  The result is the pixel and line that the cursor points to 
 in the currently selected database.

 The third pair of text fields displays the cursor coordinates in geocoded
 coordinates according to the geocoding associated with the Image, Graphic,
 and Vector layers currently being displayed.  If all the data layers being
 displayed do not match, no coordinates will be displayed.  If the loaded
 data has no geocoded locations associated with it, then the geocoded location
 will be shown in pixels and lines, and will normally be the same as the
 Database coordinates.  The units displayed to the right of the text fields
 are a clue to the geocoding type.

 The last coordinate system displayed is Geographic (Lat/Long).  If sufficient
 geocoding information is available for the viewed data layers to project the
 cursor location into Geographic coordinates it will be displayed.  Typically
 UTM data with a valid zone number must be provided for this transformation
 to take place.

 See Also: {..|Control}Control Panel, DCP

1       Filter
@keyword{Imagery!Filtering}{Filtering}
	
 NOTE: Only available on Motif systems.

 The Filter panel is used to provide different filter operations on
 an image. A filter can be used to either sharpen, smooth or detect 
 edges that are present in an image.
 
 The Filter panel can be launched by selecting "Filter" from the
 "Tools" pulldown menu on the main ImageWorks window. The Filter
 panel consists of three main areas containing the selection for the
 input and output channels, the filter size and the filter type.
 Launching the Filter panel will also display a Filter preview panel
 that provides a preview of the filtered result.

 The Filter Preview panel contains a "Close" button, an enhancement 
 option, and a "Zoom" option menu.  This panel displays the result of 
 any selected filter from the Filter panel.  The user can examine the 
 filtered image in the preview window before applying the filter   
 operation on the main ImageWorks window.

 The Input/Output Channel Selection area contains three option menus.
 The image plane that needs to be filtered is specified by selecting
 the first option menu. There is a "Showing" option for the input
 image that allows the user to apply a filtering operation on the
 currently visible image plane(s).  This option will automatically set 
 the output option to "Showing" to display the filtered result.

 The resulting filtered image is written to the output image plane
 specified by the output option menu.  Any existing image in the 
 output image plane will be overwritten by the filtering result.

 The Mask option specifies whether the filter is applied to the 
 entire image or under a specific graphic plane. Only one graphic
 plane can be specified at a time.

 The filter size area displays the dimensions of the filter.  The    
 user can either select one of the listed square filters, or enter 
 a specific filter size between the up and down arrow buttons.  The 
 filter dimensions must be expressed in odd numbers, in the range 
 1 to 33.  The dimensions specify the number of pixels by the number 
 lines. The filter size need not be square

 The third area of the Filter panel contains a list of filter
 operations that can be applied to an image.  See the Subtopics
 area for more information about each type of filter. 

 There is an "Apply" push button on the Filter panel that 
 will apply the selected filter operation on the main ImageWorks
 window.

 
2	 Average Filter
@keyword{Filtering!Average}

 The Average (mean) filter smooths image data, thus eliminating noise.
 This filter performs spatial filtering on each individual pixel in
 an image using the grey level values in a square or rectangular
 window surrounding each pixel. 

 For example:
   a1 a2 a3            
   a4 a5 a6             3x3 filter window
   a7 a8 a9 

 The average filter computes the sum of all pixels in the filter window 
 and then divides the sum by the number of pixels in the filter window:
 
 Filtered pixel = (a1 + a2 + a3 + a4 ... + a9) / 9

 NOTE: In order to filter pixels located near the edges of the image,
 edge pixel values are replicated to give sufficient data.

2	 Gaussian Filter (SIGMSQ = 4)
@keyword{Filtering!Gaussian}{Gaussian Filter}
 
 The Gaussian Filter is used as a low pass filter to blur an image.

 This filter uses the following Gaussian function to compute the filter
 weights:

  G(i,j) = exp ( -((i-u)**2 + (j-v)**2) / (2 * SIGMSQ) )

 where: (i,j) is a pixel within the filter window, 
 (u,v) is the centre of the filter window and
 SIGMSQ is set to 4.

 The filter weights W(i,j) are the normalized values of G(i,j) over
 the entire filter window. Hence the sum of all weights is 1.

 The grey level of a filtered pixel is the sum of W(i,j)*V(i,j) over
 all pixels in the filter window, where V(i,j) is the original
 value at location (i,j).

 NOTE: In order to filter pixels located near the edges of the image,
 edge pixel values are replicated to give sufficient data.

2	 Type 1/Type 2 - Laplacian Edge Detector Filter 
@keyword{Filtering!Laplacian}{Laplacian Filter}

 The Laplacian edge detector generates sharp edge definition of an 
 image. This filter can be used to highlight edges having both
 positive and negative brightness slopes.

 The two Laplacian filters have different weight arrangements 
 as shown below:

 Example of 3x3 Laplacian filters.

@verbatim 
         Type 1                  Type 2
	   
        0  1  0                 -1 -1 -1
        1 -4  1                 -1  8 -1
        0  1  0                 -1 -1 -1

        where sum of all the weights = 0 
@end

 NOTE: In order to filter pixels located near the edges of the image,
 edge pixel values are replicated to give sufficient data.


2        Sobel Edge Detector Filter
@keyword{Filtering!Sobel}{Sobel Edge Detection Filter}

 This filter creates an image where edges (sharp changes in grey
 level values) are shown. Only a 3x3 filter size can be used with
 this filter.

 This filter uses two 3x3 templates to calculate the Sobel
 gradient value as shown below:

 Templates: 
@verbatim
 -1  0  1       1  2  1
 -2  0  2       0  0  0
 -1  0  1      -1 -2 -1

     X             Y

 Apply the templates to a 3x3 filter window.

         a1 a2 a3
         a4 a5 a6        3x3 filter window
         a7 a8 a9
@end

 where a1 .. a9 are grey levels of each pixel in the filter window.

 X = -1*a1 + 1*a3 - 2*a4 + 2*a6 - 1*a7 + 1*a9

 Y = 1*a1 + 2*a2 + 1*a3 - 1*a7 - 2*a8 - 1*a9

 Sobel Gradient = sqrt(X*X + Y*Y)

 NOTE: In order to filter pixels located near the edges of the image,
 edge pixel values are replicated to give sufficient data.


2	 Prewitt Edge Detector Filter
@keyword{Filtering!Prewitt}{Prewitt Edge Detection Filter}

 This filter creates an image where edges (sharp changes in grey
 level values) are shown.  Only a 3x3 filter size can be used with
 this filter.

 This filter uses two 3x3 templates to calculate the Prewitt
 gradient value as shown below:

 Templates:
@verbatim
  -1  0  1	
  -1  0  1    X
  -1  0  1

   1  1  1
   0  0  0    Y
  -1 -1 -1

 Apply the templates to a 3x3 filter window.

   a1 a2 a3
   a4 a5 a6   3x3 filter window
   a7 a8 a9      
@end

 where a1 .. a9 are grey levels of each pixel in the filter window.

 X = -1*a1 + 1*a3 - 1*a4 + 1*a6 - 1*a7 + 1*a9

 Y = 1*a1 + 1*a2 + 1*a3 - 1*a7 - 1*a8 - 1*a9

 Prewitt Gradient = sqrt(X*X + Y*Y)

 NOTE: In order to filter pixels located near the edges of the image,
 edge pixel values are replicated to give sufficient data.

2	 Edge Sharpening Filter
@keyword{Filtering!Edge Sharpening}{Edge Sharpening Filter}

 This filter uses a subtractive smoothing method to sharpen an
 image. First an average filter is applied to the image.  The
 averaged image retains all low spatial frequency information but   
 has its high frequency features, such as edges and lines, attenuated.
 Consequently, the averaged image is subtracted from its original
 image and the resultant difference image will have primarily the edges
 and lines remaining.  After the edges are determined in this manner, 
 the difference image is added back to the original image to give an 
 edge enhanced image.  The resultant image will have clearer high 
 frequency detail; however, there is a tendency for noise to be 
 enhanced, as might be expected.

 NOTE: In order to filter pixels located near the edges of the image, 
 edge pixel values are replicated to give sufficient data.

2	Median Filter
@keyword{Filtering!Median}{Median Filter}

 The median filter smooths image data.  The median filter computes the
 median values within a rectangular filter window surrounding each pixel.
 This has the effect of smoothing the image and preserving edges. 

 Example:

    5 3 11 
   12 4  9     3x3 filter window
    8 6 14

 The median filter finds the median pixel value (the "middle"
 value in an ordered set of values, below and above which there
 are an equal number of values). For example, 8 is the median
 value for the above given set of grey level 
 values (3,4,5,6,(8),9,11,12,14).

 NOTE: In order to filter pixels located near the edges of the image,
 edge pixel values are replicated to give sufficient data.

2	Mode Filter
@keyword{Filtering!Mode}{Mode Filter}

 The mode filter is primarily used to clean up thematic maps for
 presentation purposes, in that it replaces small "island" themes
 by their larger, surrounding themes.

 The mode filter computes the mode of the grey level values (the most
 frequently occurring grey level value) within the filter window
 surrounding each pixel. 

 The minimum filter size is 1 by 3, and the maximum filter size 
 allowed is 7 by 7. The filter window does not need to be square. 

 Example:

    5 3 3 
    3 5 3     3x3 filter window
    3 4 5 

 Filtered pixel of filter window (3,3,3,3,3,4,5,5,5) is set to
 3, occurs 5 times.

 NOTE: In order to filter pixels located near the edges of the image,
 edge pixel values are replicated to give sufficient data.


1	Movie
@keyword{Movie Loop}{Imagery!Movie}

 NOTE: Only available on Motif systems.

 The Movie panel allows the user to display and control a set of
 image planes in the main ImageWorks window.  Either images in
 black and white mode or images in RGB mode can be displayed in a
 synchronized way. If only one image plane is specified when invoking
 ImageWorks, the user will not be allowed to use the Movie panel.

 The Movie panel can be launched by selecting "Movie Loop" from the
 "Tools" pulldown menu on the main ImageWorks window.  The movie
 panel contains different options settings at the top of the panel
 and a control section at the bottom.

 The top section of the Movie panel contains a scale to set the
 movie speed that can range from 0.1 to 35 frames per second.
 The scale has an increment of 0.1 from 0.1 to 0.9 frame per second, 
 and then an increment of 1 for other values.

 The user can set the movie speed by entering a value in the input
 text field located at the right side of the speed scale or by
 dragging the scale index.

 At the top of the speed scale, there is a display that is updated
 after each frame to indicate the actual number of frame per second.
 This display is only updated when the user has selected "Run".

 The middle scale (Frame Number scale) from the Movie panel is a
 reference to the image plane that is being displayed.  The user can
 specify a starting image plane by moving the scale to an
 appropriate position.
 In RGB mode, this scale will display the image plane number
 corresponding to the leftmost image plane as shown in the
 example below:

  image plane: 1  2  3  4  5  6  7  8

     Red                x
     Green           x
     Blue                  x

                      (Leftmost image plane 3, 
                       corresponds to Frame scale 3)

     where 'x' represents a selected colour gun.

 The Direction section allows the user to specify whether or not
 the movie will run in a forward or reverse direction.
 There is also a check box labelled "Continuous Loop" in the
 Direction section.  The "Continuous Loop" check box, when toggled on
 will run the movie continuously in the direction specified, i.e.,
 if we are working with 8 image planes in black and white mode, after 
 the last image plane has been reached (image plane 8), 
 the first image plane(1) will be redisplayed.

 The control section contains the "Run", "Stop", "Step" and "Previous"
 buttons. The following describes the control buttons:

 - "Run": The "Run" push button starts the movie at the image
   plane specified by the Frame Number scale.  Depending on the option
   chosen, if the "Continuous Loop" has not been toggled on, the
   movie will run up to the last image plane (if possible).
   Successive image plane(s) will be displayed at an interval specified
   by the speed scale (if possible).

 - "Stop": The "Stop" push button halts the movie.

 - "Step": The "Step" is used to step one 'frame' at a time.
   Depending on the direction selected, either the next or previous
   image plane(s) will be displayed.

 - "Previous": The "Previous" push button is used to display the
   previous image plane(s). Again depending on the direction selected,
   the appropriate previous/next image plane(s) will be displayed.

 Depending on whether or not the "Continuous Loop" mode is toggled on,
 the control buttons will automatically be turned on/off according
 to the frame number specified by the frame scale.

 To run the movie for displaying black and white images, select the
 black and white mode from the ImageWorks control window, and on the
 Movie panel move the scale index to the desired starting position.
 Press "Run" to start the movie.

 In the RGB mode, the user must select adjacent RGB guns.  That is,
 the RGB guns must be of a different image plane number and be one image
 plane apart (except for the left and rightmost ends).
 If the user sets the RGB guns to image plane numbers that are far apart,
 the movie will set the RGB guns to a default position where image
 plane 1, 2, and 3 will be set to the Red, Green, and Blue guns respectively.


1	PCT Encoding
@keyword{PCT!Encoding}{Imagery!PCT Encoding}

 NOTE: Only available on Motif systems.

 The PCT Encoding panel permits the user to 'split' an image PCT into 
 3 image channels each containing the equivalent Red PCT, Green PCT 
 and Blue PCT.  The PCT encoding panel can be launched by selecting 
 "PCT to RGB" from the "Tools" pulldown menu on the main ImageWorks 
 window.

 The PCT Encoding panel contains option menus to specify an input image
 plane and three output image planes for the Red, Green, and Blue image.

 After selecting the appropriate input and output image planes,
 the user can press the "Apply" push button to perform the PCT 
 encoding.  The result of the encoding will automatically be displayed
 with the RGB guns set to the specified output image planes.


1	Flicker

@keyword{Flicker}{Imagery!Flicker}

 NOTE: Only available on Motif systems.

 The Flicker panel allows the user to flip between two video states.

 A video state will record the following information:

 - Image Plane to Colour gun mapping.
 - Graphic plane mask.
 - PCT.
 - Video Mode (RGB/BW/PCT).
 - Cursor Colour.

 The Flicker panel can be launched by selecting "Flicker" from the
 "Tools" pulldown menu on the main ImageWorks window.  The flicker 
 panel contains different options settings at the top of the panel
 and a control section at the bottom.

 The top section of the flicker panel contains two radio buttons
 to specify and display a video state. 
 Once the flicker panel is displayed, all valid interaction to 
 the Control panel or to the Main ImageWorks window will be recorded.

 The next section of the Flicker panel contains a scale to set the
 video flicking speed, that can range from 0.1 to 35 frames per second.
 The scale has an increment of 0.1, from 0.1 to 0.9 frames per second, 
 and then an increment of 1 for higher values.

 The user can set the speed between two video states by entering 
 a value in the input text field located at the right side of the 
 speed scale or by dragging the scale index.

 At the top of the speed scale, there is a display that is updated
 after each frame to indicate the actual number of frames per second.
 This display is only updated when the user has selected "Run".

 The control section contains the "Run", "Stop", "Step", and "Previous"
 buttons. 

 - "Run":  Starts to flip between two video states.

 - "Stop":  Halts the flipping process.

 - "Step" or "Previous":  Displays the other video state.

 Example:

 To run the video state flicker, bring up the Flicker panel.

 - Set up your display in the main ImageWorks window as you would 
   like it to be for the "State 1". 
 - Select the "State 2" radio button from the Flicker panel. 
   From the Control Panel, set up a new display in the main ImageWorks
   window. The video display information is automatically recorded
   for State 2.
 - Press "Run" to start to flip between two video states.

1	Transformation
@keyword{Rotate}{Scale}{Flip}{Transform}{Transformation}

 The transformation panel is used to perform some simple transformations
 on the image pixels. These include flipping along a vertical axis, flipping
 along a horizontal axis, rotation about a point, rotation about the centre
 of the image, and scaling about a point.

 These transformations can only be done on one image plane at a time.
 The input and output planes are selected with option menus. It is
 possible to perform the transformation "in place" by selecting the
 input and output planes to be the same. Note that when this is done,
 the original data will be overwritten with the newly transformed image.

 The image window cursor plays an active role in determining how
 the transformation occurs. When flipping along a vertical axis, the
 flip is done along the line x = cursor x position. When flipping along
 a horizontal axis, the flip is done along the line y = cursor y position.
 Rotations and scalings are done about the point (cursor x position, 
 cursor y position). Rotations can also be performed about the centre of
 the image window.
 
 To perform a rotation about a point, select the angle by moving the slider.
 Exact rotation angles can also be entered directly into the textfield. 
 Position the cursor on the point you wish to act as the origin
 for the rotation. Pressing the "Rotate about cursor" button will perform the
 transformation.

 To perform a rotation about the centre, select the angle by moving the slider.
 Exact rotation angles can also be entered directly into the textfield. 
 Pressing the "Rotate about centre" button will perform the transformation.

 To perform a scaling, select the scaling factor by moving the slider.
 Note that this slider follows a logarithmic scale. The log scale applies
 to the slider only and is used to make it easier to select small and 
 large scaling factors. Exact scaling factors can also be entered directly 
 into the textfield. Position the cursor on the point you wish to act as 
 the origin for the scaling. Pressing the "Scale" button will perform 
 the transformation.

 To perform a flip along a vertical axis, position the cursor so that 
 its x position lies on the vertical axis. Pressing "Y Axis Flip"
 will perform the transformation.

 To perform a flip along a horizontal axis, position the cursor so that
 its y position lies on the horizontal axis. Pressing "X Axis Flip"
 will perform the transformation.

1	Perspective
@keyword{Perspective}{3D}

 The perspective panel is used to generate three-dimensional perspective
 scenes from elevation and colour data. 

 To generate a scene, eight image planes are required: four input and
 four output. The four input planes are used to specify an elevation model 
 as well as red, green, and blue colour information for each point in that
 model. The four output planes are used to output the generated scene into
 red, green, and blue channels. The last output plane is used to store
 a distance map. A distance map is an image that contains the distance of
 the viewer from each point in the perspective scene.

 There are three sections in the Perspective Scene Generation panel. The
 "Parameters" section is used to specify the viewing geometry parameters.
 The "Channels" section is used to specify which channels will be used
 as the eight input and output channels. The "Options" section is used to 
 specify additional scene generation parameters that can be used
 to enhance the image.

 At the bottom of the panel are the action buttons. The "Generate" button
 is used to perform the perspective scene generation. The "Close" button
 pops down the panel. The "Help" button displays this help.

2 	Parameters

 The viewing parameters essentially specify where in three-dimensional
 space the viewer is positioned and where he is looking. The field of view
 specifies how wide the viewing cone is. In this diagram, point a is the view
 from position, point b is the view at position and the field of view is
 the angle between the two diagonal lines.

@verbatim
    ------b------  
    \     ^     /  
     \    |    /    
      \   |   /    
       \  |  /     
        \ | /      
         \|/       
	  a
@end

 The view from position is the position in the image that the viewer
 is viewing from. It is specified in pixel/line coordinates. It can only be 
 set by using the "Set From Cursor" button. Pressing this button
 sets the view from position to the current position of the cursor in the 
 image window.

 The view from elevation specifies how high the viewer is looking from.
 The units used should be the same as those used for the channel specified 
 by the "Elevation" option menu. There are two ways to set this value. 
 It can be entered directly into the textfield, or the 
 "Set From Elevation" button will set the elevation. The data value used is
 the value at the current cursor position in the plane specified by the 
 "Elevation" option. 

 The view at position and view at elevation controls are similar to the
 view from controls except they are used to specify where the viewer is
 looking.

 HINT: The rendering algorithm renders the scene with the view at position
 at the bottom of the generated image. To get best results, set the
 view from elevation higher than the view at elevation so that the
 viewer is looking down.

 The "Field of View" textfield is used to specify how wide the view
 cone should be. This value is given in degrees. 

 The following diagrams explain how varying the look at point along a 
 line of sight can be used to change the rendering plane (RP).

@verbatim
   |------b------| RP                 
    \     ^     /                     
     \    |    /                       
      \   |   /          |---b---| RP
       \  |  /            \  ^  /     
        \ | /              \ | /      
         \|/                \|/       
	  a	             a
@end

 The rendering plane represents a "window" which is used to generated
 the three dimensional scene. Everything in the image database that is in 
 front of the rendering plane (i.e. on the same side as the view from 
 position a) will not be included in the generated scene. The rendered scene 
 will contain only the image database behind the rendering plane as 
 projected on the rendering plane. Also keep in mind that the larger the
 field of view angle, the wider the rendering plane will be.

2	Channels

 There are option menus to specify which channels in the image database
 correspond to the four input and four output channels. 

 The elevation and distance map channels must be 32-bit real. If these
 channels are 8-bit, a panel will pop up when generating the perspective
 scene, allowing the user to convert the planes to 32-bit real.

 The input and output colour channels must be 8-bit. 

 All of the output planes must be unique and cannot be set to any of 
 the input planes. This is required to ensure that writing the generated
 scene does not cause any existing planes to be overwritten 
 improperly.

2	Options

 The height magnification is used as a stretching factor to magnify the 
 elevation values. Essentially, all of the values in the elevation channel
 are multiplied by this factor when generating the perspective scene.

 Bilinear interpolation is an option used to specify how to interpret
 the data in the input colour planes. When this option is on, the colour
 at a particular point in the database is interpolated from the data in
 the surrounding pixels. This feature provides a smoothing effect. 
 When this option is off, the colour of a particular point is the colour
 of the pixel in which that point falls. In the rendered image, each
 database pixel will look very distinct.

 The background colour is used for any part of the scene that did
 not contain the terrain. The edge colour is used for parts of the
 scene that represent the sides of the terrain. Keep in mind that these
 colours are the raw data and will not look the same in the image window 
 if the output image planes have lookup tables.

1	Print 
@keyword{PostScript}{Printing}{Screen Dump}

 NOTE: Only available on Motif systems.

 The Print panel allows the user to capture the contents of the main 
 ImageWorks window. The Print panel will create a PostScript file
 which can then be sent to a PostScript printer to obtain a hardcopy
 of the main ImageWorks window.

 The Print panel can be launched by selecting "Print" from the "File" 
 pulldown menu on the main ImageWorks window.  The Print panel contains 
 an input text field to specify the name of the PostScript file that 
 will be created. 

 The number of copies can be specified in the Copies input text field.
 There is a DPI (dots per inch) text field that will allow the user to 
 specify the quality of the output.
 To obtain a certain output quality, the user must select Actual 
 Size option and specify a DPI value that can be handled by the printer 
 from which the PostScript file will be printed.

 A Colour mode check box is used to allow the user to specify whether or 
 not to create a colour output PostScript file.  When the Colour 
 check box is toggled on, colour PostScript output will be created,
 otherwise, the output will be in black and white.  
 If the contents of the main ImageWorks window is in colour and the
 colour option is not selected, then a black and white output will be
 generated where the RGB values of each pixel are averaged to obtain
 a greyscale image.

 The next section contains layout options. By default, the paper
 X and Y dimensions are set to 8.5 by 11.0 inches respectively. The user
 can edit the paper size values or select different units (inches or cm)
 specified by the "Units" option menu.
 The image will always be placed at the centre of the page and the
 paper dimensions must be wide enough for the specified image.

 The orientation radio buttons allow the user to specify whether or
 not a Portrait (upright) or Landscape (sideways) output is required.

 The scaling radio buttons allow the user to specify whether
 the output image is to be scaled in order to have a maximum fit in the 
 specified paper size, or the actual image size is to be used.
 If the Maximum Size option is selected, the image will be enlarged
 to fit in the specified page but will lose some image quality.
 Image scaling can also be achieved by changing the DPI value.
  
 The "Print To File" push button creates a PostScript file of the image 
 displayed in the main ImageWorks window according to the specified 
 print options. 

 NOTE: The Print panel captures the contents of the main ImageWorks window.
 It is recommended that the main ImageWorks window be brought to the 
 foreground (not overlapped by other windows); it must not go off the edge 
 of the screen. 
 The size of the image to be printed depends on the size of the ImageWorks 
 window size.(Maximum size will be the size of your computer screen)
 To capture only a portion of an image, resize the ImageWorks window 
 appropriately or load in a subwindow of the image.

1	Rasterization
@index{Vectors!Rasterization}{Rasterization}{Imagery!Burning in Vectors}
@index{Graphics!Burning in Vectors}
@keyword{Rasterization Vectors Burning Polygon Line Fill}

 The Rasterization panel allows the user to burn or encode lines
 and polygons into image or graphic raster layers.  Contour lines can be
 converted to a DEM (in combination with interpolation in the DEM Editing 
 panel); geopolitical boundaries can be converted to raster mask layers. 

 The topmost region of the Rasterization panel contains a list of potential
 source vector layers.  One of these vector layers should be selected as 
 the source by clicking on it.  The selected layer will appear highlighted.

 Below this is the destination raster layer list.  This is a list of all the
 image and graphic planes available to burn the result into.  The
 image planes are all prefixed with "I" and graphic bitplanes are prefixed
 with "B".  The selected layer will appear highlighted.

 At the bottom of the panel are the radio buttons used to select the
 rasterization algorithm.  The first algorithm, Edges Only, is used to burn
 lines into the raster layer.   When burned into an image, they are assigned
 image values based on the attribute of the vector. 

 The second algorithm is used to encode polygons into the raster layer.  In
 this case the polygon is burned into the raster layer based on the attribute
 of a seed point.  Each point structure is assumed to be an interior point
 of a polygon to be flood filled.  The polygon boundaries are the nearest
 vector lines in any direction.  The bounding line(s) need to enclose the
 seed point, but the boundary does not need to be a single vector polyline
 structure.  If more than one seed point appears in a polygon, it is random
 which value the polygon will be flooded with.

 The third algorithm, Polygons (Closed Lines), is based on a scanline 
 rasterization algorithm.  In this case a polygon is determined to be a 
 single vector structure with three or more points, where the first and
 last vertices are at the same location.  The polygon is filled with the
 attribute of the bounding line.  Point structures and lines that do not
 form closed polygons are ignored.

 When a source vector layer, destination raster layer, and algorithm have
 been selected, the rasterization can be triggered by hitting the Rasterize
 button at the bottom of the panel.

 Vector attributes can be previewed in the Vector Editing panel, and values
 outside the range 0-255 will be clipped into this range if the output layer
 is an eight bit image plane.  Polygons burned into bitmap layers always
 set the bits to on, regardless of the attribute for the polygon.  The 
 operations done by this panel are similar to the functions of the PACE
 programs GRDVEC and GRDPOL.

 See Also: {|}DEM Editing, {|}Vector Editing

1	Modelling
@keyword{Imagery!Modelling}{Modelling}{EASI+}

 NOTE: Only available on Motif systems.

 The Modelling command window is used to enter modelling equations to
 be applied to the ImageWorks image planes.  The modelling equation 
 formats are similar, though less powerful than those found in the
 MODEL PACE program.  This window may be launched from the "Modelling" 
 entry in the ImageWorks "Tools" pulldown menu.

 The Modelling panel allows the user to type in single line equations
 in the field labelled "EASI+ Command:", which are evaluated after the 
 user hits <RETURN>.  The equations are normally evaluated for every 
 pixel in the target image plane to which the results are assigned. 
 The equation is then pushed into the history window above the command
 line.

 The following subtopics describe how to form simple modelling equations,
 how to execute saved modelling procedures, and a little about other
 capabilities of the ImageWorks EASI command interface.

2	Simple Image Modelling

 Modelling equations in their simplest form are arithmetic combinations
 of image planes assigned to an image plane.  Image planes are indicated
 by a percent sign followed by the image plane number.  The following 
 equation assigns the average value of image planes one and two to
 image plane three.  

   %3 = (%1 + %2)/2

 The assignment is evaluated for every pixel in image plane three, using
 the corresponding pixel values from image planes one and two.  Another
 trivial example simply initializes an entire image plane to a constant
 value.

   %1 = 255

 The standard set of arithmetic operations are available in modelling
 expressions.  They are listed below with a short description.

@verbatim
   a + b		Addition
   a - b		Subtraction
   a * b    		Multiplication
   a / b    		Division
   a ^ b		Exponentiation
   ( a )		Parentheses, also square brackets [].
   - a			Unary negation	
@end

 A wide set of mathematical intrinsic functions is also available,
 including the sin(), cos(), tan(), asin(), acos(), atan(), ln(),
 log10(), exp(), exp10(), rad(), deg(), abs(), int() and frac() functions.

 For more detailed information, the EASI manual may be consulted.  The
 main difference between modelling in EASI and modelling in ImageWorks is
 that the ImageWorks image planes are the default "database" when
 using modelling in ImageWorks.

 See Also: {EASI|expre|mod}EASI Modelling Expressions,
           {EASI|func|calc}EASI Calculator Functions

2	Modelling Logic

 In addition to simple assignment equations, it is also possible to
 construct simple logical operations in the Modelling command window.
 These operations take the form of "if" statements.

 For example, the following command would set the value of image plane
 two to 255 anywhere the image value of image plane one is between
 32 and 64.

   if( %1 >= 32 AND %1 <= 64 ) %2 = 255 

 The possible comparison, and logical functions are:

   a > b	a greater than b
   a < b	a less than b
   a = b	a equals b
   a <> b	a not equal b	
   a <= b	a less than or equal b
   a >= b	a greater than or equal b
   a OR b	a is true or b is true
   a AND b	a is true and b is true
   !a		a is not true

 It is also possible to use brackets to ensure operations take place
 in the expected order.

2	Modelling Procedures

 It is possible to create a text file containing a series of modelling
 commands using your favourite text editor (e.g. vi or emacs) and then
 to run them all with a single command in the ImageWorks modelling
 panel.

 To do this, create the file with a file name all in capitals, and 
 with the .EAS extension (i.e. FILTER.EAS).  Then edit it using your
 favourite text editor, and save it.  Then run ImageWorks, launch the
 modelling panel and type "run filter".  

 If the file name is not all in capitals, it will not be found when
 the run command is entered.  Reports of syntax errors will
 be sent to `standard error' which is usually the window from which 
 ImageWorks was launched.  If ImageWorks was launched from PCIWorks,
 then the output will go to the window from which PCIWorks was launched.

 It is usually best to try the modelling commands interactively until the
 desired results are achieved, and then to add the commands to the text file.
 
 The text file is known as a procedure in EASI.  

2	EASI

 For V5.3 the EASI command window in ImageWorks is primarily intended
 to serve as a method of performing modelling; however, all EASI 
 commands are available via the EASI command window.  

 The EASI Reference Manual may be consulted for full information on 
 the EASI command language.  There are some considerations when using
 EASI commands in ImageWorks.

 - For the purpose of modelling, the default database in ImageWorks is
   always the ImageWorks image planes. 

 - No PACE programs which access the display should be run, unless 
   a different ImageWorks or Handler is being accessed.  Otherwise
   both processes will "lock up".

 - Only command input comes from the ImageWorks command window.  All 
   other input and output will be directed to the command window from
   which ImageWorks was launched.

 In the future, PCI plans to allow the ImageWorks interface to be 
 augmented with EASI functions that are launched from menu pulldowns,
 as well as allowing EASI functions to have access to many of the internal 
 ImageWorks data structures.

 See Also: EASI

1	ERRORS

2	No Graphic Planes Available

 There are no graphic planes in the current ImageWorks configuration,
 so Graphic Editing is not possible.  The Configuration Panel or VDINIT
 must be used to enable graphic operations at startup time.

 See Also: VDINIT, {..|..|Config}Configuration Panel

1	Spectral Plot
@keyword{Spectral Plot Hyperspectral Spectroscopy}

 This panel is launched by selecting "Spectral Plot" from the "View" menu in 
 ImageWorks.
 
 The spectral plot panel is primarily designed to graph hyperspectral image 
 data from an image file or from a spectral library. Typically, the image
 data is stored in an AVIRIS (Airborne Visible/Infrared Imaging Spectrometer)
 data file and the libraries are stored in USGS spectral library format.

 This panel allows graphing of data where the
 channel number is the independent variable. The type of data that 
 can be plotted with this panel is data cubes. The x and y position in 
 the cube correspond to a plane, similar to the coordinate space of the 
 image window. The z dimension of the cube is the channel number. The 
 spectral plotting feature allows the graphing of the imagery data at 
 a specific (x, y) as a function of z. In the case of hyperspectral data,
 the channel number represents wavelengths. 

 There are two parts to the spectral plot: a main panel and a graph. 
 The panel allows control over graphing options, plotting ranges and 
 spectra selection. The spectral plot is an output only graph used to show 
 the actual spectral plot.

 There are five major areas in the spectral plotting panel. The library
 area is used to select a spectral library. The "Displayed Spectra" section
 is used to choose spectra to plot, either from the library or from the
 imagery. The "Graph options" are used to control axis labelling and other
 plotting options. The "Hyperspectral Image" section is used to specify
 which image channels correspond to the full spectral image. The "Plotting 
 Ranges" area is used to determine axis scaling of the spectral graph.
 At the bottom of the panel are four action buttons, "Close", "Clear Plots",
 "Save Spectrum...", and "Help".

 Initially no library is selected, no spectra are selected, and thus the
 graph is empty.

2	Spectral Graph

 The spectral graph is a separate panel that only contains the graph.
 There are no controls on the panel and the only way to pop it down
 is to pop down the main spectral plot panel. 

 Note that the graph is resizable, and resizing the window also
 resizes the drawn graph within it.

2	Spectral Library

 When the "Select Spectral Library..." button is pressed, a file selector
 is popped up to allow selection of a spectral library file. If the file 
 selected is not in USGS spectral library format, a warning will pop up to 
 indicate this. After a valid library is selected, it will be scanned for 
 spectral records. The 40 character titles of these records will be presented
 in the list box for selection. This list box is used in close conjunction
 with the displayed spectra section.

 See Also: {..|}Displayed Spectra, {..|}Valid Spectral Library

2	Displayed Spectra

 The displayed spectra section is used to show which spectra have been chosen
 to be plotted. There are 16 available "slots" and each has a separate colour.
 The slot colour corresponds to the colour used to draw that spectra in
 the graph.
 
 There will always be one slot that is pushed in. This is the active slot.
 All operations on the panel that deal with specific spectra are performed
 on this currently selected slot. Only one slot can be active at once and 
 initially the first slot is selected.

 To plot a record from the spectral library, select that record from the
 spectral library list box. After doing this, the currently selected slot
 is automatically advanced.

 To plot image data, position the image window cursor on the desired pixel 
 location and press "From Image". Data for that (x, y) location in the 
 selected file will be plotted. Image data cannot be selected if a file
 has not been opened. Data is read directly from the disk file,
 not from the channels that imageworks has loaded. When an image pixel is 
 the currently selected item and the cursor moves in the image window,
 the graph is updated as the position changes. Also, the data that is
 plotted is affected by the "Window Size Around Cursor" option menu in
 the "Graph Options" area. 

 Any slot can be used to plot spectral library or image data.

 Once data is loaded into a slot, it will not change. The two exceptions
 are when the slot refers to an image pixel and the window size changes
 or the image window cursor is moved. For example, if the image pixel
 refers to pixel (257, 257) and a new file is loaded in, the data will
 still refer to the old file and will not automatically load pixel (257, 257)
 from the new file. Another example is that after a spectral library record 
 is chosen, if another library is opened, the slot will still hold the
 data from the previous library.

 The slot can be cleared by pressing "Clear Item". To change the colour
 used for a particular slot, press "Edit Colour...". A standard colour
 mixer can then be used to modify the slot colour.

 See Also: {..|}Graph Options

2	Graph Options

 This option affects the manner in which the x axis is labelled as well 
 as the title of the graph. The "X Axis Labelling" option menu allows 
 the x axis to show either the channel number or the wavelength 
 (in micrometres). If wavelength is chosen, the selected library wavelength 
 record is used to translate channel numbers to wavelengths. If there is no
 wavelength record available, the x axis will not be annotated.
 
 When a spectral library file is opened, the first wavelength record in the
 library file is used to define the wavelengths for each channel in the
 displayed image. If there is more than one wavelength record in the library
 (this is rare), this option menu can be used to change the wavelength record.
 
 The average of the data values in a square window around the display
 cursor can be plotted. This means that for every channel, the data values
 in the window are averaged and this is the value that gets plotted. 
 The window size is selected with the "Window Size Around Cursor" option menu. 
 This option menu is only effective when the currently selected slot is
 an image pixel. It will not retroactively alter all slots that are image
 pixels to use the window size.
 
2	Hyperspectral Image

 The channel first and last textfields are used to specify which channels
 in the imagery correspond to the full range of the spectral library records.
 For example, an AVIRIS file may have 448 channels, with channels 1-224
 representing one scene, and channels 225-448 representing another. To
 properly choose the second scene, the first and last channels would
 be set to 225 and 448 respectively. Suppose that the spectral library
 had 204 channels. Then channel 1 of the spectral library would correspond
 to channel 225 in the image, and channel 204 of the library would
 correspond to channel 448 of the image.

 The first channel must be equal to or greater than 1. The last channel
 must be equal to or less than the number of channels in the currently
 opened file. When a new file is opened, the first and last channels
 may be readjusted accordingly.

2	Plotting Ranges

 There are several plotting ranges to consider. The channel min and max
 determine which channels between the first and last channel should be
 plotted. This affects the horizontal scaling of the graph. The library
 min and max determine the scaling of library spectra. The image min and max 
 determine the scaling of image data. 

 Whereas the first and last channel define which channels in the imagery
 correspond to a full range in the spectral library, the channel min
 and max specify which part of the full range to graph. The channel min and 
 max are bounded by the first and last channel values in the "Hyperspectral 
 Image" area. In other words, the channel min (or the first channel to plot) 
 and channel max (or the last channel to plot) must be within the range 
 [channel first, channel last].

 Library spectra usually contain normalized values. It is real data and a 
 typical range is [0.0, 4.0]. The image data is often 16-bit signed 
 raw data. This is why two independent vertical scalings are needed. The 
 library spectra scale is drawn on the left side of the graph. The image 
 scale is drawn on the right side of the graph.

2	Actions Buttons

 The "Close" button closes the spectral plotting panel as well as the graph.
 
 The "Clear Plots" button clears all the slots in the "Displayed Spectra" 
 section but leaves other options unchanged.
 
 The "Save Spectrum..." button pops up a panel which enables the saving of
 a spectrum into a spectral library.

 The "Help" button displays help for the Spectral Plotting panel.

 See Also: {..|}Save Spectrum

2	Save Spectrum

 The "Save Spectrum In Library" panel is fairly straight forward. 
 First, a library must be selected by using "Select Spectral Library...".
 The history and title text are used when writing the record into the
 library. Only the first 74 characters of history are used. Only the
 first 40 characters of the title are used. A new record is always 
 appended to the end of the selected library. If the library doesn't 
 exist, a new one is created. Pressing "Save" saves the currently
 selected spectrum into the spectral library. If the currently selected
 spectrum is empty, a warning is popped up and nothing will be saved.
 The "Close" button pops down the panel. The "Help" button displays this help.
 
2	Valid Spectral Library

 A USGS Spectral Library file is composed of 1536 byte records. Record 1
 starts at byte 1536, not byte 0. The first 1536 bytes of the file are 
 set to 0 and are unused. If the first 1536 bytes of a file are 0s, it is 
 considered a valid spectral library.



1	Installation

 The following subtopics cover the basic information needed to install
 ImageWorks, whether or not you have previously installed PCI software.
 This information is intended for customers installing ImageWorks as a
 standalone product; if you are installing ImageWorks as part of your
 PCI software package, you should refer to your installation guide for
 instructions.

 This installation information includes the system requirements for 
 running ImageWorks,a list of the types of files distributed, and system 
 specific directions to install and license ImageWorks on your machine.

2	System Requirements

 ImageWorks will run on most colour UNIX and VMS workstations with the 
 following minimum configuration:

 - UNIX or VMS operating system.
 - 8-bit or 24-bit color capability.
 - X11 windowing system - some systems (such as Intergraph and DEC 
   systems) require the Motif GUI, and the SUN requires OpenWindows or 
   Motif.
 - at least 16 Mbytes of RAM (more are recommended).
 - at least 15Mbytes of free disk space on a single disk.
 - for SCO UNIX a parallel port is required.

2	Distribution Checklist

 Your distribution should include the following items:

 - The ImageWorks manual
 - A computer cartridge tape (QIC, 8mm, TK-50 or 4mm DAT) or CD.

 The cartridge tape is in UNIX tar or VMS Backup format and contains about 
 10-15 MBytes of files. For SCO UNIX an interlock device and driver 
 installation diskette are included.

2	Overview of Distributed Files

 On the distribution tape are three subdirectories: exe, etc, and demo. The 
 following list describes the files which are within these subdirectories: 

   exe/imageworks		ImageWorks executable program
   etc/license			license manager
   demo/irvine.pix		Landsat TM 30m resolution, 512 x 512 
   demo/eltoro.pix		SPOT Panchromatic 10m resolution, 1024 x 1024 
   demo/map100.pix		scanned map of irvine area, 512 x 512
   hlp/WORKS.HLP		generic help file
   hlp/CLWORKS.HLP		ClassWorks help file
   hlp/IWORKS.HLP		ImageWorks help file

 The three .pix files in the demo directory are for demonstration 
 purposes only and can be deleted. 

2	Creating the ImageWorks Directory

 Before reading the tape you must have a directory into which to read 
 ImageWorks. There are two situations listed below, follow the one which is 
 appropriate for your system, then skip to the next section.

3	Systems with Existing PCI EASI/PACE software

 If you already have some PCI software (typically EASI/PACE) then you 
 should use the same installation directory and consider ImageWorks to be an 
 addition to it. The ImageWorks distribution is designed to dovetail into the 
 standard EASI/PACE system.

 If there is an account for the PCI software then you should log into 
 this account 
 to install ImageWorks. Installation proceeds from the home directory of this 
 account (i.e., don't change directories after logging in).

 If there is no account then just move to the pci directory. This directory is 
 usually named something like /usr/pci or /home/pci or /pci (for VMS, 
 PCI:[000000]). 

 Make sure you have the proper privileges to access this directory. This may 
 require logging on as system manager (i.e., root, superuser, or system).

 For example:

 UNIX:

   % cd /pci

 VMS:

   $ set default PCI:[000000]

3	Creating a New Directory/Account

 If this is your first piece of PCI software we suggest creating a 
 new directory (or a new account) called pci. 

 For example:

 UNIX:

   % mkdir pci

   % cd pci

 VMS:

   $ create/directory disk:[PCI]

 where disk: is the disk drive name on which you plan to install 
 ImageWorks (i.e. DUA0:).

 You need to define the following VMS logical and symbolic name (we 
 suggest also adding these to your LOGIN.COM file):

   $ define PCI disk:[PCI.]/trans=(conc,term)

   $ imageworks:== "$PCI:[exe]imageworks.exe"

 Now change to the PCI directory.

   $ set default PCI:[000000]

 In addition to this definition, any account used to run ImageWorks will 
 require certain resources.

 In order for EASI/PACE to run, the system manager must ensure that the 
 PCI account and all other user accounts have the following default 
 privileges:

   GRPNAM	may insert in group logical name table

   TMPMBX	may create temporary mailbox

   NETMBX	may create network device

 All EASI/PACE user accounts should also have their buffered I/O byte 
 limit and paging file quota increased to 65536, and when using X-
 Windows displays, to at least 100000 to 200000 (see example below).

 To assign required privileges and increase quotas for the PCI account, the 
 system manager must run the AUTHORIZE utility, as follows:

   $ SET DEFAULT SYS$SYSTEM

   $ RUN AUTHORIZE

   UAF> MODIFY PCI/
   PRIVILEGES=(GRPNAM,TMPMBX,NETMBX,LOG_IO,PHY_IO,AL
   TPRI)

   UAF> MODIFY PCI/
   DEFPRIVILEGES=(GRPNAM,TMPMBX,NETMBX,LOG_IO,PHY_IO
   ,ALTPRI)

   UAF> MODIFY PCI/BYTLM=200000/PGFLQUOTA=100000

 An example of the various limits which can be given to the PCI account is 
 shown below. In particular, please note the settings of Maxdetach, Prclm, 
 Fillm, ASTlm, ENQlm, Bytlm, and Pgflquo.

   UAF>SHOW PCI

   Username: PCI			Owner: PCI

   Account: R_D			UIC: [35000,7] ([PCI])

   CLI: DCL			Tables: DCLTABLES

   Default: DISK$GENERAL:[PCI]

   LGICMD:

   Login Flags:

   Primary days: Mon Tue Wed Thu Fri

   Secondary days:				Sat Sun

   No access restrictions

   Expiration: (none) Pwdminimum: 4 Login Fails:0

   Pwdlifetime: 28 00:00 Pwdchange: 24-JUN-1991 08:33

   Last Login: 28-JUN-1991 09:57 (interactive),

        25-MAY_1989 14:00 (non-interactive)

   Maxjobs: 	0	Fillm: 		100	Bytlm:	
   200000

   Maxacctjobs:	0		Shrfillm: 	0	Pbytlm:	0

   Maxdetach: 	0	BIOlm: 		18	JTquota:	0

   Prclm:	20	DIOlm:		18	WSdef:	256

   Prio:	4	ASTlm:		100	WSquo:	4096

   Queprio:	0	TQElm:		10	WSextent:	
   16384

   CPU:	(none)	Enqlm:		200	Pgflquo:	
   100000

   Authorized Privileges:

   GRPNAM TMPMBX NETMBX

   Default Privileges:

   GRPNAM TMPMBX NETMBX

   UAF>EXIT

2	System Specific Instructions

 The following sections describe the specific installation procedure for each 
 type of workstation. You need only follow the instructions in the section 
 which pertains to the workstation on which you will be reading the tape. 
 Ensure that you are in the pci directory before you start.

 Please note that the example tar commands used in the installation procedures 
 below may not be exactly the same as those required for your system. 
 Typically the differences are in whether the tape is the default device 
 for tar or whether it must be explicitly referenced by its full device name. 
 If in doubt contact your system manager.

3	IBM Risc System 6000

 ImageWorks should work on any colour IBM Risc System 6000 workstation 
 running AIX.

 Before starting to read the tape ensure that you have created or moved to the 
 proper directory, as specified in the Overview of Distributed Files section.

 Insert the cartridge in the tape drive and extract the files using the 
 following command:

   % tar xv

 or

   % tar xvf /dev/rmt0

 About 10-15 Mbytes of files will be extracted. A description of the files is 
 given in Section 1.4 of this chapter.

 The Running PCI License / Copy Protection System section explains how to 
 ensure that ImageWorks is licensed to run and the Running ImageWorks 
 section explains how to run ImageWorks.

3	Silicon Graphics IRIS and INDIGO

 ImageWorks should work on any Silicon Graphics Personal IRIS, Power IRIS 
 or INDIGO workstation running IRIX. 

 Before starting to read the tape ensure that you have created or moved to the 
 proper directory, as specified in the Overview of Distributed Files section.

 Insert the cartridge in the tape drive and extract the files using the 
 following command:

   % tar xovf /dev/tape 

 Note: SGI cartridge drives are byte swapped from most other vendors. If the 
 above tar command does not work (i.e., results in a checksum error message) 
 the following command may work:

   % tar xovf /dev/tapens

 About 10-15 Mbytes of files will be extracted. A description of the files is 
 given in the Overview of Distributed Files section.

 The Running PCI License / Copy Protection System section explains how to 
 ensure that ImageWorks is licensed to run and the Running ImageWorks 
 section explains how to run ImageWorks.

3	Hewlett Packard 9000 Series 700

 ImageWorks should work on any colour Hewlett Packard 9000 Series 700 
 workstation running HP-UX.

 Before starting to read the tape ensure that you have created or moved to the 
 proper directory, as specified in the Overview of Distributed Files section.

 Insert the cartridge in the tape drive and extract the files using the 
 following command:

   % tar xov

 or

   % tar xovf /dev/rmt/0

 About 10-15 Mbytes of files will be extracted. A description of the files is 
 given in the Overview of Distributed Files section. 

 The Running PCI License / Copy Protection System section explains how to 
 ensure that ImageWorks is licensed to run and the Running ImageWorks 
 section explains how to run ImageWorks.

3	Digital DECstation 5000

 ImageWorks should work on any colour DECstation 5000 workstation running 
 Ultrix. The Motif window manager MUST be used.

 Before starting to read the tape ensure that you have created or moved to the 
 proper directory, as specified in the Overview of Distributed Files section.

 Insert the cartridge in the tape drive and extract the files using the 
 following command:

   % tar xv

 or

   % tar xvf /dev/rmt0m

 About 10-15 Mbytes of files will be extracted. A description of the files is 
 given in the Overview of Distributed Files section. 

 The Running PCI License / Copy Protection System section explains how to 
 ensure that ImageWorks is licensed to run and the Running ImageWorks 
 section explains how to run ImageWorks and the demonstrations.

3	SUN SPARCstation

 ImageWorks should work on any colour SUN SPARCstation, SPARCserver or 
 SUN/4 workstation running SunOS 4.1 or higher. ImageWorks will work with 
 either OpenWindows 3.0 or Motif 1.1.

 Before starting to read the tape ensure that you have created or moved to the 
 proper directory, as specified in the Overview of Distributed Files section.

 Insert the cartridge in the tape drive and extract the files using the 
 following command (this example assumes the tape drive is named 
 /dev/rst0; yours may be different or may not be required).

   % tar xvf /dev/rst0

 For Solaris:

   % tar xvf /dev/rmt/0

 About 10-15 Mbytes of files will be extracted. A description of the files is 
 given in the Overview of Distributed Files section.

 The Running PCI License / Copy Protection System section explains how to 
 ensure that ImageWorks is licensed to run and the Running ImageWorks 
 section explains how to run ImageWorks.

3	Data General AViiON

 ImageWorks should work on any colour AViiON workstation running DG/UX.

 Before starting to read the tape ensure that you have created or moved to the 
 proper directory, as specified in the Overview of Distributed Files section.

 Insert the cartridge in the tape drive and extract the files using the 
 following command:

   % tar xv

 or

   % tar xvf /dev/rmt/0

 About 10-15 Mbytes of files will be extracted. A description of the files is 
 given in the Overview of Distributed Files section. 

 The Running PCI License / Copy Protection System section explains how to 
 ensure that ImageWorks is licensed to run and the Running ImageWorks 
 section explains how to run ImageWorks.

3	Intergraph Interpro

 ImageWorks should work on any colour Intergraph Interpro workstation, 
 models 2000, 3000 or 6000 (C300 CPU based models). Version 5.0 of CLIX 
 or later is required with X11 and Motif runtime licenses.

 Before starting to read the tape ensure that you have created or moved to the 
 proper directory, as specified in the Overview of Distributed Files section.

 Insert the cartridge in the tape drive and extract the files using the 
 following command (this example assumes the tape drive is named 
 /dev/0m; yours may be different or may not be required):

   % tar xvf /dev/0m 

 About 10-15 Mbytes of files will be extracted. A description of the files is 
 given in the Overview of Distributed Files section. 

 The Running PCI License / Copy Protection System section explains how to 
 ensure that ImageWorks is licensed to run and the Running ImageWorks 
 section explains how to run ImageWorks.

3	SCO UNIX

 To work on a PC running SCO UNIX the following configuration is required: 
 SCO ODT 2.0 (Open Desk Top) or later, a 486 CPU, at least 16Mbytes of 
 RAM and an 800x600 resolution (or better) 256 colour graphics card 
 (supported directly by SCO).

 Before starting to read the tape ensure that you have created or moved to the 
 proper directory, as specified in the Overview of Distributed Files section.

 Insert the cartridge in the tape drive and extract the files using the 
 following command (this example assumes the tape drive is named 
 /dev/rct0; yours may be different or may not be required):

   % tar -xvf /dev/rct0

 If you received your software in floppy disk form, additional installation 
 instructions will be included with the diskettes.

 About 10-15 Mbytes of files will be extracted. A description of the files is 
 given in the Overview of Distributed Files section. 

 The Running PCI License / Copy Protection System section explains how to 
 ensure that ImageWorks is licensed to run and the Running ImageWorks 
 section explains how to run ImageWorks.

3	Kubota Pacific Titan

 ImageWorks should work on a Titan 3000 workstation.

 Before starting to read the tape ensure that you have created or moved to the 
 proper directory, as specified in the Overview of Distributed Files section.

 Insert the cartridge in the tape drive and extract the files using the 
 following command:

   % tar xv 

 About 10-15 Mbytes of files will be extracted. A description of the files is 
 given in the Overview of Distributed Files section. 

 The Running PCI License / Copy Protection System section explains how to 
 ensure that ImageWorks is licensed to run and the Running ImageWorks 
 section explains how to run ImageWorks.

3	Apple Macintosh running AUX

 ImageWorks should work on Apple Macintosh Quadra series computers 
 running AUX. The Motif window option is also suggested, but not necessary. 
 At least 16Mbytes of RAM is required. A 16 inch colour monitor is the 
 minimum requirement.

 Before starting to read the tape ensure that you have created or moved to the 
 proper directory, as specified in the Overview of Distributed Files section.

 Insert the cartridge in the tape drive and extract the files using the 
 following command:

   % tar xv 

 About 10-15 Mbytes of files will be extracted. A description of the files is 
 given in the Overview of Distributed Files section. 

 The Running PCI License / Copy Protection System section explains how to 
 ensure that ImageWorks is licensed to run and the Running ImageWorks 
 section explains how to run ImageWorks.

3	DEC AXP (Alpha)

 ImageWorks should work on DEC AXP (Alpha) computers running OSF/1. 

 Before starting to read the tape ensure that you have created or moved to the 
 proper directory, as specified in the Overview of Distributed Files section.

 Insert the cartridge in the tape drive and extract the files using the 
 following command:

   % tar xv

 or

   & tar xvf /dev/rmt0m

 About 10-15 Mbytes of files will be extracted. A description of the files is 
 given in the Overview of Distributed Files section. 

 The Running PCI License / Copy Protection System section explains how to 
 ensure that ImageWorks is licensed to run and the Running ImageWorks 
 section explains how to run ImageWorks.

3	DEC VAX/VMS

 ImageWorks should work on DEC VAX computers running VMS v5.x.

 Before starting to read the tape ensure that you have created or moved to the 
 proper directory, as specified in the Overview of Distributed Files section.

 Insert the tape into the tape drive and extract the files using the following 
 commands:

   $ set default pci:[000000]

   $ mount tape: /foreign

   $ backup/verify tape:pci.bac [*...]

   $ dismount tape:

 where tape: is the name of your tape drive device (i.e. MKB0:).

 About 10-15 Mbytes of files will be extracted. A description of the files is 
 given in the Overview of Distributed Files section. 

 The Running ImageWorks section explains how to ensure that ImageWorks is 
 licensed to run and the Running ImageWorks section explains how to run 
 ImageWorks.

2	Running PCI License / Copy Protection System

 This is an overview of using PCI's License Management / Copy Protection 
 system. For further information, the user is directed to read the PCI License 
 System User Guide.

 PCI uses a system of license keys which are applied to each executable 
 program to enable operation. For network users, a license key for each 
 licensed CPU must be applied. More than one license key can be applied 
 to a single executable.

 Your distribution of ImageWorks may have been prelicensed, in which case 
 you will have been informed in a covering letter. If you are unsure if you 
 have been prelicensed, refer to your Installation Guide which 
 explains how to check for this.

 If you have not been prelicensed the following steps will take you through 
 the licensing process:

3	UNIX:

 Get your CPU Id. by running the license program and noting the CPU Id. 
 number it presents, for example:

   % etc/license

   CPU Id. of current system is: [1762007148]

     :          :          :          :

     :          :          :          :

   Enter command: x

 Contact PCI's Product Support department and have your CPU Id. number and 
 type of computer system ready. This can be done by telephone, fax, or E-mail.
 You will receive an alphanumeric License Key.

 Use the license program to apply your License Key to the Imageworks 
 program.

   % etc/license XXXXXXXXXXXXXXXXX exe imageworks

 where XXXXXXXXXXXXXXXXX is your License Key.

 Write the License Key on a piece of paper and place it in a safe place 
 in case you ever need to re-install the ImageWorks software from the 
 distribution tape.

3	SCO UNIX:

 For SCO UNIX, in addition to applying your license key as with other UNIX 
 systems, it is necessary to install the Interlock device and its driver on 
 your system. 

 The Interlock device itself attaches to the Parallel port on the back of your 
 computer (between the computer and the printer cable, if a printer is 
 attached). Installing the driver does not impact the use of the printer or 
 system spooler in any way.

 To install the Interlock driver, perform the following steps:

 - Make a backup of your user files. It is very unlikely that anything 
   will go wrong during the installation process, but if something does, this 
   will allow you to recover.

 - The system will need to be rebooted as part of the driver installation. 
   It is recommended that you ensure that all other users (if any) are logged 
   off. You will need to be logged in as root to perform the remaining steps.

 - Do not hit the <DEL> key or <RESET> button, power down your system, 
   or in any way attempt to interrupt the installation once it has begun. 
   Doing so may corrupt your system and leave it unbootable.

 - Insert the appropriate installation diskette into the boot diskette 
   drive of your system (drive A:). Attempting to use drive B: will result in 
   the installation failing. Both a 3.5 inch and a 5.25 inch driver 
   installation diskette have been provided to ensure that you are able to 
   use the proper drive.

 - Enter the following command:

      # pkgadd -d {devicename}

 where {devicename} is one of the following:

   5.25":  /dev/dsk/f03dt or /dev/dsk/f0d9dt or 
           /dev/dsk/f0t

   3.5":   /dev/dsk/f03dt or /dev/dsk/f0q9dt or
           /dev/dsk/f0t

 Select the "rbid" package, and always answer "y" to the 
 following messages:

   Do you want this kernel to boot by default? (y/n)

   Do you want the kernel environment rebuilt? (y/n)

 - Finally, if the installation procedure does not reboot the system 
   automatically, you will need to do so to load the newly installed Interlock 
   drivers. To reboot manually, please enter the following command(s):

      # cd /
      # shutdown -y -g0 -i6

 The Interlock driver will be installed and operational when the system 
 comes back up.

 Remember to apply your license key to the PCI programs.

3	VMS:

 Get your CPU Identification Number by running the license program and 
 noting the number it presents:

   $ run pci:[etc]license

   CPU Id. of current system is: [1762007148]

     :          :          :          :

     :          :          :          :

   Enter command: x

 Contact PCI's Product Support department, and have your CPU Identification 
 number and type of computer system ready. Contact can be made by telephone, 
 fax, or E-mail. You will receive an alphanumeric License Key.

 Use the license program to apply your License Key to the ImageWorks 
 program:

   $ license :== "$pci:[etc]license.exe"
   $ set default pci:[000000]
   $ license XXXXXXXXXXXXXXXXX [.exe] imageworks.exe
   $ delete/symbol/global license

   where XXXXXXXXXXXXXXXXX is your alphanumeric License Key.

 Write the License Key on a piece of paper and place it in a safe place in 
 case you ever need to re-install the ImageWorks software from the 
 distribution tape.

2	Running ImageWorks

 Under normal circumstances ImageWorks is run by typing in the name of the 
 executable and the path of the directory it is in. For example, assuming the 
 directory /usr/pci/exe:

 UNIX:

   % /usr/pci/exe/imageworks

 VMS:

   $ run pci:[exe]imageworks.exe

 It is also possible to add the directory path to your command search path, 
 to add an alias into your csh or ksh, or, in VMS, to define the symbolic 
 name for ImageWorks. Ask your system manager to show you how to do this. 
 If this set-up is used the following command would be sufficient:

   % imageworks

 Once ImageWorks is running, data can be loaded or viewing parameters set 
 interactively using the graphical interface. It is also possible to start 
 ImageWorks and automatically load data and set viewing parameters using 
 command line options. For example:

   % imageworks -ip 4 -datasize 768 768

 See the section on Command Line Options for more information.


1	ImageWorks EASI/PACE Interaction

 This chapter provides information on starting ImageWorks from EASI/PACE 
 using VDINIT, and on the interaction between the 2 interfaces.

2	VDINIT Interaction

 The interaction between the ImageWorks program and the parameter file, 
 which contains ImageWorks' size, type, and system information, is fairly 
 complex, as is ImageWorks itself. To simplify this interaction, an EASI 
 procedure, called VDINIT, is available. VDINIT handles all parameter file 
 interaction and starts an ImageWorks program in background mode when a 
 new display window is started.

 The VDINIT procedure is run from within EASI:

   EASI> run vdinit 

 When run, VDINIT produces a menu in the terminal window, so it should be 
 ensured that the text window is at least 80 columns by 25 lines. VDINIT gives 
 a selection of four displays (or devices), numbered 0, 1, 2, and 3. Each 
 display 
 is considered a separate device, having a name and window size. Information, 
 such as size and number of image and graphic channels on the currently 
 selected display, is shown. 

 A display can be selected using the options 0, 1, 2, or 3. The size and number
 of channels of the selected display window can be changed using the modify 
 (M) option. The window is actually created using the start (S) option for an 
 (optional) ImageWorks window. VDINIT can be exited using the exit (X) 
 option. The rest of the PACE package will now automatically use this display 
 window. 

 ImageWorks display windows can be dragged, exited, and opened like regular 
 windows. They can be resized up to as large as the underlying data size.

 Multiple ImageWorks display windows can be created and used. To do this, 
 the user should run VDINIT, select a display (0, 1, 2, or 3) and initialize 
 it, 
 creating the first display window. The user should then select a second, 
 different display and initialize it, creating a second display window. VDINIT 
 can now be exited. PACE programs will automatically use the last selected 
 display. To change the display which is being used, the user should run 
 VDINIT, select the desired display, then exit VDINIT. Note: Do NOT attempt 
 to reinitialize this selected display since this will create a new, third 
 window, 
 and use of the original selected window will be permanently lost to PACE 
 programs. 

 Unfortunately, there are some problems to watch out for when using multiple 
 displays. Each ImageWorks display window uses up quite a bit of memory. If 
 too many are created, if they are large, or if they have many channels, the 
 workstation may not be able to allocate enough memory and the initialization 
 of the new display window will fail. Even if the creation does not fail, the 
 resulting paging of the workstation's virtual memory may mean performance 
 will be unacceptable. 

2	Parameter File Interaction

 This section discusses the interaction between an ImageWorks utility program 
 and the parameter file. It is included for background information. Most users 
 are insulated from knowing details at this level by using the VDINIT 
 procedure.

 Upon start-up, the ImageWorks program extracts information from the 
 parameter file which determines ImageWorks' size and labelling. This 
 information is held in the parameters named vdn: and vdn# where n is a number 
 between 0 and 3 (vd0:, vd0#,..., vd3:, vd3#). Each vdn: and vdn# pair defines 
 characteristics about the image display window n.

 vdn: is a character parameter which holds a 1 to 40 character string used to 
 label the ImageWorks window. Usually this is set as follows:

   vdn: = "VDn:"

 vdn# is a numeric parameter which holds 16 values defining the ImageWorks 
 display window characteristics, as follows:

   vdn#(1) = 19			Display type (Must be 19)
   vdn#(2) = X			Pixels per line (32 to 20480)
   vdn#(3) = Y			Lines per image (32 to 20480)
   vdn#(4) = 3			Number of image planes   (must be 1 to 16)
   vdn#(5) = 8			Number of graphic planes (must be 0 to 16)
   vdn#(6) = 0			Reserved for internal use
   vdn#(7) = 0			Reserved for internal use
   vdn#(8) = 0			Reserved for internal use
   vdn#(9) = 0/1		Suppresses popping up of configuration panel
      :
      :
   vdn#(14) = 0			Reserved for internal use 
   vdn#(15) = WX		Window size X (0 or less than vdn#(2))
   vdn#(16) = WY		Window size Y (0 or less than vdn#(3))

 The parameter vd00 is used to point to the currently selected display.

   vd00="VD1:"

 When the ImageWorks program is run, it reads in the current value of the vd00 
 parameter. Using this name, it reads in the appropriate vdn# parameter values,
 which define the image display window size, and uses the contents of the vdn: 
 parameter to label the window. The ImageWorks program then updates 
 positions 12 and 13 of vdn# with its socket number and process id (PID) 
 number. PACE application programs can now access the image display 
 window by following the vd00 link to the appropriate vdn# parameter and 
 retrieving the socket number. 

 For example, using EASI (under X-11 Motif): 

   EASI> vd2: = "Test 2" 
   EASI> vd2# = 19,512,512,3,8,0,0,0,0,0,0,0,0,0,0,0     
   EASI> vd00 = "VD2:"    
   EASI> run imageworks

 The above commands will start up a 512 pixel by 512 line ImageWorks image 
 display, labelled "Test 2". 

 On UNIX systems, the socket number and PID for ImageWorks can be printed 
 as follows: 

   EASI> print "socket=",vd2#(12),"   pid=",vd2#(13) 

 Multiple ImageWorks image display windows can be started by using the vd00 
 parameter to point to different vdn: pairs.
