NOTES: The 3D-XplorMath webserver is located in the Math Department of the Irvine campus of The University of California.
The 3D-XplorMath website resides on this server and has the URL : http://3D-XplorMath.org,. A gallery of 3D-XplorMath created mathematical exhibits, called The Virtual Math Museum, has its home on the same server at the URL : http://VirtualMathMuseum.org.
3D-XplorMath has two available user interfaces for the purpose of selecting Categories and Objects. The default is the classic menu-driven interface, but if the Option key is depressed during startup then the program will start up in "Click-Image" mode, in which those choices are made by clicking on icons that represent the desired Category or Object. After startup, one can switch between the two modes by selecting "Toggle Menu & Images" from the 3D-XplorMath menu.
Please report any anomalous behavior (aka "bugs") in 3D-XplorMath to the developers: Hermann Karcher <unm416@uni-bonn.de> and Richard Palais <palais@uci.edu>. We are also happy to hear your suggestions for improvements and additions to the program.
Professor David Eck of Hobart and William Smith Colleges has created a cross-platform Java program called 3D-XplorMath-J. We expect that will eventualy have all the features of the Pascal-based Macintosh-only version of 3D-XplorMath. The current version is available at: http://3d-XplorMath.org/j/index.html
Since version 10.7, 3D-XplorMath runs native on Intel Macs
as well as on PowerPC based Macs. The difficult work of porting
the earlier PowerPC only source code to make this possible was
carried out by Adriaan van
Os. For further details see below.
As always, we have improved the documentation (even though no one seems to read it :-). We would very much like to know the extent to which our program is being used on "old" systems and hardware. The CodeWarrior compilation runs on OS 10.6.8 and earlier, the new Free Pascal compilation runs on OS 10.4.11 and later. Both compilations are combined in the Universal build that we distribute. Since our point clouds have been used for Monte Carlo typpe numerical computations, we have switched to the Mersenne Twister, a state of the art random number generator. - The control of the playback speed for movies was too hidden, we added a slider control (visible only while a movie is playing). - We have been promised financial support to convert our present MacIntosh-only code to Linux and Windows. To make this conversion proceed more smoothly, we have done extensive code cleaning operations.
The Plane Curve Category:
A demo showing rotating gear wheels has been added. The teeth of the gear
wheels have circle involute flanks.
The Surface Category:
We have added more "decorations", in particular to the Implicit Surfaces:
Families of Curvature lines, polar geodesic grids and parallel
geodesic grids which can be moved with the mouse over the surface.
- Surfaces such as the Boy Surface are difficult to grasp as a whole;
the first attempt to make a demo of revolving Meridian-Möbius-Bands
resulted in Möbius bands hopping around in space. We have developped
a new morph-with-background where the whole surface is rendered
as point cloud and the Meridian Bands are now visibly moving on
the surface. This led us to improved morphs for various other surfaces (Cross
Cap, Right Conoid, Bianchi-Pinkall). - We experimented with rendering
Implicit Surfaces by putting tangential disks at the points of
a point cloud. These renderings are fast enough for mouse rotation,
but since we cannot take these disks too small, the quality is
still less than that of a flat shaded parametrized surface.
The Fractals & Chaos Category:
The Henon Attractor can now be rendered in Hit-Count-Mode. This
gives some impression of the invariant density on this complicated
set.
With the departure of the Apple PowerPC to Intel emulator,
Rosetta, version 10.6.1 and earlier of 3D-XplorMath could not
run under Apple's OS 10.7 (Lion). We are grateful to Adriaan Van
Os for converting our CodeWarrior source code to be compatible
with FPC, the FreePascal Compiler. The FPC-compiled Intel code
runs native on Macintosh Intel-based machines and in particular
works under Lion. Many bugs had to be fixed, some were found
by Adriaan, others during the extensive testing that the converted
code required. Some of the improvements are not visible, for example
the coordinates of the random points on implicit surfaces are
computed with much higher precision since they have been used
for numerical computations, e.g., of eigenfunctions of the Laplacian.
It is possible to read in point cloud data that represent surfaces
and we have written code to reconstruct approximate normals directly
from the point cloud.
The Space Curve Category:
For the user-defined implicit space curves there is a new Action
Menu entry that displays as dot clouds the two surfaces whose
intersection defines the current implicit space curve. To illustrate
how this feature can be used we added buttons to select three
default examples. In one case, one of the surfaces is the graph
of a function, and the other is a vertical cylinder; this illustrates
how the determination of extrema on subsets works.
The Surface Category:
We improved some default morphs, adding multiple defaults in some
cases (e.g., the Klein Bottle and Boys Surface). The main change
is that we have started to add "decorations" to the
images of surfaces. As in the earlier additions to other categories
they are reached by entries in the Action Menu. For parametrized
and for implicit surfaces one can add the principal curvature
fields, move (with the mouse) the pair of principal curvature
circles along the surface, and also move the family of normal
curvature circles at a point. (Note that these normal circles
form naturally ocurring families of cross-caps.) One can
also add geodesics to the surfaces. For implicit surfaces,
the mouse position gives the initial point and, as long as the
mouse is pressed, the initial direction changes with the movement
of the mouse. For parametrized surfaces a geodesic spray can be
added, its center moving with the mouse.
Other Categories:
No visible changes.
One major reason for this release is to make available additions to the documentation. There are now ATO (About This Object) texts for all objects in the following categories: Plane Curves, Space Curves, Conformal Maps, Parametric Surfaces and Fractals. We also corrected a serious omission: one documentation folder was empty by accident in the previous version and this has now been fixed. There are a number of improvements to the program features that involve the anaglyph images: in particular Phong shading was extended to anaglyph, and the anaglyph button now handles all anaglyph cases. The behavior of the 3D-axes was also improved. Switching to dot cloud rendering is no longer handled in the Action menu; it is now treated in parallel with wire frame and patch style in the View Menu. For a few objects the program switches automatically to dot cloud rendering but returns to the previous style if a new object is selected. Since the size of pixels on modern monitors has decreased, there are now more situations were pressing a number key will switch to dots of that size.
The ODE Category:
The Forced Duffing Oscillator (1D, 2nd order) has been improved
in that the orbit computation and the Poincare map are fully synchronized.
One can run the Poincare map and then toggle to orbit computation,
which superimposes the orbit over the Poincare image. See the
ATO for details. For two-dimensional first order ODEs, one can
now switch between different numerical methods in the Action Menu.
Also a demo-mode has beens added, illustrating in a visually self-explanatory
way three simple numerical methods.( The Runge-Kutta demo does
still needs verbal explanations.)
Other Categories:
No changes.
The additon of a click-image interface to operate touch-screens (see below) introduced some bugs (and exposed some hidden old ones). All known such errors have been corrected. For the convenience of touch-screen users without a keyboard, we added a Pause button, a button to toggle between anaglyph stereo and monocular viewing, and a button to start default morphs. These features are also convenient on a computer monitor, in particular when used in lectures. Please report any misbehavior of the pause- and abort-functions. Only one piece of contents is added, in
The Surface Category:
For ray-traced, implicit surfaces we have added an anaglyph version.
Note that the yellow of the image is the mixture of the red for
the left eye and the green for the right eye; the intensity changes
of the two component colors are not really visible in the composite
yellow, but when viewed through the red-green anaglyph glasses
our eyes get enough information to create a 3D impression better
than what we had hoped for---quite amazing.
The documentation for all of the mathematical objects (the ATOs) is now available from the download page, independent of the program itself, as a single cross-platform ZIP file. We have also created five Quicktime movies (about 10 minutes each) that explain how to get started and how to use 3D-XplorMath. These 'streaming videos' can also be obtained from the download page.
The Click-Image Interface:
The biggest change, however, is the addition of a second user
interface that we call the "click-image" interface.
It was designed for possible use with a touch screen in mind (and
we have tested it on a touch screen in the Oberwolfach Museum).
One may toggle between the new and old user interfaces using the
second entry of the 3D-XplorMath Menu. In the click-image interface
the Category Menu is replaced by a page of twelve Category Icons.
If one of these is clicked then the corresponding page of Object
Icons appears and one can choose an object by clicking its icon.
In this way one does not need to know the names of objects. Once
touch-screens become more widely available, it should be fun to
select the objects in that way.
The Plane Curve Category:
All mechanically created curves have improved default morphs.
The morphs include now the drawing mechanism and the tangent construction
as the curve (i.e. the drawing pen) varies. Archimedes' angle
trisection is available in the Action Menu of the Circle. Strophoids
are added because they have the same drawing mechanism as the
Cissoid - We have added 'Show Caustics' in the Action Menu of
most curves, one can vary the angle of the rays against the curve
with a small slider.
The Space Curve Category:
An implicitly defined curve is the intersection of two (implicit)
surfaces. In some cases this implies that the implicit curve is
the singular curve of the boundary of the intersection of two
solid objects. We emphasize this intersection (so far: see Two
Cylinders). For tubes and pairs of strips we have added the possibility
to omit the less informative parameter lines. - When 'Parallel
Frame' is checked and 'Show Repere Mobile' is chosen in the Action
Menu, then we show not only the frame but also the curvature vector
and its history. In the last entry, 'Show Frenet Integration',
we reconstruct the curve from its parametrized curvature vector
(given in a parallel frame).
The Surface Category:
Small improvements for the rotation by mouse were added, in particular,
by pressing TAB one can (again) rotate surfaces in rough Patch
Mode. The raytracing of Implicit Surfaces is now much faster,
with only a small loss in perfection.
The Polyhedron Category:
All the Archimedean solids are now available, mostly from the
Action Menu by different kinds of truncations (including the Snub
Polyhedra). The remaining two Archimedean solids are obtained
as 'modified' standard truncations of the Cubeoctahedron and the
Icosidodecahedron. (Recall that in this Category the default morphs
depend on the selection that is made in the Action Menu.) Since
objects with Platonic symmetry have been known since 2500 BC,
in the form of stone ball ensembles, we have added in the Action
Menu "Show as Stone Balls". The balls are represented
by random dots in Wire Frame and as fine subtriangulation of the
Buckyball in Patch Mode. These subtriangulations are available
for many other cases after "Create Subdivided" is selected;
they are shown as triangulations of a sphere. - All truncated
polyhedra can be shown inside the not truncated one. In particular
the snub truncation can thus be better understood.
The Fractals & Chaos Category:
As a twin to the Feigenbaum exhibit, a "UserDefined Feigenbaum"
has been added since this kind of display is a convenient way
to locate periodic attractors in Newton iterations. The curves
that represent attractors in the Feigenbaum Display extend to
what looks like "curves through the chaotic portions of the
tree". This can be looked at more closely with two new entries
in the Action Menu. One shows 1000 iterations in the usual vertical
line, then the next 1000 iterations in the neighboring column
of pixels and so on for 400 columns. The result illustrates a
density distribution belonging to the particular iteration chosen.
Therefore we also determine by counting in pixel size intervals
the density function of this distribution. - The Dragon can tile
the plane in several ways, we have added two of them, see the
Action Menu. - For various choices of parameters the Henon system
gets periodic attractors. These can more easily be looked for
with the new entry 'Continue Mouse Point Iteration' because this
allows to continue with much higher accuracy than is available
for mouse selected iteration points.
Other Categories:
No changes.
We encourage users to look into the documentation, almost every
object now has an explanation text "About This Object (ATO)".
In addition, the folder "UserDocs" contains material
that we used in lectures - as an example how to use this feature.
The file menu entry "Save Settings..." that allows to
save the current program state and later open 3DXM in exactly
this state, has been updated and extensively checked.
More rare bugs were eliminated.
The Space Curve Category:
A new display of curves, "Show as Pair of Strips", has
been added in the Action Menu. It is similar to "Show As
Tube", but while the tubes mainly emphasize the curve as
3D object the strips emphasize the curvature properties of the
curve.
We have added V.Jones' braid list so that the first 249 prime
knots can be viewed in Jones' braid representation. New braid
words can be entered in a dialogue. The braids can either be displayed
circular and almost planar, or on the surface of a cylinder. A
second addition allows to modify the trefoil knot into a sequence
of prime knots. The default Lissajous curve is now another prime
knot.
The Surface Category:
The conic sections entry "Planes, Cones and Spheres"
has been expanded into two views. The first shows the cone intersected
by a plane, the default morph changes the inclination of the plane.
The second view shows the Dandelin Spheres, the default morph
keeps the intersection curve the same and varies the cone angle
(down to a cylinder).
All surfaces can now be rendered as point clouds, including the
multi-tile surfaces, see "Hopf Fibered Linked Tori".
The contours of all parametrized surfaces can be displayed. To
study the contours choose wire frame or point cloud rendering.
In patch display the contours are only useful if in "Light
Sources" one has chosen "Ambient Only" - for line
drawings combined with the painters algorithm to suppress invisible
parts of the surface. Pressing Left/Right Arrow during computation
changes the line width for the contour.
We have expanded the Dirac Belt demo: 3-frames can be added to
the belt to indicate the family of motions and a second morph
displays only the first half of the belt thus showing Feynman's
Plate Trick.
The Polyhedron Category:
The exhibits have been improved with a very young audience in
mind. Dotted hidden edges can be added from the Action Menu. The
entry "Show Relation to Cube" now works also for the
Rhombic Dodecahedron and the pyramids on the faces of the cube
can be flipped into the cube by pressing Left/Right Arrow.
The ODE Category:
The Forced Duffing Oscillator has been added (1D, 2nd order) together
with submenu entries that offer playgrounds for experimentation.
This includes the Poincare Map. See the ATO.
The Fractals & Chaos Category:
To the list of C-values we added two more with linearly neutral
attractors, but large attractor bassins (see Between Attractors).
The Action Menu entry for "Julia Sets": 'Show C-value
in Mandelbrot Set' also shows a rough images of the Julia sets
as the mouse moves.
Other Categories:
No changes.
The background choices "white" and "custom" were added to wire frame drawings of Anaglyph images. Various small errors are fixed that were connected with switching decorations or with morphing. The occasional but old bug in Phong shading is gone.
The Plane Curve Category:
A decoration was added to the Cassini curves. It shows that the
product of the distances to the foci is constant.
The Space Curve Category:
When Parallel Frame is selected we show the normal curvature vector
and draw the normal curvature curve.
The Conformal Maps Category:
In many cases the image grid, when viewed on the Riemann Sphere,
left a hole around infinity. This hole is closed.
The Surface Category:
Surfaces can now be saved as triangulated surfaces and such data
can be read and rendered.
The Fractals & Chaos Category:
The Fractal Curves can be mapped (from the Action Menu) with the
conformal maps z^2 and exp(z). This emphasizes complex functions
as Conformal Maps and it leads to a better understanding of selfsimilarity.
Before mapping a curve, the origin can be chosen with the mouse
(except for the Julia sets, these are mapped 2-1 onto themselves
with z^2 - c). One can select from the Action Menu to show the
first component of any of the Fractal Curves z(t) as graph [t,Re(z(t))],
thus providing a large collection of continuous, non-differentiable
functions. Note, that for c-values from the boundary of the Mandelbrot
set a continuous parametrization of the Julia set (of z^2 - c)
cannot work in a stable way since totally disconnected Julia sets
are arbitrarily close. For the boundary c-values from our list
more than the first 20 backwards iterations are computed and ordered
correctly.
Other Categories:
No changes.
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.
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.
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.
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.
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.
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.