CS 523 - Fall 2003
Project 2: 3D NPR - Contours and Suggestive Contours

Due: Friday, Nov 14, noon
(electronic handin)


Working from 3D geometry, approaches to non-photorealistic rendering typically compute linear features directly on the model. The contour has been a typical ingredient for many years [Gooch 03]; the suggestive contour [DeCarlo et al 03] is a new addition.

In this project, you will implement algorithms to compute contours and suggestive contours, and use OpenGL to render them.

You have the option of using OpenGL in C++ (with GLUT and GLUI), or Java (using GL4Java). These are both set up in the cereal lab.

Requirements

Optional extensions

Here are just some ideas; feel free to add your own! Not all of these extensions are independent--some require others to be done first. Ask if you're not sure.

Code

Start from code for project 1, located in:
   ~decarlo/523/proj1
on the cereal machines, or from your solution to project 1.

A function to compute gradients of scalar functions on meshes is provided in:
   ~decarlo/523/proj2
It is only provided in C++, but is easy enough to convert to Java, and to your modified mesh classes. (A minimally modified mesh.h file is also provided with additional structure in the Vertex class.)

Models

Use the triangle meshes in OFF format located on the cereal machines in:
   ~decarlo/523/off

Work policy

You're allowed to talk about the assignment with other students in the class, but you can't give away a key idea. Furthermore, all code you write must be your own. No using or viewing code from other sources/people/etc...

The exception is in replacing parts of the skeleton code that are clearly not part of the requirements (i.e. a class that implements 3D vectors, a user interface toolkit, etc...). When in doubt, ask.

Handin

Use the handin program on the cereal lab machines. See the description here.

The name for this assignment is cs523-proj2.

Hand in the following:

Please double check that your assignment does indeed compile on the Linux cereal lab machines before you hand in.


523 Home