Title: A user interface framework for Grid-based computational steering and visualization.
1A user interface framework for Grid-based
computational steering and visualization.
- Jason Wood, Mark Riding and Ken Brodlie
2Overview
- Eviz project
- Objectives of the adaptive user interface
- skML and extensions
- Interface framework
- Examples
- Conclusions and further work
3Eviz Goals
- Integrate heterogeneous hardware
- Span different networks
- Reuse existing visualization software
- Fault tolerance
- Aide user in creation of visualization pipeline
- Adapt user interfaces to user and situation
- Adapt user interfaces to user and situation
4Objectives of adaptive user interface
- Dynamically constructed to fit system generated
visualization pipeline - Runtime selection of communications mechanism
- Runtime widget selection
- Runtime user customisation
- Runtime system updates
- Visualization system independent
- Platform independent
5Extended skML
- Used by the Eviz system to describe the pipeline
that has been created for the user. - skML originates from the gViz project
(http//www.comp.leeds.ac.uk/vvr/gViz). - XML description of the visualization pipeline.
- Extensions to skML required to allow
- better generation of user interfaces
- runtime selection of widgets
- runtime selection of communications mechanism
- runtime user interface updates
6Example skML
- ltskmlgt
- ltmap idisosurfacegt
- ltmodule idDR nameReadData
out-portOutputgt - ltparam nameFnamegtDglazing.datlt/paramgt
- lt/modulegt
- ltmodule idIS nameisoSurface
in-portDataIn out- portGeomterygt - ltparam nameThresholdgt65.0lt/paramgt
- lt/modulegt
- . . . . .
- ltlink idDRtoISgt
- ltmodule refDR out-portOutput/gt
- ltmodule refIS in-portDataIn/gt
- lt/linkgt
- . . . . . .
- lt/mapgt
- lt/skmlgt
7Interface Framework
8Building from skML
- Can build from default skML description
9Building from skML
- Adding a type attribute to parameter
ltmap id"default" style"left10top10colord4d
4d4"gt ltmodule id"1" name"PollutionSim"
out-port"OutData" gt ltparam name"Grid Size"
min"12" max"30 type"long"gt12lt/paramgt
ltparam nameupdate" min"1" max50
typelong"gt10lt/paramgt ltparam nameX1"
min0.0" max100.0" type"double"gt0.0lt/paramgt
. . . . . . .
10Building from skML
- Adding layout information to the RDF section
ltrdfDescription about"1"gt
ltvPhysicalLocationgtcspcx34.leeds.ac.uklt/vPhysica
lLocationgt ltvContactPointgt3278600lt/vCont
actPointgt ltvLayoutgt
ltvLayoutStyle rows"5" columns"6"
style"grid"/gt
ltvLayoutElement name"Grid Size" row"0" col"0"
width"1"/gt ltvLayoutElement
name"Topography" row"1" col"0" width"2"/gt
ltvLayoutElement name"X1" row"0"
col"3"/gt . . .
11Building from skML
- Adding a widgetType attribute
. . . . ltparam_array name "Wind Direction"
min"-1" max"1" type"double
widgetTypeCompass gt ltvalgt1.0lt/valgt
ltvalgt0.0lt/valgt ltvalgt0.0lt/valgt lt/param_
arraygt ltparam name"Current Time" min"0"
type"double" widgetType"text"
interaction"view"gt0.0lt/paramgt . . .
12User extensible widget interface
- The Eviz Client provides a Java interface that
describes an eViz widget - If users create widgets that implement this
interface then eViz can use them. - Widget selection is part of the parameter
attributes in the extended skML file, or defined
as a local preference.
13User extensible communications interface
- The EViz client accepts and creates parameter
values using an XML description. - A java interface is provided to allow the
addition of user created communications
mechanisms. - The communications mechanism for a component of
the pipeline is specified in the RDF section of
the skML file.
. . . ltrdfRDF xmlnsrdf"http//www.w3.org/1999
/02/22-rdf-syntax-ns" xmlnsv"http//www.brooke
s.ac.uk/skML2/"gt ltrdfDescription about"1"gt
ltvCommsTypegtRealityGridCommslt/vCommsTypegt
ltvPhysicalLocationgtgarfield.mvc.mcc.ac.uklt/
vPhysicalLocationgt ltvContactPointgthttp//calcu
lon.cs.man.ac.uk 50005/WSRF/SWS/SWS/16015781064
24904081lt/vContactPointgt lt/rdfDescriptiongt
ltrdfDescription about"2"gt ltvPhysicalLocation
gtmutley.mvc.mcc.ac.uklt/vPhysicalLocationgt
ltvContactPointgt5050800lt/vContactPointgt
lt/rdfDescriptiongt . . .
14Application Changes
- Pipeline components can change their widgets
state / appearance / visibility
... but the component must generate the change
15Example 1
- Simulation and VTK application controlled using
gViz
16Example 2
- Simulation controlled by RealityGrid
- VMD visualization application controlled by gViz
- Single user interface to control both
17Future Work
- Automatic layout of widgets for modules that have
no layout information. - Some generic way to describe simple UI behaviours
or interactions. - Widget classification scheme so that skML could
request a class of widget rather than a name.
18Conclusions
- The Eviz Client provides a mechanism for
delivering user interfaces for system generated
visualization pipelines composed from different
visualization packages. - Visualization components can have control over
their user interface components. - The framework is flexible enough to allow user
created widgets and communications mechanisms to
be added.