FOURTH SEMESTER DEGREE EXAMINATION, APRIL 2017
Answer all Questions (Each Question carries 1 mark)
1. Each screen point on the screen is referred as ___________ .
Ans: Pixel (picture element).
2. In ___________ systems the electron beam is directed only to the parts of the screen where a picture is to be drwan.
3. The ratio of vertical points to horizontal points necessary to produce equal-length lines in both directions on the screen is known as the ___________ .
Ans: Aspect ratio.
4. PHIGS stands for ___________ .
Ans: Programmers Hierarchical Interactive Graphics Standard.
5. In display, the term TFT stands for ___________ .
6. For lines with positive slope less than or equal to one, the DDA line algorithm samples at unit ___________ intervals.
7. The ___________ transformation alters the size of the object.
8. In reflection, if the reflection axis is a line in the xy plane, the rotation path about this axis is in a plane __________ to the xy plane.
9. Unequal values sx, and sy in scaling transformation are known as ___________ scaling.
10. A world-coordinate area selected for display is called ___________ .
Answer all Questions (Each Question carries 2 marks)
11. What is resolution ?
Ans: The maximum number of points that can be displayed without overlap on a CRT is referred to as the resolution.
12. What is frame buffer ?
Ans: Picture definition is stored in a memory area called refresh buffer or frame buffer. This memory area holds the set of intensity values for all the screen points.
13. What do you mean by antialiasing ?
Ans: Display primitives generated by the raster algorithm have a stairstep appearance because the sampling process digitizes coordinate points on an object to discrete integer pixel positions . This distortion of information due to low-frequency sampling is called antialiasing.
14. What is clipping ?
Ans: Clipping is to remove objects, lines, line segments that are outside the viewing port. The viewing transformation is insensitive to the position of points relative to the viewing area.
15. What is orthographic parallel projection ?
Ans: When the projection (projection vector ) is perpendicular to the view plane, we have a orthographic parallel projection.
Answer any five Questions (Each Question carries 4 marks)
16. Discuss any four applications of computer graphics ?
Ans: Four applications of computer graphics are:-
- Educational field:- computer generated models of physical, financial, and economic systems are often used as educational aids. We also use smart classes in school and college levels.
- Visualization:- scientists, engineers and medical personals, business analysts and other people analyze large amount of information to study the behavior of certain processes. Here we use computer graphics to analyze data.
- CAD(Computer Aided Design):- CAD methods are used in designing of buildings, automobiles, aircrafts, computers, textiles and many other products.
- Entertainment:- computer graphics is used for designing movies, animations etc.
17. How colour information is stored in the frame buffer ?
- In color raster system, the number of color choices available depends on the amount of storage provided per pixel in the frame buffer.
- Color information can be stored in the frame buffer in two ways:- We can store codes directly in the frame buffer , Or we can put the color codes in a separate table and use pixel values as an index into this table.
- With direct storage scheme we require large memory for frame buffer when we display more colour.
- While in case of table it is reduced and we call it color table or color lookup table. Color values of 24 bit is stored in lookup table and in frame buffer we store only 8 bit index which gives index of required color stored into lookup table, so the size of frame buffer is reduced and we can display more colours.
18. Explain the basic video controller refresh operations.
Ans: Basic video controller refresh operation:
- Two registers are used to store the coordinates of the screen pixels which are X and Y.
- Initially the X is set to 0 and Y is set to Ymax.
- The values stored in frame buffer for this pixel is retrieved and used to set the intensity of the CRT beam.
- After this X register is incremented by 1.
- This procedure is repeated till X becomes equals to Xmax.
- Then X is set to 0 and Y is decremented by 1 pixel and repeat above procedure.
- This whole procedure is repeated till Y becomes equal to 0 and complete the one refresh cycle. Then controller reset the register as top-left corner i.e. X=0 and Y=Ymax and refresh process start for next refresh cycle.
- Since screen must be refreshed at the rate of 60 frames per second the simple procedure illustrated in figure cannot be accommodated by typical RAM chips.
- To speed up pixel processing video controller retrieves multiple values at a time using more numbers of registers and simultaneously refresh block of pixels.
- Such a way it can speed up and accommodate refresh rate more than 60 frames per second.
19. Write note on LCD.
Ans: Liquid-crystal displays (LCDS) are commonly used in small systems, such as calculators and portable, laptop computers. These non- emissive devices produce a picture by passing polarized light from the surroundings or from an internal light sow through a liquid-crystal material that can be aligned to either block or transmit the light.
The term liquid crystal refers to the fact that these compounds have a crystalline arrangement of molecules, yet they flow like a liquid. Flat-panel displays commonly use nematic (threadlike) liquid-crystal compounds that tend to keep the long axes of the rod-shaped molecules aligned. A flat-panel display can then be constructed with a nematic liquid crystal. Two glass plates, each containing a light polarizer at right angles to the-other plate, sandwich the liquid-crystal material.
20. Write down Bresenhams line drawing algorithm.
Ans: Bresenham’s Line-Drawing Algorithm for |m|< 1:
- Input the two line endpoints and store the left endpoint in (x0, y0).
- Load (x0, y0) into the frame buffer; that is, plot the first point.
- Calculate constants /\x, /\y, 2/\y, and 2/\y – 2/\x, and obtain the starting value for the decision parameter as p0= 2/\y – /\X
- At each xk along the line, starting at k=0, perform the following test:
If pk < 0, the next point to plot is: (xk + I, yk) and pk+I = pk + 2/\y
Otherwise, the next point to plot is: (xk + I, yk + 1) and pk+1, = pk + 2/\y – 2/\x
5. Repeat step 4 /\x times.
21. What is Text clipping ? Explain different techniques.
Ans: Text Clipping:
Various techniques are used to provide text clipping in a computer graphics. It depends on the methods used to generate characters and the requirements of a particular application. There are three methods for text clipping which are listed below:-
- All or none string clipping
- All or none character clipping
- Text clipping
The following figure shows all or none string clipping.
In all or none string clipping method, either we keep the entire string based on the clipping window. As shown in the above figure, STRING 2 is entirely inside the clipping window so we keep it and STRING 1 being only partially inside the window, we reject.
22. Explain three-dimensional Translation and Scaling.
Ans: Three-dimensional translation:
- 3D translation is used to reposition the object in a 3D space.
- In 3d translation point(x, y, z) is to be translated by amount tx, ty and tz to location (x`, y`, z`).
x` = x + tx
y` = y + ty
z` = z+ tz
Three-dimensional scaling :
- It is used to resize the object in 3D space.
- We can apply uniform as well as non-uniform scaling by selecting proper scaling factor.
- Scaling in 3D need (x, y, z) coordinates.
23. Explain raster method for transformations ?
Ans: Raster systems store picture information as pixel patterns in the frame buffer. Therefore, some simple transformations can be carried out rapidly by simply moving rectangular arrays of stored pixel values from one location to another within the frame buffer. Few arithmetic operations are needed, so the pixel transformations are particularly efficient.
Raster functions that manipulate rectangular pixel arrays are generally referred to as raster ops. Moving a block of pixels from one location to another is also called a block transfer of pixel values. On a bi level system, this operation is called a bitBlt (bit-block transfer), particularly when the function is hardware implemented.
Answer any five Questions (Each Question carries 8 marks)
24. Explain the shadow-mask method used in colour CRT.
Ans: Shadow-mask technique:
- It produces wide range of colors as compared to beam-penetration technique.
- This technique is generally used in raster-scan displays, including color TV.
- In this technique CRT has three phosphor color dots at each pixel positions. One dot for red, one for green and one for blue light. This is commonly known as Dot Triangle.
- Here in CRT there are three electron guns present, one for each color dot, and a shadow mask grid just behind the phosphor coated screen.
- The shadow mask grid consists of series of holes aligned with the phosphor dot pattern.
- Three electron beams are deflected and focused as a group onto the shadow mask and when they pass through hole they excite a dot triangle.
- In dot triangle three phosphor dots are arranged so that each electron beam can activate only its corresponding color dot when it passes through the shadow mask.
- A dot triangle when activated appears as a small dot on the screen which has color of combination of three small dots in the dot triangle.
- By changing the intensity of three electron beams wwe can obtain different colors in shadow mask CRT.
Fig: Shadow mask CRT.
25. Briefly explain popular graphics input devices.
Ans: Graphics input devices:
- Keyboards: Is efficient for inputting text strings, nongraphic data as picture labels, also facilitates entry of screen coordinates, menu selection or graphic functions.
- Mouse: Is small hand held box used to position the screen cursor, record the amount and direction of movement. Buttons on a mouse is for signaling the execution of some operations, such as recording cursor position or invoking a function.
- Trackball: Is a ball that can be rotated with the fingers or palm of the hand, to produce screen-cursor movement. Potentiometers, attached to the ball, measure the amount and direction of rotation.
- Spaceball: While a trackball is a two-dimensional positioning device, a spaceball provides six degrees of freedom. Unlike the trackball, a spaceball does not actually move. Strain gauges measure the amount of pressure applied to the spaceball to provide input for spatial positioning and orientation as the ball is pushed or pulled in various directions. Spaceballs are used for 3D positioning and selection operations in virtual-reality systems, modeling, animation, CAD, and other applications.
- Joysticks: Consists of a small, vertical lever (called the stick) mounted on a base that is used to steer the screen cursor around. Most joysticks select screen positions with actual stick movement; others respond to pressure on the stick.
- Data glove: Can be used to grasp a “virtual” object. The glove is constructed with a series of sensors that detect hand and finger motions. Electromagnetic coupling between transmitting antennas and receiving antennas is used to provide information about the position and orientation of the hand. A two-dimensional projection of the scene can be viewed on a video monitor, or a three-dimensional projection can be viewed with a headset.
- Digitizers: A common device for drawing, painting, or interactively selecting coordinate positions on an object is a digitizer. These devices can be used to input coordinate values in either a two-dimensional or a 3d space.
- Image Scanners: Drawings, graphs, color and black-and-white photos, or text can be stored for computer processing with an image scanner by passing an optical scanning mechanism over the information to be stored.
26. Discuss about various hard copy devices.
Ans: Hard copy devices are used to obtain hard-copy output for our image. Printers produce output by either impact or non-impact methods.
- Character impact printers often have a dot-matrix print head containing a rectangular array of protruding wire pins, with the number of pins depending on the quality of the printer. Individual characters or graphics patterns are obtained by wtracting certain pins so that the remaining pins form the pattern to be printed.
- In a laser device, a laser beam mates a charge distribution on a rotating drum coated with a photoelectric material, such as selenium. Toner is applied to the drum and then transferred to paper.
- Ink-jet methods produce output by squirting ink in horizontal rows across a roll of paper wrapped on a drum. The electrically charged ink stream is deflected by an electric field to produce dot-matrix patterns.
- An electrostatic device places a negative charge on the paper, one complete row at a time along the length of the paper. Then the paper is exposed to a toner. The toner is positively charged and so is attracted to the negatively charged areas, where it adheres to produce the specified output.
27. How lines are generated using DDA line algorithm.
Ans: The digital differential analyzer (DDA) is a scan-conversion line algorithm based on calculating either /\y or /\x, using /\y = m/\x. We sample the line at unit intervals in one coordinate and determine corresponding integer values nearest the line path for the other coordinate. Consider first a line with positive slope. If the slope is less than or equal to 1, we sample at unit x intervals (/\x = 1) and compute each successive y value as,
yk+1 = yk + m —–eq.1
Subscript k takes integer values starting from 1, for the first point, and increases by 1 until the final endpoint is reached. Since m can be any real number between 0 and 1, the calculated y values must be rounded to the nearest integer. For lines with a positive slope greater than 1, we reverse the roles of x and y. That is, we sample at unit y intervals (/\y = 1) and calculate each succeeding x value as
xk+1 = xk + 1/m —–eq.2
Equations 1 and 2 are based on the assumption that lines are to be processed from the left endpoint to the right endpoint. If this processing is reversed, so that the starting endpoint is at the right, then either we have /\x = -1 and
yk+1 = yk – m —–eq.3
or (when the slope is greater than I) we have /\y = -1 with
xk+1 = xk – 1/m —–eq.4
Equations 1 through 4 can also be used to calculate pixel positions along a line with negative slope. If the absolute value of the slope is less than I and the start endpoint is at the left, we set /\x = 1 and calculate y values with Eq. 1. When the start endpoint is at the right (for the same slope), we set /\x = -1 and obtain y positions from Eq. 3. Similarly, when the absolute value of a negative slope is greater than 1, we use /\y = -1 and Eq. 4 or we use /\y = 1 and Eq. 2.
28. Explain the basic two dimension transformations.
Ans: Basic two-dimension transformation are:
- It is a rigid body transformation so we need to translate whole object.
- It is transformation that is used to reposition the object along the straight line path from one coordinate location to another.
- To translate a point we add translation distance tx and ty to original coordinate position (x, y) to move at new position (x’, y’) as:
x’ = x + tx & y’ = y + ty
- We can represent it into single matrix equation in column vector as,
P’ = P + T
|x’| = |x| + |tx|
|y’| |y| |ty|
- It is transformation that is used to reposition the object along the circular path in XY-plane.
- Positive value of rotation angle defines counter clockwise rotation and negative value of rotation angle defines clockwise rotation.
- From figure we can write,
x = r cosb y = r sinb
x’ = r cos(a +b) = r cosb cosa – r sinb sina y’ =r sin(b +a) = r cosb sina + r sinb cosa
- Now replace r cosb with x and r sinb with y in above equation,
x’ = x cosa – y sina y’ = x sina + y cosa
- It is transformation used to alter the size of an object.
- This operation is carried out by multiplying coordinate value (x, y) with scaling factor (sx, sy) respectively. So the equation for scaling is:
x’ = x . sx y’ = y . sy
- Same values for sx and sy will produce uniform scaling and different values of sx and sy will produce differential scaling.
29. Explain window to viewport co-ordinate transformation.
Ans: Window-to-viewport coordinate transformation:
- Mapping of window coordinate to viewport is called window to viewport transformation.
- We do this using transformation that maintains relative position of window coordinate into viewport.
- That means center coordinate must be remained at the center position in viewport.
We find relative position by equation;
( xv – xvmin ) / ( xvmax – xvmin ) = ( xw – xwmin) / ( xwmax – xwmin )
( yv – yvmin ) / ( yvmax – yvmin ) = ( yw – ywmin ) / ( ywmax – ywmin)
- Solving by making viewport position as subject we obtain:
xv = xvmin + (xw – xwmin)sx yv = yvmin + (yw – ywmin)sy
Where Scaling factor are:
sx = (xvmax – xvmin) / (xwmax – xwmin) sy = (yvmax – yvmin) / (ywmax – ywmin)
We can also map window to viewport with set of transformation, which include following sequence of transformationsWhere scaling factor are:
i) Perform a scaling transformation using a fixed point position of (xwmin, ywmin) that scales the window area to the size of the viewport
ii) Translate the scaled window area to the position of the viewport.
- For maintaining relative proportions we take (sx = sy), in case if both are not equal then we get stretched or contracted in either x or y direction when displayed on the output device.
- Characters are handled in two different way, one way is simply maintain relative position like other primitive and other is to maintain standard character size even though viewport size is enlarged or reduced.
- Number of display device can be used in application and for each we can use different window-to-viewport transformation. This mapping is called the workstation transformation.
30. Explain Cohen-Sutherland line clipping algorithm.
Ans: This is one of the most popular and oldest line-clipping procedure. In this we divide the whole space into nine region and assign 4 bit code to each endpoint of line depending on the position where the line endpoint is located.
- Figure shows code for line end point which is fall within particular area.
- Code is derived by setting particular bit according to position of area
Bit 1: left Bit 2: right
Bit 3: below Bit 4: above
- All above bits set means 1 and other 0.
i) Assign region code to both endpoint of a line depending on the position where the line endpoint is located.
ii) If both endpoint have code’000’
Then line is completely inside.
Perform logical ending between this two codes.
If result of logical ending is not 0
Line is completely outside the clipping window.
Calculate the intersection point with the boundary one by one.
Divide the line into two parts from intersection point.
Recursively call algorithm for both line segments.
iii) Draw line segment which are completely inside and eliminate other line segment which found completely outside.
31. Write short notes on a) Interlacing b) Plasma panels c) Point clipping d) Rubber-band method.
a) Interlacing: On some raster-scan systems each frame is displayed in two passes using an interlaced refresh procedure. In the first pass, the beam sweeps across every other scan line from top to bottom. Then after the vertical retrace, the beam sweeps out the remaining scan lines.
b) Plasma panels: Plasma panels are an emissive display, also called gas-discharge displays, are constructed by filling the region between two glass plates with a mixture of gases that usually includes neon. Alternating-current methods are used to provide faster application of the firing voltages, and thus brighter displays.
c) Point clipping: In point clipping we eliminate those points which are outside the clipping window and draw points which are inside the clipping window. We consider rectangular boundary for clipping window with edge (xwmin, xwmax, ywmin, ywmax). If the inequality below is satisfied then point is inside otherwise the point is outside the clipping window.
xwmin <= x <= xwmax
ywmin <= y <= ywmax
d) Rubber-band method: Straight lines can be constructed and positioned using rubber-band methods, which stretch out a line from a starting position as the screen cursor is moved. Rubber-band methods are used to construct and position other objects besides straight lines.