Xerox University Microfilms
Total Page:16
File Type:pdf, Size:1020Kb
INFORMATION TO USERS This material was produced from a microfilm copy of the original document. While the most advanced technological means to photograph and reproduce this document have been used, the quality is heavily dependent upon the quality of the original submitted. The following explanation of techniques is provided to help you understand markings or patterns which may appear on this reproduction. 1.The sign or "target" for pages apparently lacking from the document photographed is "Missing Page(s}". If it was possible to obtain the missing page(s) or section, they are spliced into the film along with adjacent pages, This may have necessitated cutting thru an image and duplicating adjacent pages to insure you complete continuity. 2. When an image on the film is obliterated with a targe round black mark, it is an indication that the photographer suspected that the copy may have moved during exposure and thus cause a blurred image. You will find a good image of the page in the adjacent frame. 3. When a map, drawing or chart, etc., was part of the material being photographed the photographer followed a definite method in "sectioning" the material. It is customary to begin photoing at the upper left hand corner of a large sheet and to continue photoing from left to right in equal sections with a small overlap. If necessary, sectioning is continued again — beginning below the first row and continuing on until complete. 4. The majority of users indicate that the textual content is of greatest value, however, a somewhat higher quality reproduction could be made from "photographs" if essential to the understanding of the dissertation. Silver prints of "photographs" may be ordered at additional charge by writing the Order Department, giving the catalog number, title, author and specific pages you wish reproduced. 5. PLEASE NOTE: Some pages may have indistinct print. Filmed as received. Xerox University Microfilms 300 North Zeeb Road Ann Arbor, Michigan 48106 t I 73-18,884 DE FANTI, Thomas Albert, 1948- THE GRAPHICS SYMBIOSIS SYSTM-AN INTERACTIVE MINI - CCMPUTER ANIMATION GRAPHICS LANGUAGE DESIGNED FOR HABITABILITY AND EXTENSIBILITY. The Ohio State University, Ph.D., 1973 Computer Science University Microfilms, A XJEROX Company, Ann Arbor, Michigan © 1973 THOMAS ALBERT DE FANTI ALL RIGHTS RESERVED THE GRAPHICS SYMBIOSIS SYSTEM— AH INTERACTIVE MINI-COMPUTER ANIMATION GRAPHICS LANGUAGE DESIGNED FOR.HABITABILITY AND EXTENSIBILITY DISSERTATION Presented in Partial Fulfillment of the Requirements for the Degree Doctor of Philosophy in the Graduate School of The Ohio State University By Thomas Albert De Fanti, B.A., M.S. ******* The Ohio State University 1973 Approved by Adviser Department of Computer and Information Science ACKNOWLEDGEMENTS Professors Lee J. White, Larry H. Reeker, Balakrishnan Chandrasekaran and Charles A. Csuri served as advisers for the dissertation and constituted the reading committee. Much of the motivation to thoroughly implement the system was provided directly or indirectly by these gentlemen. Professor White deserves special thanks for reading and re-reading the dissertation as often as he did. Professor Charles Csuri provided direction to the project and conscientiously acted as system resident artist to create data and critically evaluate the habitability of the system with respect to his colleagues both in Art and Education. Manfred Knemeyer was responsible for choosing the equipment, maintaining the PDP-11 Monitor, and writing various I/O drivers. He also wrote the matrix multiplication routines and the basic algorithms for rotation and segmentation, and was often called upon for insights into the problems and solutions faced while developing the system. He was responsible for the algorithms behind shading and linear interpolation as they now exist. Gerard Moersdorf is to be credited with the implementation I i in of "TEXT", the debugging technique, and with rewriting all the disk-oriented code. He recently developed the method for swapping assembler modules. Gerry helped fill in the code and thus bring the system to fruition much faster than could have been done otherwise. Some of the system documentation is due to him, as well as most of the efforts to make the system compatible with other similar systems. Gerry has written most of the system utility macros as well. Mark Gillenson is the system's sophisticated user. Pursuing his own project in Artificial Intelligence and Pattern Recognition, he has coded the shading algorithms, and authored the "PILL", "WARP", and "INTERP" commands. Much of the system's visual quality is due to Mark's work and he is to be credited with many months of work that made the system usable that much sooner. The implementation of the Graphics Symbiosis System has been a group effort by the members of the Computer Graphics Research Group at The Ohio State University, supported in part by Rational Science Foundation Grant GJ-204. All photographs are reproduced with the permission of The Chio State University Research Foundation, VITA 196 9......... B.A., Queens College, New York City 1969-197 0 .... University Fellow, The Ohio State University, Columbus Ohio 197 0 ......... M.S., The Ohio State University, Columbus, Chio 1970-197 1.... Research Associate responsible for the PDP-10 System of the Department of Computer and Information Science, The Ohio State University, Columbus, Chio 1971-197 2 .... University Fellow, The Ohio State University, Columbus, Chio 1972-197 3 .... Research Associate, The Computer Graphics Research Group, The Ohio State University, Columbus, Ohio PUBLICATIONS "Some Considerations for Providing Extensibility and Habitability in a Mini-computer Graphics System," Proceedings of the Eleventh Annual UAIDE Meeting, October FIELDS OF STUDY Undergraduate... Mathematics: Professor L. Mansfield Romance Languages: Professor R. Picken Graduate... Programming language Theory: Professor L. White and Professor L. Reeker Computational Linguistics: Professor L. Reeker Automata Theory: Professor L. Reeker v TABLE OP CONTENTS Page ACKNOWLEDGEMENTS..................................... ii VITA..................................................iv LIST OP FIGURES..................................... vii PRONTISPIECE....................................... viii INTRODUCTION.......................................... 1 Chapter > I. HABITABILITY IN A GRAPHICS SYSTEM........... 24 II. EXTENSIBILTIY IN A GRAPHICS SYSTEM......... 66 III. IMPLEMENTATION DETAILS.................. 93 IV. THE PUTURE............................... 145 V. DISCUSSION OP THE IMPACT ON COMPUTER GRAPHICS AND SOCIETY................ 162 REFERENCES......................................... 169 APPENDIX A. SYNTAX OP THE LANGUAGE................ 172 B. SYSTEM CONFIGURATION........................... 192 C. PROGRAM EXAMPLES................. 193 v? LIST OF FIGURES Frontispiece. ....... viii Figure 1— Environment......... 30 Figure 2— Devices............. 31 Figure 3— Scenario.................................. 49 Figure A— Setintensity................. 57 Figure 5— Text Example I .......................... ..60 Figure 6— Text Example II...........................61 Figure 7— Text Example III.......... 62 Figure 8— Unnamed Macro Example.................... 76 Figure 9— ON Conditions Table..................... 109 Figure 10— Leaf and Node Information.............. 113 Figure 11— Data Structure..........................117 Figure 12— Motion and Time Tables................. 124 Figure 13— Pathmov Example 1.......................127 Figure 14— Pathmov Example II..................... 128 Figure 15— Names Table.............................131 Figure 16— "FILL" Example..........................148 Figure 17— Color Wheel.............................152 Figure 18— Hidden Surface Example................. 156 Figure 19— "Origami1* Fish..........................158 v 11 . r - c l v c ^ & QyTTU y U l frontispiece Introduction Much has been learned about higher-level programming languages in the eighteen years since FORTRAN has been with us. Both theory and usage have shown that to make any implementable computer system adaptable to users and their tasks, a considerable effort must be made in the planning scages to provide for natural user interface (habitability) and to include methods for easily increasing the power of the language in terms of itself (extensibility). These design features are particularly important in a general purpose animation graphics syscem for two reasons: first, the users of a graphics system are typically not programmers or even scientists; and second, it is extremely difficult to forsee the future requirements of computer graphics. In discussing the concepts of habitability and extensibility in a graphics system, it is worthwhile to note that most present day systems are not very good examples. FORTRAN is neither particularly habitable nor extensible— yet most graphics applications use assembler routines added to FORTRAN. The majority of the remaining systems use assembler routines stand-alone in an interpretive mode to draw lines, points, arcs, and to display text. The general simplicity of the stand-alone approaches preclude extensibility although most have made some attempts to be more habitable, with good mnemonics for 1 2 the commands, for example. However, since any conceivable graphics system must either use a host language or have its own language, the advantages and disadvantages of both approaches must be considered. FORTRAN is the most common graphics host language for several reasons.