Object-oriented Graphics: From GKS and PHIGS to Object-Oriented Systems

Author:   Peter Wisskirchen
Publisher:   Springer-Verlag Berlin and Heidelberg GmbH & Co. KG
ISBN:  

9783540528593


Pages:   249
Publication Date:   27 July 1990
Format:   Hardback
Availability:   Out of stock   Availability explained
The supplier is temporarily out of stock of this item. It will be ordered for you on backorder and shipped when it becomes available.

Our Price $158.27 Quantity:  
Add to Cart

Share |

Object-oriented Graphics: From GKS and PHIGS to Object-Oriented Systems


Add your own review!

Overview

This text covers computer graphics programming on the basis of an object-orientated philosophy and uses the object-orientated programming paradigm. It shows how a thorough investigation of object-orientated techniques leads to very powerful and flexible graphics systems, which are in sharp contrast to traditional systems such as GKS and PHIGS. An object-orientated multi-level system GEO++ with full editing capabilities is defined as a basis for detailed examples using the Smalltalk-80 language. New ways of integrating geometric modelling aspects and defining new output primitives into a prefabricated kernel are demonstrated. Prerequisites for adding rules and constraints are discussed, and requirements for a new object-orientated standard are formulated. A significant part of the book is devoted to detailed examples, showing the progress which can be achieved with a consistent object-orientated approach. Rather than reviewing all different object-orientated approaches and prototypical developments, the book builds a bridge between traditional graphics programming systems and the object-orientated approach. It is designed for computer scientists and programmers seeking to become familiar with graphics systems and object-orientated programming.

Full Product Details

Author:   Peter Wisskirchen
Publisher:   Springer-Verlag Berlin and Heidelberg GmbH & Co. KG
Imprint:   Springer-Verlag Berlin and Heidelberg GmbH & Co. K
Weight:   0.545kg
ISBN:  

9783540528593


ISBN 10:   3540528598
Pages:   249
Publication Date:   27 July 1990
Audience:   College/higher education ,  Professional and scholarly ,  Undergraduate ,  Postgraduate, Research & Scholarly
Format:   Hardback
Publisher's Status:   Active
Availability:   Out of stock   Availability explained
The supplier is temporarily out of stock of this item. It will be ordered for you on backorder and shipped when it becomes available.

Table of Contents

1 Introduction.- 1.1 Object-Oriented Languages and Tools.- 1.1.1 Support of Graphics.- 1.2 Guidelines for the Design of a Graphics System.- 1.2.1 Transforming the Mental Model into Programming Code.- 1.2.2 Using the Advantages of the Object-Oriented Approach.- 1.3 Overview.- 1.3.1 What Does the Book Concentrate on?.- 2 Object-Oriented Concepts.- 2.1 Objects and Messages.- 2.2 The Class.- 2.2.1 Implementation Descriptions.- 2.3 Message Passing.- 2.3.1 How Can an Object Call Itself?.- 2.3.2 Additional Mechanisms for Message Passing.- 2.3.3 Polymorphism.- 2.4 Inheritance.- 2.4.1 Hierarchical Inheritance.- 2.4.2 Multiple Inheritance.- 2.5 The Smalltalk-80 Programming Environment.- 2.5.1 Programmers' Support in Smalltalk-80.- 2.5.2 Frequently Used Classes and Methods.- 2.5.3 Messages Understood by All Objects.- 2.5.4 Multiple References, Copy Methods.- 2.6 Summary of the Basic Concepts.- 3 Object-Oriented Interface Architecture.- 3.1 Application Framework as Generic Application.- 3.1.1 Disadvantages of Conventional Toolboxes.- 3.1.2 Modification of an Existing Application.- 3.1.3 The Generic Application.- 3.1.4 GINA - A Generic Interactive Application.- 3.1.5 Generic Applications and Graphics Systems.- 3.2 The Model-View-Controller Triad.- 3.2.1 Separation of the Interface.- 3.2.2 Building up the MVC Triad.- 3.2.3 Predefined Classes.- 3.2.4 Establishing Communication.- 3.2.5 The Example of a Counter.- 4 Smalltalk-80 Graphics Kernel.- 4.1 Output Primitives.- 4.1.1 Generation and Instantiation of Primitives.- 4.1.2 Editing and Inquiry Methods.- 4.1.3 Merge Constraint.- 4.1.4 Examples.- 4.1.5 Derivation of New Primitives.- 4.1.6 Primitive Attributes.- 4.2 Generation and Display of Graphics Objects.- 4.2.1 Posting.- 4.2.2 Graphics Input.- 4.2.3 Interactive Generation of an Output Primitive.- 4.2.4 Limitations of Hierarchical Inheritance.- 4.2.5 Comments.- 5 GKS and Object-Oriented System Design.- 5.1 Goals of Standardization.- 5.2 A Short Review of the Main GKS Features.- 5.2.1 The GKS Layer Model.- 5.2.2 Output Primitives.- 5.2.3 Segments.- 5.2.4 Assignment of Primitive Attributes.- 5.2.5 Conceptual Differences Between Primitives and Segments.- 5.2.6 Graphics Input.- 5.3 The Structure of a GKS Program.- 5.3.1 One-to-One GKS Language Binding for Smalltalk-80.- 5.4 Object-Oriented Modifications.- 5.4.1 Segments as Objects.- 5.4.2 Output Primitives as Objects.- 5.5 Guidelines for an Object-Oriented Kernel.- 5.6 An Extended Layer Model.- 5.6.1 Using Inheritance.- 5.6.2 Communication Between Application and Kernel.- 5.7 Assignment of Attributes.- 5.7.1 Attribute Assignment in GKS and PHIGS.- 5.7.2 Facilities of Object-Oriented Systems.- 5.8 Summary.- 6 Graphics Part Hierarchies.- 6.1 Introduction.- 6.2 Part Hierarchies and Computer Graphics.- 6.2.1 Requirements.- 6.2.2 Criteria for Ideal System Support.- 6.2.3 Combination With Other Semantics.- 6.2.4 Manipulation of Part Hierarchies.- 6.3 MacDraw and Part Hierarchies.- 6.3.1 Main Features.- 6.3.2 Semantics of the Part Hierarchy.- 6.3.3 Generation and Editing of Primitives.- 6.3.4 Discussion.- 7 PHIGS and Part Hierarchies.- 7.1 Drawbacks of the GKS Model.- 7.2 Motivation for an Extended Functionality.- 7.3 PHIGS Components.- 7.3.1 Construction and Editing Structure Networks.- 7.3.2 References to Substructures.- 7.3.3 Posting.- 7.3.4 Assignment of Primitive Attributes.- 7.3.5 Transformations.- 7.3.6 Visibility, Detectability, Highlighting.- 7.3.7 Interaction.- 7.3.8 Centralized Structure Store.- 7.4 Modeling Part Hierarchies in PHIGS.- 8 GEO++.- 8.1 Goals and Motivation.- 8.1.1 Integration in the Extended Layer Model.- 8.1.2 Support for Part Hierarchies.- 8.2 GEO++ Model.- 8.2.1 Parts.- 8.2.2 Building Patterns.- 8.2.3 Construction of Parts and Navigation.- 8.2.4 Attributes.- 8.2.5 Editing.- 8.3 Functional Overview by an Example.- 8.3.1 The Insert Process.- 8.3.2 Parts.- 8.3.3 Navigation.- 8.3.4 Attributes for Primitives, Groups and Parts.- 8.3.5 Set Operations.- 8.3.6 Editing.- 8.3.7 Partial Instantiation, Merge.- 8.3.8 Copy Operation.- 8.3.9 Graphics Input.- 8.3.10 Additional Remarks.- 9 Programming Examples.- 9.1 Office Layout Application Programmed With PHIGS.- 9.1.1 Construction of the Screen Layout.- 9.1.2 Interaction.- 9.2 Office Layout Application in GEO++.- 9.2.1 Construction of the Screen Layout.- 9.2.2 Interaction.- 9.3 Comparison of the PHIGS and GEO++ Solution.- 9.3.1 Filter Handling.- 9.3.2 Picking.- 9.4 Pick Object and Assign Attribute.- 9.4.1 Assigning the Selected Attribute in PHIGS.- 9.4.2 Assigning the Selected Attribute in GEO++.- 9.5 Higher Level Hierarchies.- 9.5.1 Desk_Chair in PHIGS.- 9.5.2 Desk_Chair in GEO++.- 9.5.3 Radio Example.- 9.5.4 On the Analogy Between PHIGS and GEO++.- 9.5.5 Redesigning the Building Blocks in PHIGS and GEO++.- 9.5.6 Controlling the Radio.- 9.6 Interactive Editing of a PolyLine.- 9.7 Examination and Comments.- 9.7.1 Overall Structure of PHIGS and GEO++.- 9.7.2 Dynamics.- 9.7.3 Type Checking.- 10 Using Inheritance.- 10.1 Inheritance in GEO++.- 10.2 Alternative Naming.- 10.2.1 Index and Route.- 10.2.2 Advantages of Inheritance.- 10.3 Construction of a Part Hierarchy with Predefined Slots.- 10.3.1 Organization and Protocol.- 10.3.2 The Subclasses FrontPanel, Switchboard, Button.- 10.3.3 Methods for the Parts.- 10.4 Using Call-Backs.- 10.5 Accessing Parts.- 10.5.1 Censored Messages.- 11 Prototypes and Delegation.- 11.1 What are Prototypes?.- 11.2 Relevance for Computer Graphics.- 11.2.1 Why Does GEO++ Work?.- 11.3 A Prototype Model for GEO++.- 11.3.1 Prototype, Descendant, Copy.- 12 GEO++ in Smalltalk-80.- 12.1 Internal Representation of a Group.- 12.1.1 The Acyclic Graph of Contents.- 12.2 Implementation of Parts.- 12.2.1 Comparison with PHIGS.- 12.2.2 Realization of the Internal Representation.- 12.2.3 GEO++ Allows Parallel Posting.- 13 Additional Concepts and Tools.- 13.1 Additional Semantical Concepts.- 13.2 Connectivity.- 13.3 Graphics Constraints.- 13.3.1 What are Constraints?.- 13.3.2 Geometrical Relations Between Visual Objects.- 13.4 Adding Semantics to a Graphics Kernel.- 13.5 Graphics and Hybrid Knowledge Representation.- 13.5.1 Semantic Networks.- 13.6 Computer Graphics and Hybrid Systems.- 13.6.1 Is Computer Graphics an Appropriate Candidate?.- 14 Towards an Object-Oriented Standard?.- 14.1 Chances for an Object-Oriented New API.- 14.1.1 Historical Remarks.- 14.1.2 Why do we Need an Object-Oriented Standard?.- 14.1.3 General Advances - Short Summary.- 14.2 Requirements and Problems.- 14.3 Guidelines.- 14.3.1 Language Independence.- 14.3.2 Different Types of Inheritance in the Extended Layer Model.- 14.3.3 Part Hierarchies and Constraints.- 14.3.4 How can Portability be Achieved?.- 14.3.5 Resume.- References.

Reviews

Author Information

Tab Content 6

Author Website:  

Customer Reviews

Recent Reviews

No review item found!

Add your own review!

Countries Available

All regions
Latest Reading Guide

MRG2025CC

 

Shopping Cart
Your cart is empty
Shopping cart
Mailing List