CS 497, Fall 2000
Prof. John C. Hart
Advanced Surface Modeling
Section JCH, #08907
12:30 - 1:45 p.m., Tu/Th, 106B3 Engineering Hall
This course will develop the tools necessary for interrogation and display
of advanced non-parametric surface representations, focusing on implicit
surfaces, subdivision surfaces and level sets. These surface representations
are procedural, which means they are well-defined surfaces somewhere in
space but one has to use the procedure to figure out where they are. Implicit
surfaces are surfaces where a function over space is equal to a fixed isovalue.
Subdivision surfaces are smooth surfaces that result from subdividing the
polygons in a given mesh. Level sets are advancing fronts that develop
over time depending on local and global effects.
These surface models have applications in computer graphics, computer
vision, computer-aided geometric design, scientific computing/visualization,
computational biology and computational fluid dynamics. Concepts will include
analytic/procedural/sampled representations, mesh data structures/operations,
constrained dynamics, differential geometry, surface topology, and initial-value/boundary-value
problems. Students completing this course will have acquired the background
and domain knowledge necessary to contribute new ideas to this field.
Course Goals
-
To learn about this category of geometric surface representation.
-
To develop a freely-available library package for using these representations.
Class Project
We will be cooperatively build a new freely-available class library to
support advanced surface research. Individual homework and project assignments
will be assigned as new member functions of this library.
-
This library is built on libgm.
-
Documentation: Class
Hierarchy and Technical
Paper.
-
Current library is available at http://sourceforge.net/projects/surface

-
Links to download WinCVS
and a Win32 SSH
program. You will need to set the variable CVS_RSH to "ssh" and make sure
that the directory with ssh.exe (and the dll's) is in your PATH. Set the
CVSROOT in the WinCVS system to point to: "loginname@cvs.yourproject.sourceforge.net:/cvsroot/yourproject".
You can use "anonymous" as your login name to download (e.g. checkout)
code but you must have an approved login to upload (e.g. commit) code.
More info on WinCVS, CVS
and SourceForge.
Prerequisites
Familiarity with:
-
3-D graphics and
-
numerical methods.
Project
The course project will consist of member functions for these advanced
surface classes. The member functions that will be assigned, integrated
and tested by the instructor. Collaboration and teamwork will be encouraged
since each student will be assigned unique coding assignments.
Outline
-
Tools for visualizing surfaces during development
-
Implicit surfaces
-
Polygonizing implicit surfaces
-
Particle systems constrained to implicit surfaces
-
Meshing and surface topology
-
Fitting data with implicit surfaces
-
Mesh compression
-
Subdivision surfaces
-
Applications of subdivision surfaces
-
Level sets
-
Introduction and applications in computer graphics
-
Level set methods
-
Fast marching methods
-
Applications in advanced rocketry (Jim Jiao)
Books
-
Jules Bloomenthal (Ed.). Introduction to Implicit Surfaces. Morgan Kaufmann
Publishers, August 1997, ISBN: 155860233X.
-
Peter Schroeder and Denis Zorin (Eds.). Subdivision for Modeling and Animation.
-
James Albert Sethian. Level Set Methods and Fast Marching Methods (Second
Edition). Cambridge University Press, June 1999, ISBN: 0521645573.