Integrating PHIGS and User Interface Systems
Jan Hardenbergh and James Michener Apollo Computer
300 Apollo Drive
Chelmsford, MA 01824, USA
Email: mich@apollo.hp.com 
Stardent Computer
6 New England Tech Center
521 Virginia Road
Concord, MA 01742, USA
Email: jch@stardent.com

Abstract
The past five years has seen an explosion of rich and effec-
tive user interface management systems and toolkits and an
increase in the expectations regarding application portabil-
ity. Nearly a decade old, the PHIGS input model is inade-
quate in the face of this variety. "Fixing PHIGS" input
would be a long and arduous task. Instead, PHIGS should
be adapted to cooperate, not compete, with user interface
systems.* This can be done in two ways. An application
can use both PHIGS input and input from a user interface
system to accomplish its goals. Alternatively, an applica-
tion can use input only from a user interface system, but in
this case it needs utilities in PHIGS to gain access to infor-
mation only PHIGS can supply. Specifically the utilities
are needed for application-initiated picking and for coordi-
nate mapping. 
CR Categories and Subject Descriptors: 1.1.2 [Models
and Principles]: User/Machine Systems - human factors:
1.3.2 [Computer Graphics]: Graphics Systems; 1.3.4
[Computer Graphics]: Graphics Utilities; 1.3.6 [Com-
puter Graphics]: Methodologies and Techniques.
Additional Keywords and Phrases: PHIGS, graphics
standards, graphics input, user interface, window system,
XI1, PEX, locator input, pick input. 
1. Introduction
 PHIGS, the Programmer's Hierarchical Interactive Graph-
ics System, is coming to fruition as a standard interface for
3D graphics. The combination of standard PHIGS1 and the
PHIGS-PLUS capabilities2, which we mean when we say
PHIGS, will meet most of the graphics needs of 3D com-
mercial applications. Major applications such as CADAM
and Unigraphics already use PHIGS. PHIGS is supported
by most of the major workstation and computer vendors
and also by software vendors' products.
 Although PHIGS output has evolved to keep pace
with changes in graphics hardware, PHIGS input has not
changed, in essence, since the graphics standards input
model matured in the early 80's.
 There have been tremendous innovations in user
interface development during the past decade producing
many popular toolkits and user interface management sys-
tems. A recent survey paper by Hartson and Dix3 lists
twelve user interface management systems that are avail-
able as products or are university research projects that the
authors felt deserved recognition. Two widely publicized,
consortium-supported user interface toolkits have appeared:
OSF/Motif4 and OPEN LOOK5. Both of these have
received support from applications developers and the
industry press.
 Although "user interface management system" and
"user interface toolkit" mean quite different things, for the
purposes of this paper we will ignore the differences and
will use the term "user interface system" (UIS) to connote
both.
 This paper will present the PHIGS input model and
what its problems are. It will explore three remedies to
PHIGS input deficiencies. The first considers adding a UIS
to PHIGS. The second considers using PHIGS input con-
currently with UIS input. The third solution is to use
PHIGS only for output and to use only a UIS for input.
Utility routines necessary for this alternative are described.
Finally, we give some examples of the third approach from
the industry.
 2. Background
 The deficiencies of the PHIGS input model are rooted in
the era of its definition. To understand why it must change
it is helpful to understand what it is and how it developed in
this fashion.
 History of PHIGS Input
 The PHIGS graphics input model is almost identical to the
Graphical Kernel System (GKS) input model6. This is due
to the desire not to diverge from GKS except where it was
technically mandated. Brief but excellent historical back-
grounds of the logical input device model in7 and8 describe
a two-decade long development process.
 The GKS design meeting which resulted in the GKS
input model was held in Abingdon, England in October of
1981. The meeting resolved many inconsistencies between
the input models of the Core System9 and the then-current
 Full Article: http://onlinelibrary.wiley.com/doi/10.1111/1467-8659.1010027/abstract North-Holland Computer Graphics Forum (1991) 27-36