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. Xah Lee and Hermann Karcher have updated the Museum, have a look.
The Click-Image interface is cancelled since version 10.10.
Please report any anomalous behavior (aka "bugs") in 3D-XplorMath to the developers: Hermann Karcher <unm416@uni-bonn.de> or 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. The current version, corresponding to an about 12 years older version of 3D-XplorMath, 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, (between 10.6.1 and version 10.7). Adriaan has also worked to create a Linux version of 3D-XplorMath. We are happy to report that 10.11.3 is the first version that has been tried on Linux mint-32 inside VirtualBox on a Mac, under Linux ubuntu and Linux manjaro on Linux machines. Some features are still missing: 1.) Mouse rotation, scaling and moving. 2.) Images have to be saved with screen shots. 3.) Anaglyph patch style rendering is presently omitted. 4.) Not all glitches were found and removed.
Unfortunately it is unlikely that 3D-XplorMath will run on Macs with OS 10.15 and beyond.
The Space Curve Category:
More autoevolutes with improved documentation were added. The update of the Virtual Math Museum
(http://VirtualMathMuseum.org) has been continued
by realizing the planar curves as javascript programs which run in the browser:
http://VirtualMathMuseum.org/Curves/index.html.
Also various space curves are rewritten in javascript, in particular the
autoevolutes.
The genus-2-knot is slightly improved and an old sign error in the documentation of the figure-8-knot
is corrected.
The Surface Category:
A second version for surfaces of revolutions is added: The user only inputs the radial function rad(u),
the height function is then computed so that the meridians are parametrized by arclength. This requires
| rad'(u) | < 1; the program looks for a subinterval of [umin, umax] where this is true.
The update of the Virtual Math Museum (http://VirtualMathMuseum.org.) has reached a satisfying stage. Adaption of the code for the Linux version introduced some bugs, we hope that we caught and repaired most of them. New features are in:
The Surface Category:
The symmetric Klein bottle was finally added, a surface which one would expect to
find in 3D-XplorMath. It is constructed as a tube of varying radius around a
suitable curve. The default morph visualizes this construction.
The Space Curve Category:
The closed constant curvature space curves in 3D-XplorMath led Ekkehard Tjaden
to suggest to look for such curves which in addition are their own evolutes.
Together we found such curves. Some can be viewed in 3D-XplorMath.
The main reason for the release of 10.11.2 is a bug in 10.11.1 when switching to cross-eyed stereo with point cloud surfaces. Adriaan pointed out that the sphere with a stereographic grid has in certain positions artefacts in Phong shading and the Archimedean Spiral is drawn with gaps; these bugs are removed. He also suggested to skip the slow rebuild after mouse rotation of surfaces. This is done for flat shaded surfaces. (Phong shading is still too slow for mouse rotation.)
In the past year, with the help of Xah Lee, the update of the Virtual Math Museum (http://VirtualMathMuseum.org.) has progressed well. As in the past this led to further additions to 3D-XplorMath and also to the discovery and repair of bugs.
The Surface Category:
Several periodic minimal surfaces can be shown with more fundamental
pieces: Riemann, CatenoidFence, Schwarz PD, Schwarz H. The images
of the Gyroid and the Lidinoid (in the associate families of two
Schwarz surfaces) were improved and their fundamental cristallographic
cells were added. -- A serious bug in the code of the 3-soliton
and 4-soliton pseudospherical surfaces had to be repaired. This
led to further additions: The Dini-deformation of pseudospherical
surfaces can now also be applied to the (K = -1) surfaces of revolution
and to the breather surfaces. The Bianchi-Bäcklund generation
of more complicated pseudospherical surfaces from simpler ones
is coded one step further to a surface called double breather.
-- We added some hyperbolic geometry to the 2-sheeted hyperboloid,
namely stereographic projection of polygon tilings in the disc
model (placed in the equator plane of the hyperboloid) to geodesic
polygons on the hyperboloid.
The Wave Category:
The new pseudospherical surfaces in the surface category are all
constructed from solutions of the Sine-Gordon Equation (SGE).
In the wave category these solutions themselves can be visualized.
All changes needed for the surface category led to corresponding
changes in the wave category.
The Plane Curve Category:
The solutions of the pendulum ODE were added as a new exhibit
since these solutions were needed to get those solutions of the
Sine-Gordon Equation which allow to apply the Dini-deformation
to all (K = -1) surfaces of revolution. (Previously only the pseudosphere
could be Dini-deformed.)
Work by Adriaan van Os on the conversion to Linux and Windows is still in progress. In spite of extensive code changes the response to users stayed the same, except that earlier settings files do not work any more. The code compiles now under Linux, some exhibits already run, but further GTK work still needs to be done. -- About half the additions to 10.11 result from the update of the Virtual Math Museum, since the earlier program version could not quite produce what we wanted. -- Missing ATOs were added (always: to the program and to the ATO hypertext collection). -- The Menu entries of active objects have checkmarks. -- Discovered bugs were fixed.
The Space Curve Category:
More constant curvature space curves were added, the new ones
lie on cylinders. A plane with a circle can be rolled into cylinders
while deforming the circle to keep its space curvature constant.
Spherical lemniscates were added together with their mechanical
construction, analogous to the planar case. -- Finding and moving
of closed geodesics on implicit surfaces was improved.
The Surface Category:
Scaling parameters were added to the definitions of several minimal
surfaces so that they can be made small enough to allow views
from far away. -- For many minimal surfaces with translation symmetries
the number of shown tiles can be controlled from the Action Menu.
-- Scherk defined his singly periodic surface as an implicit surface,
this historic version was added. -- The Inverted Boy minimal surface
is too complicated for one picture, we show three different parts.
-- Parameters hh, ii were added to the Clifford torus to allow
torus knots as parameter lines. The inside-out conformal morph
changes p-q-knots to q-p-knots. -- An ODE-based computation of
selfintersection curves was added to Klein, Whitney Umbrella,
Right Conoid, both Boy surfaces and Snail Shell. These curves
are visible when 'Draw with Contours' is selected. -- Untangling
an SO(3)-loop was added (rotations are visualized by moving spherical
polygons on concentric spheres). -- A new exhibit, 'Projected
Sphere', is added with Action Menu entries specific to spheres:
The sphere can be shown with four different coordinate grids;
stereographic projection or Archimedes' projection can be added
in suitable cases; spherical curves with their mechanical constructions
can be added.
The main reason for 10.10.1 is a fixed crashing bug. In addition, the mathematical documentation has been almost completed, including the hypertext version. Just four files are missing.
The Conformal Maps Category:
The visualization of the Jacobi SN function has been much improved
and its ATO compares it with the other elliptic functions in 3D-XplorMath.
The Surface Category:
The drawing of geodesics on implicit surfaces has been extended
to constant geodesic curvature lines (from the Action Menu).
The Space Curve Category:
New closed constant curvature curves have been added. They are
constructed on Tori, Ellipsoids of Revolution and Elliptic Cylinders.
Work by Adriaan van Os on the conversion to Linux and Windows is still in progress. In spite of extensive code changes the response to users stayed the same.
All our 'About This Object '-texts (called ATOs) plus a few more are now available from the Documentation Menu as one well linked hypertext file. -- 3D-XplorMath is signed when compiled under ElCapitain; an unsigned 10.6.8 compilation runs as far back as under 10.4.11. -- We added more screen messages to help users. -- And we have one less crashing bug.
The Conformal Maps Category:
More Pre- and Post-Compose options have been added. -- A new visualization
of elliptic functions is available from the Action Menu: The inverse
functions can be used to pull back the standard polar grid from
the sphere into the fundamental domain of the current torus, similar
to a hiking map with level lines.
The Surface Category:
The search for closed geodesics on implicit surfaces has been
improved. -- Three didactical minimal surfaces have been added:
Our Lopez-Ros 3-punctured sphere is extended to a chain of half
catenoids (up and down) and further to a doubly periodic field
of half-catenoids. And two such Lopez-Ros examples are stacked
above each other, giving an example with two planar and two catenoid
ends. These examples illustrate how shapes of minimal surfaces
can be amalgameted. -- Of the Fujimori-Weber triply periodic minimal
surfaces we included their basic examples. All these minimal surface
additions come with new ATOs.
The Plane Curve Category:
All moving decorations of the curves can also be run and saved
as movies - so that they can be sent to people asking questions.
Via the Action Menu osculating circles can be added to implicit
curves in two ways. A demo is added that shows osculating circles
to involutes. The parametrized curves can be shown together with
the graphs of their component functions. For completeness the
rendering of the curves as graphs in R^3 was also added.
The Space Curve Category:
All moving decorations of the curves can also be run and saved
as movies.
The Polyhedron Category:
The presentation of the dual polyhedra and their relation to the
original polyhedra has been improved.
The ODE Categories:
Computing speed on the one hand and CPU-independent delays on
the other hand have been improved.
The Conformal Maps Category:
An explanation of Stereographic Projection was added, accessible
via the Action Menu. And an Erase-entry for the segments and circles
which can be added to the grid.
The Surface Category:
A new Action Menu entry allows to search for closed geodesics
on implicit surfaces, because 3D-XplorMath chooses as initial
point of the geodesic a symmetry point of the surface, and many
closed geodesics through this point exist. The sensitivity of
the mouse is not yet documented. The feature should be tried out
on the implicit torus and the implicit ellipsoid. - Parametrized
Surfaces of Constant Width have been added. They can be rotated
inside a surrounding cube.
The Fractals & Chaos Category:
On the Henon Attractor one can now find periodic points. The period
2 and period 4 orbits are added by default. We did not find period
3 and period 5 orbits. Orbits of periods between 6 and about 18
can be found. The Henon map expands so much that for larger periods
the program does not find starting values for the algorithm that
converges to an orbit of the chosen period.
While version 10.8.1 started out as a bug-fix revision of Version 10.8, we have taken the opportunity to make some more substantial changes. In particular:
Starting with version 10.8.1, it is no longer required to run 3D-XplorMath from within the 3D-XplorMath ƒ folder. This is because the application file is now a bundle that contains the folder 3DFSDocs within it. (Previously, 3DFSDocs was a subfolder of the 3D-XplorMath ƒ folder and the application looked for it there when the user selected "About This Object..." from the documentation menu.) It is still possible to access the 3DFSDocs; just "right click" (i.e., click while holding down Control) the application file and select "Show Package Contents" from the resulting drop-down context-dependent menu.
We have been given financial support by the Hausdorff Institute 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.
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 type 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).
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.