Interacting with Surfaces in Four Dimensions Using Computer Graphics

Interacting with Surfaces in Four Dimensions Using Computer Graphics

Interacting With Surfaces In Four Dimensions Using Computer Graphics TR93-011 March, 1993 David Banks Department of Computer Science University of North Carolina at Chapel Hill Chapel Hill, NC 27599-3175 UNO is an Equal Opportunity/Affirmative Action Institution. Interacting With Surfaces In Four Dimensions Using Computer Graphics A dissertation submitted to the faculty of the University ofNonh Carolina in partial fulfillment of lhe requirements for the degree of Doctor of Philosophy in lhe Department of Computer Science. David Banks Chapel Hill, 1993 Approved by: / ~ . '>X~C0. 4 /~~~~ David v. Beard ©1993 David Cotton Banks ALL RIGHTS RESERVED ii DAVID CorroN BANKs. Interacting With Surfaces in Four Dimensions Using Computer Graphics (Under the direction of STEPHEN M. PIZER.) ABSTRACT High-speed, high-quality computer graphics enables a user to interactively manipulate surfaces in four dimensions and see them on a computer screen. Surfaces in 4-space exhibit properties that are prohibited in 3-space. For example, non-orientable surfaces may be free of self-intersections in 4-space. Can a user actually make sense of the shapes of surfaces in a larger-dimensional space than the familiar 3D world? Experiment shows he can. A prototype system called Fourphront, running on the graphics engine Pixel-Planes 5 (developed at UNC-Chapel Hill) allows the user to perform interactive algorithms in order to determine some of the properties of a surface in 4-space. This dissertation describes solutions to several problems associated with manipulating surfaces in 4-space. It shows how the user in 3-space can control a surface in 4-space in an intuitive way. It describes how to extend the common illumination models to large numbers of dimensions. And it presents visualization techniques for conveying 4D depth information, for calculating intersections, and for calculating silhouettes. iii Acknowledgements Many minds, many hands, and many pockets contributed to this research. My sincerest thanks go to Brice Tebbs and Greg Turk for teaching me about computer graphics and showing me how to program Pixel-Planes; Howard Good (callback functions, one-sided polygon picking), Marc Olano (conditional executes, parallel picking), David Ellsworth (animated cursor, parallel picking), and Andrew Bell (multipass transparency) for contributing code to improve the Fourphront system; Trey Greer ("Front"), Howard Good ("Pphront"), and Vicki Interrante ("Xfront") for developing the 3D progenitors of Fourphront; David Beard, Gary Bishop, Raben Bryant, Steve Pizer, and Jim Stasheff for serving on my committee; Oliver Steele for helping to create 4D datasets; Nelson Max for suggesting that intersection curves be highlighted; Trey Greer for teaching me how to write an X-window interface; Ross Whitaker for suggesting the use of the shape operator in determining fixed-width silhouettes; David Eberly for solving the differential equations for constant curvature in 4-space; Raben Bryant for suggesting I use Morse Theory and investigate quatemion rotations; Russell Taylor for helping to pon Fourphront to run with the head-mounted display; David Harrison for teaching me how to edit videotape; Howard Lander and Data General Corporation for contract support; Myron Banks and Warren Herron for their generosity; Digital Equipment Corponation for scholarship funding; Terry Yoo and the NSF (Gang of Five) for travel and production support; Elizabeth Banks for her tremendous love, patience, and encouragement. iv TABLE OF CONTENTS LIST OF ILLUSTRATIONS ............................................................................................... viii LIST OF PLATES ..............................................................................................................xi i Overview .......................................................................................................................... 1 1.1 Goal of the Research ......................................................................................... 1 1.2 Why Surfaces in 4-space are Interesting ............................................................... 3 1.2.1 About Large Dimensions ...................................................................... 4 1.2.2 About 4-space ..................................................................................... 5 1.2.3 About Surfaces .................................................................................... 6 1.3 Related Work ..................................................................................................... 7 1.3.1 Compu1er Gr aphics ............................................................................ 7 1.3.2 Mathematics ...................................................................................... 17 1.3.3 Pedagogy ......................................................................................... 18 2 The Basics of Graphics In 4-space .................................................................................... 21 2.1 How to Map Input From User Space to Object Space ...................................... 23 2.1.1 Mapping 2D Input to 3D Transformations ............................................ 24 2.1.2 Mapping 3D Input to 4D Transformations ............................................ 32 2.1.3 Simple Approximations of Rotation Matrices ...................................... :.'9 2.2 Illumination ...................................................................................................... 43 2.2.1 Review of Illuminating Surfaces in 3-space ........................................... 43 2.2.2 Illumination Independent of Dimension ................................................ 44 2.2.3 Why it Mal1ers ................................................................................... 45 2.3 Depth Cues ..................................................................................................... 49 2.3.1 Occlusion and Shadows ...................................................................... 49 2.3.2 Texture and Color .............................................................................. 49 2.3.3 Focus and Transparency ..................................................................... 3:1 2.3.4 Perspective and Parallax .................................................................... 3:1 2.4 Projecting From Object Space to Screen Space ................................................ 55 2.4.1 Stereopsis and Parallax ..................................................................... Sl 2.4.2 Mixing Rotations, Projections, and Translations .................................... oo v 3 Visualization Tools ........................................................................................................... 64 3.1 Ribboning ....................................................................................................... 64 3.2 Clipping .......................................................................................................... fJ1 3.3 Transparency .................................................................................................... 00 3.4 Paint ................................................................................................................ 78 3.5 Silhouettes ....................................................................................................... ffi 3.5.1 Varying-width Silhouette Curves ......................................................... ffi 3.5.2 Fixed-width Silhouette Curves ............................................................ 88 3.6 Intersections ..................................................................................................... g"? 3.6.1 Varying-width Intersection Curves ....................................................... 93 3.6.2 Fixed-width Intersection Curves .......................................................... ro 4 Interactive AlgorHhms ..................................................................................................... 100 4.1 Intersections in 4-space .................................................................................... 100 4.2 OrientabiiHy ....................................................................................................116 4.3 Genus ............................................................................................................124 5 Observations of Interactive Sessions .............................................................................. 131 5.1 Intersections ....................................................................................................131 5.2 OrientabiiHy ....................................................................................................132 5.3 Genus ...........................................................................................................134 5.3.1 Recognizing the Shape of a Surface ................................................. 134 5.3.2 Applying Morse Theory to a Surface ................................................. 135 5.3.3 Finding Cmical Points at Pinch Points ................................................. 137 5.4 Links and Knots ............................................................................................... 138 5.4.1 Knotted Torus ..................................................................................138 5.4.2 Linked Spheres ...............................................................................138 5.4.3 Knotted Sphere .............................................................................

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    190 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us