or
Fewer people know, however, that the hypercube also exists as a series
of 3-dimensional cross-sections:





Visualizing higher dimensional objects is, like many scientific visualization tasks, a problem of reducing the dimension of the data. Projections do this by "squashing" the object into a lower dimensional space. But besides a change of coordinate information, the object is unchanged- it has the same number of vertices, edges, faces, etc, and they are all joined together in the same way. Cross-sections, on the other hand, reduce dimension by intersecting the polytope with a lower dimensional space to produce a totally new object. As the hypercube cross-section series above demonstrates, the cross-sections provide interesting geometric information that is not evident in a projective view. For instance, I was surprised to learn that you can cut a hypercube through the center to get an octahedron. This is the higher dimensional analog of cutting a cube through the center to get a hexagon. So while projections are a very common tool for viewing higher dimensional geometry, I think cross-sections are more challenging and more interesting. Peek will be able to do both.
But who says we have to be limited to cubes and hypercubes? I'm interested in visualizing polytopes in general. Polytopes are the generalization of polygons (2-d) and polyhedra (3-d) to any dimension. This semester I've designed a data structure to represent polytopes of arbitrary dimension, and I've designed and implemented an algorithm to take k-dimensional slices of n-dimensional polytopes for any n and k. What remains is to create a user interface for these operations, and to (virtually) construct the objects that I want to explore. In 3 dimensional space there are 5 regular solids (tetrahedron, cube, octahedron, dodecahedron, icosahedron) but in 4-space there are 6. I want to visualize them all- to create a tour of all the regular polytopes in 4-space. At the moment, my goal is to construct what must be an incredible object- the "600-cell": a 4 dimensional solid with 600 tetrahedral faces! I want to pull this object in and out of 3-space and watch the resulting cross-sections grow and change. Of course, I plan to make movies of the animated slicing so that even if you don't run Peek you can get a feel for its use.
We are three dimensional humans, hard-wired to live in a three dimensional world. Although some say otherwise, I do not think that humans can ever grasp higher dimensional geometry in the same natural way we know the geometry of three dimensions. Rather, I think that the ability to do interactive projections and slices will give the user at best some dim glimmer of an idea of what higher dimensional objects are like. Hence the diminutive name, "Peek".