Welcome to the author's site of the book Graphics & Visualization: Principles and Algorithms. The site provides teaching resources and aids relevant to the book.

Book cover

Graphics & Visualization: Principles and Algorithms is a comprehensive visual computing textbook, dealing with the modeling and synthesis of visual data by means of computers. The book is aimed at undergraduate and graduate students taking computer graphics and visualization courses. Students of computer-aided design courses with emphasis on visualization will also benefit from this text, since mathematical modeling techniques with parametric curves and surfaces as well as with subdivision surfaces are covered in depth. It is finally also aimed at practitioners who seek to acquire knowledge of the fundamental techniques behind the tools they use or develop. The book concentrates on established principles and algorithms as well as novel methods that are likely to leave a lasting mark on the subject.

The rapid expansion of the computer graphics and visualization fields has led to increased specialization among researchers. The vast nature of the relevant literature demands the cooperation of multiple authors. This book originated with a team of four authors. Two chapters were also contributed by well-known specialists: Chapter 16 (Global Illumination Algorithms) was written by P. Dutré; Chapter 8 (Subdivision for Graphics and Visualization) was coordinated by A. Nasri (who wrote most sections), with contributions by F. A. Salem (section on Analysis of Subdivision Surfaces) and G. Turkiyyah (section on Subdivision Finite Elements).

A novelty of this book is the integrated coverage of computer graphics and visualization, encompassing important current topics such as scene graphs, subdivision surfaces, multi-resolution models, shadow generation, ambient occlusion, particle tracing, spatial subdivision, scalar and vector data visualization, skeletal animation, and high dynamic range images. The material has been developed, refined, and used extensively in computer graphics and visualization courses over a number of years.

Some prerequisite knowledge is necessary for a reader to take full advantage of the presented material. Background on algorithms and basic linear algebra principles are assumed throughout. Some, mainly advanced, sections also require understanding of calculus and signal processing concepts. The appendices summarize some of this prerequisite material.

Each chapter is followed by a list of exercises. These can be used as course assignments by instructors or as comprehension tests by students. A steady stream of small, low- and medium-level of difficulty exercises significantly helps understanding.

The material can be split between a basic and an advanced graphics course, so that a student who does not attend the advanced course has an integrated view of most concepts. The visualization course can either follow on from the basic graphics course, or it can be a standalone course, in which case the advanced computer graphics content should be replaced by a more basic syllabus.