CS 426 Exercises
2D Primitives and Rendering
What is the area of a 2D point? a 2D ray? a 2D line?
What is the length of the projection of vector V1 onto V2?
In the parametric representation for a 2D line (P = P0 + tV), what are
the geometric interpretations of P0 and V?
In the implicit representation for a 2D line (ax + by + c), what are the
geometric interpretations for a, b, and c?
2D lines have both a parametric and an implicit representation. For
which geometric operations (drawing, distance, intersection, etc.) is each
representation most efficient?
What are the steps in a 2D rendering pipeline? Describe the input
and output of each step.
Why are scenes often described by objects in different coordinate systems?
Describe the sequence of transformations a 2D vertex can undergo during
What types of 2D transformations can be represented with a 2x2 matrix?
What types of 2D transformation can be represented by a 3x3 matrix
and 2D homogeneous coordinates?
Why is it important to clip 2D polygons to the window prior to display?
Why is the Cohen-Sutherland line clipping algorithm more efficient than
a simpler algorithm that just successively clips each line to the four
lines bounding the window?
What is a window? a viewport? What viewing operation results from making
the window smaller? Moving the window horizontally? Making
the viewport smaller? Moving the viewport horizontally?
Why is the sweep-line algorithm more efficient for scan converting triangles
than the simpler algorithm that tests each pixel individually to see if
it's inside the triangle?
What is the odd-parity rule for testing if a point is inside a polygon?
What is the nonzero winding number rule? Give an example polygon
for which the two rules produce different results. Which rule does
the sweep-line algorithm implement?
How is scan-conversion of concave polygons performed in OpenGL? Why?