Attributes of Output Primitives
Attributes of Output Primitives
30/9/2008 Lecture 2 1
Attribute of Output Primitives
• Definition
• Line Attribute
• Curve Attribute
• COLOR AND GRAY SCALE LEVEL
• AREA FILLED ATTRIBUTE
• Text and Characters
30/9/2008 Lecture 2 2
Attributes of Output Primitives
Definition
Parameter that affects the way a primitive will be
displayed
Line Attribute
. Type
. Width
. Color
. Pen & Brush
30/9/2008 Lecture 2 3
Line Attribute
Type
. Solid
. Dotted – very short dash with spacing equal to
or greater than dash itself
. Dashed – displayed by generating an interdash
spacing
Pixel count for the span and interspan length is specified
by the mask . Ex. 111100011110001111
Note : Fixed pixel with dashes can produce unequal length
dashes. It depend on line orientation. So, need to adjust the
30/9/2008 Lecture 2 4
number of plotted pixels for different slopes.
Line Attribute
Width
. Specify in pixels and proportion of a standard line width.
. Thicker line can be produced by.
. Adding extra pixel vertically when |m| < 1
. Adding extra pixel horizontally when |m| > 1
. Issues:
. Line have different thickness on the slope
. Problem with
. End of the line
30/9/2008 Lecture 2 5
. Joining the two lines (polygon)
Line Attribute
Width
30/9/2008 Lecture 2 6
Attributes of Output Primitives
30/9/2008 Lecture 2 7
Attributes of Output Primitives
30/9/2008 Lecture 2 8
Line Attribute
Pen and Brush
. The selected “pen” or “brush” determine the way a line will be drawn.
. Pens and brushes have size, shape, color and pattern attribute.
. Pixel mask is applied in both of them.
30/9/2008 Lecture 2 9
Curve Attribute
Similar to line : type + width
Thicker curves can be produced by:
1. Plotting additional pixel
2. Filling the space between two concentric circles.
3. Using thicker pen or brush
30/9/2008 Lecture 2 10
Curve Attribute
Width
30/9/2008 Lecture 2 11
COLOR AND GRAY SCALE LEVEL
Color
Colors are represented by colors codes which are
positive integers.
Color information is stored in frame buffer or in separate
table and use pixel values as index to the color table.
Two ways to store color information :
1. Direct
2. Indirect
30/9/2008 Lecture 2 12
COLOR
Direct
30/9/2008 Lecture 2 13
COLOR
Indirect
30/9/2008 Lecture 2 14
Exercise:
What is the size of frame buffer required for the following cases:
Conclusion
pixel
CLUT is good for storage but cant give a very high resolution picture.
COLOR
30/9/2008 Lecture 2 15
COLOR Lookup Table
30/9/2008 Lecture 2 16
COLOR Lookup Table
30/9/2008 Lecture 2 17
GRAY SCALE LEVEL
.Apply for monitor that have no color
.Shades of grey (white->light grey->dark grey->black)
.Color code mapped onto grayscale codes
.2 bits can give 4 level of grayscale
.8 bits per pixel will allow 256 combination
.Dividing the actual code with 256 will give range of 0 and 1
Ex:
Color code in color display is 118
118/256 = 0.45
light gray
30/9/2008 Lecture 2 18
AREA FILLED ATTRIBUTE
. Option for filling a defined region is whether solid , pattern and
colors.
Fill Styles
. Three basic fill styles are:
. hollow with color border.. interior color is same with
background
30/9/2008 Lecture 2 19
AREA FILLED ATTRIBUTE
. filled with a solid color .. color up to and including the border
30/9/2008 Lecture 2 20
AREA FILLED ATTRIBUTE
30/9/2008 Lecture 2 21
AREA FILLED ATTRIBUTE
. Color-Blended Fill Region
-Soft-fill
- P = tF + (1-t)B where 0 < t < 1
If t < 0.5 , background color contributes more to the
interior color of the region than does the fill color.
30/9/2008 Lecture 2 22
Filled-Area
Primitives
30/9/2008 Lecture 2 23
Filled-Area
Primitives
30/9/2008 Lecture 2 24
Filled-Area
Primitives
30/9/2008 Lecture 2 25
Filled-Area
Primitives
30/9/2008 Lecture 2 26
Filled-Area
Primitives
30/9/2008 Lecture 2 27
Text and Characters
Text and Characters
•Very important output primitive
• Many pictures require text
• Two general techniques used
– Bitmapped (raster)
– Stroked (outline)
30/9/2008 Lecture 2 28
Text and Characters (Bitmapped (raster))
Each character represented (stored) as a 2-D array
– Each element corresponds to a pixel in a rectangular
“character cell”
– Simplest: each element is a bit (1=pixel on, 0=pixel off)
00111000
01101100
11000110
11000110
11111110
11000110
11000110
00000000
30/9/2008 Lecture 2 29
Text and Characters (Stroked (outline))
30/9/2008 Lecture 2 30
Characters Characteristics
Characteristics of Bitmapped Characters
• Each character in set requires same amount of
memory to store
• Characters can only be scaled by integer scaling
factors
• "Blocky" appearance
• Difficult to rotate characters by arbitrary angles
• Fast (BitBLT)
Characteristics of Stroked Characters
• Number of stokes (storage space) depends on complexity
of character
• Each stroke must be scan converted more time to display
• Easily scaled and rotated arbitrarily
• – just transform each stroke
30/9/2008 Lecture 2 31
Bundled Attributes
When each function reference a single attribute that specify exactly
how primitive to be displayed ; then its called
individual (unbundled attribute).
.The table for each primitive that defines group of attribute values is
called bundled table.