home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Archive Magazine 1996
/
ARCHIVE_96.iso
/
discs
/
shareware
/
share_47
/
tesseract
/
!Tesseract
/
!Help
next >
Wrap
Text File
|
1991-12-28
|
6KB
|
193 lines
!Tesseract
Four dimensional cube display
⌐ Public Domain December 1991 by David McQuillan
This program is a development of one I had on the BBC micro
some years ago. This one uses the mouse to move the hypercube
but otherwise is the same. Try dragging holding down the
adjust button to get a demo of the mouse control - at the end
of this !help file I declare it public non-patentable.
Edited text from the original BBC micro version :-
Do you want depth of vision? A four dimensional world has
length, breadth, height, and depth. This program lets you
control the movement of a four dimensional demon and see
what he sees.
The demon continuously stares at a 4 dimensional cube, a
hypercube or tesseract, with a hypersphere at each corner.
The image on the back of a demons eye is three dimensional,
as opposed to the image on the back of our eyes which is two
dimensional. It is this three dimensional image that is
shown.
Before launching into the fourth dimension it is worth
considering what happens when we look at an ordinary cube
with a sphere round each corner.
The image is two dimensional. The nearest point corresponds
to the biggest circle which is near to the centre of a ring
of smaller circles. A Flatlander, a two dimensional being,
could use the picture and the size of the circles to clue
himself/herself/itself about 'depth'.
Various views of a cube appear below.
!Help2 Draw File
Flatlander says move up. The central
sphere moves down.
If a flatlander controlled us then he could direct us
according to the two dimensional image at the back of our
eyes, after all that is what we do.
He can say move in the Y direction meaning up, or in the X
direction meaning right, or inward which makes the image
larger.
It is more convenient (and easier), if instead of the X and
Y direction meaning go straight up or down they mean move on
the surface of a sphere around the cube keeping a constant
distance from it, this is the natural movement if we are
always gazing straight at the cube.
We control the demon in a very similar way to how a
Flatlander would control us. The demon looks fixedly at a
4-D Cube, a tesseract, with a hypersphere, a 4-dimensional
sphere, round each corner.
When the associated program is run the initial view is as
looking directly at one corner. The big sphere at the centre
is the one nearest to us in 4`D. The are four squashed cubes
around the central sphere. For a 3`D cube the central large
circle is surrounded by three squashed squares when viewed
from a corner.
Moving the mouse with a button pressed causes the daemon to
move on the sphere round the tesseract, or to move in or out
as described in 'Program Control' below.
The tesseract has 16 corners, 32 edges 24 plane faces, and 8
cubes. Only 4 cubes are visible in the initial view as the
other 4 are on the 'other' side, there is hidden volume
elimination!. There is an option to give a 'wire frame' view
where all the corners are visible.
The four dimensions of this program are Euclidean
dimensions, nothing like Special Relativity which can have
two points separated by zero distance.
Program Control
---------------
The tesseract is controlled using the mouse - this is the
big advance from the BBC version as well as frame refresh
rate redrawing and the way lines are drawn. Escape is by
pressing the ESC key.
The Adjust button gives real movement of the image, this
corresponds to just viewing the 3D perspective image from a
different angle. The action corresponds to grabbing the
nearest point on a sphere outlined by the background grey
circle whilst the Adjust button is pressed. This movement
took a bit of figuring out and is very natural so have a go.
The Select button gives hyperspace movement rather like the
real movement but grabbing the nearest 4D point - i.e. the
big sphere in the centre. I'm not sure the movement is
natural but then what would be?
The Menu button gives size and distance control both in real
and hyperspace. The image is constrained to always fit onto
the screen.
Pressing Select and Menu at the same time makes all the
points visible as in a projection.
Pressing Menu and Adjust together gives the perspective view
where the obscured corners are not shown.
Further Ideas
-------------
See if you can draw the sections of a cube as it goes corner
first through a plane. A Flatlander would see this if a cube
passed through his world. What would a tesseract look like
if it went through our world this way?
Could you write a program that drew an accurate picture of a
solid cube with a sphere at each corner. You will then see
why my representation of a tesseract is not accurate!
How many legs would a hypercat have? Can knots be put into
sheets in the fourth dimension?
What is shading like in 4D? I think of it as a haze or a
density of transparent colour.
Further Reading
---------------
Dover Books have a number of softbacks about the fourth
dimension including a reprint of the original Edwin Abbott
book on Flatland.
The following Pelican books have sections on the subject:
Further Mathematical Diversions
Martin Gardner. Flatland.
Mathematical Carnival,
Martin Gardner. Article about Hypercubes
Concepts of Modern Mathematics,
Ian Stewart. 'Into Hyperspace'.
A Path to Modern Mathematics,
W W Saywer, 'What is a rotation?'.
Postscript
----------
A lot more has appeared since I originally wrote this. Next
project I think is something out of George K Francis 'A
Toplological Picturebook'. 'The Penguin Dictionary of Curious
and Interesting Geometry' by David Wells should prove a good
starting point for anyone wanting to do some of their own
figures.
Archive Careware disk 14 has a program by D.H.Symes which
shows the intersection of a hypercube with 3 space.
The Mouse Control
-----------------
The mouse control in this program was publicly
demonstrated in December 1991 and the extensions
to act as a control in 3-D drawing described. Thus
any patent after that date is invalid for anything
obviously anywhere near that used in this program or
as described below.
The mouse control in principle consists of selecting an
object on the screen and then rotating it around its
centre of gravity. The rotation is done by selecting
and dragging a point on a bounding sphere or actual
surface point.