Here is what happened in class.
Date | Topic | Notes, Reading, Assignments |
Jan 23 | Introduction to GIS. What is GIS? Applications of GIS. GIS and
Computer Science.
Why C? Intro to emacs, etc. C: printf/scanf. hello.c |
Intro.ppt
The C programming language (wikipedia) The C Programming language The history of C GNU Emacs reference card Emacs quick reference read Chapter 1 K&R |
Jan 25 |
C: Arrays, arrays of chars. Pointers. Pointers and arrays. strings |
C prorgamming tutorial (by Steve Holmes) |
Jan 30, Feb 1 |
C: Pointers and parameter passing to functions. Header files. Structures. Scope of variables. Compiling multiple files. Makefiles. Programming style. |
On style: 32 Bits of style
Assignment 1 (due Mon Febr 6th) |
Feb 6 | C: Dynamic 2d arrays. Command line arguments. Files.
|
Assignment 2 (due Mon Febr 13th) |
Feb 8 | C: File I/O.
OpenGL: Basics. : graphics1.tar |
The Redbook : OpenGL Programming Guide
Chapter 1: Introduction to OpenGL Chapter 2: Drawing geometric objects Assignment 3 (due Wed Febr 15th) |
Feb 13, 15 | Assignment 2,3 demo, questions and comments.
Discuss/preview assignment 4. OpenGL: Homogenous coordinates. |
Redbook Appendix G: Homogenous coordinates
Assignment 4 (due Wed Febr 22nd) |
Feb 20, 22 | Assignment 4 demo, questions and comments.
Discuss/preview assignment 5,6. OpenGL: Modelview transformations. Flow modeling. |
Assignment 5 (due Wed March 1st) |
Feb 27, March 1 | Classes canceled.
Project 1: Flow modeling on grid terrains (due wed March 8th) |
Assignment 6 |
March 6 | Virtual memory.
Assignment 5, 6 demo. Project discussion. |
|
March 8 | Project 1 demo. |
|
March 9-26 | SPRING BREAK |
|
March 27 | Line simplification. Douglas-Peucker and Imai-Iri algorithms. (Rob Burns) |
DP: see sec 1,2,3 in Speeding DP simplification algorithm (Hershberger, Snoeyink) II: see sec 3 in A new approach o subdivision algorithm (Berg, Kreveld, Schirra) |
March 29, April 3, 5 | Terrain simplification.
Project 2 (due April 26th). |
Digital elevation models and TIN algorithms (Kreveld) Fast polygonal approximation of terrain and height fields (Garland, Heckbert) |
Mon April 10 | Binary space partition trees (Christine Yip). Hidden surface removal. Painter's and z-buffer algorithms. |
Demo
BSP trees tutorial (Bruce Naylor) Lecture notes on Painter's algorithm (mit) Lecture notes on visibility and BSP (mit) Painter's algorithms slides on Painter's and z-buffer algorithms |
Wed April 12 | Visibility (Yi Zhuang) |
Plane sweep for GIS (Kreveld'98) Higher isn't necessarily better (Franklin'94) Sitting observers on terrains (Franklin'02) |
Mon April 17 | Contour lines (Sunny) |
Efficient methods for isoline extraction (Kreveld) Digital elevation models and TIN algorithms (Mark van Kreveld) |
Wed April 19 | Project 2 discussion. |
|
Mon April 24 | Quad-trees, kd-trees (Eric Loss) |
Quadtree/kd-tree Demos
Quadtree(wikipedia) Quadtree (Berkeley) Quadtree (UBC) kd-tree (wikipedia) |
Wed April 26 | Project 2 demo, party and discussion. | |
Mon May 1 | Terrain simplification (Christopher Field). |
Fast polygonal approximation of terrain and height fields (Garland and Heckbert, 1995)
Simplification using quadric error metrics (Garland & Heckbert, 1997) Multiresolution modeling: survey (Garland, 1999) |
Wed May 3 | Scalability to massive datasets. RAM model vs I/O-model. Scanning vs. random access. I/O-efficient sorting. |
|
Mon May 8 | I/O-efficient priority queue. I/O-efficient techniques. |
|
Wed May 10th | Delaunay triangulations. Incremental construction. |
|
May 19 | FINAL EXAM (project demo) |
|