Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Direct manipulation interface
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==In computer graphics== Because of the difficulty of visualizing and manipulating various aspects of computer graphics, including geometry creation and editing, animation, the layout of objects and cameras, light placement, and other effects, direct manipulation is a significant part of 3D computer graphics. There is standard direct manipulation [[GUI widget|widgets]] as well as many unique widgets that are developed either as a better solution to an old problem or as a solution for a new and/or unique problem. The widgets attempt to allow the user to modify an object in any possible direction while also providing easy guides or constraints to allow the user to easily modify an object in the most common directions, while also attempting to be as intuitive as to the function of the widget as possible. The three most ubiquitous [[transformation (mathematics)|transformation]] widgets are mostly standardized and are: * the [[translation (geometry)|translation]] widget, which usually consists of three arrows aligned with the orthogonal axes centered on the object to be translated. Dragging the center of the widget translates the object directly underneath the mouse pointer in the plane parallel to the camera plane, while dragging any of the three arrows translates the object along the appropriate axis. The axes may be aligned with the world-space axes, the object-space axes, or some other space. * the [[rotation]] widget, which usually consists of three circles aligned with the three orthogonal axes, and one circle aligned with the camera plane. Dragging any of the circles rotates the object around the appropriate axis while dragging elsewhere will freely rotate the object (virtual trackball rotation). * the [[scale (ratio)|scale]] widget, which usually consists of three short lines aligned with the orthogonal axes terminating in boxes, and one box in the center of the widget. Dragging any of the three axis-aligned boxes effects a non-uniform scale along solely that axis, while dragging the center box effects a uniform scale on all three axes at once. Depending on the specific standard uses of an object, different kinds of widgets may be used. For example, a light in computer graphics is, like any other object, also defined by a transformation (translation and rotation), but it is sometimes positioned and directed simply with its endpoint positions. This is because it may be more intuitive to define the location of the light source and then define the light's target, rather than rotating it around the coordinate axes to point it at a known position. Other widgets may be unique for a particular tool, such as edge controls to change the cone of a spotlight, points and handles to define the position and tangent vector for a spline control point, circles of variable size to define a blur filter width or paintbrush size, [[inverse kinematics|IK]] targets for hands and feet, or color wheels and swatches for quickly choosing colors. Complex widgets may even incorporate some from [[scientific visualization]] to efficiently present relevant data (such as vector fields for particle effects or false color images to display vertex maps). Direct manipulation, as well as user interface design in general, for 3D computer graphics tasks, is still an active area of invention and innovation. The process of generating CG images is not considered to be intuitive or easy in comparison to the difficulty of what the user wants to do, especially for complex and less common tasks. The user interface for word processing, for example, is commonly used. It is easy to learn for new users and is sufficient for most word processing purposes, so it is a mostly solved and standardized UI. However, the user interfaces for 3D computer graphics are usually either challenging to learn and use and not sufficiently powerful for complex tasks and/or difficult to learn and use, so direct manipulation and user interfaces will vary wildly from application to application.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)