very nice.
what would make it even better than it is perfect right now, is one of these implementations for even further clarity of pointing to the actual 4dim objects:
1. color coding for 4th coordinate of the object
2. line-width variation for perspectival truthfulness
3. apparent intersection of edges
ad1: what would also be very nice and instructive is a color coding for depth, similar to this 24-cell animation. (from Tony Smith's webpage)
or this hypercube one.
they both use color to code the 4the parameter of the realmic shadow.
should you be implementing it into your viewer, please use the
natural gradient of the spectrum of light as it refracts through a prism, or as you can see in a dewdrop or rainbow, as that is the best and most healthy gradient to psyche, it fills the whole spectrum.
ad2: things in perspective seem to shrink in size with increasing distance. applying this on a micro-scale to the edges of projections, you could make the closest points let's say 5 pixels-wide, while the most distant can be 1pixel-wide.
this can be seen in Hilbert&Cohn-Vossen's Geometry & Imagination, where the hand drwan pictures all share this property of lines diminishing in their thickness as they go further from the viewver.
ad3: this is a graphic technique which is mostly used in hand-made graphics, like woodcuts etc: when working in monochromatic expression mode, the artist must often create an impression of depth between 2 lines or thin objects (wire, rope,...) that cross. to this effect, the pixels of the line which is deeper in the picture plane and which therefore runs behind the other line/edge, at the points where it 'touches' the closer line/edge, these pixels are omitted.
so if the background is black, and the lines are white, the line/edge that is closer to perceiver has 1 black pixel on each sides of it in such a way that the last pixel of the line/edge that is deeper before it crosses the closer line from any side is ommited.
any of these might be possible ? the color coding might be easy as you just use the 4th parameter to attribute a color-value from defined color-range.
as for the second, it might be harder, depends on the resolution also.
i would prefer if your viewer could be also toggled into bigger resolution, it's a bit tinyish.
anyway, great work, undisputably the best 4d-objects viewer ever.
p.s.:
4. one more thing which would be perfect and ground breaking, would be if you implemented what sullivan has in his stereoscopic projection applet:
http://torus.math.uiuc.edu/jms/java/stereop/
the two sliders to the right are great, but i would be mostly interested in how does it look like for certain objects you have in your list when seen in stereoscopic projection (stereoscopic is like mapping between rieman's sphere and complex plane, one-to-one. is there such a mapping between Q and some 3space(object) ? what shape does the quaternionic algebra map onto in one-to one fashion, similarily as the complex plane maps onto sphere ?