Documentation for FlAniS - the Flash AnimationS applet

First release: June, 2008
Page updated: May, 2013

Current release version 3.0 -- April, 2013


Spanish language documentation
(Many thanks to Alex Roa (AEMET-Spain) for providing this!)


Note that there is now an HTML5 implementation of FlAniS which allows it to be used without plug-ins. Click here for details

Welcome to the homepage for the Flash Animations Applet (FlAniS for short). This is a re-casting of the AniS Java applet, done in Flash. Why? We needed to overcome limitations with memory size and problems with cross-platform layout issues. Plus, we wanted to add a few more features!

This document is the detailed information. If you want to take a quick look at the examples, please click here!. If you have questions or comments, please let us know! If you find errors or things that are not clear in this document, we would also appreciate hearing from you!

Quick Links in this Document


Click here for a Quick Help for Flash page, if you or others are having problems with the Flash runtime.

To run FlAniS, you need these three files:

  1. an HTML file that contains the size (width and height) specification, and names the configuration file
  2. the configuration file that contains the options ("parameters")
  3. the SWF file -- use one of the following:
    1. the flanis.swf file which is the "Flash program", compiled to run from a web server.
    2. the flanislocal.swf file which is the Flash program, compiled to be used locally for testing
    3. we also have a flanisdebug.swf which contains extra debugging output if there are problems, however you can usually just put in the parameter "debug=true" into your configuration file to get this information displayed.
Downloading: You may pick up this ZIP archive file which contains an example of the HTML and config files, plus the three .swf files mentioned above, as well as the source code.
Here is a skeleton HTML file. This skeleton is an abreviated version of the complete one recommended by Adobe, which uses both the OBJECT and EMBED tags; although the one below has been proven to work with a variety of browsers, if you have difficulties, please use this one instead... and make all the specific changes (below) in both places in that file. <html> <body> <OBJECT type="application/x-shockwave-flash" data="./flanis.swf" width="620" height="640" id="FlAniS"> <PARAM NAME="movie" VALUE="./flanis.swf"> <PARAM NAME="quality" VALUE="high"> <PARAM NAME="menu" value="false"> <PARAM NAME="FlashVars" value="configFilename=config.txt"> </OBJECT> </body> </html> You may use the above as a template, since very few changes will be needed. If you copy this, then you must:
  1. set the height and width shown above to meet your needs -- these are the values for the entire "panel" -- including your images and controls.
  2. if you want to use a different name for the configuration file, you must change the "config.txt" the file.
  3. set the path to the flanis.swf code (shown as ./ above).

It is also acceptable to put some of the parameters, described below, into the "FlashVars" parameter in the HTML (in addition to the required configFilename= parameter). In the value part of the FlashVars parameter, each item must be separated by an ampersand (&). For example:

   <PARAM NAME="FlashVars" value="configFilename=config.txt&active_zoom=true&backcolor=0x382433">

Although this makes the specifications much more difficult to read than putting them into a configuration file (see below), it is acceptable. If you omit the "configFilename" parameter, then all the parameters must be supplied this way.

If you are using the "overlay_filenames" parameter in this manner, you must use the vertical bar | to separate filenames instead of the apersand & character.

An extension of this is to use server-side PHP scripting to return the contents of the configuration file. In this mode, you may also cause some parameters to be passed to the PHP script by using the vertical bar ("|") to separate these parameters. This will be changed to the customary ampersand before the request string is sent to the host. For example:

   <PARAM NAME="FlashVars" value="configFilename=myscript.php?type=7|code=318|domain=us&active_zoom=true&backcolor=0x382433">

In this case, the "config filename" request sent to the server will be:

   myscript.php?type=7&code=318&domain=us

and the active_zoom and the backcolor parameters will be used by FlAniS as parameters.


The configuration file is a text file that contains the parameters and their values. If you are familiar with the Java AniS applet, then these parameters are just like the ones you used in the <PARAM> tags however, here they are contained in a separate text file. Note, however, that each parameter and its arguments MUST be on one line of text in the file! There are no "continuation" lines or marks available!

An example of this configuration file:

# config file for my stuff backcolor=0x800000 controls=startstop, step, speed, framelabel, looprock, refresh, overlay controls_tooltip = Start and stop , Step , change speed, Times , Toggle between looping and rocking, Refresh the images from the server bottom_controls = toggle bottom_controls_tooltip=Click on frame square to remove from animation; click again to add it back file_of_filenames=fof.txt transparency = #ffffff no_enh = true active_zoom=true toggle_size=5,10,20 overlay_labels=Topo,Radar/on,/Counties,Legend overlay_links=1,0,-1,0 overlay_labels_color=0,xff0000,0x00ff00,0 overlay_labels_mouseover_color=0xffffff,x00ff00,0xffffff, 0x801050 overlay_tooltip=Topographic map,, Map outline of counties, The legend overlay_radio=f,t,t,f overlay_smooth=f,t,f,f overlay_transparent_amount=100,50,100,50 overlay_zorder=0,1,3,2 pause=500 rocking=true keep_zoom=true overlay_zoom=t,t,t,f
Note on specifying color values

Throughout this document, hexadecimal values are used to specify colors. The hex values are always in the one of the formats:

where "RR", "GG" and "BB" are the Red, Green, and Blue values from 00 to FF hex. If you know the decimal value, you may use that as well.


Names and Definitions of Controls and Parameters

The rest of this document describes the parameter names and values needed to drive the FlAniS applet. We begin with the controls and then describe the specification of the filenames of the images.

This controls parameter will position the controls above the image window. If you would like some (or all) of the controls below the image window, use the bottom_controls tag, as in:

Note: You must not specify the same control in both the controls and the bottom_controls parameters!

If you want to have your controls appear on more than one horizontal line, preceed the first one on the new line with a /. For example:
controls=startstop, step, speed, /framelabel, looprock, refresh, overlay
would make two lines of controls, with the "framelabel" being the first one on the second line.

Here are the details about each control:


Parameters that may also be used (details for those parameters related to filenames, portals and overlays appear after this section):

debug = true Enables a "debug pop-up window" that will contain information about errors encountered, and other information that might be helpful in setting up your animations. The window may be moved around by dragging on the "title bar". The default value for this parameter is "false". controls_gap = 8 Specify the gap (space) between control widgets, in pixels. The default is 8. controls_tooltip = Start-stop the animation, Refresh the display with current data, Print the display, Set the animation speed...... specifies a "tooltip" for each of the controls. If you use the "toggle" control, there must be a place-holder "tooltip" in the list. bottom_controls_tooltip = Click to step one frame forward/backward, Click to go to the first or last frame,..... specifies a "tooltip" for each of the bottom_controls. If you use the "toggle" control, there must be a place-holder "tooltip" in the list. overlay_tooltip = Enable topographic display, Enable radar reflectivity display, Show the roads, Show the watches and warnings,.... specifies a "tooltip" for each of the overlays. If you use the "hidden" option on an overaly, there must be a place-holder "tooltip" in the list. use_progress_bar = false specifies whether to use the "Progress Bar" to indicate the status of loading images from the server. The default for this parameter is "true". active_zoom = true specifies that the zoom ability will always be active; this cannot be used in conjunction with the "zoom control". If you specify this parameter, user left-clicks on the image will zoom at that point, right-clicks will zoom out. While zoomed, the image may be roams by dragging the mouse around.

This option should not be used when portals are also used.

keep_zoom = true specifies that the zoom level and position will be restored after a "refresh" is done. Without this parameter, the zoom is reset to the "un-zoomed" view. zoom_scale = 3.4 sets the zoom scale factor to 3.4. The default is 1.0. This is the value that determines the zoom "step" for each mouse click. Note that a value of 10.0 approximates what the old AniS did. maximum_zoom = 1.0 sets the maximum zoom factor to 1.0. This is useful if you want to prevent the user from zooming in "too far" (usually resulting in a highly pixelated display). initial_zoom = 2.0, 132, 349 sets the initial zoom factor to 2.0, and centers the display at the original image coordinate x=132, y=349. This is mostly useful when you have also declared an image_window_size. overlay_zoom = y,y,y,n specifies whether an overlay will be zoomed along with other images. If the value is "y", then the overlay will be zoomed. This is the default.

If the value is "n" then the overlay will NOT be zoomed. This is useful for overlays which are legends, since the legend information will remain on the frame during zoom and roam.

image_window_size = 400,200 specifies that the images will be displayed in a window with a width=400 and a height=200. Without this parameter, the size of the window is the size of the first frame (image). When this parameter is used, the images will be rescaled to this size which might cause some distortion if the given width and height are not proportional to the image width and height.

Normally, zooming is enabled (either with the "zoom" control or the "active_zoom" parameter. If zooming is active, when the user zooms, the image will be zoomed as usual, possibly showing more detail.

image_preserve=0,0,639,49, 610,0,639,479 specifies that when images are zoomed, the two rectangular areas specified (top 50 lines, right-most 30 pixels) should be preserved from the original image. This is useful for showing labels and logos that are part of the original images. There may be one or more such rectangles; the number of values must be a multiple of 4.

The values of the coordinates are ordered: x_upper_left,y_upper_left, x_lower_right, y_lower_right. The (0,0) point for images is in the upper_left corner. The 'x' coordinate is horizontal, the 'y' coordinate is vertical.

For overlays, see the overlay_zoom parameter, and the "overlay_preserve" and "overlay_preserve_list" parameters.

use_caching = true this will enable caching of the images. (The "file_of_filenames" is always read without caching enabled). Whether or not a particular user environment is configured to support caching is unknown. exclude_caching = abcd When caching is enabled (see use_caching above), you can exclude from caching any file whose name contains the string "abcd". use_anti_caching = false Disables the use of altering the filename requested from a web server for non-cached images. The default value is "true". Normally, FlAniS will append "?xxxx" to the request for a file from the HTTP server (where 'xxxx' is an ever-changing value). This will normally not interfere with the HTTP request for the actual file, but has the effect of usually preventing any intermediate "caching servers" from caching images inappropriately.

If you experience any difficulties with this, then set the value to false to prevent this.

no_enh = true this supresses the attempt to read the enh.tab file which contains the enhancement tables if you are using the "enhance" control. enhance_filename=myenh.txt this specifies a different filename for the enhancement table. The default filename is "enh.tab". enhance_overlay = 3 this says that the "enhance" control will be applied to overlay #3 (the first overlay is number zero). Otherwise, the enhancement will be applied to the "base" images.

NOTE: this parameter will cause the enhancement to be added to the image prior to zooming and smoothing (if specified). To apply the enhancement after zooming and smoothing, see the "overlay_enhance_table" parameter!

auto_refresh = 16 specifies that the base images will be automatically reloaded from the source every 16 minutes. If you want to be able to enable/disable automatically refreshing images, use the "autorefresh" control, described above. Note: be somewhat cautious with overlays or portals when using the auto_refresh option -- they may not always work as expected. base_enhance_table = 3 specifies that the base images should be initially enhanced (colorized) using the 3rd color table listed in the enh.tab file (the first table in the file is "1"). If you use this option, you <u>must not</u> also use the "overlay_enhance" option! base_static = true specifies that the base images will be loaded only one time from the server. Any "refresh" action (automatic or manual) will not cause these images to be reloaded. This is appropriate if your base images are unchanging (for example, a topography image). [See also, the overlay_static parameter, below. no_controls = true this supresses showing any controls. Please see "start_looping" parameter, below. map_scale = 12.03234 When measuring distances, the map_scale may be used in place of the "coordinates" parameter (below). The units given are "per pixel" of whatever the "distance_unit" defines -- no conversion will take place (and hence, the "distance_unit" is only used for labelling).

NOTE: you may not get a bearing readout when using map_scale.

If this parameter is supplied, then a user action "shift + mouse drag" will result in an on-screen readout of distance (see distance_style).

coordinates = 43.0, -89.5, 40.65, -81.241 this enables the readout (display) of the coordinates -- usually latitude and longitude. The first two values are the latitude (y) and longitude (x) coordinates of the upper left corner. The next two values are the corresponding values for the lower right.

Linear variation is assumed. Distance computed is a Great Circle distance.

If this parameter is used without specifying the location control then the readout (display) will always appear on the screen!

If this parameter is supplied, then a user action "shift + mouse drag" will result in an on-screen readout of distance (see distance_style).

coordinates_style = 0x000000, 0xffffff, 20, Lat=, Lon=, 2 This specifies the style for the readout (display>. The values are: 1. background color, 2. foreground color, 3. font size, 4. first coordnate label, 5. second coordinate label, 6. number of decimal digits to display. Note that you may omit the last 3 parameters; however if you want to specify them, then you must specify the font size (default is 10)!!

Note that the colors are given in form: 0xRRGGBB or 0xAARRGGBB.

distance_unit = km When the coordinates are specified, then if the user drags the mouse (holding button while moving), a line is drawn from the starting position to the current mouse coordinates and a numeric readout of distance is given. The default unit is kilometers (km), but you may over-ride the default using values of: "mi" (statute miles), "nmi" (nautical miles), "pixel" (screen coordinates). distance_style = 0x000000, 0xffffff, 12, 1 This specifies the style for the distance readout (display>. The values are: 1. background color, 2. foreground color, 3. font size, 4. decimal places to show Note that the colors are given in form: 0xRRGGBB or 0xAARRGGBB. show_bearing = to When defining "coordinates", you may also get an on-screen display of the bearing "to", "from" or "tofrom" the end point, by using this parameter. hotspot0 = 10, 20, 50, 50, pan, fof, mynewfof.txt, Click here for a new view hotspot1 = 30, 500, 50, 50, pan, popup, this is the pop-up message hotspot2 = 110, 0, icon, lnkimg.gif, nopan, link, http://www.ssec.wisc.edu/flanis specifies three "hotspots" on the image display. Note that the keyword name has an appended number -- this is used to make each hotspot unique, but is only required in the "config" file; it is not required in the "file_of_filenames", where you may just use "hotspots=".

The parameters are specified in one of two formats:

hotspot = x, y, width, height, pan, action, value [,tooltip] hotspot = x, y, icon, filename, pan, action, value [,tooltip]

NOTE -- sensing a hotspot click action takes priority over zooming. If the user puts the mouse pointer on a hotspot and clicks, only the hotspot action will happen.

NOTE -- see "file_of_filenames", below, for additional information.

hotspot_color = 0x40ff00ff specifies that when no hotspot icon image is specified, that the hotspot(s) should use the specified color to fill the rectangle. The format of this value is 0xAARRGGBB, where AA is alpha (opacity, 00 = transparent, ff=opaque), RR is the red intensity, GG is green, and BB is blue. The default for this parameter is 0x00000000 -- a completely transparent rectangle. start_looping = false specifies the initial state of the animation. A value of "false" means the animation is not started automatically. The default value is "true", meaning the animation begins automatically as soon as all frames are loaded. Note: if you do not put in a startstop control and set start_looping to "true" then the animation will run "forever". start_frame = 18 specifies the frame number (starting at zero) of the frame to display after all loading is done. This option implies "start_looping" is "false". rate = 120 rate = 120, 5, 200 specifies the initial loop rate as a number corresponding to frames per second times 10 (thus, 120 means 12 frames per second). The second form provides the range for the "speed" slider if it is enabled. The first value is the minimum speed (0.5 fps or a dwell of 2 seconds per frame, here), and the second is the maximumg (20 fps). minimum_dwell = 30 specifies the minimum dwell (milliseconds) that can be set with the speed slider. The default value is 30ms; the minimum value is 5ms. Not that using small values can cause slower computers to have problems whilst looping. If the speed slider is being used, please use the rate parameter, above, to set the range you desire. dwell_rates = 1000,1000,500,30,1000 specifies the dwell (in milliseconds) for each frame. There must be the same number of values (comma-separated) as there are frames in the animation. In this example, the first and second frames have a fixed dwell if 1s, the third frame is a half-second, the fourth is 30ms, and the fifth frame is 1s. NOTE: these times assume no additional overhead, which is usuallly not the case!

Frame dwell rates may also be set in the file_of_filenames (see below)

rocking = true make "rocking" the startup mode for displaying the sequence; otherwise, "movie loop" is the startup mode. pause = 2000 pause on the last frame of a loop the additional number of milliseconds given (2 seconds in this example). The default is zero. pause_percent = 250 pause on the last frame of a loop the additional percentage of the current dwell time specified (250% in this example). In addition, if the current dwell is > 1 second, a fixed value of 100% will be used whenever this pause_percent option is specified. The default value is zero. transparency =#FFFFFF use the color "white" as the transparency value. This is only needed for overlays, and is optional for fading. The value is a hex value of red/green/blue (template: 0xrrggbb). "black" (0x000000) is also commonly used. In the second example, the transparent values range from 00 to 05 for red, green and blue. This form is particularlly useful when the background is not quite a constant value.

If the value = "image" then all the images are assumed to be GIF images with the 'transparent' attribute assigned to one color level. If used, this option will conserve memory and load faster. When used, the next option (overlay_transparent_amount) cannot be used.

overlay_transparent_amount = 100, 40, 20 The non-transparent pixels in overlays should be set to the opacity percentage indicated. In this case, the first overlay (see overlay_labels) is 100 opaque, the second is 40% and the third is 20%. 0 = totally transparent (you will not see anything! 100 = totally opaque (what would normally happen). overlay_zorder = 3,1,2,0 Changes the order of stacking of the overlays, so that the overlay labels may be arranged in an order that is independent of the stacking of the overlays. The default is: 0,1,2... When using this parameter, there must be one and only one value for each overlay. The example says that the first overlay will be "on top" and the last one will be on the bottom, with the second and third (values 1 & 2) will be in the default order. overlay_labels_color = 0x000000, 0xff0000, 0x00ff00, 0xff00ff Specifies the color of the text used to label the overlay selector buttons. The values are in RGB order (0xRRGGBB) and coded as hexadecimal values (00 = 0, ff = 255). There must be one item for each label -- even if the label is hidden! See "overlays" below. overlay_labels_mouseover_color = 0x808080, 0x00ff00, 0xffff00, 0x505050 Specifies the color of the text used to label the overlay selector buttons when the mouse is "rolled over" the selector. The values are in RGB order (0xRRGGBB) and coded as hexadecimal values (00 = 0, ff = 255). There must be one item for each label -- even if the label is hidden! See "overlays" below. Pick colors that provide contrast with the background and are different than the "overlay_labels_color" (above). overlay_labels_bold = f,f,t,f Specifies whether the weight of the overlay label should be Bold or Normal. "t" (or "b") specifies bold. overlay_static = y,y,n,n,y Specifies that certain overlays are "static" and do not need to be re-read when a Refresh is done. A value of "y" (yes) indicates this overlay is static. "n" (no) indicates it is not static and it's image files should be read during a refresh. overlay_preserve=0,0,639,49, 610,0,639,479 specifies that when images are zoomed, the two rectangular areas specified (top 50 lines, right-most 30 pixels) should be preserved from the original overlay image. This is useful for showing labels and logos that are part of the original images. There may be one or more such rectangles; the number of values must be a multiple of 4.

The values of the coordinates are ordered: x_upper_left,y_upper_left, x_lower_right, y_lower_right. The (0,0) point for images is in the upper_left corner. The 'x' coordinate is horizontal, the 'y' coordinate is vertical.

You must also provide a list of which overlays this overlay_preserve should be applied to (see below), or no preserve will be done.

Note that if a particular overlay is also used with the "overlay_preserve" that any associated enhancement table will be ignored when the "preserved" portion of the image is extracted; instead, the "transparency=" parameter will be used to determine if any level is to be made transparent.

overlay_preserve_list=false, false, true, false, true, false Specifies which overlays the "overlay_preserve" regions should be applied to. You may use "t" and "f" for the values as well as "true" and "false". overlay_enhance_table = 0,1,0,3 Specifies that the 2nd overlay should always be colorized (enhanced) using the first table in the "enh.tab" file (or whatever you specify), and that the 4th overlay should be enhanced using the 3rd table. The values of 0 (zero) indicate no enhancement should be applied. This automatic colorizing can only be used with gray-scale images. See the information here regarding the enhancement table.

Note that if a particular overlay is also used with the "overlay_preserve" that any associated enhancement table will be ignored when the "preserved" portion of the image is extracted; instead, the "transparency=" parameter will be used to determine if any level is to be made transparent.

This option can not be used with the "enhance" control -- in other words, you cannot use the "overlay_enhance" parameter to specify an overlay to be used with the "enhance" control, while at the same time specifying an overlay_enhance_table.

overlay_smooth = f,t,t,f Specifies that the 2nd and 3rd overlays should have their values smoothed when zooming. This may slow down the rendering of these images but otherwise can produce a much more pleasing effect when used in combination with the overlay_enhance_table. See the examples here. overlay_gap = 8 Specify the gap (space) between the overlay checkboxes, in pixels. The default is 8. overlay_labels_spacer = 0,0,30,0,0,15 Specifies extra spacing (in pixels) to be added before the associated Checkbox. This is in addition to the "overlay_gap", above, and provides a way to visually group the Checkboxes. overlay_labels_placement = 10&0, 10&20, 10&40, 60&0, 60&20, 60&40 Specifies that the automatic layout of the checkboxes for the overlays is to be over-ridden, and the checkboxes are to be placed in the corresponding x and y coordinates within the panel containing all the checkboxes. Each pair (x & y) applies to the corresponding overlay_labels. If you specify this option, then you must supply the coordinates for every overlay, whether or not the label is hidden! In addition, you must take care of the placement to be certain the labels do not overlap, etc.

The example shown says the checkbox for the first overlay whould be at x=10,y=0 (the upper left of the panel is at x=0,y=0), the second one at x=10,y=20, etc. Thus the frist two checkboxes with be aligned vertically and be placed near the left margin.

always_wiping = true Enables the left-to-right wiping action when the mouse is "dragged" (moved with the button depressed). You should only use 2 images when this mode is active! Also, see the "wiper" control. wiper_line_color = 0xff8080 Both enables a "dividing line" (using the color given) and adds to small triangular-shaped hints so users might know to drag the line left-and-right. Without this option, there is no dividing line between the images, and you might have to have more explict instructions.... fade = true Instead of just showing the images, generate 'faded' images between them and use the result as the sequence. This may NOT be used with the "fader" control; however it may be used with controls like "startstop", "step", "zoom" "refresh", etc. fade_steps = 10 Sets the number of images generated between supplied images when doing either a "fade" or using the "fader" control. The default is 10. background_image=myimage.jpg instead of a constant color for the background of the applet (see "backcolor", below), this allows you to create an image. Most of the image will be covered up by the main display "window". No scaling of the image is done, so it should be the same size as defined in the HTML for the HEIGHT and WIDTH parameters. background_hotspot = x, y, width, height, action, value define a hotspot for the background_image. If you use more than one background_hotspot, you MUST use key names appended with an increasing number. For example, if you had 3 background_hotspots to define, you would use:
background_hotspot0 = 350, 200, 50, 50, fof, newfof.txt
background_hotspot1 = 200,100,50, 50, fof, new2fof.txt
background_hotspot2 = 100,540, 50, 50, popup, More info content_position = 0, 3 Specify that the panel containing the controls and display will be placed at x =0 and y=3 in the parent panel. This can be used when a background_image is used to fine-tune the positioning. backcolor = 0xff00ff set the applet background color (used for backgrounds of all the controls as well...) to the RGB value (in hex) given (in this case, red=255, green=0 and blue=255). forecolor = xffffff set the color of the foreground (used for names on buttons, etc.) to the RGB value (in hex) given (in this case, white). Note that you should keep a good contrast between the background and foreground colors. font_size = 18 set the size of the fonts for all widgets to the value give; the default is 10. extrap_mode = key Specifies that the Extrap user interactions will change from the default (which is shift+click to mark, click to step frames, and alt+click to compute), to a potentially easier mode (click will mark and then after a short delay, step frames, alt+click with compute, and the "A" or right-arrow key will step through frames). to_from_lock = to Specifies that the Extrap computation is either "to" the point at which the user did the "alt+click" (compute). This value may also be "from". Without specifying this parameter, the default is "to", but the user may do an "alt+shift+click" to compute a "from". Setting non-default button and widget labels and colors: startstop_labels = Start, Stop, 20 startstop_labels_colors = 0, 0x606000, 0x303000 [, 0x0, 0xffffff, 0x000000] looprock_labels = Loop, Rock, 20 looprock_labels_colors = 0, 0x606000, 0x303000 [, 0x0, 0xffffff, 0x000000] autotoggle_labels=Auto On, Auto Off, 30 autotoggle_labels_colors = 0, 0x606000, 0x303000 [, 0x0, 0xffffff, 0x000000] autorefresh_labels = Auto On, Auto Off, 30 refresh_label = Refresh zoom_labels = Zoom, Un-zoom, 30 zoom_labels_colors = 0, 0x606000, 0x303000 [, 0x0, 0xffffff, 0x000000] fader_label = Vis IR fadertoggle_label = Step through images pick_enhancement = Pick Enhancement location_labels = Show Location, Hide Location, 100 location_colors = 0, 0x606000, 0x303000 [, 0x0, 0xffffff, 0x000000] wiper_labels = Wiper, Cancel wiper_labels_colors = 0, 0x606000, 0x303000 [, 0x0, 0xffffff, 0x000000] extrap_labels = Extrap, Normal extrap_labels_colors = 0, 0x606000, 0x303000 [, 0x0, 0xffffff, 0x000000] probe_label = Readout, 25 probe_labels_colors = 0, 0x606000, 0x303000 [, 0x0, 0xffffff, 0x000000] Each of these parameters allows you to specify alternate labels for many of the controls. For those controls having more than one label, you may also specify a 3rd parameter which is the width (in pixels) of the button -- this can be helpful to avoid any automatic resizing when toggling button states.

For the "...labels_colors" parameters, the first three values define the colors for the "active" state of the button and are the a) text, b) top portion of the button, and c) bottom portion of the button (the colors are automatically scaled between these). The optional second set of 3 colors define the "in-active" state colors; the default is off-white.

times = 1200,1300,1400,1500 Specify the times (hours and minutes, HHMM format) for each of the images for use only with the extrap feature. There must be one item for each frame. extrap_times_template=(\d\d\d\d)\d\d\.jpg Specifies that the 'times' required for the extrap feature should be picked up from the filenames specified in the file_of_filenames. There must be one specification of:
(\d\d\d\d)
in the template, as this matches 4 digits and the parentheses indicate the value is the time (HHMM format). In this case, the pattern will match the first occurance on a line in the f_o_f that has 6 digits, followed by ".jpg". So if a line looks like this:
rad030000.jpg
then the time for this image would be picked up as "0300". times_label_style = 0xff8030, -5, CDT, 0x303030, 15, bold, true Provide for altering the values displayed on the "extrap" display. The parameters are:
color, UTC offset, timezone label, background_color, font_size, font_weight The optional "UTC offset" may be a decimal value (e.g., -5.5), and the "timezone label" is optional. Both foreground and background colors are in the form: 0xRRGGBB (RR=red, GG=green, BB=blue). Note -- if the background color is specified as -1, it will be transparent. "font_weight" is either "normal" or "bold" (without quotes). Finally, the 'true' indicates that times should be labeled with "AM" or "PM" (12-hour clock), instead of a 24-hour format. probe_style = 0x101010, 0xf0f0f0, 14, 1, mm/h, Rate= Define the color of the background (0x101010), and the foreground (0xf0f0f0) for the probe readout. The font size should be 14. The last 3 parameters are optional since they may be defined in the associated enhancement table (enh.tab): number of decimal places to show (2), the units (mm/h), and a label prefix (Rate=). As shown, the resulting probe readout would be of the form: Rate=23.58 mm/h setframe_label = Image Frame Number * set the template to use for labelling the "setframe" control slider/scrollbar. The given string of characters must contain an asterisk ("*") character; the actual frame number will replace this when displayed. frame_label = label for 1, label for 2, ... TIME/DATE SUBSTITTUTION NOT IMPLEMENTED when the framelabel control is specified, the values in this comma-separated list will be used to label each frame. If you enclose a standard format date-time between a pair of "$$" characters, it will be replaced by a string for the computer's local time zone. For example: "Picture from $$5/10/00 15:00 GMT$$ in the morning" will be displayed as: Picture from May 10 10:00:00 CDT 2000 in the morning The formatting is fixed by the Java library... frame_label_width = 30 this specifies the width of the text box (in characters) to be used for the frame_label strings. The default is 20 frame_label_style = 0x000000, 0xffffff, 20, 30 this parameter specifies the style of the frame_label display. The arguments are: background color, foreground (text) color, font height, and label (box) height. image_base = http://www.my.host/mydir/ this directs that the base URL of the image files (and the file_of_filenames, if used) should be the value given. The default URL is the directory containing the HTML. Note that the hostname in the specified URL must be the same as the hostname where the applet is read from.

Note that if this is a directory reference, it MUST end with a slash character (that is: / ).

toggle_size = 5,10,3 this sets the toggle control's little boxes width to 5, the height to 10, and the spacing between them to 3. This can be very helpful if you have a large number of frames and don't want to make your applet width too large just to accomodate these boxes. toggle_onoff = t,t,f this sets the initial state of the "toggle boxes" -- the default is "on". You may set individual boxes "off" using values of either "off" or "f" or "0" (without the quote marks). In this example, the 3rd box is initially "off". play_audio = mysong.mp3 this is available only within a file_of_filenames. When the file_of_filenames is loaded, the named audio clip ("mysong.mp3" in the example) will be played one time. If the file_of_filenames is reloaded, the named file will again be played. This is useful for providing an audible alert when the file_of_filenames is dynamically generated on the server. pop_up = This is the message; it is only a test. If it were a real message you would know! this is available only within a file_of_filenames. When the file_of_filenames is loaded, the message text (everything after the = sign) will be displayed in a modal dialog box. The user must dismiss this dialog box before any other controls can be used. If the file_of_filenames is reloaded, the message will pop up once again. This is useful for providing a visible alert when the file_of_filenames is dynamically generated on the server. rotator_labels = N, E, S, W NOT IMPLEMENTED this defines the labels to be used with the rotator widget. You may specify up to 8 labels (more just won't fit...) that will be evenly distributed around the circle. The first label will be placed at the top ("North"), and sucessive labels will be positioned clockwise around the circle. Depending on the letters, you may be able to get up to 4 letters per label (certainly more than that for the top and bottom (0 and 180 degrees). If you use 'fading', then the number of frames will be recomputed when you activate/de-activate it, but the rotator labels will not change. NOT IMPLEMENTED rotator_color = x00ff00 NOT IMPLEMENTED this defines the color to use for the rotator "arm". It is in for format: xRRGGBB, so the value shown will make a green colored arm. The labels and circle will be drawn with the foreground color specified. The default is yellow (xffff00). NOT IMPLEMENTED num_frames_choice = 5, 10, 15, all NOT IMPLEMENTED this defines the contents of the numframeschoice control (see above) that allows the user to select the actual number of images (frames) that are downloaded and displayed. By default, the first element in this list defines the start-up conditions. In the example herein, only the last 5 frames of the sequence will be initially downloaded and displayed; this includes all overlays and portals defined for only these frames as well.

There are some options available:

default_num_frames_choice = 2 NOT IMPLEMENTED this sets the initial (default) index of the choice for num_frames_choice list (above). This value is zero-based and the default value is 0 (zero) meaning the first item in the list.


The following are related to the image filenames specification - details are immediately below. basename = file num_frames = 6 base_starting_number = 1 filenames = file0.gif, file1.gif, file2.gif file_of_filenames = listoffiles.txt

Note that while the "file_of_filenames" argument is normally the name of a text file, you may also use this to invoke a server-side php script that will return lines of text just as if they were from a file. If you need to pass parameters to your php script, you must use the vertical bar (|) instead of the ampersand (&) in the declaration; the bars will be changed into ampersands before making the server request, however.

An example might look like: file_of_filenames=myscript.php?type=432|code=12|realtime=y when this is sent to the server, it will be: myscript.php?type=432&code=12&time=y


Image file names
All the image files can be in GIF, JPEG or PNG formats. The files identified using the parameter names described in this section should fill the desired window. If used, overlays and portals should be the same size and have the same geometry as these "background" images.

For the background images, the image files may be specified in one of three, mutually exclusive, ways.

  1. Using a "root" name, to which successive numbers are appended to create the actual filenames:
    basename = file num_frames = 4 base_starting_number = 0 In this case, the root name is file and since there are 4 images specified with the numbering starting at 0, the actual filenames must be: file0, file1, file2, and file3. Please note that the default base_starting_number is zero, and so it would not have to specified in this case...

    Also, please see the Note below about this form and wildcards

  2. Using the filenames themselvels:
    filenames = file0, file1, file2, file3
  3. Using a file which contains a list of the image filenames (one per record)
    file_of_filenames = file-containing-filenames where the file "file-containing-filenames" contains lines of text that are in the form:
    file0 file1 file2 file3 Lines beginning with # are ignored, so you may put comments into your file_of_filenames.

    NOTE: If you want to specify an optional frame label (see the controls section above), you may put the value with quote marks after the filenames. (The label may, optionally, contain a date-time to be reformatted for the user's timezone -- see "frame_label", above.) For example: file0 "label one" file1 "label two"
    NOTE: If you want to specify an optional dwell rate for each frame, put the value (in milliseconds) inside brackets after the filename. Be sure to put a space before and after the brackets. If you use this mode, you must supply a dwell rate for every frame! For example: file0 [800] "label one" file1 [300] "label two"
    NOTE: if you are using overlays, then you may put them into the file_of_filenames as well. Please see the section, below, on overlays.

    NOTE: the pop_up= and the play_audio parameters (see above) are only available inside a file_of_filenames file.

    NOTE: if you would like to re-define hotspots in the file_of_filenames, use any of the forms specified in the definition of the parameter "hotspot" (above). Some examples:

    hotspot=x,y,w,h,pan,fof,mpx_ncr20090405.txt, Click here to load new data hotspot=x,y,icon,himage3.png,pan,popup,This is the popup text and may be <b> in bold</b> hotspot=x,y,icon,hotimage1.gif,nopan,link,http://www.ssec.wisc.edu,Click here to open a link to the SSEC homepage ....
    You may also re-define the "coordinates" parameter within the file_of_filenames.
NOTE: For the first form (specifying a "basename"), you may also use a wildcard format. There are two forms of this, one using a single * (to substitute numbers 0,1,2...,10,11,.. at that point) and the second using one or more ? (to substitute the numbers with leading zeroes for all the ? marks). For example, if you say: basename = file*.gif the actual filenames must be: file0.gif, file1.gif, file2.gif, and file3.gif

You may also use the form:

basename = file????.gif the actual filenames in this case must be: file0000.gif, file0001.gif, file0002.gif, and file0003.gif

Note that in both these cases,


Overlays
You may also use overlays -- one or more images that are (optionally) displayed on top of the base image, usually in such a way that part of the base image shows through. For example, a map or plotted data may be an overlay. In order to let some of the base (background) image show through, you must designate one color level in the overlay images as "transparent" and then specify that value using the transparency parameter (above). You may also specify the opacity/transparency of the non-transparent portions of overlay images -- see the overlay_transparent_amount parameter (above).

You may also specify the color of the labels for each overlay using the overlay_labels_colors parameter (above).

In addition, you need to specify the overlay control, and provide a few more parameters:

Overlay file names

Note: If you are using the file_of_filenames for the image files, you must use that method for specifying the overlay filenames as well! (See below...)

  1. If you are not using the file_of_filenames for the background image file(s), you may use the overlay_filenames parameter. The grouping of names -- commas separate the overlays and ampersands separate frames for each overlay. overlay_filenames = ofileA0 & ofileA1 & ofileA2 & ofileA3, ofileB0 & ofileB1 & ofileB2 & ofileB3, ofileC0 & ofileC1 & ofileC2 & ofileC3
  2. You may also use a text file (the "file_of_filenames" form) to specify all the filenames. (As mentioned, this form is required if you are also using the file_of_filenames for the background/base images). To use overlays with this form, the filenames for all the overlays for one frame appear on one line. file0 overlay=ofileA0, ofileB0, ofileC0 file1 overlay=ofileA1, ofileB1, ofileC1 file2 overlay=ofileA2, ofileB2, ofileC2 file3 overlay=ofileA3,ofileB3, ofileC3 NOTE: You MUST supply all overlay file names for each frame, even if the filename is repeated!!

    NOTE: If you want to specify an optional frame label (see the controls section above), you may put the value with quote marks between the filenames and the keyword that follows. For example: file0 "label one" overlay=ofileA0, ofileB0, ofileC0 file1 "label two" overlay=ofileA1, ofileB1, ofileC1
    NOTE: If you want to specify an optional dwell rate for each frame, put the value (in milliseconds) inside brackets after the filename. Be sure to put a space before and after the brackets. If you use this mode, you must supply a dwell rate for every frame! For example: file0 [800] "label one" overlay=ofileA0, ofileB0, ofileC0 file1 [300] "label two" overlay=ofileA1, ofileB1, ofileC1


Updates after Beta

Since the first release version, here is a summary of changes: