Your project should be easier to read than the paper(s) it is based on. Don't copy endless series of equations and text. Add lots of pictures, examples, moving gifs and color. Explain things in a natural manner, instead of using lots of notation.

Your applet must work on machines at the CS labs, as well as on windows.
Test a basic version of your applet well in advance of the deadline!!!

The minimum requirement is that the user can follow the steps of some
procedure. In other words, there may be no user interaction, but you have
one (or preferably more) example illustrated in great detail. There
should be some advantage of your applet over a gif movie.

A good applet will allow user interaction. This does not mean being able
to choose among 2-3 examples. The user should be able to enter/delete
objects and so on.

If applicable.....
An excellent applet is one which can be used multiple times by the same
user, and each time they can potentially construct/discover something
new. This means that the applet is a (pattern recognition) tool, not
just an example.

Projects from past years

More projects from cs507 (identical project scheme)

After you have ENTIRELY finished your project, you must give me a
.tar.gz file: Place all your files in a directory named after you
(example: if your name is James Bond, then "mkdir JamesBond" ). Then
"tar cvf JamesBond.tar Jamesbond" , "gzip JamesBond.tar" and send
me the file JamesBond.tar.gz by email.

Note: exact commands may differ slightly. For example you might need
"tar -cvf".

Your starting page must be called welcome.html - so that a link of
type http:cgm.cs....../JamesBond will open up your project.

If projects by two people are allowed, just use either name.

Please include your names, the title, and contact information in your html text.

- Contour tracing: design applets, update current tutorial, analyze Moore tracing, etc
- Smoothing: make cleaner waterfall applet, describe proof on computing a geodesic in a polygon (with applet)
- Shape (polygon) morphing: pick a paper from this bibliography list .
- More morphing:
- Flipping edges and moving points in triangulations.

See this paper for general point sets, or this paper for points on grids. - Local operations on polygons: see this paper .
- Edge slides on trees. see this abstract . I have more references if you are interested.

- Flipping edges and moving points in triangulations.
- Medial axis: description of a O(n
*log*n) time divide-and-conquer algorithm. - Voronoi diagram: description of the O(n
*log*n) time algorithm which uses 3D convex hulls. This would be a good choice only if you are good with 3D visualisations. - Geometric feature extraction methods: browse through here for topics. Suggestive contours (illusions) seem interesting.
- Decomposing polygons into star-shaped pieces
- Decomposing orthogonal polygons into rectangles
- Matching polygons: find the paper highlighted in
this page . I also have a copy that you can borrow.

Note that the link above also has other possible topics. - Music matching: see these two sample projects:
_1_
_2_

There are other similar topics that could be presented. -
Estimating centers of point sets:
- Applets for three median definitions (see halfspace , oja, simplicial).
- Tutorial on computing the depth of one point. See this example .