Integrating solid image capability into a general purpose calligraphic graphics package

  • Authors:
  • G. Laib;R. Puk;G. Stowell

  • Affiliations:
  • -;-;-

  • Venue:
  • SIGGRAPH '80 Proceedings of the 7th annual conference on Computer graphics and interactive techniques
  • Year:
  • 1980

Quantified Score

Hi-index 0.00

Visualization

Abstract

Raster scanned graphics terminals provide several features not found in standard line drawing displays. Among them are area fill and an extensive color palette. Hardware support for such functions is becoming cost effective and available in a variety of forms. What is now needed is high level, device independent software that assists in the generation of and interaction with these terminals. To accomplish this, a project has been undertaken jointly by Sandia Laboratories, Purdue University, and MEGATEK Corporation to integrate solid image capabilities into the Graphics Compatibility System, GCS. GCS is a widely used, general purpose calligraphic graphics package. Due to the similarity of the GCS model to that of the GSPC Core System, GCS provides a timely test bed for solid image extensions to a line drawing package. This paper will summarize the capabilities being implemented, the method and motivation behind each function, and suggestions for further work. The heart of the extensions is a hidden surface algorithm similar to Myers' approach which combines the simplicity of a Z buffer with the efficiency of a Watkin's algorithm. Facilities will be provided for hidden line removal as well as hidden surface processing in order to satisfy the basic GCS design goal of device independence. In this way, random vector terminals as well as raster devices will benefit. If a user does not require hidden object processing then very little additional overhead will remain in those routines which have been called. Hidden surface processing may also be intermixed with wire frame drawings and text. Two remaining issues are the user interface for 3D object definition and the specification of lighting models. Since the Myers algorithm requires N sided polygons as input, a basic call has been provided for such definitions. Higher level constructs, called “shells” and “faces”, which facilitate creation of complex 3D bodies, have been implemented. The specification of lighting models is an area of considerable debate. It has been concluded that a choice of a few common models will be made available to the user. These include interpolated and noninterpolated shading (smooth and flat). Objects may be color-shaded or black-and-white. A hook is provided for user definition of more exotic lighting models.