
Scholars' Mine Masters Theses Student Theses and Dissertations Fall 1987 A proposed C language binding for the Graphical Kernel System-3D Mark Gerard Bolten Follow this and additional works at: https://scholarsmine.mst.edu/masters_theses Part of the Computer Sciences Commons Department: Recommended Citation Bolten, Mark Gerard, "A proposed C language binding for the Graphical Kernel System-3D" (1987). Masters Theses. 625. https://scholarsmine.mst.edu/masters_theses/625 This thesis is brought to you by Scholars' Mine, a service of the Missouri S&T Library and Learning Resources. This work is protected by U. S. Copyright Law. Unauthorized use including reproduction for redistribution requires the permission of the copyright holder. For more information, please contact [email protected]. A PROPOSED C LANGUAGE BINDING FOR THE GRAPHICAL KERNEL SYSTEM-3D BY MARK GERARD BOLTEN, 1960 - A THESIS Presented to the Faculty of the Graduate School of the UNIVERSITY OF MISSOURI - ROLLA In Partial Fulfillment of the Requirements for the Degree MASTER OF SCIENCE in COMPUTER SCIENCE 1987 Advisor 11 ABSTRACT This thesis introduces a proposed C language binding definition for the International Standards Organization's draft international standard of the Graphical Kernel System-3D. This work augments the earlier C language binding of the two dimensional version of the Graphical Kernel System commonly known as GKS. The proposed function interface will provide a basis for, if not a final, C language binding for the three dimensional version of the Graphical Kernel System. iii ACKNOWLEDGEMENT The author wishes to thank the members of the faculty of the Department of Computer Science at the University of Missouri-Rolla. Their dedication to science and education has produced graduates who are confident of their abilities to approach and solve the problems which will present themselves in industry. It is to those men who have trained, educated, and counselled me that I am professionally indebted to. In particular, I thank the members of the thesis committee which has guided me in my pursuit of the Master of Science in Computer Science: Dr. C. Y. Ho, the thesis committee chairman, and Dr. Arlan DeKock, both of the Department of Computer Science; and Dr. Raymond Kluczny of the Department of Engineering Management. Finally, the author wishes to thank his wife, Mary-Claire, for her understanding and encouragement. iv TABLE OF CONTENTS Page ABSTRACT............................................... ii ACKNOWLEDGEMENT........................................ iii TABLE OF CONTENTS LIST OF TABLES......................................... vii I. INTRODUCTION................................. 1 A. THE EVOLUTION OF COMPUTER GRAPHICS.... 1 B. COMPUTER GRAPHICS STANDARDS............ 4 C. THE GRAPHICAL KERNEL SYSTEM............ 5 II. REVIEW OF LITERATURE........................ 9 A. COMPUTER GRAPHICS...................... 9 B. ORIGINS OF THE GRAPHICAL KERNEL SYSTEM. 10 C. THE GRAPHICAL KERNEL SYSTEM........... 12 D. GKS LANGUAGE BINDINGS.................. 20 III. RESULTS...................................... 21 A. C/GKS-3D NOTATIONAL CONVENTIONS....... 21 B. C/GKS-3D SUBROUTINE DEFINITIONS...... 2 3 1. GKS-3D Control Functions.......... 23 2. GKS-3D Output Functions........... 2 4 3. GKS-3D Output Attribute Functions. 25 4. GKS-3D Transformation Functions... 26 5. GKS-3D Segment Functions......... 27 6. GKS-3D Input Functions............ 2 8 7. GKS-3D Metafile Functions........ 2 9 8. GKS-3D Inquiry Functions.......... 29 9. GKS-3D Utility Functions......... 36 10. GKS-3D Error Functions............ 37 V IV. DISCUSSION............................... 38 A. SCOPE AND FIELD OF APPLICATION.......... 38 B. PRINCIPLES AND FEATURES OF THIS BINDING 39 1. Mapping of GKS Function Names.... 39 2. Parameters........................ 39 3. Error Handling.................... 40 4. Non-Standard C Compiler Support... 41 5. Functions versus Macros.......... 41 6. Character Strings................. 42 7. Function Identifiers.............. 42 8. Registration...................... 42 9. Generalized Drawing Primitives.... 43 10. Escapes........................... 43 11. Header Files...................... 44 12. Error Codes....................... 44 13. Return Values..................... 45 14. Buffer Management................. 45 a. Fixed Structures............ 45 b. Variable Structures......... 46 c. List of Objects.............. 46 V. CONCLUSION.................................. 48 BIBLIOGRAPHY........................................... 50 VITA................................................... 54 APPENDICES............................................. 55 A. ABBREVIATIONS USED IN FUNCTION NAMES........ 55 B. ABBREVIATIONS USED IN DATA TYPE NAMES....... 63 C. DATA TYPES USED IN GKS-3D FUNCTIONS......... 70 D. C/GKS SHORT FUNCTION IDENTIFIERS............ 83 vi E. ORDERED TABLES OF GKS 3D AND 2D FUNCTIONS... 110 F. GKS 3D AND 2D FUNCTIONS ORDERED BY LEVEL--- 140 G. GKS ERROR CODES............................. 162 H. LINE AND MARKER SYMBOLIC CONSTANTS.......... 182 Vll LIST OF TABLES Table Page 1. Workstation Types................................ 8 2. GKS Functional Categories........................ 14 3. GKS Logical Input Classes........................ 17 4. Abbreviations Used in GKS-3D Function Names...... 55 5. Abbreviations Used in GKS-2D Function Names...... 5 6 6. Abbreviations Used in GKS Data Type Names....... 63 7. Short Function Identifiers for GKS-3D Control Functions......................................... 8 3 8. Short Function Identifiers for GKS-3D Output Functions......................................... 84 9. Short Function Identifiers for GKS-3D Output Attributes Functions............................. 8 5 10. Short Function Identifiers for GKS-3D Transfor­ mation Functions 8 6 11. Short Function Identifiers for GKS-3D Segment Functions......................................... 87 12. Short Function Identifiers for GKS-3D Input Functions......................................... 88 13. Short Function Identifiers for GKS-3D Metafile Functions......................................... 89 14. Short Function Identifiers for GKS-3D Inquiry Functions......................................... 90 15. Short Function Identifiers for GKS-3D Utility Functions......................................... 92 16. Short Function Identifiers for GKS-3D Error Functions......................................... 9 3 17. Short Function Identifiers for GKS-2D Control Functions......................................... 94 18. Short Function Identifiers for GKS-2D Output Functions......................................... 9 5 19. Short Function Identifiers for GKS-2D Output Attributes Functions............................. 9 6 viii 20 . Short Function Identifiers for GKS-2D Transfor­ mation Functions.................................. 98 21. Short Function Identifiers for GKS-2D Segment Functions......................................... 99 22. Short Function Identifiers for GKS-2D Input Functions......................................... 100 23. Short Function Identifiers for GKS-2D Metafile Functions......................................... 102 24. Short Function Identifiers for GKS-2D Inquiry Functions......................................... 103 25. Short Function Identifiers for GKS-2D Utility Functions......................................... 108 26. Short Function Identifiers for GKS-2D Error Functions......................................... 109 27. GKS-3D Function Names Ordered by Bound Name..... 110 28. GKS-2D Function Names Ordered by Bound Name..... 115 29. GKS-3D Function Names Ordered by Function Name... 125 30. GKS-2D Function Names Ordered by Function Names.. 130 31. GKS-3D Level 0a Functions......... 140 32. GKS -3D Level 0b Functions........................ 143 33. GKS -3D Level 0c Functions........................ 144 34. GKS -3D Level la Functions........................ 145 35. GKS-3D Level lb Functions........................ 14 6 36. GKS -3D Level 2a Functions........................ 147 37. GKS -2D Level 0a Functions........................ 148 38. GKS-2D Level ob Functions........................ 154 39. GKS-2D Level 0c Functions........................ 156 40. GKS -2D Level la Functions........................ 157 41. GKS-2D Level lb Functions........................ 159 42. GKS-2D Level lc Functions........................ 160 43. GKS-2D Level 2a Functions........................ 161 ix 44. GKS Non-Error Condition Error Code............... 162 45. GKS State Error Codes............................. 163 46. GKS Workstation Error Codes....................... 164 47. GKS Transformation Error Codes................... 166 48. GKS Output Attributes Error Codes................ 167 49. GKS Output Primitives Error Codes................ 17 0 50. GKS Segment Error Codes........................... 171 51. GKS Input Error Codes............................. 172 52. GKS Metafile Error Codes.......................... 173 53. GKS Escape Error Codes............................ 174 54. GKS Miscellaneous Error Codes..................... 175 55. GKS System Error Codes............................ 17 6 56. GKS-3D Transformation Error Codes................ 177 57. GKS-3D Output Attributes Error Codes............. 178 58. GKS -3D Output Primitives Error Codes............. 179 59. GKS C Language Dependent Error Codes............. 180 60. GKS Reserved Error Codes......................... 181 61. Line and Marker Symbolic Constants............... 182 1 I. INTRODUCTION The Graphical Kernel System (GKS) is
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages192 Page
-
File Size-