Practice Midterm Exam for Computer Graphics | CMSC 427, Exams of Computer Graphics

Material Type: Exam; Professor: Jacobs; Class: Computer Graphics; Subject: Computer Science; University: University of Maryland; Term: Unknown 1989;

Typology: Exams

Pre 2010

Uploaded on 02/13/2009

koofers-user-hto
koofers-user-hto 🇺🇸

9 documents

1 / 3

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Practice Midterm
CMSC 427
Distributed Thursday, October 4, 2007
Midterm: Tuesday, October 16, 2007
General Guidelines: The midterm will focus on topics that have been discussed in class.
I will not ask questions about material from the book that has not also been discussed in
class or in a problem set. However, there will be no questions about OpenGL or
programming problems.
The midterm will be closed book, with no notes or calculators. This means that problems
should not require the use of a calculator; if you feel you need one when you are doing a
problem this probably means there is an easier way to do the problem.
Topics and things to know about them:
1. Geometry (needed for problems on the next two topics)
a. How to take an inner product, and what this does.
b. How to take a cross product, and what this does.
c. What a unit vector is, and how to find the magnitude of a vector.
2. Transformations
a. How to write rotation about the x, y, or z axis as a matrix.
b. How to write translation as a matrix.
c. How to combine these. For example, rotate about a point not at the origin.
d. How to rotate or translate a line.
e. How to relate the rows of a rotation matrix to the axes of a new coordinate
system
This includes writing the coordinates of points relative to a new coordinate
system.
3. Projection
a. Perspective projection
i. How to find the image coordinates of a 3D point
ii. Some consequences of that, such as properties of vanishing points,
knowing when a line in 3D does not project to a line in the image, …..
iii. How to describe the perspective projection of planar objects with a
projective transformation, including understanding points at infinity.
b. Orthographic projection
i. How to find the image coordinates of a 3D point.
4. Intersections and Containment
a. How to tell if a point is inside a triangle.
b. How to tell if two axial rectangles intersect (and how to use this to tell
whether objects might intersect).
c. How to tell if two circles intersect (and how to use this to tell whether objects
might intersect).
5. Visibility
pf3

Partial preview of the text

Download Practice Midterm Exam for Computer Graphics | CMSC 427 and more Exams Computer Graphics in PDF only on Docsity!

Practice Midterm CMSC 427 Distributed Thursday, October 4, 2007 Midterm: Tuesday, October 16, 2007

General Guidelines: The midterm will focus on topics that have been discussed in class. I will not ask questions about material from the book that has not also been discussed in class or in a problem set. However, there will be no questions about OpenGL or programming problems.

The midterm will be closed book, with no notes or calculators. This means that problems should not require the use of a calculator; if you feel you need one when you are doing a problem this probably means there is an easier way to do the problem.

Topics and things to know about them:

  1. Geometry (needed for problems on the next two topics) a. How to take an inner product, and what this does. b. How to take a cross product, and what this does. c. What a unit vector is, and how to find the magnitude of a vector.
  2. Transformations a. How to write rotation about the x, y, or z axis as a matrix. b. How to write translation as a matrix. c. How to combine these. For example, rotate about a point not at the origin. d. How to rotate or translate a line. e. How to relate the rows of a rotation matrix to the axes of a new coordinate system This includes writing the coordinates of points relative to a new coordinate system.
  3. Projection a. Perspective projection i. How to find the image coordinates of a 3D point ii. Some consequences of that, such as properties of vanishing points, knowing when a line in 3D does not project to a line in the image, ….. iii. How to describe the perspective projection of planar objects with a projective transformation, including understanding points at infinity. b. Orthographic projection i. How to find the image coordinates of a 3D point.
  4. Intersections and Containment a. How to tell if a point is inside a triangle. b. How to tell if two axial rectangles intersect (and how to use this to tell whether objects might intersect). c. How to tell if two circles intersect (and how to use this to tell whether objects might intersect).
  5. Visibility

a. Z-buffer algorithms, including how to determine the z-coordinates of the projection of a triangle at each pixel. b. Painter’s algorithm, how to tell whether one triangle is in front of another. i. How to tell whether one triangle is in front or behind the plane of another triangle. c. BSP-trees

  1. Interpolation a. Linear, bilinear and cubic interpolation. b. Discrete representations of lines and triangles. c. How to enlarge an image.
  2. Discretization a. How to represent a line with pixels. b. How to fill a polygon. i. Flood fill algorithm. ii. Scan line algorithm

Sample Problems (Note, some of these problems may be a bit more involved than ones I’d ask on a time-limited exam).

  1. Create a matrix that rotates points 90 degrees about the point (1,1).
  2. What is the distance from (3,2) to (7,5) in the direction (1,2)?
  3. Provide any two rows of a 4x4 matrix that will transform 3D points as they would appear in the coordinate system of a viewer centered at (3,2,0) facing in the direction (1,2,3). The new z coordinate should describe the distance from the viewer to a point, in the direction that they are viewing it.
  4. Suppose you have a camera with a focal point at (0,0,0) and an image plane of z=1. Give an example of a right triangle in 3D that will also appear in the image as a right triangle, assuming perspective projection. Do the same thing for orthographic projection.
  5. Prove that parallel lines in the world do not always appear as parallel lines with perspective projection.
  6. Explain how you would adapt the algorithm we learned that discretizes lines to discretely represent the boundary of a circle. What pixels would be filled in to represent a circle centered at (20,20) with a radius of 5?
  7. Suppose, for the purposes of this problem, that Philadelphia is 90 miles north-east of Washington, and that Baltimore is 30 miles northeast of Washington. a. If it is 40 degrees in Washington, and 31 degrees in Philadelphia, use linear interpolation to estimate the temperature in Baltimore. b. Suppose Harrisburg is 60 miles north of Washington, and it is 24 degrees there. Use linear interpolation to estimate the temperature at a location that is 30 miles north of Washington and 15 miles east of it. c. What do these problems have to do with graphics?
  8. Consider a triangle with corners at (2,2,3) (3,3,4), (3,1,3). a. What is the normal vector to this triangle? b. What is an equation for the plane that this triangle lies in?