A user interface framework for Grid-based computational steering and visualization. Jason Wood*, Mark Riding and Ken Brodlie
Overview Eviz project Objectives of the adaptive user interface skML and extensions Interface framework Examples Conclusions and further work Eviz project Objectives of the adaptive user interface skML and extensions Interface framework Examples Conclusions and further work
Eviz 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 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
Objectives 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 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
Extended skML Used by the Eviz system to describe the pipeline that has been created for the user. skML originates from the gViz project ( 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 Used by the Eviz system to describe the pipeline that has been created for the user. skML originates from the gViz project ( 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
Example skML Dglazing.dat Dglazing.dat
Interface Framework
Building from skML Can build from default skML description
Adding a type attribute to parameter Building from skML
Building from skML Adding layout information to the RDF section cspcx34.leeds.ac.uk 32786:0:0...
Building from skML Adding a widgetType attribute.. <param_array name ="Wind Direction" min="-1" max="1" type="double” widgetType=“Compass” > <param name="Current Time" min="0" type="double" widgetType="text" interaction="view">0.0...
User 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. 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.
User 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. 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.... <rdf:RDF xmlns:rdf=" xmlns:v=" RealityGridComms garfield.mvc.mcc.ac.uk /WSRF/SWS/SWS/ mutley.mvc.mcc.ac.uk 50508:0:0...
Application Changes Pipeline components can change their widgets state / appearance / visibility... but the component must generate the change
Example 1 Simulation and VTK application controlled using gViz
Example 2 Simulation controlled by RealityGrid VMD visualization application controlled by gViz Single user interface to control both Simulation controlled by RealityGrid VMD visualization application controlled by gViz Single user interface to control both
Future 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. 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.
Conclusions 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. 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.