# Hypercube

## N-Dimensional Visualization

This is a JavaSketch I created many years ago to attempt to explain to my friends how a multidimensional object can be visualized in two-space, or what it means to "draw a picture" of a hypercube (a four-dimensional object). In order to explain this process, it's best to review how we draw simpler (lower-dimensional) objects in the plane.

The JavaSketch begins with a geometric point P, which has no dimension. Drag P about in the JavaSketch; it has no length, width, or depth.

Now drag the red point labeled 1 an inch or so to the right (or press the button labeled 1. Segment). This creates a vector—an arrow representing distance and length—by which to move point P. The image of point P as it moves along this vector—P's locus—is a one-dimensional object: a line segment. So we can create a one-dimensional object out of a zero-dimensional object by translating it along some vector.

Now take the magenta point labeled 2 and drag it an inch or so in an upwards direction. This creates a second vector, and the image of the line segment, translated by a vector, is a square. If it doesn't look like a square, that's because your two vectors aren't perpendicular or aren't the same length. (Maybe it's a square viewed from an odd angle.) But for the sake of completeness, try to drag point 2 so that its vector is perpendicular and equal in length to the first vector (or press 2. Square). Now you have a square: a two-dimensional object created by translating a one-dimensional object according to some vector.

(Scroll down for more explanation.)