Flexible Flyer Reference


ff data.set


Description

The Flexible Flyer is the graphical user interface (GUI) for the RIVA system. It acts as a viewfinder for the RIVA renderer. The user can fly over and around low-resolution models of the terrain surfaces loaded into the renderer; ff continually sends viewpoints to the renderer, which displays rendered frames to a separate iwindow in user's workstation. Thus, the user gets the best of both worlds: easy data navigation, and high-resolution images.
 

Usage

To examine a renderer data set using ff, one must first create a  configuration file  file that describes the data set. Then, one executes ff as follows:
% ff earth_ff.set
 
It is essential that a Router program is running; if ff cannot find a Router, it will hang mysteriously.

Set File Contents

The configuration file contains the information the Flexible Flyer needs to initialize itself for an interactive rendering session. It is a text file prepared by the user. Each line in the file is a command, a comment, or blank. Comment lines begin with '#', in typical Unix fashion. Commands in the set file have several purposes:
  • To define the communications channel between the Flexible Flyer and the renderer
  • To define terrain images and DEMs for navigation
  • To define renderer controls and menu items
  • To define placename tags

Communications Commands

The Flexible Flyer and the renderer use the Messager library for communications. The renderer sends status messages to the Flexible Flyer with resource 'RENDER_STATUS' and message type 'render_status'. The Flexible Flyer sends viewpoints and other commands to the renderer, with message type 'render_update'. The resource name can be set by the user:
messager command_name [status_name]
Sets the Messager resource name for commands sent to the renderer, and, optionally, the resource name for status messages received from the renderer. If unspecified, the names 'RENDERER' and 'RENDER_STATUS' are used.

 

Surface Definition Commands

Surface definition commands cause the Flexible Flyer to load an RGB image and associated digital elevation model. At least one surface must be loaded. The first surface loaded is the 'base' surface: viewpoints will be sent to the renderer in its coordinate system. If any of the surfaces are spherical, then the base surface must be spherical.

 Each command defines an item on the Surfaces menu; selecting the item causes the Flexible Flyer to fly over that Surface. In addition, each command automatically adds an enable/disable toggle to the Renderer menu.

 The surface definition commands are as follows:

sphere name texture DEM radius
Adds a spherical surface to the Flexible Flyer's scene graph. texture is the name of an RGB image of the surface in a cylindrical projection. DEM is the name of a RivaFile containing the digital elevation model for the surface. The Flexible Flyer assumes that the image and DEM are defined from -180 to 180 degrees east longitude, and from 90 to -90 degrees north latitude. radius is the radius of the renderer's sphere of zero elevation in the renderer's units.

 NOTE: At present, the flexible flyer does not use the DEM data; the texture is mapped onto a smooth sphere.

plane name texture DEM xwid ywid zres
Adds a planar surface to the Flexible Flyer's scene graph. xwid and ywid are the number of columns and rows in the renderer's data set. The zres is a multiplier used to scale the elevation units in the DEM to match the units of xwid and ywid. The other arguments are identical to those of the sphere command.

 

Renderer Control Commands

These commands create controls (menu items and widgets on the control panel) that send commands to the renderer, or add menu items to the Renderer menu. Many of the controls send commands to the RIVA renderer; see the renderer documentation for more information on these commands.

 The renderer control commands are as follows:

command

  Adds a command list to the control palette. The command list allows the user to enter arbitrary commands or select previously sent commands from a list.

 This control is added to the control panel whether the user asks for it or not; if not, it is initially disabled, but can be enabled by selecting it from the Controls menu.
 

mapper name bands

 
Adds a Color Mapper item to the Renderer menu for the TBD.

 
opacity name

 
Adds an opacity slider to the control panel for data set name. The slider can be moved from 0.0 to 1.0. It sends 'OPACITY:value name' and 'COMBINE' commands to the renderer.

 name must be the name of a surface loaded into the renderer; it need not be the name of a surface loaded into ff.

 The slider has a default value of 1.0.
 

status

 
Adds a status list to the control panel. All status messages received are displayed in this list.

 This control is added to the control panel whether the user asks for it or not; if not, it is initially disabled, but can be enabled by selecting it from the Controls menu.
 

toggle name

 
Adds a toggle item to the Renderer menu for surface name. Selecting the item toggles its state, and sends either 'ENABLE:name' or 'DISABLE: name' to the renderer, followed by 'REDRAW'.

 Toggle items are defined automatically by the sphere and plane commands, so toggle should only be used for surfaces loaded by the renderer by not by ff.

 All toggle items are 'on' initially.
 

vertexag [name]

  Adds a vertical exaggeration slider to the control panel. When a DEM name is given, the vertical exaggeration applies only to the specific DEM, otherwise, it applies to all the DEMS loaded in RIVA. The slider moves from 0.1 to 20.0 by 0.1. When the slider is adjusted, the commands 'ZRES:value' and 'REDRAW' are sent to the renderer.

 
displace demname vertical_displace horizontal_displace channel_names Time_steps

  Add a time step slider to the control panel with the range from 1 to Time_steps. The information is also used to build the Time Animation window.

 

Place Name Commands

Any terrain loaded into the Flexible Flyer can be tagged with place names. This is particularly useful for identifying the location of high-resolution insets on the base terrain. The following commands are available:
 
tag name lat long text
Places text as a tag on terrain name at (lat degrees north latitude, long degrees east longitude). The text may contain space.

 
tagwith base_name inset_name
Places inset_name as a tag on terrain base_name. The tag is placed over the center of the region covered by the inset.

Sample Set File

# test data set file for Flexible Flyer
# Define the Messager resource name
messager RENDERER RENDER_STATUS

# Define the terrain:
sphere Mars mars.rgb.1152x576 mars.vic 3666.932
plane AresTiu at.975x615.rgb atdemsmall.vic 9750.0 6144.0 0.3

# Define the controls
vertexag
# MarsGeo dataset is not loaded in ff, but in renderer, therefore, 
#put a toggle in the Renderer menu
toggle MarsGeo
opacity MarsGeo
opacity AresTiu

# Define the placename tags
tagwith Mars AresTiu
Privacy / Copyrights
FIRST GOV   NASA Home Page This page, http://pat.jpl.nasa.gov/RIVA//public/RIVA/ff.html, is maintained by Peggy Li and was last modified Monday, 25-Aug-2003 16:36:38 PDT, CL 03-2169
spacer