Midterm 2 Flashcards
What is computer graphics?
The science and art of communicating visually via a computer’s display and its interaction devices
What are the combining models to to produce a representation of a particular view of the scene: (4)
Model of objects
Model of the light
Geometric model
Mathematical model
Why Computer Graphics?
- better set of tools for plotting curves and presenting data they encounter in studies or work.
- to write computer-animated games, new medium for artistic expression.
- to be more productive, communicate ideas better, and computer graphics can be a great help.
Types of Visualization
*Scientific Visualization: the use of interactive visual representations of scientific data, typically physically based, to amplify cognition.
*Information Visualization: the use of interactive visual representations of abstract, non-physically based data to amplify cognition.
how do we use visualization? (FICGU)
*Form a mental image or vision
*Imagine or remember as if actually seeing
*Construct a visual image in the mind
*Graphical representation of data or concepts
*Use computer supported, interactive, visual representations of data to amplify cognition
draw the stages of visualization
slide 7
the stages of visualization (CPMH)
*collection and storage of data
*Preprocessing / transforming the data into something that is easier to manipulate
*Mapping from the selected data to a visual representation
*human perceptual and cognitive system (the perceiver)
Information Visualization User Tasks (OZFDRHE)
*Overview: provide an overview of the entire collection of data.
*Zoom: drill down from the abstract view to the detail view (items of interest).
*Filter: eliminate unnecessary or unimportant details.
*Details on Demand: select of an item or group and retrieve, as needed,
additional information.
*Relate: view relationships among items.
*History: maintain a history of actions to support undo, replay and refinement.
*Extract: extraction of sub-collections and query parameters.
The four basic dataset types
tables, networks, fields, and geometry
the five data types
items, attributes, links, positions, and grids.
types of an attribute
categorical or ordered, with a further split into
ordinal and quantitative.
ordering direction of attributes
can be sequential, diverging, or cyclic.
GUI component (widget)
element that displays an information
arrangement changeable by the user
provides a single interaction point for a given kind of data.
*basic visual building blocks which, combined in an application, hold all the data processed by the application and the available interactions on this data.
*To appear onscreen, must be part of a containment
hierarchy, a tree of components that has a top-level
container as its root.
layout manager
determines the size and position of the components within a
container.
GUI framework
uses computer graphics to display individual GUI components
and the overall GUI.
support classes for graphics
§Canvas: provides a rectangular area where drawing takes place.
§Graphics context: maintains the state (attributes) for drawing:
o The attribute values are implicitly used for drawing operations.
how is support for graphics provided?
§Wrapper classes for an existing graphics library (e.g., OpenGL).
§Custom framework classes and services.
what do support classes usually include?
§Canvas: provides a rectangular area where drawing takes place.
§Graphics context: maintains the state (attributes) for drawing:
o The attribute values are implicitly used for drawing operations.
Low level graphics libraries
(OpenGL) the basic drawing shapes are
points, lines, and triangles.
Evolution of 2D Graphics Platform (FDSP)
from immediate mode to retained mode
Drawing primitives instead of individual pixels.
State information.
Physical and abstract coordinate systems.
draw the evolution of 2d graphics
slide 13
integer pixel coordinates -> GUI PLATFORMS ( floating point coordinates -> templates and reusability ->layout managers and smart controls )
draw the graphics pipeline
slide 14
color
the sensation that arises when our eyes are presented with different
spectral mixes of light
Color is a perceptual phenomenon; spectral distributions are physical
phenomena.
how is the eye logarithmic?
Each time you double the light energy
(without altering the spectral distribution) arriving at your eye, the brightness that
you perceive will increase by the same amount.
Three-color Theory
*Human visual system has two types of sensors.
* Rods: monochromatic, night vision.
* Cones:
Color sensitive.
Three types of cones.
Only three values (the tristimulus values) are sent to the brain.
Need only match these three values:
Need only three primary colors.
color space
an abstract mathematical model describing the
range of colors as tuple of numbers, or color components
examples:
§RGB: red, green, and blue.
§HSL: hue, saturation, and lightness.
§HSV: hue, saturation, and value.
§CMYK: cyan, magenta, yellow, and black.
Additive color
§Form a color by adding amounts of three primaries.
§LCDs, projection systems, positive film.
§Primaries are Red (R), Green (G), Blue (B).
§Transparency could be added as the fourth component.
Subtractive color
§Form a color by filtering white light with cyan (C), Magenta (M), and Yellow (Y) filters
o Light-material interactions.
o Printing.
o Negative film.
Commonly Used Types of Data Visualizations (ADPXGU)
*Amounts
*Distributions
*Proportions
*x-y relationships
*Geospatial data
*Uncertainty
Amounts
*The most common approach to visualizing amounts (i.e., numerical values shown for some set of categories) is using bars, either vertically or horizontally
arranged.
*We can also use dots at the location where the corresponding bar would end.
Distributions
*Histograms (binning the data) and density plots (data probability distribution)
provide the most intuitive visualizations of a distribution, but both require arbitrary parameter choices and can be misleading.
*Cumulative densities and quantile-quantile (q-q) plots always represent the data faithfully but can be more difficult to interpret.
Proportions
*Pie chart: emphasizes that the individual parts add up to a whole and highlight
simple fractions.
*Bars: easily compared in side-by-side bars.
*Stacked bars: useful when comparing multiple sets of proportions.
x-yRelationships
*Scatterplot: shows one quantitative variable relative to another.
*Bubble chart: dot size represents the third variable.
*Paired scatterplot: the variables along the xand yaxes are measured in the
same units.
*Slopegraph: paired points connected by straight lines.
Geospatial Data
*Map: takes coordinates on the globe and projects them onto a flat surface.
*Choropleth: coloring regions in the map according to the data.
*Cartogram: distort the regions according to data.
*Cartogram Heatmap: simplify each region in a cartogram into a square.
Uncertainty
*Error bars: indicate the range of likely values for some estimate or measurement
(horizontally and/or vertically).
*Graded error bars: multiple ranges at the same time, where each range
corresponds to a different degree of confidence.
Coordinated Multiple Views
*The analysis and assessment of complex, multi-dimensional data is a challenge:
§We need multiple perspectives/views of the same data.
*The views/plots/charts can be coordinated or articulated within a
Coordinated Multiple Views (CMV) tool.
Linking
helps us show how a point, or set of points, behaves in each of the views.
*This is accomplished by selecting/highlighting/emphasizing these points:
§For example, the selected points could be drawn as a filled circle while the remaining
points could be drawn as unfilled circles.
§A typical application of this would be to show how an outlier shows up in each of the
individual pairwise plots.
Brushing
selecting a subset of the data points with an input device
(interactions technique).
*Brushing extends the concept of linking a bit further.
*The points to be highlighted are interactively selected (e.g., by a mouse) and all
views are dynamically updated (ideally in real time):
*Selecting a region of points in one view results in those points reflected in the
other views.
Right-handed coordinate system
§The positive x-axis is to right.
§The positive y-axis is up.
§The positive z-axis is backwards.
Transformations
*Transformations are used to scale, translate, rotate, reflect and shear shapes
and objects.
Homogenous Coordinates
Homogenous coordinates define a point in a plane using three coordinates
instead of two.
Windows and Viewports
*We use natural coordinates for what we are drawing (the world window).
*A graphics library converts our coordinates to screen coordinates when we set
up a screen window and a viewport.
*The viewport may be smaller than the screen window.
*The default viewport is the entire screen window.
*The conversion requires scaling and shifting: mapping the world window to the
screen window and the viewport.
Scalable Vector Graphics (SVG)
*SVG is an image that is text-based.
*Provides high quality, scalable, graphics on the web.
*Has a similar structure to HTML.
*Is a DOM object.
*Properties can be specified as attributes.
*Uses absolute positions.
Scalable
supports different display resolutions, so that for example printed
output uses the full resolution of the printer and can be displayed on screens of
different resolutions.