Tutorial

The information below is meant to provide a cursory description of how to use WebWinds. The user is encouraged to read the documentation on each of the tools and objects and to experiment with their use. Although it is suggested that you take the time to read through the entire tutorial, you can skip to the following parts:

Conventions; Getting Started; Using WebWinds; Sample Sessions; Adding Data; Changing Data

Conventions
The convention used here for describing textual entries is one where an item in single 'quotes' must be given a value and used without the single quotes. Items described in double "quotes" must be used exactly as shown without the quotes. For descriptions outlined in "Plain text" one must include double quotes where indicated. Items enclosed in {curly brackets} may not be present in all situations.


Getting Started: Using WebWinds

Connecting Objects

WebWinds consists of a set of objects, each of which inhabits a single window on the screen. Tools, applications, displays, and data sets are all objects, and thus inhabit single windows. Many objects will contain a "drag 'n drop" button: . If this button exists in a window, that window can act as a data source, supplying data to any other object that can use it. The first type of data one might need is a Data Object, a file of data acquired from a local disk or from a URL over a network. Many applications, however, can also be data objects. If they are, they'll have the drag 'n drop button on them. To connect a data set to an application, move the mouse cursor to the drag 'n drop button, hold down a mouse button, move the mouse cursor to the application's window, and let the mouse button go. That will insert data into the application. Any mouse button will work. You may have to wait for a moment for the button to be depressed.
First rule of connection: Drop data into applications with the drag 'n drop button.
Applications will often have many embedded controls, such as sliders and buttons. External controls can also be used to control applications (if they are appropriate, of course). For an object to control another object, the object must have a "Link" button: . To get an object to control an application, move the mouse cursor to the "Link" button, hold down a mouse button as before, move the mouse cursor over to the application to be controlled, and release the mouse button.
Second rule of connection: objects control each other if they are linked by the link button.
If you want an object to stop controlling another object, unlink them by using the unlink button () on the controlling object. Same procedure: move the mouse cursor over the unlink button, hold down a mouse button, move to the controlled object, then release.
Some Connection Examples
The Image application displays a two-dimensional slice of a data set. If the data set dropped into it is three-dimensional, and if that data set is also dropped into a data slider that is linked into Image, the slider will pick which slice gets displayed.

Many applications can control others, sometimes in less than immediately obvious ways. To find out how to get information from one application to another, either experiment or look up the help file for each application. For example, 2D Scatterplot can control Image in an unusual way.

Morphing
Some windows disappear and are replaced by another window when such actions are called for. We call this 'morphing'.
 
 

Image/Window Size

Display applications like Image  produce a display that, if too large to fit in the window, will be decimated or subsampled. When this happens, a text box message will indicate a "Magnify level" less than 1. These displays have  and buttons that simply enlarge or shrink the image. Minify will shrink the image up to a factor of 8 times smaller than it started. The magnify button enlarges images until it has reached its full resolution. Then, further magnification is carried out by pixel replication. It can be a bit blocky, so to smooth out magnified images, turn on Smooth Magnify from the menu. If the image is too large to fit in the display window, the window can be resized and/or sliders can be used to scroll around in the image. An effective way to view a portion of a large image at full resolution is to use the BoundingBox to select a portion of an image and then to display that portion at full resolution in a second image application.

Other Controls
WebWinds uses many types of buttons. Normal buttons do the obvious thing: they invoke some action when pressed. Some buttons have special icons on them. They work a little differently than normal buttons.

Toggle buttons have a little colored rectangle on them: . Most of the time, this rectangle will be red or green. Red means the state of the object controlled by the button is off; green means it is on. For example, if you saw the button above on Image, you'd know that it was not in RGB mode. If the light were green, it would be in RGB mode. Some buttons can also be made to toggle between an 'in' state and an 'out' state. See the description of configuration management for more details. A few toggle buttons toggle between very different states. Those buttons have the name of the next state written on them. For example, the "Frequency" button on 2D Scatterplot means that if it is pushed, the display will change to one representing frequency of occurrence at each pixel. It will then say "Position" on it. Pushing it again will return the display to the standard state, in which the color of each pixel represents a position in the original databases. See 2D Scatterplot for more details on this particular button.

Some buttons have a stylized file cabinet on them, like so: . That means they are "menu" buttons. To use the menu, place the cursor on the menu button and hold down the any mouse button. Sometimes a menu item is highlighted in red. That means either that it's selected or checked (not all checked ones are red) or, more likely, that an item in one of its submenus is checked. If a checked item in a submenu is red, then it is a mutually exclusive choice with some other item in that submenu. For example, in Image, "Resize Bounding Box" is in the "Bounding Box" submenu. If it's selected, the "Bounding Box" submenu is highlighted. Returning to Crosshair mode will highlight the "Crosshair" menu item and turn off the "Resize Bounding Box" selection. If a checked item is not in a submenu, it can be toggled on or off.

WebWinds allows the user to double click certain items for more information about those items. Examples includewhich represents various sources and  which represents folders or directories. Double clicking on these items may open a new window.

Help
In addition to the "Help" button on the Desktop main menu you can find context sensitive help buttons, , on most applications. Clicking on this button will open a browser (developed by CalPane and included in WebWinds) window with detailed information about that application. To navigate with this browser, use the buttons in the bottom toolbar.
Thumbwheel
Some windows have thumbwheels. These can either be vertical or horizontal and will control something within the window, such as the vertical scale of a display. To adjust the thumbwheel, hold the mouse down on part of the wheel and move the mouse up or down, then release. The wheel should appear to turn. If it will not turn any further, it may have reached the limit of its range. Double click on the thumbwheel to reset it to its original value.
Using Previously Defined Data
WebWinds begins with the Desktop main menu. Since sessions must begin with a data set, the "Open" option should be selected from the "File" button menu. This choice will give you access to pre-defined datasets. You will then be presented with a data selection window containing Data Directories and Data Source Descriptions. WebWinds comes with a number of pre-loaded data objects that are accessed by selecting one of the Source Descriptions listed and pressing the "Open" button. This will result in the creation of a Desktop Data Object in a new window. Press the "Load" button to read data from the pre-loaded disk file. Next, select "Image" from the "Tools" menu. If you are using a 3-D data set, you may also select Slider from the "Tools" menu. The resulting windows should now be connected using the linking rules described in the next section. Check the Sample Sessions section for some examples of this process.
Sample Sessions
We've captured several sample sessions. First, check out Ocean Example to see a session which uses a pre-loaded ocean dataset to highlight some unusual correlations between ocean temperature and oxygen levels. This session also has a rerun file (ocean.slang) which provides automatic configuration. The ASCII TOMS example shows how to create a very intriguing 3-D (latitude, longitude, time) dataset using ASCII files downloaded from the TOMS Website. One ASTER example shows how to load a self-describing file to produce a spectacular red/green/blue (RGB) image using different spectral channels. This session also has a rerun file (aster.slang). The ASTER-HDF example focuses on an HDF file with data similar to the MODIS Airborne Simulator format.  In the IRAS example, 2 coincident data files, representing 2 spectral images of our galaxy, are overlayed and examined numerically. Use the rerun file (iras.slang). We also have several examples of how to use MODIS data. One example uses a MODIS Level 1B 1km calibrated radiance file  as well as a co-located geolocation data set to first make a thumbnail (subsampled) image.   Since the L1B files are large, the user can either view the whole file at reduced spatial resolution, or, as the script allows, the user can subset the image and view it at full spatial resolution. A second example uses a test data set in the form of a MODIS Precipitable Water product (MOD05_L2) to explore atmospheric water vapor.
Adding Data
New data can be added to WebWinds in several ways. The easiest way is to add a Data Source object by choosing the "New Source" option from the "File" menu on the opening WebWinds window (or Desktop) and selecting a file from the resulting file finder. The file selected can be on the local machine, a remote machine or it can be a URL on the Web. After double clicking on a file (or clicking "Open"), a Source Wizard object will appear with some fields filled in if the source file was a 'self-describing' file. Next, if any of the required fields are not filled in, the user needs to do so. Also, if you want to save this source, change the "Save to Data Directory" entry ("Temp" by default) to a different directory. Now click the "Open" button. This will bring up a new Data Object that can then be handled as described above. Be sure to save this new Data Object by selecting "Save" when exiting the session. This object will then become available for use in WebWinds by selecting the "Open" option from the "File" menu. Information saved in this way is stored by WebWinds in a file called datamanager.txt. This file can be edited with any standard text editor. New data sources can also be added using WebWinds as a helper application for a Web browser.
Changing Data Descriptors
To alter existing data descriptors, select "Edit" from the "File" menu. This will display the Data Directory. By clicking on a Data Directory in the list, one can progress down through the nested directories to find a desired Data Source Description. A double click will open a Data Source Description and changes can be made.
Tips
1) All of the pre-loaded information assumes that you are running in the top level webwinds directory. If you are not running from this directory (e.g. if you expect to have multiple users on a Unix platform where each user creates and runs from his/her own webwinds directory) it will be necessary to edit the configuration files, "datamanager.txt" and "paths.txt" to reflect the proper path to the "webwinds/data" directories.

2) If, during a session, the WebWinds dialog box indicates an error message, it is best to exit WebWinds and begin the session over, noting the error.

3) WebWinds objects are re-usable, however thread errors are more likely to occur if you re-use objects too many times. For fewer errors, try deleting objects after you have used them.

 
WebWinds Home / Dec 5, 2001