This is the newly revised and expanded edition of the most suitable textbook for introducing undergraduate students in computer science and mathematics to the design of geometry algorithms. Such algorithms lie at the core of a variety of practical areas, including 3D game program design, geographical information systems, manufacturing design, and robotics. The self-contained treatment presumes only an elementary knowledge of mathematics, but reaches topics on the frontier of current research. Thus, though it is designed for a course at the advanced undergraduate level, it can be used for graduate courses as well. Numerous exercises are provided at the end of every section; a partial solutions manual is available.A novel aspect of the book is the inclusion of working computer programs for many of the algorithms. Students will enjoy the interplay between practical programming issues and the latest theoretical developments; many student projects can be built on the provided code.