Course Scope

CS633 is an introductory course to Computational Geometry. Computational Geometry is a study of algorithms and data structures for geometric objects. One important goal of CS633 is to make you become knowledgeable and comfortable enough to deal with any geometric problems.


  • CS583
  • Working knowledge of C AND C++ for most computational geometry libraries are implemented in C/C++.

Required Textbook

Computational Geometry: Algorithms and Applications

by Mark de Berg, Marc van Kreveld, Mark Overmars, and Otfried Cheong, third revised edition, Springer-Verlag, 2008. ISBN # 978-3-540-77973-5. You should be able to view the entire textbook from a GMU IP address.

Recommended: Computational Geometry in C by Joseph O'Rourke (Cambridge University Press; 2008 edition, ISBN # 978-3-540-77973-5) is also a useful book. It seems that you can preview part of this book on google. As far as I know you should be able to get a copy of this book from the university bookstore. (This book is not required for this course.)

Recently, O'Rourke also re-published his 1987 book, "Art Gallery Theorems and Algorithms" online, for free!

In addition, we will study papers from various journals and conferences; these will be made available electronically.


  1. Assignments 50%: There will be 4 programming assignments and one paper review assignment.
  2. Quizzes/Mid term Exam 15%
  3. Course project 35%

List of Topics

  • Line segment intersection
  • Convex hull
  • Triangulations
  • Proximity problems
  • Range searching
  • Point location
  • Voronoi Diagrams
  • Delaunay Triangulations
  • Arrangements and Duality
  • Binary space partitions
  • Robot Motion planning
  • Quadtree/Octree
  • Visibility Graph
  • Origami Folding


All required assignments should be completed by the stated due date and time. The total score of your assignment score will be 10 points less every extra day after the due date (i.e., the 100 total points will become zero after 10 days pass the due date).

Please note that all coursework is to be done independently. Plagiarizing the homework will be penalized by maximum negative credit and cheating on the exam will earn you an F in the course. See the GMU Honor Code System and Policies at this page and . You are encouraged to discuss the material BEFORE you do the assignment. As a part of the interaction you can discuss a meaning of the question or possible ways of approaching the solution. The homework should be written strictly by yourself. In case your solution is based on the important idea of someone else please acknowledge that in your solution, to avoid any accusations.

The quizzes and exams will be a closed book exam - no notes will be allowed. There will be no makeups for the quizzes and exams.