next up previous contents
Next: Contents

A Geometric Framework for Computer Graphics
Addressing
Modeling, Visibility, and Shadows

Sherif Ghali

Abstract:

The main question this dissertation addresses is the following: Is it possible to design a computer graphics API such that modeling primitives, computing visibility, and generating shadows from point, linear, and area light sources can be conveniently and concisely expressed?

The thesis answers this question in the affirmative by describing a framework for geometric computing in computer graphics. The classes in the layered system constituting the framework are described using the UML notation and each algorithm presented is encapsulated in a member method of a class in the hierarchy.

We identify a number of abstractions for object-space graphics such as transparent visibility and opaque visibility. These abstractions are somewhat harder to implement than standard rasterized abstractions as they rely on graphs and planar maps. Nevertheless, these notions prove to be fundamental in this work on object-space graphics and also appear to be fundamental for computer graphics in general.

We propose that clients of a graphics API such as the one presented here should be relieved from the onus of computing shadows and we show that the computation of shadows can be automated and encapsulated in the framework. We address illumination under a point, a linear, and an area light source in space. We also fully address modeling, visibility, and shadow problems in the plane. Planar problems both give us valuable intuition before tackling the problems in space and are useful for graphical environments such as mazes.

The thesis also proposes ways for minimizing objects in a geometric framework. We show that a variation on the winged-edge data structure can be encapsulated to represent topology and describe how a programming language supporting genericity allows us to instantiate the topological classes and their iterators for use in modeling a scene, in representing its view in object-space, and in representing the scene when its topology is refined to include shadow edges.

The computation is done entirely in object-space. Some of the advantages of object-space computation are that the shadow edges are determined symbolically, the time spent on shading is proportional to the visible features of the scene, and the output is both concise and device-independent.



 

Brief Contents





Contents


next up previous contents
Next: Contents