1. Positioning Systems
Definition:
A positioning system in computer graphics and HCI is a mechanism that specifies the location of objects or the cursor on a display. It defines a reference framework for placing and interacting with graphical elements.
Types of Positioning Systems:
A. Absolute Positioning
- Objects or the cursor are located using fixed coordinates relative to the origin of the display or workspace.
- Example: Touchscreen coordinates, tablet input.
- Advantages: Direct and simple to compute.
- Disadvantages: Not flexible for window resizing or different screen resolutions.
B. Relative Positioning
- The position is specified relative to a reference point or previous location.
- Commonly used in mouse input devices: the cursor moves relative to its current position.
- Advantages: Works well for dynamic input devices.
C. Logical Positioning
- Uses a logical coordinate system, independent of device resolution.
- Coordinates are mapped to device coordinates when rendering.
- Enables portability and scalability across different devices and screen sizes.
D. Coordinate Systems
- World Coordinates: Define positions in the virtual scene.
- Normalized Device Coordinates (NDC): Scale coordinates to a unit square for device-independent rendering.
- Device Coordinates: Map to actual pixels on the display.
2. Windowed Environment
Definition:
A windowed environment is a graphical interface paradigm where the display screen is divided into multiple rectangular regions (windows), each capable of showing different content or applications.
Key Concepts:
A. Window
- A rectangular portion of the screen for rendering graphics or GUI elements.
- Can contain text, graphics, images, or interactive elements.
B. Viewport
- Defines a sub-region of the window where objects are actually displayed.
- Supports zooming, panning, and scaling independent of the full window.
C. Clipping
- Ensures that only the portion of objects inside the window or viewport is rendered.
- Prevents graphics from overflowing beyond window boundaries.
D. Coordinate Mapping
- Window Coordinates: Logical coordinates defining the scene boundaries.
- Viewport Coordinates: Device coordinates defining the screen region where the scene is displayed.
- Mapping from window → viewport allows resizing and flexible display.
Window-to-Viewport Transformation Formula:
xv=xvmin+xwmax−xwmin(xw−xwmin)(xvmax−xvmin)
yv=yvmin+ywmax−ywmin(yw−ywmin)(yvmax−yvmin)
Where:
- (xw,yw) = window coordinates
- (xv,yv) = viewport coordinates
- (wmin,wmax,vmin,vmax) = min and max of window and viewport coordinates
3. Advantages of Windowed Environment
- Multitasking: Multiple applications or views can coexist.
- Flexible Interaction: Windows can be resized, moved, or minimized.
- Viewport Mapping: Supports zooming, panning, and different resolutions.
- Clipping: Improves efficiency by rendering only visible portions.
4. Examples in HCI and Graphics
- GUI Systems: Windows, dialogs, and panels in operating systems.
- Graphics Applications: CAD software uses multiple windows for modeling, rendering, and tool palettes.
- Web Browsers: Each tab or panel acts as a separate window with independent content.
5. Key Takeaways
- Positioning systems provide reference frames for accurate placement of objects or cursors.
- Windowed environments allow flexible, multi-view interaction with graphical content.
- Mapping window coordinates to viewport coordinates is fundamental for device-independent rendering.
- Together, these concepts form the foundation of interactive graphics and GUI design.