don@brillig.umd.edu (Don Hopkins) (03/28/88)
At the end of this message is a summary of the work-in-progress talk I gave at the Summer Usenix conference in Phoenix. It was published in the September/October 1987 issue of ";login:". (My address and phone number have since changed.) Jack Callahan and I will be presenting the paper "A Comparative Analysis of Pie Menu Performance" (by Jack Callahan, Don Hopkins, Mark Weiser, and Ben Shneiderman) at the CHI '88 conference, May 15-19 in Washington D.C. The paper describes the experiment that Jack designed and performed, comparing speed and error rate of pull down menus and pie menus. (Pie menus won on both counts!) At CHI '88 (the Conference on Human Factors in Computing Systems), I'll be giving demonstrations of various types of pie menus, implemented in object oriented PostScript under the NeWS window system, during one of the scheduled demo sessions, and also at the NeWS SIG on Thursday. (I'll send more info about that soon!) One example menu I'll demonstrate is a two level font selection menu: The first menu has names of font families in different directions. (Times-Roman, Courier, Helvetica, etc...) You choose a font family by moving the cursor into the corresponding wedge and clicking. A font style submenu pops up: Times-Roman \ / \ / Bold ^ Italic / \ / \ Bold-Italic (The ^ is the cursor, which starts out in the menu center.) Each font style submenu has the same layout, so you only have to remember two orthogonal sets of directions. You choose one of the font styles by moving the cursor into the corresponding wedge. The cursor distance from the menu center determines the font point size, so that the further out you move, the bigger the point size you get. As you move the cursor around the menu (browse), you see dynamic feedback of the font, style, and point size you get by choosing that part of the menu: You see the string "<n> point" in the wedge between menu center and the label of the currently active slice, in the appropriate font, style, and size. For example, if you move to the left and up a bit, you'd see something like: Times-Roman \ / ^ \ / Bold 18 point Italic / \ / \ Bold-Italic (Of course, the above image barely conveys the actual look and feel of the menus. ASCII character graphics can hardly do justice to interaction techniques and images expressed in object oriented PostScript (with extensions for input, mind you!). I'll post the source code to my latest version of class PieMenu, as well as some useful subclasses, to NeWS-makers (aka comp.windows.news) real soon!) -Don %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Directional Selection is Easy as Pie Menus! Don Hopkins University of Maryland Human Computer Interaction Lab College Park, MD 20742 (301) 454-1517 Simple Simon popped a Pie Men- u upon the screen; With directional selection, all is peachy keen! The choices of a Pie Menu are positioned in a circle around the cursor, instead of in a linear row or column. The choice regions are shaped like the slices of a pie. The cursor begins in the center of the menu, in an inactive region that makes no selection. The target areas are all adjacent to the cursor, but in a different directions. Cursor direction defines the choice. The distance from the menu center to the cursor, because it's independent of the direction, may serve to modify the choice. The further away from the Pie Menu center the cursor is, the more precise the control of the selection is, as the Pie slice widens with distance. With familiar menus, choices can be made without even seeing the menu, because it's the direction, not the distance, that's important. "Mousing ahead" with Pie Menus is very easy and reliable. Experienced users can make selections quickly enough that it is not actually necessary to display the menu on the screen, if the mouse clicks that would determine the selection are already in the input queue. The circular arrangement of Pie Menu items is quite appropriate for certain tasks, such as inputing hours, minutes, seconds, angles, and directions. Choices may be placed in intuitive, mnemonic directions, with opposite choices across from each other, orthogonal pairs at right angles, and other appropriate arrangements. Pie menus have been implemented for uwm, a window manager for X-Windows version 10, for the SunView window system, and for NeWS, Sun's extensible PostScript window system. Don Hopkins did the uwm and NeWS implementations, and Mark Weiser did the SunView implementation. Jack Callahan has shown Pie Menus to be faster and more reliable than linear menus, in a controlled experiment using subjects with little or no mouse experience. Three types of eight-item menu task groupings were used: Pie tasks (North, NE, East, etc...), linear tasks (First, Second, Third, etc...), and unclassified tasks (Center, Bold, Italic, etc...). Subjects were presented menus in both linear and Pie formats, and told to make a certain selection from each. They were able to make selections 15% faster, with fewer errors, for all three task groupings, using Pie Menus. Ben Shneiderman gave advice on the design of the experiment, and Don Hopkins implemented it in Forth and C, on top of the X-Windows uwm. The disadvantage of Pie Menus is that they generally take up more area on the screen than linear menus. However, the extra area does participate in the selection. The wedge-shaped choice regions do not have to end at the edge of the menu window -- they may extend out to the screen edge, so that the menu window only needs to be big enough to hold the choice labels. Proper handling of pop-up Pie Menus near the screen edge is important. The menu should idealy be centered at the point where the cursor was when the mouse button was pressed. If the menu must be moved a certain amount from its ideal location, so that it fits entirely on the screen, then the cursor should be "warped" by that same amount. Pie Menus encompass most uses of linear menus, while introducing many more, because of their extra dimension. They can be used with various types of input devices, such as mice, touch pads, graphics tablets, joysticks, light pens, arrow keypads, and eye motion sensors. They provide a practical, intuitive, efficient way of making selections that is quick and easy to learn. And best of all, they are not proprietary, patented, or restricted in any way, so take a look and feel free! References: Pies: Implementation, Evaluation, and Application of Circular Menus By Don Hopkins, Jack Callahan, and Mark Weiser (Paper in preparation. Draft available from authors.) A Comparative Analysis of Pie Menu Performance By Jack Callahan, Don Hopkins, Mark Weiser, and Ben Shneiderman (Paper in preparation. Draft available from authors.)