Brandon McPhail
Last Modified: 01 September 2003

source
linux i386 binary
(Released under GPL)

Project 4 README

Files:
object.c
bgl.c
vec2f.c 
vec3f.c 
vec4f.c 
tmatrix.c 
quat.c 
arcball.c 
silhouette.c 
we.c 
loop.c 
morph.c 
draw.c 
bmath.h
bgl.h
vec2f.h
vec3f.h
vec4f.h
tmatrix.h
quat.h
arcball.h
silhouette.h
we.h
loop.h
morph.h
draw.h

This is an extension of project 3: Project 3. I've added an Acrball interface using quaternions, some silhouette detection and drawing routines, Loop's limit mask, and support for crease, corners, and darts. Many things were patched up and there's now a suite of files for vector and quaternion operations.

Possible future work

  1. Currently, reading in object files takes O(n2) time. Sorting of edges with some data structure should cut this down to O(n log n)
  2. Fast silhouette detection
  3. Hidden silhouette detection
  4. Support for creases/darts/corners in the limit mask
  5. Direct computation of the limit surface (say, as a biquadratic bezier patch)

References

I've compiled a list of relevant reading, available as a bibtex file or PDF.

Some images

Want to drop me a note? Do so: Send me an email!
<-- Back