Talk:Raster

Cant be rescaled without significant loss of quality? I dont really understand this. scaling DOWN loses NO quality if you ask me. scaling up, though it loses no absolute quality, it lowers the relative quality.

Scaling down clearly loses quality. What if I scale down to a single pixel? If by quality you mean information per pixel then you may be right, but that's not what most people mean. --drj

The terms "Vector" vs. "Raster" graphics originally derived from display technology. Vector dislays moved the CRT beam from point to point to draw straight line segments, whereas the CRT beam in a raster display scanned a fixed pattern like a TV. Displaying a circle on a raster display required scan-conversion (determining the points where the scan line intersected the circle), whereas displaying a circle on a vector display required vectorization (fitting many short vectors to approximate the circle). Scaling a vectorized circle meant scaling the vectors, which did not preserve the accuracy of the approximation. To maintain fidelity it was necessary to scale the circle geometrically and then re-vectorize. A circle can similarly be scaled geometrically and then re-scan-converted for a raster display. The approach is perhaps more accurately termed "geometric graphics".

That's true, and perhaps something of this origin of the terms should be included in that artice. But regardless of the origin of the terms, their most common present use is merely to distinguish "scanned" graphics from "object-based" graphics. This is even how the terms are used in modern graphics file format specs, and what they are likely to mean when encountered by our audience. I haven't seen an actual vector CRT since the old Atari coin-op video game "Tempest", but people do talk about things like PDF and SVG as "vector" graphics, and in that context, scalability (i.e., the fact that the image is defined in terms of an ideal that can be rendered to the limits of whatever device is available) is a primary feature (that's even what the "S" in SVG stands for). --LDC

Here's what the Microsoft Press Computer Dictionary (3rd ed. 1997) has to say...


 * vector graphics images generated from mathematical descriptions that determine the position, length, and direction in which lines are drawn. Objects are created as collections of lines rather than as patterns of individual dots or pixels.


 * object-oriented graphics computer graphics that are based on the use of graphics primitives, such as lines, curves, circles, and squares...

The IBM Dictionary of Computing (10th ed. 1994) has:


 * vector graphics - see coordinate graphics


 * coordinate graphics - Computer graphics in which display images are generated from display commands and coordinate data. Contrast with raster graphics. Synonymous with line graphics.

On the other hand, Robin Williams in Jargon: An Informal Dictionary of Computer Terms (1993) says:


 * The term vector graphics means exactly the same thing as object-oriented (or just object) graphics.

I suspect the confusion in terminology is due to people (perhaps unfamiliar with the word "vector") incorrectly using "vector graphics" as an antonym for "raster graphics".

If you think it's worthwhile to retain the older meaning of "vector" (perhaps to ease confusion with math articles about vectors), then perhaps we could have a "vector graphics" page with something like "The term vector graphics is commonly used today as a synonym for object graphics, though originally it referred to...", and the establish a Wikipedia style guideline to use "object graphics" exclusively. My hesitation to do this is that the misuse of the term really is well-entrenched, and it might be more confusing to use to "correct" term. --LDC

I definitely think the original meaning and context should be included, if only for historical reference. Whether we should attempt to discourage the use of the term in its new sense in favor of "object graphics", I don't know.

Is "raster graphics" the proper name for this page?

The expression "raster graphics" came into use many years ago (70's or earlier) to distinguish computer graphics algorithms appropriate for the "new" bitmap-based displays, from the older ones oriented twoards direct-drawing displays ("vector graphics"). Since "vector graphics" are dead, the name is no longer meaninful.

Also, the term "bitmap" was coined (in the early 80's) to refer specifically to *binary* images stored in memory. ("Advanced" workstations then had only 64K bytes of memory for everything!) Even today "bitmap" is used in non-graphics contexts to stand for "compact *boolean* array". When color raster graphics became popular some people may have continued using "bitmap" out of habit, but others used more appropriate names like "bytemap", "pixmap", "pelmap".

Nowadays "raster graphics" is supported by a "frame buffer" in the video card, rather than a "bitmap" in memory. If/when a programmer needs to describe the data structure used to represent a digital image in main memory, I think he would rather use "image object", "pixel array", "image in memory", etc. -- rather than "bitmap".

Finally, this page mixes the system programming concept of "bitmap" (a data structure in computer memory) with the signal processing concept of "digital image" (an abstract array of samples). Issues like resolution, scaling etc. belong to the latter, not the former.

So here is my proposal:


 * 1) Create a new page for "digital image" [done!] and move to it those parts of the present "raster graphics" page that apply to digital images independently of memory layout.
 * 2) Create a new page called "raster map" aka "pixel array" that describes the data structure in question (a packed 2D array of bits or small integers) and its main uses -- namely, storing a digital image in memory, and as a frame buffer. This page should include "bitmap"as a special case. (Or perhaps "bitmap" should have a separate page due to its use for non-image applications?)
 * 3) Reduce the "raster graphics" page to a single paragraph, "A term coined in the 70's to distinguish computer graphics techniques bla bla...from "vector raphics" bla bla...
 * 4) Create links between the "raster map" and "frame buffer" pages.

What do you think? --143.106.24.42 08:52, 4 Mar 2004 (UTC)Jorge Stolfi


 * Vector graphics does not just refer to a type of display, but also to storing coordinates of vertices, etc. rather than pixel data, that is not dead. --Patrick 00:49, 5 Mar 2004 (UTC)

Ok, I should have said "vector graphics *displays* are dead".

Storing vertices etc. is certainly more alive than ever --- that is what goes into the typical graphics card, or what you put in a Postscript file; but I think that the proper name for that is (2D) *geometric modeling*.

That nomenclature would be consistent with common usage in 3D graphics: The representation of the scene with vertices, edges, faces etc. is called the *geometric model*. By rendering this model (at a chosen scale and resolution) one obtains produces a (raster) digital image, which goes to the display device.

Note that your 2D "vector graphics" similarly must be converted to a digital image before it can be displayed. That is the job of the graphics card, Postscript interpreter, etc. At that moment one must choose a rendering window and resolution (and lose information), just as in 3D graphics.

In other words, the concepts of "vector graphics" and "raster graphics" are no longer two mutually exclusive alternative ways of doing computer graphics, but rather two succesive *stages* of it. Thus those names (which embodied the either/or view) are no longer adequate.