[comp.graphics] 4D objects: Summary of responses

ola@duke.cs.duke.edu (Owen L. Astrachan) (02/02/91)

I requested information about graphing 4D objects a while ago;  many
thanks to those that responded. I was quite pleased with the quality of
the responses and they were very useful.  I'm enclosing a summary of the
responses for those interested.

*********************  on graphing 4D objects ********************


From: andreess@mrlaxs.mrl.uiuc.edu (Marc Andreessen)

Well, I've done it; Thomas Banchoff at Brown has written a book about
it (Beyond the Third Dimension; Scientific American Press); Dewdney's
talked about it in Scientific American (that was a while back); it is
in general a fairly active area of research for CS/math/graphics
interdisciplinary types of people (for instance, UIUC Math Prof George
Francis).

I suggest for reference the Scientific American article (have no idea when
it was from, but in the middle 80's, I think), and Banchoff's book.
Those ought to give enough basic information (4D rotations, equations
for hypercube/sphere) to get up to speed in a short time, with a good
graphics computer.

What I've done is used a general method (on the IBM RS/6000) of integrating
3D (provided through the SGI-compatible GL) and interactive control (via
sliders, toggles, etc from X Windows and Motif), and adapt the program for
hypercube, hypersphere, some Klein-bottle-type surfaces (eg Francis'
Etruscan Venus) and even datasets deriving from computer simulations of
phonon scattering.

---------------------------------------------------------------

From: T Marc Olano <olano@cs.unc.edu>

There's been some work by George Francis, Donna Cox, and Ray Idazak at the
National Center for Supercomputing Applications at the University of Illinois
with some 4D Klein bottles.  George is a topologist, Donna an artist, and Ray
was the programmer.  It was all done on a Silicon Graphics machine about
four years ago.  They produced an animation showing deformations within the
"Romboy Homotopy" from Steiner's Roman surface to Werner Boy's surface.

Ray is at NCSC here in the triangle now (rayi@ncsc.org).  George and Donna
are both still at NCSA (gfrancis@ncsa.uiuc.edu and cox@ncsa.uiuc.edu) except
Donna is usually very busy.  The paper I have a copy of is

Donna Cox, "Using the Supercomputer to Visualize Higher Dimensions: An
Artist's Contribution to Scientific Visualization", Leonardo 1988 vol 21
no 3, pp 233-242

which is not very big on technical details (Leonardo is an art journal after
all).  Possibly useful references from this article (I haven't seen them):

George Francis, "Mathematical Graphics in Transition: Freehand and Computer",
p 2 of a technical report presented at the conference on Computer Geometry,
Tektronix Labs, Beaverton, Oregon, 14 June 1985

George Francis, _Topological Picturebook_, New York, Springer Verlag, 1987

-------------------------------------------------------------------------

From: Paul Crowley <aipdc@castle.edinburgh.ac.uk>

I sent you source code for a program which generates graphic 4d images
without any explanation as to what it is or how it works.  Basically,
the idea is this.  The theory behind all perspective drawings is that
the screen is like a window onto an image.  If we imagine some image
behind the screen and an eye in front, then each point in the 3d image
corresponds to the point on the screen that lies on the line between the
eye and the point in the 3d image.

Now imagine a 3d screen.  Shapes in a 4d image can be "drawn" on the 3d
screen by an exactly analogous process and it is not hard to show that
in the 4d->3d case as in the 3d->2d case, the corresponding point is
found by dividing by the depth.

The usual wireframe image of a tessaract as one cube inside another may
be considered a perspective drawing of a tessaract, in which the inner
cube is smaller because it is further away, just like a drawing of a
cube which looks like this:

+---------+
| \     / |
|  +---+  |
|  |   |  |
|  +---+  |
| /     \ |
+---------+


The program is made up of various parts:

* A function to read a description file into an array of vertices and an
array of edges
* A toolkit of rotation matrix manipulation functions
* A routine which applies a rotation to the array of vertices in 4d
space and folds them first into 3d and then into 2d, storing the results
in another array
* Routines to take the other array and display it on either an
X-terminal or a Tektronic terminal, depending on whether X or TEK is
#defined at compile time (ignore the routines marked "BBC" unless access
to BBC Micros being used as terminals is much easier for you than access
to either of the above, in which case mail me)

Now at the moment the program is set up to spin the shape randomly,
which is pretty but makes little sense.  When I get access to a graphics
terminal I'll modify it to do something I can explain and send you the
diff file.

--------------------------------------------

From: beshers@division.cs.columbia.edu (Clifford Beshers)

Sure has been done.  Here's a few entries from the bibliography
of my Graphics Interface '88 paper.  I would recommend the Noll
article.  If you can do TeX, I can send you the source for my
paper, which might also help some.

@Inproceedings{Beshers88,
  author =      "Beshers, Clifford and Feiner, Steven",
  title =       "Real-time 4{D} Animation on a 3{D} Graphics Workstation",
  booktitle =     "Proceedings of Graphics Interface",
  year =        "1988",
  pages =    	"1-7",
  month =    	"June",
  year =        "1988",
  OPTnote =     ""
}


@Article{Feiner82,
  author =      "Feiner, Steven and Salesin, David and Banchoff, Thomas",
  title =       "Dial:  {A} Diagrammatic Animation Language",
  journal =     "IEEE Computer Graphics and Applications",
  year =        "1982",
  OPTvolume =   "",
  OPTnumber =   "",
  pages =    "43-54",
  month =    "September",
  OPTnote =     ""
}


@Article{Carey87,
  author =      "Scott A. Carey and Robert P. Burton and Douglas M. Campbell",
  title =       "Shades of a Higher Dimension",
  journal =     "Computer Graphics World",
  year =        "1987",
  OPTvolume =   "",
  OPTnumber =   "",
  pages =    "93-94",
  month =    "October",
  OPTnote =     ""
}


@Inproceedings{Blinn78,
  author =      "Blinn, James F. and Newell, Martin E.",
  title =       "Clipping Using Homogeneous Coordinates",
  booktitle =     "SIGGRAPH '78 Proceedings, published as Computer Graphics",
  year =        "1978",
  volume =   "12",
  number =   "3",
  pages =    "245-251",
  month =    "August",
  OPTnote =     ""
}



@Article{Clark82,
  author =      "Clark, James H.",
  title =       "The Geometry Engine: {A} {VLSI} Geometry System for Graphics",
  journal =     "Computer Graphics",
  year =        "1982",
  volume =   "16",
  number =   "3",
  pages =    "127-133",
  month =    "July",
  OPTnote =     ""
}


@Inproceedings{Banchoff78,
  author =      "Banchoff, Thomas F.",
  title =       "Computer Animation and the Geometry of Surfaces in 3- and 4-Space",
  booktitle =     "Proceedings of the International Congress of Mathematicians",
  year =        "1978",
  volume =   "2",
  OPTnumber =   "",
  pages =    "1005-1013",
  OPTmonth =    "",
  OPTnote =     ""
}

@Misc{Banchoff87,
  author =      "Banchoff, Thomas F.",
  title =       "Using Computer Graphics to Explore the Generation of Surfaces in Four Dimensional Space",
  howpublished =     "Discovering the Fourth Dimension, published by Prime Computer, Inc.",
  year =        "1987"
}

@Article{Dewdney86,
  author =      "Dewdney, A.K.",
  title =       "Computer Recreations",
  journal =     "Scientific American",
  year =        "1986",
  OPTvolume =   "",
  OPTnumber =   "",
  pages =    "14-23",
  month =    "April",
  OPTnote =     ""
}

@Article{Noll67,
  author =      "Noll, Michael A.",
  title =       "A Computer Technique for Displaying n-Dimensional Hyperobjects",
  journal =     "Communications of the ACM",
  year =        "1967",
  volume =   "10",
  number =   "8",
  pages =    "469-473",
  month =    "August",
  OPTnote =     ""
}


@Book{Gardner77,
  author =      "Gardner, Martin",
  title =       "Mathematical Carnival, Chapter 4: Hypercubes",
  publisher =   "Vintage Books",
  year =        "1977",
  OPTeditor =   "",
  OPTvolume =   "",
  OPTseries =   "",
  address =  "New York",
  OPTedition =  "",
  OPTmonth =    "",
  OPTnote =     ""
}

@Book{Sommerville58,
  author =      "Sommerville, D.M.Y.",
  title =       "An Introduction to the Geometry of N Dimensions",
  publisher =   "Dover Publications, Inc.",
  year =        "1958",
  OPTeditor =   "",
  OPTvolume =   "",
  OPTseries =   "",
  address =  "New York",
  edition =  "1",
  OPTmonth =    "",
  OPTnote =     ""
}

@Book{Coxeter69,
  author =      "Coxeter, H.S.M.",
  title =       "Introduction to Geometry",
  publisher =   "John Wiley and Sons, Inc.",
  year =        "1969",
  OPTeditor =   "",
  OPTvolume =   "",
  OPTseries =   "",
  address =  "New York",
  edition =  "2",
  OPTmonth =    "",
  OPTnote =     ""
}

@Book{Abbott52,
  author =      "Abbott, Edwin A.",
  title =       "Flatland",
  publisher =   "Dover Publications, Inc.",
  year =        "1952",
  OPTeditor =   "",
  OPTvolume =   "",
  OPTseries =   "",
  address =  "New York",
  OPTedition =  "",
  OPTmonth =    "",
  OPTnote =     ""
}

-------------------------------------------------------------

From: Robert Kelley <rjk@sequent.com>

Dr. Thomas Banchoff at Brown University likes this sort of thing.

Prime Computer used to distribute a paper by him about it, maybe
they still do.

-------------------------------------------------------------

From: Mike Brindley <brindley@ECE.ORST.EDU>

A.K. Dewdney writes a column for Scientific American called 'Computer
Recreations'.  A few years ago ('86? '87?) one of those columns talked
about displaying 3-D slices of a hypercube.  This would be a good 
place for your student to start.  I beleive it was an April issue as
the column starts out with a rather wild story about people dissapearing
into the 4th dimension.  Those Scientific Am. columns are collected
every so often and published in book form.  The first one was called
'The Armchair Universe,' by A.K. Dewdney, pub: W.H. Freeman (of course).
I beleive a second one was just published.

-------------------------------------------------------------

From: Neal Miller <millernw@clutx.clarkson.edu>

I *do* have a program called tumble.exe that rotates 4-D shapes around various
planes.  It uses the stereoscopic principle to make a 3-d effect.  You have 
you stare at two images until they appear to merge into a 3-d image (the two
images are deliberately out of sync).  There's plenty of docs, both instruction
and information.  I'll uuencode and send it if you are interested.

-------------------------------------------------------------

From: Peter Yamamoto <pjyamamoto@watdragon.waterloo.edu>

I recall seeing a video/film presentation by a professor
from Brown University (I beleive) doing stuff like that.

Couple/Several of his students went to work at ILM/etc.

Sorry no more details, hope this helps you get a little
closer.

I would apprecitae hearing the results if you do succeed.

-------------------------------------------------------------

From: billa@tdo.sps.mot.com (William Archibald)

There is a popular book in the States published a couple years ago
called the "Armchair Universe". [My copy is still in the States, so
I don't recall the authors name, but he writes the computer recreation
column for Scientific American(??)] This has a lot of stuff on 
cellular automata, and has a chapter on displaying hypercubes using lines
on a personal computer. If your friend wants to go beyond that, there
is a wonderful book with lots of color photographs by a fellow named
Bancroft. It has shaded color images of 3d slices of 4d space. It also has
several series of images from animations that were generated by the author.
The author must be contacted for in depth technical information, but
generally a good linear algebra book to give information on n-space affine
transformations, a computer-graphics book to give information on shading
spheres (Alan Watt is a good bet here) and the photographs from Bancroft
should be enough to get him started.

The title of the Bancroft book is given in the 'Armchair Universe'. Video
tapes are also available from Mr. Bancroft. The computer graphics book
by Alan Watt is the introductory 3d graphics book published by Addison-
Wesley. There was another book scheduled to be published by he and his
brother in late 1990 by Addision-Wesley on advanced rendering techniques,
but that isn't the one you want.

Good Luck,

--------------------------------------------------------

From: Eric Golin <golin@cs.uiuc.edu>
Message-Id: <9101162341.AA22574@m.cs.uiuc.edu>
To: ola@duke.cs.duke.edu
Subject: RE: graphic 4-D images
Status: R

I know that Tom Banchoff at Brown university (Math dept., I think, or
maybe applied math dept.) did a good deal of work in this area.  I've
seen (long ago) some movies he made of 4-dimensional objects.  I'm
afraid I don't have any references, though.

------------------------------------------------------

From: jorice%maths.tcd.ie@pucc.PRINCETON.EDU

This isn't much, but I just saw some animations done by the Visualisation
Lab at Indiana University on shading of four-dimensional objects. Looked
really good, though I didn't understand what exactly I was seeing. They had
this sort of pinched egg shape rotating and changing and doing very weird
things. If you can contact someone there they could probably give you lots
of good info. Their proper title is not "the Visualisation Lab", actually -
it's some forgettable, bland thing - "Center for ..." is all I can
remember - "C???" - 4 letters. If you're interested, I can get the proper
title for you and probably also a contact name there.

------------------------------------------------------

From: winters@pdn.paradyne.com (John Winters)

Sure, I did it in 1969/1970 at M.I.T.  I was the first guy to do a
4-d cube on the computer.  Then I did 8-d cubes.  Today, I do 12-d cubes.
I did an animation in real-time using a vector generator and line drawings.
Also featured perspective from 4 to 3 d, hidden line blinking, dashing,
removal, or left it.  It was fun and I spent years on the various versions
over the years.  Guys who did it after me grabbed all the glory.  So what.
If you want to know how to do it, I did it when the guys at M.I.T. said
it could not be done!