Documentation for AniS - the AnimationS
applet
October 13, 1999
updated: May, 2007
What's new
Improved loading of static overlays with limited number
of frames (using the numframeschoice control.
In the previous release, new controls and parameters added:
New control: numframeschoice that allows you to set up
a list of the number of frames to be downloaded and displayed. Useful
to help users with limited bandwidth. Must be used in conjunction
with the num_frames_choice PARAMeter that specifies a list
of choices.
New parameter: overlay_labels_colors added to allow
individual colors for overlay labels. (Does not work on Macs.)
New parameter: quiet_reload prevents the display of images
as they are being loaded (when a "refresh" is done), thus preserving
the screen as best as possible.
Before that, these parameters were been added:
base_static, overlay_static, keep_zoom, and overlay_zoom.
See details below.
Quick Links in this Document
To run the applet, you need an applet tag. The
skeleton for this is:
Exampl of using the AniS applet
The rest of this document describes the PARAMeter names and values
needed to drive the AniS applet. We begin with the controls and
then describe the specification of the filenames of the images.
One word about blanks (spaces). Within each PARAMeter clause,
leading and training blanks are ignored for each parameter. You
should use spaces to provide for easier readability.
Parameters for controls (if the control is named, it will
appear; otherwise, its default value will be used):
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!
Here are the details about each control:
- startstop is a button for starting and stopping the looping.
If it is not specified, the loop will run forever (if you have otherwise
set the start_looping parameter to "true"). You may use the "rate"
parameter to set the initial looping speed.
- looprock is a button that is used to control whether a movie
loop or a rock back-and-forth mode is used. The default is loop, but may be
specified as rocking using the "rocking" parameter.
- step creates two little buttons useful for single stepping,
forward and backward. The left- and right-arrow keys on the keyboard
may also be used for this purpose.
- firstlast creates two little buttons useful for going
immediately to the first or last frame in the sequence.
- speed is a slider that determines the animation rate. If not
used, a default rate of 3 frames per second is used
(unless overridden by the 'rate' parameter).
- show is a button that will allow the user to show a
single frame (image) by itself in the browser. The intended purpose
is to allow the user to save and/or print the image. If used, this control
is only active when the looping is stopped. Normally, the image will
be displayed in a separate window; if you want the user to see the
image in the same window, use "show/same" for the control name. The
show control cannot be used with "faded" images.
- enhance enables on-the-fly enhancements (colorizing) of
the gray levels in the base images. When you specify this control,
you must have defined a text file named enh.tab in the
same directory as the image data. This file
contains the enhancement curves you want the user to be
able to choose from. A sample is provided in the distribution. An
attempt will be made to read this file, regardless of whether this
control is specified or not (see the "no_enh" parameter, below).
- refresh is a button that will attempt to force a
reload of the image files, ignoring any cached images (unless
the 'use_caching' parameter has been set). This is
useful for realtime data applications, where the contents of the
image files may be changing. NOTE: If you are using the
"file_of_filenames" method of naming the image files, it is
very important
not to change the total number of images if you change the
contents of the "file_of_filenames". Also, see the
quiet_reload parameter, below.
- auto_toggle is a button that will turn the auto
refresh function on and off. If you have the ability to zoom
or enhnace images, along with an auto refresh, you might want to
include this button (when an auto refresh cycle happens, all
zooming and enhancements are cancelled).
Normally the auto-refresh is enabled at the start. If you want
autorefresh to be initiall turned off then append the characters
/off...for example: auto_toggle/off.
- toggle provides a way for the user to toggle images
on and off. If you specify this control, a series of little
colored boxed will be displayed on a separate line. As each
frame is looped through, the box corresponding to the image will
change color. If the user (left button) clicks on a box, she will disable it
(clicking again will re-enable it). If the user (right button)
clicks on a box, she will cause the program to show that frame. Note:
you may set the width, height, and spacing of these boxes -- see the
toggle_size parameter below. Normally, a text line of help
information appears below the toggle boxes; if you want to supress
this, append the characters /nohelp....for example:
toggle/nohelp.
- rotator provides a different way of letting the user see
what image in the sequence they are looking at...and to control which
frame they are seeing. A circular widget is used, with a rotator
'arm' that will not only show the frame by it's angle (first frame is
"North" pointing, and sucessive frames move the arm clockwise), but
allows the user to select a frame by dragging the mouse around. There
are two related <param name=...> parameters that can be
used: name="rotator_labels" value=... (see below) for
specifying up to 8 labels, and name="rotator_color" value=...
for specifying the color of the rotator "arm"; the cirle and labels
are always done using the foreground color. Normally, the
rotator should not be used with the
toggle.
- setframe will provide a slider for setting the frame
being shown by simply sliding the slider.
Although this is designed to be used instead of
animation, it can be used with it.
- zoom will provide a pixel-duplication zooming ability. When the
'zoom' button is clicked, the cursor will change shape. When the
user clicks with the left button that on the image,
it will be zoomed one factor (x2,
x3, x4...) at the cursor location. After the first zoom, the
button will be relabelled "un-zoom". The user may then 'roam' the
image around by dragging the mouse. More left-clicks will zoom
in farther; right-clicks will zoom out one step per click.
If the "un-zoom" button
is clicked, the image will be restored to the original.
See the "active_zoom" parameter (below) to enable zooming without this
explicit control button. The user may also use "ALT+click" or "middle
button click" to reset the zoom when in this mode.
See the "keep_zoom" parameter (below) to make the zoomed state
persist after a "refresh" is done.
- fader will provide a slider for setting the "fade" level.
You should
NOT use this in combination with any of the first 4 controls
(which allow for animating faded images when the "fade" parameter
is set to 'true' and the 'fader' control is not specified).
- overlay provides one or more checkboxes that allows for
images to be overlaid on the base image.
Each box will be labelled according to the
'overlay_labels' parameter. You may also use "radio buttons" instead
of checkboxes for some or all of these, using the 'overlay_radio'
parameter.
- framelabel provides a text field into which a label will
be put for each image in a sequence of images. The text may be
specified using the frame_label PARAM or from the
file_of_filenames file (see below).
- audio enables a button that allows an audio clip to be
played. In order to use this option, you must also specify the
audio_filename PARAM (see below).
- numframeschoice creates a "choice" that contains a list
of numbers of frames that will be downloaded and shown. Without this
control, all frames defined will be downloaded and shown. This
control must be used in conjunction with the
num_frames_choice PARAMeter (see below) where the choices are
defined.
Parameters that may also be used (details for those parameters
related to filenames, portals and overlays appear after this section):
specifies that all the data files are contained in
an archive file that is specified in the <applet> tag. You must
include all extra files (enh.tab, file-of-filenames) as well. The
form of the <applet> tag is like:
<applet archive="aniscode.jar,data.zip" class="AniS.class"
height=....>
where the data files are stored in "data.zip".
specifies whether to use the "Progress Bar" to indicate the
status of loading images from the server. The default for this
parameter is "true". Setting the value to "false" will cause
a message Loaded XX of NN to be displayed on the screen
(where NN is the total number of all images, and XX is the current
loading value. This message is also displayed in the "Applet
Status Line" in the browser. When using the "Progress Bar" mode,
the Applet Status Line will show the percentage of images loaded.
when set to true this specifies that when images
are refreshed or reloaded for any reason, a "preview" of each
image will not be displayed. This does not impact the
initial loading of images, however. Note: in this mode,
sizes of images are not rechecked for consistency.
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.
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.
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.
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. If zooming is active, when the user zooms, the
image will be zoomed as usual, possibly showing more detail.
This option should not be used when portals are also used.
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.
specifies that the image file reads will use any caching that is
available. This may include the brower's own cache and/or the
caching that might be provided by the server. For real-time or
frequently updated images, this option should be used with caution,
since caching may cause old, out-dated images to be used. On the
otherhand, if your filenames are always unique (for example, if the
date/time is part of the filename) then this can be very effective.
The default for this option is to disable caching and always read
all images.
specifies that if caching is enabled, any filename
that contains the match-string will have caching
disabled when it is read. This can be used, for example, if
the latest image in a loop always has the same name.
disables the use of altering the filename requested from a
web server for non-cached images. Normally, AniS 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.
specifies that the base images will be automatically
reloaded from the source every 16 minutes. An attempt is made
to by-pass any use of caching (unless "use_caching", above, has
been set to 'true'), and this process has been found
to work quiet well in both Netscape and IE.
Note: be somewhat cautious with overlays or portals when using the
auto_refresh option -- they may not always work as expected.
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.
this supresses showing any controls. Please see "start_looping"
parameter, below.
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".
specifies the frame number (starting at zero) of the frame to
display after all loading is done. This option implies
"start_looping" is "false".
specifies the initial loop rate as a number corresponding
to frames per second times 10 (thus, 120 means 12 frames per
second).
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.
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)
make "rocking" the startup mode for displaying the sequence;
otherwise, "movie loop" is the startup mode.
pause on the last frame of a loop the additional number of
milliseconds given (2 seconds in this example). The default
is zero.
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.
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: #rrggbb). "black"
(#000000) 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.
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).
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.
Specifies the color of the text used to label the overlay selector
buttons. The values are in RGB order (xRRGGBB) 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.
instead of just showing the images, generate 'faded' images
between them and use the result as the sequence.
instead of the "Set Fader Level" label on the fader control, use
the specified label. Note the label is centered so you must
provide ample spaces to ensure the fader control is made large
enough. In this case, the user wanted "Vis" on the left and "IR" on
the right, so many spaces were put between the words.
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).
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.
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.
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...
this specifies the width of the text box (in characters) to be
used for the frame_label strings. The default is 20
this specifies the name of the audio clip to be played when the
audio control is specified. This must be a .AU file.
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.
this specifies that the 'hostname' of the machine from which
the applet was loaded will be converted internally to an IP
address, and this IP will be used for all file reading.
This can be very helpful if
your server uses hostname and IP spoofing for things like
loadsharing. The value "true" must be exactly that!
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.
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.
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).
this enables the use of PNG files for all JVMs/browser versions
by using the sixlegs/tt> PNG decoder.
If you want to use PNG and do not have control over browser or
JVM versions, you may want to consider this. If you use this
option, then your image file names MUST end with png
(See note, below, under "Image file names" regarding the use
of the wildcard format.) Please see
this
page for more details about using PNG files.
this will cause the background of each frame to be blanked out
priod to showing each image. This should be used if some
of your images have 'transparency' set (for example, GIF and PNG
images allow you to set a level, like the 'background' to
transparent). Enabling this option will prevent the images from
appearing to be overlaid, but may slow down the animation
speed.
this supresses the attempt to read the "enh.tab" file.
This takes care of a problem when using a firewall with password
protection, when no enhancement is used.
this forces the language to the values 'es' (Spanish)
Normally, the language of the client
machine is used. This parameter provides a way to over-ride
this, if needed. Caution: some Unicode characters may not appear
correctly when this option is used!
this prevents the display of the portal pointers (cursors)
that are normally used to help show the co-locations of points
within the main and portal images. The default value for this
is true. You might want to set this to false
when you are using, for example, a four-panel display (four portals that
cover up the background completely).
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:
- A value with a preceeding - (minus) sign implies
"this many images, sequentially and including the last one"
(example: -4, -8,...)
- A value with a preceeding + (plus) sign implies
"this many images, sequentially and including the first one"
(example: +3, +9, ....)
- A value with a preceeding -* implies "this
many frames, equally spaced from the whole set, but
always including the last one"
(example: -*5, -*10, ...)
- A value with a preceeding +* implies "this many
frames, equally spaced from the whole set, but
always including the first one"
(example: +*3, +*6,...)
- The word "all" implies all frames.
- A value with no preceeding marks, implies a -.
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.
These are related to reading image files and are defined in the next
section.
These are related to reading portal image files and are defined in the next
section.
Image file names
All the image files can be in GIF or JPEG 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 GIF/JPEG files may be specified
in one of three, mutually exclusive, ways.
- Using a "root" name, to which successive numbers are appended
to create the actual filenames:
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
- Using the filenames themselvels:
- Using a file which contains a list of the image filenames
(one per record)
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: 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:
the actual filenames must be: file0.gif,
file1.gif, file2.gif, and file3.gif
You may also use the form:
the actual filenames in this case must be: file0000.gif,
file0001.gif, file0002.gif, and file0003.gif
Note that in both these cases,
- you must use the num_frames parameter to defined the
total number of frames
- you may also use the
"base_starting_number" parameter to modify the starting
value (which otherwise defaults to zero).
Portals
Portals are viewports into other images, which are shown in
windows superimposed
onto the background image. The user "roams" around in a portal by
dragging the mouse pointer around on the background image. For each
portal, you must specify its location and size, and then the
filename(s). If you are animating the background images, you'll need
to specify a corresponding number of portal filenames for each frame
of the animation.
First, however, the parameter for specifying the location:
Each list item separated by a comma defines the location (x,y)
of the upper left corner of the portal and the portal's width
and height values. All values are given in pixels; the upper
left corner is (0,0).
You may have any number of portal windows
that you like, but they should all fit inside the dimensions of
the background image and should not overlap.
To specify the portal image filenames, you may use one of the
following forms (note in each example, 3 portals are being defined
with the names associated with each separated by a comma; in the
second method, the files for each of 4 frames are explicitly named
separated by &).
- In the first case, you are specifying a "basename" for each
portal (see file name conventions, above). Each name you specify
is for an individual portal, and the software will load as many
images for each portal as there are background image frames.
(You may also use the wildcard format mentioned above.)
- In the second case, you are naming each file explicitly. The
grouping of names is the same as above -- commas separate
portals. Ampersands separate filenames for each frame of a loop.
- Finally, you may also use a text file (the "file-containing-filenames"
form) to specify all the filenames. To use portals with this form,
the filenames for all the portals for one frame appear on one line.
file0 portal=pfileA0, pfileB0, pfileC0
file1 portal=pfileA1, pfileB1, pfileC1
file2 portal=pfileA2, pfileB2, pfileC2
file3 portal=pfileA3,pfileB3, pfileC3
NOTE: You MUST supply all portals 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" portal=pfileA0, pfileB0,...
file1 "label two" portal=pfileA1, pfileB1,...
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" portal=pfileA0, pfileB0,...
file1 [300] "label two" portal=pfileA1, pfileB1,...
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:
- Define the labels for the checkboxes and/or radio buttons:
This specifies the labels that will be used on the controls for each
overlay. The ordering of the values should be the same as the
filenames (below). You'll want to keep these labels brief!
- Specify the initial state of each overlay. By default, all
overlays are initially "off". If you want to force one to be on,
append /on to the label. From the previous example:
would force the second overlay to be initially turned on.
- An overlay with no control button. If the overlay is to be "on"
all the time (and thus, no checkbox or radio button will appear for
it), append /always to the label. For example:
- Hidden overlays. If the overlay is to be linked (see
"overlay_links", below) and should have no checkbox or radio button
for it), use /hidden. This is onlyuseful when
linked to an "owner" and will follow its state. (the
"hidden" item should have the negative link value, and thus is
the "target"). (Please note that if you are specifying the colors for
the overlay labels (see "overlay_labels_colors") you must specify a
color even for a hidden overlay!
- Using "radio buttons". If you want to treat some or all of the
overlays as 'radio buttons' (that is, only one of them may be showing
at once), you may use the overlay_radio parameter. For
example:
This would specify that overlays 1, 3, and 4 would be 'radio buttons'
and only one could appear (be "ON") at once. Overlay #2, however, may be
toggled on and off indepdently. If you want to use radio buttons for
all of your overlays, you may simply say <param
name="overlay_radio" value="true">
- Layout of checkboxes and radio buttons. Normally, the
checkboxes and radio buttons will be laid out in a single row;
unfortunately, the layout manager will simply not show any that would
appear beyond the WIDTH. You may specify that the
checkboxes and/or radio buttons appear on two rows in the GUI. If you
preceed the label name with a "/" then this will start a second row.
For example:
specifies that the checkboxes for #1, #2 and #3 will appear on one
row, while the checkboxes for #4, #5, etc., will appear on a second
row. Using this option will increase the height required for
the applet!
- Linking overlays together. It is also possible to link overlays
together so that when the user clicks one on, more than one is
activated. For example:
The values of zero ("0") indicate no linking. Positive values are the
"owner" and the corresponding negative value is the "target". When an
"owner" is turned on, the corresponding "target" is also turned on.
When the "owner" is turned off, the "target" will not change,
unless it was a "/hidden" overlay (see above). Each "owner"
may have more than one "target", and vice-versa.
- Positioning overlays on the screen. You may also change the
position of an overlay on the screen. Normally, overlay images are
located with the upper left corner in the upper-left of the display
(x=0, y=0). You may use the overlay_locations parameter to
move the overlay. For example:
This would specify the overlay #1 would be positioned with it's upper
left corner at location (x=10, y=20), overlay #2 would be at
(x=100,y=200), and overlay #3 at (x=0, y=0...the default). If you use
this parameter, you must specify a location for each overlay
for which you provide a label.
- Static, unchanging overlay images.
If you have some overlays that are "static" and do not need to
be reloaded from the server when the user clicks "Refresh", you
can used the overlay_static parameter to designate which one(s)
are static (and which ones are not static, and should be reloaded).
Indicates the first, second and fifth overlays do not change and need
not be reloaded. The third and fourth will be reloaded when the user
so requests (or the automatic timer goes off).
- To zoom, or not to zoom. It is often times useful for
some overlays not to be zoomed with the rest of the image(s) --
for example, legends. To keep a legend overlay on the image while the
rest are zoomed, use the overlay_zoom parameter.
Indicates that the first 3 overlays will be zoomed along with the
base or background image. The 4th overlay, however, will not be
zoomed along with them.
- More parameters for overlays!!.
See information above about the overlay transparancy, "z-ordering" of overlays! Also, see the base_static parameter, above.
Overlay file names
To specify the names of the files for the overlays, you may use one of
these forms (note in each example, 3 overlays (A,B,c) are being defined
with the names associated with each separated by a comma; in the second
method, the files for each of 4 frames are explicitly named separated
by &).
- In the first case, you are specifying a "basename" for each
overlay (see file name conventions, above). Each name you specify
is for an individual overlay, and the software will load as many
images for each overlay as there are background image frames.
(Again, you may use the wildcard format -- see above.)
- In the second case, you are naming each file explicitly. The
grouping of names is the same as above -- commas separate
portals. Ampersands separate filenames for each frame of a loop.
- Finally, you may also use a text file (the "file-containing-filenames"
form) to specify all the filenames. 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
Explicit paths in your HTML for dynamic web pages (or how to avoid
having multiple copies of the AniS class files on your server)
If you are generating dynamic web pages (using, for example, a Python
script) or have several different animations on your server and want
to avoid having multiple copies of the AniS class (or JAR) files, we
suggest you use the "codebase" attribute that is available in the
<applet> tag to point to the location on your server of the class or
JAR files. For example:
or, if you are using the aniscode.jar file, then:
You may also give a full URL for the codebase, but it must be on the
same machine:
Finally, the image files are read _relative to the directory
containing the HTML_. If you need to change that you can include the
directory information in the filename (the same is true when using the
'file-of-filenames' method). For example:
Language considerations
AniS buttons and sliders, etc., have the ability to be labelled in
a variety of languages. Each language requires a "properties bundle"
file to be created that contains a "tag" used by AniS and the
associated word in the target language. For example:
loop = \ \ \ Boucle
rock = Basculer
taken from the current French bundle. Note the leading "\ \ \ " in
the first item -- this pads the beginning of the word with 3 spaces
(and there are 3 at the end as well) so that the button does not
dramatically change size when toggling the label between "loop" and
"rock" (or " Boucle " and "Basculer" in this case).
Some letters will have to be put in the text file with their Unicode
value. For example:
pick_enhancement = Am\u00E9liorer les couleurs
puts in the Unicode character defined by hex code "00E9" between the
"m" and "l". Note you must use the hexadecimal values.
A copy of the unicode chart is available by clicking here
The only other consideration is that the properties files must have a
strict naming convention. In this case, we use
"anismessages_"++".properties"
(without the " marks) where the <language> is,
for example "es" for Spanish, and would result
in a file named anismessages_es.properties. This file must
then be placed into the JAR file and/or be in the directory from which
the class files are loaded. If there are any mistakes in the file,
the program will revert to the English (the contents of the
anismessages.properties file).
You may also use the param named locale to force the
language and country to a fixed value (see above).
The following language files are now available:
- anismessages.propterties = the default file (English)
- anismessages_en.properties = the English file
- anismessages_es.properties = the Spanish file
- anismessages_fr.properties = the French file
- anismessages_tr.properties = the Turkish file
Back to the AniS homepage