Synopses & Reviews
This book covers computer graphics programming on the basis of an object-oriented philosophy and using the object-oriented programming paradigm. It shows how a thorough investigation of object-oriented techniques leads to very powerful and flexible graphics systems, which are in sharp contrast to traditional systems such as GKS and PHIGS. An object-oriented multi-level-system system GEO++ with full editing capabilities is defined as a basis for detailed examples using Smalltalk-80 language. The advantages of inheritance are shown for a flexible extension of a predefined graphics kernel. New ways of integrating geometric modeling aspects and defining new output primitives into a prefabricated kernel are demonstrated. Prerequisites for adding rules and constraints are discussed. Requirements for a new object-oriented standard are formulated. A significant part is devoted to detailed examples, showing the progress which can be achieved with a consistent object-oriented approach. Rather than reviewing all different object-oriented approaches and prototypical developments, the book builds a bridge between traditional graphics programming systems and the object-oriented approach. The book is intended for computer scientists and programmers seeking to become familiar with graphics systems and object-oriented programming.
At present, object-oriented programming is emerging from the research labora- tories and invading into the field of industrial applications. More and more products have been implemented with the aid of object-oriented programming techniques and tools, usually as extensions of traditional languages in hybrid development systems. Some of the better known examples are OSF-Motif, News, Objective-C on the NeXT computer, the C extension C++, and CLOS an object- oriented extension of LISP. All of these developments incorporate interactive graphics. Effective object-oriented systems in combination with a graphics kernel- does it mean that the field of computer graphics has now become merely an aspect of the object-oriented world? We do not think so. In spite of interesting individual developments, there are still no sound object-oriented graphics sys- tems available. If it is desired to develop a complex graphics application embed- ded in a window-oriented system then it is still necessary to work with elemen- tary tools. What is to be displayed and interactively modified inside a window must be specified with a set of graphics primitives at a low level, or has to be written with a standardized graphics kernel system such as GKS or PHIGS, i. e., by kernels specified and implemented in a non-object-oriented style. With the terms GKS and PHIGS we enter the world of international graphics standards. GKS and PHIGS constitute systems, not mere collections of graphics primitives.