Summary: | 3-D graphical user interfaces (3-D GUTs) may be beneficial to application programs that
need to manipulate 3-D objects or multi-dimensional data. However, most existing 3-D graphics
programming systems do not provide primitives for building 3-D GUTs; instead, programmers
have to deal directly with input device events and 3-D graphics. Systems that do either are
research systems that are not available to application programmers or are difficult to extend.
For these reasons, explorations in the use of 3-D GUTs have been difficult.
An extensible and object-oriented 3-D Widget Programming Library is implemented. It is
an extension to Inventor (a widely available 3-D programming library) and lets programmers
contruct new widgets (3-D scene objects with interactive behaviors) using four types of highlevel
components that are responsible for user interface, visual feedback, application interface
and general computation. A widget built with this library is able to control and display one
or more application states, interact with users in a click-drag-release fashion, and convey the
application states through the relative positions and orientations among the widget’s parts.
A widget interfaces with an application program through either direct attachments to scene
objects or callback functions.
|