Question One (20 Marks)
a) In relation to computer graphics, define the following terms                  (6 marks)
      i.  Graphics are visual representations on some surface, such as a wall, canvas,
          computer screen, paper, or stone to brand, inform, illustrate, or entertain
     ii.  Graphic design consists of the deliberate selection, creation, or arrangement of
          typography, as in a brochure, flier, poster, web site, or book
    iii.  A digital image is a representation of a two-dimensional image in binary format as a
          sequence of ones and zeros.
       (2 marks each for correct definition)
   b) Explain the key differences between a Raster Scan display and a Random scan display
                                                                                      (2
      marks)
      - Raster scan system refreshes all pixels during each scan cycle
      - Random scan system only addresses changes to specific pixels of an image per scan
         cycle                                                          (1 mark for each)
   c) Identify the major difference between the two-dimensional and three-dimensional
      viewing pipelines                                                          (2 marks)
      2D viewing pipeline– clipping is done at the viewing transformation stage. Has no
      transformation projection
      3D viewing pipeline – clipping definition is done at viewing transformation stage, to be
      executed at normalization stage. Has a projection transformation.
       (1 mark for each difference)
   d) Explain how the interactive graphics pipeline is implemented in hardware
                                                                                   (3 marks)
   –   The rendering pipeline is mapped onto current graphics acceleration hardware such that
       the input to the graphics card (GPU) is in the form of vertices.
   –   These vertices then undergo transformation and per-vertex lighting. At this point in
       modern GPU pipelines a custom vertex shader program can be used to manipulate the 3D
       vertices prior to rasterization.
   –   Once transformed and lit, the vertices undergo clipping and rasterization resulting in
       fragments. A second custom shader program can then be run on each fragment before the
       final pixel values are output to the frame buffer for display.
e) State and briefly explain any 4 advantages of vector graphics over raster graphics
                                                                                      (4 marks)
The following are the most important advantages of vector graphics:
• Complete scalability - you can resize vector graphics without any loss in quality. Whether
you're designing a business card or very large advertising poster, the quality stays the same
• Usability for both web and print - while bitmap graphics is printable only if its graphical
resolution is 300 dpi or higher, vector graphics is always printer friendly.
• Vector graphics is completely editable - you can resize, skew, rotate and reshape it,
combine it with another vector objects, weld and trim them, color it etc.
• Background transparency - it will match any background, any color and/or pattern, any
other bitmap or vector graphics.
    (Any 4 well explained points = 1 mk @)
f) Using examples, discuss 3 ways in which 3D illusions are created in computer graphics
                                                                              (3 marks)
         Monoscopic Depth Cues E.g. Interposition: An object that occludes another is
            closer
         Stereoscopic Depth Cues: Stereoscopic display systems create a three-
            dimensional image (versus a perspective image) by presenting each eye with a
            slightly different view of a scene.
         Motion Depth Cues: Objects nearer to the eye move a greater distance
         Physiological Depth Cues: focusing adjustment made by the eye to change the
            shape of the lens.
(Any 3 well explained ideas = 1 mk @)
Question Two (15 Marks)
a) Explain the following terms as used in color representation                         (3 marks)
                i. Hue
                    The term for the pure spectrum colors commonly referred to by the color names;
                    red, orange, yellow, blue, green, violet which appear in the hue circle or rainbow.
                    (1 mark)
                ii. Lightness
                Property of a color or a dimension of color space, that is defined in a way to
                reflect the subjective brightness perception of a color for humans along a
                lightness-darkness axis. (1 mark)
            iii. Saturation: Degree to which a color is mixed with white, high saturation means
                little white while low saturation means more white. (1 mark)
b) Distinguish between modeling and rendering as used in computer
   graphics
                (2 marks)
   Modeling: producing a precise description of a scene (model), in
   terms of graphics primitives.
   Rendering: producing an image based on the model. Images are
   produced in a framebuffer.
c) A point P(5,10,7) which is a part of a larger object is to be rotated
   through an angle of 45 degrees anti-clockwise, then uniform scaled by
   a factor S of 3. Compute the combined homogeneous transformation
   matrix                                (4 marks)
d) Compute the final coordinates for the point P in (c) above                              (2
   marks)
   e) Explain why perspective transformations are more preferable to
      parallel transformations.                                                        (3
      marks)
             o visual effect is similar to human visual system...
             o has 'perspective foreshortening'
                        size of object varies inversely with distance from the
                         center of projection.
             o angles only remain intact for faces parallel to projection
                 plane.
             o In the real world, objects exhibit perspective foreshortening:
                 distant objects appear smaller
      (1 mk for @ pt)
Question Three (15 Marks)
   a) Define the following terms as used in display systems                      (4 marks)
                  i. Vertical Sync Pulse: Signals the start of the next field
                 ii. Vertical Retrace: Time needed to get from the bottom of the current field
                     to the top of the next field
                iii. Horizontal Sync Pulse: Signals the start of the new scan line
                iv. Horizontal Retrace: The time needed to get from the end of the current
                     scan line to the start of the next scan line
   b) Explain the advantage of Bresenham Line algorithm over Digital Differential Analyzer
      algorithm                                                                 (2 marks)
      - Is an incremental algorithm that uses only integer calculations make the process very
          fast
   c) Explain the meaning of critical fusion frequency in display systems
             (2 marks)
      The minimum frequency at which the pixels must be refreshed to
      sustain an image on the display
  (2 mks for correct ans)
d) Distinguish between dedicated and integrated graphics cards
        (4 marks)
  Dedicated graphics cards
 A dedicated GPU is not necessarily removable, nor does it necessarily
  interface with the motherboard in a standard fashion.
 The term "dedicated" refers to the fact that dedicated graphics cards
  have RAM that is dedicated to the card's use, not to the fact that most
  dedicated GPUs are removable.
 Integrated graphics processors (IGP) utilize a portion of a
  computer's system RAM rather than dedicated graphics memory. They
  are integrated into the motherboard with few exceptions
  (2 mks @ for correct ans)
e) Assuming the point P in the diagram below has the coordinates (3,5),
  derive the polar coordinates for P
        (3 marks)
  Use the equations
Question Four (15 Marks)
   a) Discuss the motivating factors for surface modeling                        (3
          marks)
          Many real-world objects are inherently smooth, therefore need
          infinitely many points to model it. This is not feasible for a computer
          with finite storage. More often we merely approximate the object with
          pieces of planes, spheres, or other shapes that are easy to describe
          mathematically.
          (3 mks for correct ans)
   b) Using illustrations, describe the following techniques used in
          representing polygon meshes
                        (4 marks)
     i.      Pointer to a vertex list: store all vertices once into a numbered
                 list, and represent each polygon by its vertices. It saves space
                 (vertex only listed once) but still has no explicit representation of
                 shared edges and vertices
             Such as
    ii.      Explicit edges: list all edges that belong to a polygon, and for each
             edge list the vertices that define it along with the polygons       of
             which it is a member. Such as
   c) Using examples and illustrations, explain the 2 common techniques for
          specifying curves in surface modeling
                        (4 marks)
   f) Describe the image space approach to visible surface determination.
       Hence give the pseudo code for the z-buffer image space algorithm
                         (4 marks)
   –   Image space algorithms do their work as the objects are being
       converted to pixels in the frame buffer. The resolution of the display
       device is important here as this is done on a pixel by pixel basis.
   –   Pseudo code…
       for each polygon for each pixel p in the polygon's projection
             {
             pz = polygon's normalized z-value at (x, y);
             //z ranges from -1 to 0
             if (pz > zBuffer[x, y]) // closer to the camera
                    {
                          zBuffer[x, y] = pz;
                          framebuffer[x, y] = colour of pixel p;
                    }
             }
Question 5 (15 Marks)
a) Describe the principles of the brute-force line clipping algorithm. State
   its limitation and discuss the solution offered by the Cohen Sutherland
   algorithm
                                                                (2 marks)
   Brute force approach
      –   Computes intersections with all sides of clipping window.
          Inefficient: one division per intersection
   CS:
      –   Idea: eliminate as many cases as possible without computing
          intersections by using outcodes for the various regions of the
          viewport
b) Explain the process of clipping the line EF in the diagram below using
   the Cohen Sutherland Line Clipping algorithm
                (3 marks)
      –   EF: outcode(E) logically ANDed with outcode(F) (bitwise) ¹ 0
             o Both outcodes have a 1 bit in the same place
             o Line segment is outside of corresponding side of clipping
                window
             o reject
c) Compute the values of pi and hence generate the coordinates for a line
   starting at pixel (2,3) and ending at pixel (12,8) using the Bresenham
   algorithm    (5 marks)
       t             p               P(x)             P(y)
       0             0               2                3
       1             -10             3                4
       2             0               4                4
       3             -10             5                5
       4             0               6                5
       5             -10             7                6
       6             0               8                6
       7             -10             9                7
       8             0               10               7
       9             -10             11               8
       1             0               12               8
       0
   d) A point P(5,10) which is part of a larger image is to be transformed
       from a window measuring 500X1000 to a viewport measuring
       350X800. Compute the new coordinates of P
                                      (5 marks)
Question one
   g) Describe any four tasks of a graphics processor that relate to computer graphics   (6 marks)
         i.     Transformation
         ii.    Clipping
         iii.   Projection
         iv.    Shading and coloring
         v.     Texturing
         vi.    Hidden surface removal
                (a description of any 4, 2 marks each)
h) Explain the key differences between a Raster Scan display and a Random scan display (4 marks)
   - Raster scan system refreshes all pixels during each scan cycle
   - Random scan system only addresses changes to specific pixels of an image per scan cycle (2
       marks for each)
i)   Identify the major difference between the two-dimensional and three-dimensional viewing
     pipelines                                                                         (4 marks)
     2D viewing pipeline– clipping is done at the viewing transformation stage. Has no
     transformation projection
     3D viewing pipeline – clipping definition is done at viewing transformation stage, to be executed
     at normalization stage. Has a projection transformation.
     (1 mark for each difference)
j)   Explain the following components as used in computer graphics
                  i. Focusing system
                      Focus the electron beam to converge to a small spot as it strikes the phosphor
                      coated screen. (2 marks)
                    ii. Deflection system
                        Controls the deflection of the electron beam for it to strike at a specific position
                        on the screen (2 marks)
                   iii. Electron gun
                        Emits a beam of electrons which are negatively charged and are directed to the
                        phosphor coated screen by a high positive voltage (2 marks)
k) Describe any 2 major display technologies as used in computer graphics                       (10 marks)
               Cathode Ray Tube (CRT)
               Liquid Crystal Display (LCD)
               Plasma displays
               OLED
                A brief description of any 2 of the above, 5 marks each, a total of 10 marks
Question two
a) Briefly describe the Mid-Point Circle Algorithm, highlighting the significance of symmetry to the
   algorithm                                                                           (8 marks)
b)                                                                                   Distinguish
                                                                                     between the
                                                                                     following
                                                                                     camera control
                                                                                     terms;
                 i. Circle of confusion
                    The projection of a point at a position on the image plane forming an
                    approximate circle – makes it unclear where the point is precisely located
                    (2 marks)
                ii. Depth of the field
                    Choice of a camera position such that the size of the circle of confusion for a
                    range of distances is minimized. (2 marks)
c) Identify two basic terms that describe a camera scene                              (2 marks)
       i. Camera position – where the camera is positioned
        ii. Camera orientation – determines the projection angle (1 mark each)
d) Describe the purpose of the following techniques as used in creating 3-Dimensional sceneries;
                i. Parallel projection
                   Projecting points of a 3D object on the object surface along parallel line. This is
                   used especially to show accurate dimensions. (2 marks)
                 ii. Perspective projection
                     A method of generating a more realistic view of a 3D view by projecting points
                     to the display plane along converging lines (2 marks)
                iii. Depth cueing
                     A method used in graphics to capture depth information to help the viewer
                     identify the particular viewing directions i.e. back to front. (2 marks)
     Question three
f)   Briefly describe how to generate line using Bresenham Line Algorithm              (7 marks)
                                       (1 mark for each step)
g) Explain any two advantages of Bresenham Line Algorithm over Digital Differential Analyzer
   Algorithm                                                                      (4 marks)
   - Is a fast incremental algorithm
   - Uses only integer calculations
    h) Describe two approaches to generate images on the screen                            (6 marks)
           i. Stroke writing
           ii. Raster display
       (A description of the above, 3 marks each)
    i)   Describe aliasing as used in computer graphics?                                   (3 marks)
         Aliasing is a signal processing term. It occurs when a system is measured at an insufficient
         sampling rate.
Question four
   b) Explain the purpose of the following procedures in 3-Dimensional Modeling;
                   i. Surface rendering
                      Use of lighting conditions in a scene and the assigned surface characteristics to
                      add realism to a view (2 marks)
                     ii. Stereoscopic views
                         This is applied together with stereoscopic devices. Such devices present two
                         views of a scene, one for each eye. The views correspond to the eye positions of
                         the viewer, and result in a 3D effect. (2 marks)
    c) Describe clipping and outline any three trivial tests that can be performed during line clipping
                                                                                            (5 marks)
       Clipping is removal of points that are outside the region of interest i.e. clip-window. (2 marks)
       Trivial tests:
            i. The line segment is entirely inside (keep it)
            ii. The line segment is entirely outside (discard it)
            iii. The line segment is partially inside and partially outside (generate new line to represent
                 part inside) (1 mark each)
    d) Explain the following terms as used in color representation?
                    i. Hue
                        The term for the pure spectrum colors commonly referred to by the color
                        names; red, orange, yellow, blue, green, violet which appear in the hue circle or
                        rainbow. (1 mark)
                     ii. Lightness
                         Property of a color or a dimension of color space, that is defined in a way to
                         reflect the subjective brightness perception of a color for humans along a
                         lightness-darkness axis. (1 mark)
                 iii. Saturation
                      Degree to which a color is mixed with white, high saturation means little white
                      while low saturation means more white. (1 mark)
Question 5
   a) Discuss the principles of rigid body and affine transformations                 (3 marks)
   –   A transformation matrix of the form
   –   where the upper 2´2 sub-matrix is orthogonal, preserves angles and lengths. Such
       transforms are called rigid-body transformations, because the body or object being
       transformed is not distorted in any way. An arbitrary sequence of rotation and
       translation matrices creates a matrix of this form.
   –   The product of an arbitrary sequence of rotation, translations, and scale matrices
       will cause an affine transformation, which have the property of preserving
       parallelism of lines, but not of lengths and angles.
   b) Describe the ‘Pulfrich Effect’ and state its relevance in computer graphics
                                                                               (2 marks)
       –   Different levels of illumination require additional time (your frame rates differ
           base of amount of light)
       –   What if we darken one image, and brighten another?
       –   Useful in developing 2D to 3D cues
   c) Explain how focus is obtained in a thin lens camera model                       (5 marks)
d) Discuss the process of transforming an object from the world coordinates (WC)
    space to the viewing coordinates (VC) space                            (5 marks)
–   Transformation sequences
–   Translate the view reference point to the origin of the WC system
       o view reference point(x0, y0, z0)
–   Apply rotations to align the xv, yv, and zv axes with the
       o rotate around the world xw axis to bring zv into the xwzw plane
       o rotate around the world yw axis to align the zw and zv axis
       o final rotation is about the zw axis to align the yw and yv axis