Jump to content

Pie menu: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
BOT--Reverting link addition(s) by 125.164.224.143 to revision 399120177 (http://jfxstudio.wordpress.com/2009/05/18/javafx-pie-menu-with-fish-eye-effect/)
Seblons (talk | contribs)
No edit summary
Line 45: Line 45:
*[[modo (software)|modo]], an advanced polygon and subdivision surface modeling package
*[[modo (software)|modo]], an advanced polygon and subdivision surface modeling package
*[[Songza]] - A music search engine and internet jukebox that uses a pie menu for its main mode of interaction, by [[Aza Raskin]].
*[[Songza]] - A music search engine and internet jukebox that uses a pie menu for its main mode of interaction, by [[Aza Raskin]].
*[[Cortex Inc.]] - Share fast by [[Joey Primiani]].
*[[Quicksilver (software)|Quicksilver]] via the Constellation plug-in
*[[Quicksilver (software)|Quicksilver]] via the Constellation plug-in
*[[Sugar (GUI)]], GUI implementation for the [[One Laptop per Child]] project
*[[Sugar (GUI)]], GUI implementation for the [[One Laptop per Child]] project

Revision as of 03:17, 8 January 2011

A pie menu.

In computer interface design, a pie menu (also known as a radial menu) is a circular context menu where selection depends on direction. A pie menu is made of several "pie slices" around an inactive center and works best with stylus input, and well with a mouse. Pie slices are drawn with a hole in the middle for an easy way to exit the menu.

Pie menus work well with keyboard acceleration, particularly four and eight item menus, on the cursor keys and the number pad. A goal of pie menus is to provide a smooth, reliable gestural style of interaction for novices and experts.[1]

A slice can lead to another pie menu; selecting this may center the mouse cursor in the new menu. A marking menu[2] is a variant of the technique where the menu is not shown when the interaction is short, allowing for faster operation times when several gestures are chained to make a selection through the first and subsequent menus.[3]

As a kind of context menus, pie menus are often context-sensitive,[4] showing different options depending on what the mouse cursor was pointing at when the menu was requested.

History

The first documented radial menu is attributed to a system called PIXIE in 1969. Some universities explored alternative visual layouts.[5]

In 1986, Mike Gallaher and Don Hopkins together arrived independently to the concept of a context menu based on the angle to the origin where the exact angle could be passed as a parameter to a command, and the radius could be used to trigger a submenu.[6]

The first performance comparison to linear menus was performed at 1988 showing an increase in performance of 15% less time and a reduction of selection errors.[7]

Usage

For the novice, pie menus are easy because they are a self-revealing gestural interface: They show what you can do and direct you how to do it. By clicking and popping up a pie menu, looking at the labels, moving the cursor in the desired direction, then clicking to make a selection, you learn the menu and practice the gesture to "mark ahead" ("mouse ahead" in the case of a mouse, "wave ahead" in the case of a dataglove). With a little practice, it becomes quite easy to mark ahead even through nested pie menus.

For the expert, they're efficient because—without even looking—you can move in any direction, and mark ahead so fast that the menu doesn't even pop up. Only when used more slowly like a traditional menu, does a pie menu pop up on the screen, to reveal the available selections.

Most importantly, novices soon become experts, because every time you select from a pie menu, you practice the motion to mark ahead, so you naturally learn to do it by feel. As Jaron Lanier of VPL Research has remarked, "The mind may forget, but the body remembers." Pie menus take advantage of the body's ability to remember muscle motion and direction, even when the mind has forgotten the corresponding symbolic labels.[1]

Comparison with other interaction techniques

Pie menus are faster and more reliable to select from than linear menus, because selection depends on direction instead of distance. The circular menu slices are large in size and near the pointer for fast interaction (see Fitts's law). Experienced users use muscle memory without looking at the menu while selecting from it.[1][8] Nested pie menus can efficiently offer many options, and some pie menus can pop up linear menus, and combine linear and radial items in the same menu.[9] Pie menus just like any popup menu are shown only when requested, resulting in less visual distraction and higher cognitive load than toolbars and menu bars that are always shown.

Pie menus show available options, in contrast to invisible mouse gestures. Marking menus, which delay appearance until the cursor is not moving, reduce intrusiveness to the same level as mouse gestures for experienced users. Pie menus take up more screen space than linear menus, and the number of slices in an individual menu must be kept low for effectiveness by using submenus. When using pie menus, submenus may overlap with the parent menu, but the parent menu may become translucent or hidden.

Pie menus are most suited for actions that have been laid out by humans, and have logical grouping choices. Linear menus are most suited for dynamic, large menus that have many possible options, without any logical grouping,[1] since pie menus can only show a limited number of menu items. Around 3-12 items can be reasonably accommodated in a radial layout, but additional items past that tend to counteract the benefits of using pie menus in the first place. This can be overcome with related techniques that allow chaining commands in one single gesture through submenus.[3][10]

However, using interaction techniques that are not pointer based have proven problematic with both pie and linear menus.[11]

Pie menus are unavailable as standard widgets in common commercial toolkits. Video games often require custom widget development, so pie menu cost is lower in that particular scenario.

Notable implementations

See also

References

  1. ^ a b c d Hopkins, Don (1991). "The Design and Implementation of Pie Menus". Dr. Dobb's Journal. Retrieved December 15, 2009. {{cite journal}}: Unknown parameter |month= ignored (help)
  2. ^ Gordon Kurtenbach1 and William Buxton. "User Learning and Performance with Marking Menus".{{cite web}}: CS1 maint: numeric names: authors list (link)
  3. ^ a b "Extremely Efficient Menu Selection: Marking Menus for the Flash Platform".
  4. ^ Don Hopkins. "Dynamic Pie Menus".
  5. ^ Gordon Kurtenbach (April 2004). "Notes on the History of Radial menus, Pie menus and Marking menus" (PDF). Archived from the original (PDF) on 2007-08-24.
  6. ^ Don Hopkins. "Theta Menus Proposal and Pie Menu Designs - May 1986".
  7. ^ Callahan, Jack; Hopkins, Don; Weiser, Mark; Shneiderman, Ben (1988). "An empirical comparison of pie vs. linear menus". Proceedings of ACM CHI Conference on Human Factors in Computing Systems. pp. 95–100. http://doi.acm.org/10.1145/57167.57182.
  8. ^ Shneiderman, Ben; Plaisant, Catherine; Botafogo, Rodrigo; Hopkins, Don; Weiland, William. "Designing to Facilitate Browsing: A Look Back at the Hyperties Workstation Browser". Human-Computer Interaction Laboratory, University of Maryland. Retrieved December 15, 2009. {{cite journal}}: Cite journal requires |journal= (help)
  9. ^ Hopkins, Don. "Pie Menus on Python/GTK/Cairo for OLPC Sugar". Retrieved December 15, 2009.
  10. ^ www.markingmenus.org
  11. ^ Leithinger, D; Haller, M (October 10–12, 2007). "Improving Menu Interaction for Cluttered Tabletop Setups with User-Drawn Path Menus". Horizontal Interactive Human-Computer Systems, 2007. TABLETOP '07. Second Annual IEEE International Workshop on. Newport, RI. pp. 121–128. doi:10.1109/TABLETOP.2007.24. ISBN 978-0-7695-2013-1. Retrieved December 15, 2009. {{cite conference}}: Unknown parameter |booktitle= ignored (|book-title= suggested) (help)
  • Wiseman, N. E.; Lemke, H. U.; Hiles, J. O. "PIXIE: A New Approach to Graphical Man-Machine Communications". Proceedings of 1969 CAD Conference Southhampton, IEEE Conference Publication 51. p. 463. {{cite conference}}: Unknown parameter |booktitle= ignored (|book-title= suggested) (help)

External links