What's New in 3D-XplorMath

August 2008

NOTE: The 3D-XplorMath webserver is now located in the Math Department of the Irvine campus of The University of California, and the 3D-XplorMath homepage is at: http://3D-XplorMath.org/

IMPORTANT NEWS (1): Professor David Eck of Hobart and William Smith Colleges is creating a cross-platform Java program called 3D-XplorMath-J that will eventually have all the functionality of 3D-XplorMath. Work on this has progressed rapidly, and the currentversion is now avaialable at: http://3D-XplorMath.org/toplevel/download

IMPORTANT NEWS (2): Gale Paeper has been making major modifications to the Pascal code to make it compatible with the GPC Pascal Compiler. When this work is finished we will release a Universal Binary version of 3D-XplorMath that will run native on both PowerPCand Intel macs. (The current version runs native on PowerPC Macs and emulated under Rosetta on Intel Macs.)

Changes to 3D-XplorMath between versions 10.5.2 and 10.5.3

Old and new bugs were found and fixed and some imperfections when switching between viewing modes were corrected.
The need to adapt the program to projectors of different power and to darker or brighter room light is presently met as follows: If a number key is pressed when Create is selected from the Action Menu, then the dot-size used for drawing is set to that number. (This works for Planar Curves, Space Curves, Surfaces and Polyhedra).

The Space Curve Category:
Those closed space curves of constant curvature that have normal line symmetries (dd=0) can now be morphed as closed curves via a new entry in the Animate Menu. The two parameters aa, bb are automatically adjusted to user-selected changes of cc, ee. More interesting and more robust is another new morph that automatically adjusts bb to keep the normal symmetry lines intersecting in one point. One can watch the morph until a new closed curve appears and then stop the deformation, preferably when the Action "Add Symmetry Elements" is selected.

The Surface Category:
All parametrized surfaces can now be rendered as Point Clouds. Point cloud representations of surfaces are becoming popular because they also arise from laser scans of physical objects. Note that the number of points in a Parametric Surface Point Cloud is set in the "Set Resolution and Scale..." dialog (accessed via the Settings menu).
New triply periodic minimal surfaces (from the list of A. Schoen) have been added. Since these surfaces look very different depending on how their fundamental pieces are assembled, a corresponding choice is now available; one assembly presents one side of the surface as "outside" and the other assembly presents the other side as "outside". (For surfaces that carry straight lines, the two sides look the same so this choice is omitted).
Some numerical imperfections of Scherk With Handle have been removed.
The feature that "an interrupted patchmode drawing gets completed in wireframe" now also works for minimal surfaces.
The Paraboloid and the Ellipsoid can be shown with focal rays and their reflections (i.e., parabolic antennas and whispering galleries). One may morph the light source away from the focus.
There is a submenu of the Surface menu labeled "Voxel Clouds". This is for a new (and experimental) subcategory, still under development, designed for visualizing volume densities. The current examples include a constant density and the low quantum number Hydrogen atom orbitals.

The Polyhedron Category:
The remaining Archimedean Polyhedra, namely the edge-truncated regular polyhedra, have been added. The Icosahedron can now be morphed inside the Octahedron. The computation of all morphs has been made flicker-free.
The Cube has a new Action: "Show Intersection with Plane": a non-moving dotted plane is added and the mouse-controlled cube removes those dots that are inside the cube (this works in wireframe only).
The Icosahedron has a new Action: "Add Borromean Link". In wireframe, three pairs of opposite edges are completed to rectangles that are linked in the Borromean fashion. (This image morphs in an interesting way !)

Other Categories:
No changes.

Changes to 3D-XplorMath between versions 10.5.0 and 10.5.2

Two bugs, in the Lattice Models and in the Planar Curves were fixed.
The parameter DotSize in the Settings Menu can be used to change linewidth of curves and of parameter lines of surfaces.
The View Menu got another entry: 'Anaglyph Objects Into Room'. This results in the same anaglyph renderngs but the objects are placed distinctly in front of the screen.
The program still runs fine under OS 9.2: some computations are faster, but the rendering of rotating 3D objects is much slower.

The Plane Curve Category:
The cubic curves were given more demos to illustrate the geometric addition on these curves.
Two color morphs were added.
The osculating circles can smoothly be drawn up to inflection point tangents. Also, normals are drawn in the correct direction, even if their end points are well outside the 'graphics sphere'.
The ODE-defined curves now allow the same Actions as the other curves.

The Space Curve Category:
Those closed space curves of constant curvature that have reflection symmetries (in normal planes) can now be morphed as closed curves via a new entry in the Animate Menu.
The dotted sphere on which the spherical ellipses are shown is now dotted with orthogonal families of spherical ellipses having the same focal points. A second default morph changes the focal distance.
A new Action, 'Show Frenet Integration' has been added. It computes for all space curves the principal curvature vector with respect to a parallel normal frame. This two-dimensional curve is the angular velocity vector of the time dependent parallel frame. This curvature-curve, the resulting rotational motion of the parallel frame and the integration of the first frame vector to the given curve are shown.

The Surface Category:
A new entry 'Diracs Belt Trick' has been added. It opens in anaglyph stereo with a cyclic morph that is interesting because it shows a non-obvious property of the topology of the three dimensional rotation group.
The Bianchi Pinkall Tori has a second default morph. It shows---in stereographic projection---the continuous rotation of these tori around one of their Hopf fibres in S^3. In R^3 this is a continuous conformal deformation that turns the torus inside out (one torus of the family has to pass through infinity). Some tori are mapped onto themselves when turned inside out: they have an antiinvolution with a circle as fixed point set showing that they are rhombic tori.

Other Categories:
No changes.

Changes to 3D-XplorMath between versions 10.4.2 and 10.5.0

Some user interface imperfections and rarely ocurring bugs were fixed.

In the dialog resulting from selecting 'Eye Separation' in the Settings Menu one can now adjust another view parameter called 'Dot Size'; it changes the line width for surfaces, planar and space curves.

The Plane Curve Category:
A Curves of Constant Width exhibit has been added. We also added more involved decorations to some curves, in particular to the Deltoid. The mechanical construction of the Lemniscate was made compatible with its default morph.

The Space Curve Category:
We have added more examples of closed constant curvature curves. We added 'Satellite Knots' in the Action Menu of the Trefoil, Figure Eight and Granny Knots, and also the Spherical Ellipse, an un-knot. The satellite knots indicate how one can approximate any space curve by a curve of constant curvature.
The main addition is an involved demo from rigid body kinematics and dynamics. The most easily understood motion is in the Action Menu for 'Spherical Cycloids' under 'Show Rolling Circle'. Next, all space curves can be used to give an 'Angular Velocity Function' in the observer space, with the corresponding action showing the associated motion. Next, all space curves can be used to give the 'Angular Velocity Function' in the body space and again the corresponding action shows the associated motion. Finally, a new space curve, 'Eulers Polhode' has been added; it is the solution of Euler's first order ODE and, when taken as 'Angular Velocity Function', the associated motion is the physical motion of a free rigid body. Parameters aa, bb, cc are the principal moments of inertia, and parameters dd, ee, ff are the components of angular momentum with respect to the moving frame. The picture of the polhode shows both, the angular momentum curve and the angular velocity curve. Both are intersections of quadratic surfaces and these are also shown.

The Surface Category:
The surface family x^p + y^p + z^p = 1 that joins the cube to an octahedron was added. For some implicit surfaces we added an Action 'Flow to the Minimum', to make it clearer how the defining function is constructed.
After creating a surface, it can now be saved for use with Mathematica either as a .m file or as a Mathematica Notebook (.nb file).

The Conformal Maps Category:
The Conformal Maps have two new features: 1.) Circles or Intervals, that are added to the domain using the mouse, stay with the map when its view is changed (scaling, Gaussian plane to Riemann sphere, anaglyph stereo). 2.) One can choose a tangential approximation of the map that follows the mouse pointer. This emphasizes conformality and helps to understand branch points.

The Polyhedron Category:
No changes.

The ODE Category:
No changes.

The Fractals & Chaos Category:
The Sierpinski Curve was added to the Fractals. Its default morph joins it to an equilateral triangle.

The Sound Category:
No changes.

Changes to 3D-XplorMath between versions 10.4.1 and 10.4.2

The documentation describing the various exhibits, the so-called ATOs (About This Object), is now more than twice as large as the code of the program. Most ATOs contain suggestions for experimenting with the selected object.

Here are some of the new features added to various categories:

The old 'Save Settings / Open Settings' feature was not work reliably for some time, but is working again. Old settings can still be read by the newest version of the program, however one should not read new settings with an old version of the program version since new control variables have been added.

The Plane Curve Category:
To the mechanically generated curves we have added a moving plane, i.e. a square of random dots that is rigidly connected to the drawing mechanism. This makes evident an important concept, the instantanous center of rotation.

The Space Curve Category:
The spherical rolling curves have a dotted sphere rigidly attached to the rolling wheel to illustrate the momentary motion as in the planar case. The 3D-impression in monocular view is stronger if, following David Eck, the curve is drawn as 'Thick Curve' (select from the Action Menu).-- We have found closed constant curvature curves that are knotted, or even have nonvanishing torsion (select parameter values from the Action Menu).

The Surface Category:
The minimal surface subcategory now has a User Defined entry for the Weierstrass representation. -- The Whitney Umbrella and the Right Conoid now have default morphs that emphasize their pinch point singularity (see ATO). -- A new entry, Snail Surfaces, produces realistic pictures from simple formulas.-- A mouse related bug in the Sine-Gordon surfaces has been cured. -- The Hopf Tori and the Pinkall Tori have two families of conformal deformations: cc moves the center of the stereographic projection, ff rotates around a Hopf fibre on the torus. -- A two sided User Coloration has been added, with a default tuned for Hopf Tori.

The Conformal Maps Category:
The conformal map image of z --> (z + cc)/(1 + conj(cc)z) shows the unit circle and the parametrized image. This allows demos of hyperbolic motions.

The Polyhedron Category:
The drawing with gaps has been expanded to the truncated, stellated and nested polyhedra. David Eck's draw as 'Thick Curve' also works in these cases. -- For Tetrahedron, Cube and Icosahedron we have added 'Show Relation with Octahedron' and 'Show Relation with Cube' has an instructive morph. -- One can now choose in the Action Menu: 'Show Anaglyph Demo'. It explains how the 3D-impression of anaglyph pictures comes about. -- One can also choose: 'Show Central Projection To Sphere'.

The ODE Category:
For ODE(3D) 2nd Order we have prepared for all three cases of charged particles in a magnetic field sets of initial conditions that illustrate the behaviour of different types of trajectories (available in the Action Menu).

The Fractals & Chaos Category:
All Fractal Curves now have a default morph in which the Hausdorff dimension increases from 1 to 2. See the Action Menu for more variations. -- On the Julia sets one can mark the periodic points of period 3, 4 and 5 (Action Menu) and this information is used to improve the computation of certain Julia sets (Action Menu - C Values - Between Attractors). Additional special C-values from the boundary of the Mandelbrot set have been added. -- A User Defined planar map iteration has been added, together with Action Menu entries to allow experimentation with it.

The Sound Category:
This is a new category that has just been added. The so-called Shepard Tones (aka "The Ever-Rising Note") is the first exhibit in this category.

 

Changes to 3D-XplorMath between versions 10.4 and 10.4.1

We have made a considerable number of small bug fixes and improvements to the user interface. In particular, there are numerous speed-ups included in this version.

The Plane Curve Category:
Now most planar curves come with a "decoration" that explains how the curve is defined. The latest addition is a mechanical construction of the Lemniscate. We have also made the various decorations perform in a more uniform fashion---for example, now all decorations remain visible if one stops their animation with a mouse click.

The Space Curve Category:
We have added Curves of Constant Curvature to the exhibits (with many closed ones in the default morph) and curves of constant torsion (again closed ones in the default morph). We had not seen closed space curves of constant curvature treated before and found them interesting to look at. Although computed from their Frenet differential equation, all of the entries for explicitly parametrized curves in the Action Menu remainavailable for this new exhibit, and the same holds for Curves of Constant Torsion. See the ATOs for further interesting details.

The Surface Category:
In the minimal surface subcategory there is a new Action Menu item: Show Associated Grids. It shows on the left the grid on which we perform the numerical integration, in other words, this grid defines which parameter lines appear on the surface. On the right we either show the Gauss image of the integration grid (left), or, for surfacesof genus > 0, we show the image grid under the complex third coordinate function.

The Fractals & Chaos Category:
Instead of showing only still pictures of the Henon attractor and of the Feigenbaum tree we have added some dynamics so that one can now see how the final pictures evolve from early approximations. The use of colors shows clearly where a mixing behaviour occurs. Also, in the Henon Attractor, if you hold down Command, you can drag out a "zoom rectangle" on the screen (i.e., the window will zoom to a magnified view of the part of the attractor included in that rectangle). Important improvements have been made to the Julia Set animations.

Changes between versions 10.3 and 10.4

There were many changes to 3D-XplorMath in moving to version 10.4.. Some that lie beneath the surface may not be obvious to a casual user, such as improved coding and the removal of a number of subtle (and a few not-so-subtle) bugs. But there are also numerous quite visible changes that we hope our users will find both interesting and beautiful. These include the addition of many new objects, new kinds of rendering methods and animations, and improved documentation. We will discuss these below, category by category, but first, here is a quick description of several of the more noteworthy new features.

Phong Shading Option. 3D-XplorMath has always used so-called flat shading to color surfaces in patch mode. This means that for each patch (always rectangular in 3DXM) the correct color is calculated from the normal at the center of the patch, and the entire patch is given that color. This is quite fast, but unless the grid-spacing is very small it leads to unaesthetic sharp color changes at patch boundaries. A much more accurate and smooth color rendition is obtained by first calculating the normals at the vertices of a patch, and then using barycentric coordinates to interpolate the correct normal at every interior pixel and using this interpolated normal to choose the color of the pixel. This method, called Phong shading , is much more computationally intensive, and the computer graphics texts of ten years ago advised that it should be reserved for off-line use when very high quality was required, since it was too slow for real-time computer graphics. But the last decade has seen an enormous rise in the popularity of computer games that for their full appreciation require very high bandwidth graphics and, for competitive reasons, this has pushed computer manufacturers and graphics card fabricators to make very substantial improvements in the performance of the graphics sub-systems of even relatively modest computers. About six months ago we decided to see if this made it possible to do Phong shading to show surfaces in patch mode in 3DXM. We were very happily surprised at the quality of the resulting images, and even more at the speed of rendering. Running on even a moderately fast machine it is quite suitable for real-time use, and on a fast dual G5 the speed difference between Phong and flat shading is barely perceptible. The program still starts up using flat shading, but the user can shift to using Phong shading (and back to flat) using the View menu.

Dual Image Stereo Modes. 3D-XplorMath has always used the anaglyph technique to create stereo images of 3D objects. This means that the left-eye and the right-eye images are rendered on the monitor in different colors and are superimposed. They are then seen separately by the two eyes through the use of a different colored filters over each eye. This is remarkably effective and also has the advantage of being very inexpensive, since the bi-colored glasses required are both cheap and easily available. The major drawback to the anaglyph technique is that the color filters preclude having high quality color rendition. Over a hundred years ago, before anaglyph stereo, it was already common to take photographs of the same scene from slightly different viewpoints and then view these with a so-called stereopticon. That is, the left and right eye images are placed side by side and lenses or prisms used to focus the two images appropriately on the left and right retina. Of course this method works just as well in color as in black-and-white. In mathematical visualization, the objects do not have any intrinsic color, so anaglyph stereo is fine for most purposes, but it is still desireable to have the option of showing full-color stereo images of 3D objects, and we have now implemented this. In fact there are two so-called "dual-image" stereo modes now in 3DXM. The View menu, in addition to the former "Monocular Vision" and "Anaglyph Stereo Vision" items also has two new items, namely "Cross-Eyed StereoVision" and "Parallel-View Stereo Vision". In the first, the left-eye view and right-eye view are widely separated, with the left-eye view on the right and right-eye view on the left. With a little practice, most people can learn to fuse the two images by crossing their eyes (but don't do it for too long; it causes eye strain). In parallel view stero mode the images are closer together and not reversed, and must be viewed with some sort of stereopticon. Suitable inexpensive stereopticons can be found at several places on the web (for example, here ).

The 3D-XplorMath Web-Site and Gallery    The 3D-XplorMath project has had its own Website for nearly ten years. Originally it was a place from which one could download the latest version, and later a modest Gallery was added where various images created by the program were on display. Recently, the Gallery has been given a very major face-lift and upgrade by the new 3DXM Webmaster, Xah Lee, and it has now been expanded to a complete gallery of images of all surfaces in the 3DXM Surface menu. Each image can be rotated with the mouse, and has explanatory documentation, and many of them have accompanying animations in the form of Quicktime movies. Over time, we expect to expand this to include the other 3DXM categories (plane and space curves, polyhedra, conformal maps, ODE, lattice models, waves, fractals) so that gradually it will become a museum and explanatorium of mathematics.

The Plane Curve Category

The Plane Curve menu has been rearranged into more logical groupings.

The User Graph item has a new feature that shows approximations to the graph using Taylor series, Lagrange polynomials, and Fourier series.

It is now possible to choose to have tick marks on the x and y axes, using the final item on the View menu

There is a new animation mode for plane curves that we call Color Morphing. When this is selected, instead of a series of curves being created on different canvases that are "played back" as a motion picture, all the curves are drawn on the the same canvas but in different colors. In effect, color replaces time to distinguish the different stages of the morph. This can be very striking and show features that are not easily evident in the animated version since it allows careful comparisons between the various stages. We recommend trying this on the Cassinian Ovals.

There is now much improved descriptions of the various plane curves. Xah Lee has imported much of the material from his Famous Curves website into the ATOs for a number of the plane curves. As an example, select Astroid from the Plane Curve menu and then select About This Object from the Documentation menu.

A new Epi- and Hypocycloids selection has been added to the Plane Curves menu.

The default morphs for many of the plane curves have been improved.

The constructions that 3DXM shows (automatically) for Ellipses, the Epi-and Hypocyloids can now be compared with analogous constructions on the sphere associated to two new items in the Space Curves category, Spherical Ellipse and Spherical Cycloid. See below.

The Space Curve Category

While this category has been relatively unchanged for a long time, in Version 10.3 there are a number of significant and interesting changes.

The Space Curves menu has a new group of Spherical Curves, i.e., curves that lie on the Sphere. Two of these, the Spherical Ellipse and the Spherical Cycloid are close analogs of the planar ellipse and planar cycloid, and their demos are conceived with the goal of emphasizing the close analogies between Euclidean and Spherical Geometry. When the Spherical Ellipse is the selected object, choose Show Spherical Ellipse Demo from the Action menu, and when the Spherical Cycloid is selected, choose Show Rolling Circle.With both, be sure to select About This Object and About Spherical Curves from the Documentation menu. Show Osculating Circles with Evolutes is pretty and interesting for the Spherical curves and several of the other space curves as well. The Stereo View enhances this section a lot.

The family of torus knots is no longer alone: we have added the connected sums of two torus knots, placed on a genus 2 surface.

The Surface Category

As usual, perhaps the most striking and important changes have been in the Surface category. In particular there are now two new rendering modes, one for parametric surfaces (Phong Shading---see the detailed discussion above) and one for implicit surfaces that we call Dot Cloud Rendering. For the latter, we have developed an algorithm that we believe is new (although the mathematical idea behind it is very old!) to sprinkle dots randomly on an implicit surface with a density that makes the number of dots in any region of the surface proportional to its area. This works particularly well in stereo where it gives a method for seeing all sheets of a complex immersed surface at once and detecting the structure of the self-intersections. It also displays the contours of the surface well. One can also use this to do interesting vision experiments with the dot-clouds in the dual stereo modes mentioned above.

There are two new surface coloring options, color by Gauss curvature and color by mean curvature. These are available only for parametric surfaces, and are turned on from the Surface Coloration submenu of the Action menu:

   Action>Surface Coloration>Hue = Gauss Curvature   and   Action>Surface Coloration>Hue = Mean Curvature 

There have been very significant additions and improvements to the ATOs of many of the surfaces.

In the minimal surface subcategory, additional dihedral symmetries have been added to DoubleEnneper and Symmetric4Noids, and "wavy" perturbations have been added to the ends of PlanarEnneper and Riemann.

Twisted Scherk now allows deformations almost to the degenerate limits.

An entry Show Normals, has been added to the Action menu. This can be used to illustrate that the Gauss map of a minimal surface does not depend on the associate family parameter.

A new sub-category called Surfaces of Revolution has been added. It displays surfaces of revolution having constant curvature in various different senses. Be sure to check out the CMC (constant mean curvature ) case---namely the so-called Unduloid, and its About This Object.

Chuu-lian Terng has programmed in a remarkable collection of surfaces (the Ward Solitons) that show graphs of energy density as a function of time for a class of two-dimensional solitons. The animations associated with these surfaces are striking---and a little mysterious too. Since they are rather sophisticated and not easy to explain in a few words, we recommend choosing one of them and then selecting About Ward Solitons from the Documentation menu.

With the help of Paul Bourke and Luc Benard, we have made it possible to export surfaces created in 3D-XplorMath directly (using the File menu) as either .inc files (readable by POVRay) or as .obj files (readable by Bryce and other 3D programs).

The Conformal Map Category

No changes.

The Polyhedron Category

For each of the regular polyhedra (except for the cube itself) there is now an item "Show Relation to Cube" at the bottom of the Action menu. Selecting this brings up a graphic that shows the polyhedron incscribed in or circumscribed about a cube in a way that suggests how the polyhedron can in fact be created from the cube.

The ODE Categories

Only the Lattice Model subcategory has been changed significantly. We have in particular gone over the numerical algorithms with considerable care since we have plans to do a careful rerun of the famous Fermi-Pasta-Ulam experiments of half a century ago that both ushered in the use of computers as an experimental tool in mathematics and theoretical physics, and also led indirectly to the discovery of solitons. There is one new viewing mode that is connected to these plans: during the display of a lattice model evolution in transverse mode, if the Shift key is depressed then the display will shift to a graph of the energy distribution among the various modes as a function of time (corresponding to the graph on page 12 of the research report on the FPU experiments).

The Wave Category

No significant changes.

 

The Fractals & Chaos Category

The accuracy of computations of Julia sets has been improved.