Software for Geometry
Dr. Kurt Endl
Justus-Liebig-University Giessen, Dept. of Math., Hainstr. 27, D-35444 Biebertal
Tel: +49-6409-6516, Fax: +49-6409-6516, E-mail: email@example.com
Dr. Robert Endl
University of Marburg, Dept. of Math., Ockershaeuser Allee 28, D-35037 Marburg
The Software for Geometry has been developed over a period of eight years at the Department of Mathematics of the Justus-Liebig-University in Giessen (Germany). It has been published in two volumes. These books are in German, however the source code is entirely in English.
The Software for Geometry was presented at the Cebit ´93 and the Cebit ´95 at the booth of the University of Giessen. In 1993 - on the occasion of the University-Computer-Forum in Berlin - it was awarded the German-Austrian University-Software Prize as Best Teaching Software in Mathematics.
There have been two main reasons for the development of this software:
1.1 Mathematical Education
The Software for Geometry enables the student at the programming level to transfer his geometrical problems to programs in object oriented Pascal. It can be described as a toolbox of various programming tools for the treatment of geometrical problems and their realization on the computer. All the necessary tools and methods are mathematically developed and immediately transformed into types, procedures, functions, etc. In applying this software the student learns not only to understand and handle the geometrical background of a problem but also to transfer it into a program. This opens wide areas for realizing ideas of his own.
1.2 Solution of Geometrical Problems in Research
In many fields of research in science and industry
there are geometrical problems which cannot be handled by any commercial
software. The Software for Geometry allows the comfortable and fast
construction of programs for the solution of such problems. Applications
have been made in a variety of fields: simulation and analysis of curves
in medical problems, construction of form shoulders, approximation of curves
by lines and circles for cutting plotters and various problems in Descriptive
Geometry. Impressive applications have been made in Differential
Geometry and Ray Tracing.
2.1 Computer Graphics 1
In this volume the authors present a Software for Geometry running with Turbo Pascal 4.0 and later versions. The geometrical tools for computer graphics are developed in systematic form. The theoretical reasoning is immediately transformed into types, functions and procedures which are collected into seven units and twelve include files. These tools allow the immediate realization of complex 2D- and 3D-graphics.
In the toolbox the user finds - besides the procedures for the 2D- and 3D-vector calculus - important procedures for establishing 2D- and 3D-coordinate systems, for the rotation of points, lines and planes around arbitrary axes. Furthermore there are procedures for the intersection of lines with planes and of planes with planes, etc. In addition a perspective in the most general form is included.
Applications of this software are presented in 82
programs, where the use of the diverse toolbox items is thoroughly explained.
Starting with programs in 2D-graphics, in 3D-graphics the user will be
led to complex programs for the representation of platonic bodies and the
rotational surfaces sphere, cone and cylinder. At the same time arbitrarily
many of these bodies or surfaces can be drawn including their intersectional
lines. Here it is also possible to cut out the bodies or surfaces themselves.
Methods for producing ornamentation are presented for 2D- and for 3D-graphics.
All programs are at the same time screen- and plot-programs where the Hewlett-Packard
Graphics Language (HPGL) is used. The complete source code -
units, include files and programs - is available on the included 5¼"
disk. Immediately after installation the user can load and run a
program [Endl K. & Endl R. 1989], (http://www.uni-giessen.de/~gc1087/cg1/cg1.htm).
2.2 Computer Graphics 2
With the software of Computer Graphics 2 it is possible to create 3D-scenes with an arbitrary number of planes, rotational surfaces (sphere, cone and cylinder) and platonic surfaces (tetrahedron, cube, octahedron, dodecahedron and icosahedron). Here, all surfaces can be cut out in arbitrarily complex form using families of star curves, polygons and leaves. At the same time the background can also be formed in many ways. In addition all surfaces can be provided with a different ornamentation inclusive text.
In constrast to the software of Computer Graphics 1 which was developed using Turbo Pascal 4.0, now the software is conceived in object-oriented dynamic programming. It runs on Turbo Pascal 5.5 and later.
Computer Graphics 2 is divided into two parts: The first part is the application part and contains 89 programs. Here - in very concise form - all object types together with the decisive methods are presented and immediately applied in example programs. This part does not require any knowledge of Computer Graphics 1. The second part is the implementation part. Here the geometrical methods that were developed in Computer Graphics 1 are used. The corresponding source code is put in units whose declaration part is given in the annex. To understand the implementation part some references to Computer Graphics 1 cannot be avoided.
Again all programs are at the same time screen and plot programs using HPGL. The complete source code - 89 programs and 12 units with 78 object types are available on the included 5¼" disk. Immediately after installation the user can load and run a program. [Endl K. & Endl R. 1989], (http://www.uni-giessen.de/~gc1087/cg2/cg2.htm)
2.3 Porting the Software for Geometry to Delphi
The programs in these volumes can be easily ported to Borland’s Delphi. For examples of programs ported from Computer Graphics 2 to Delphi see the page: http://home.t-online.de/home/wuerfel.verlag
3. The CD-ROMs
To demonstrate the power of the Software for Geometry three CD-ROMs have been produced between 1994 and1997. The intention of these CD-ROMs is not only to show the various possibilities and applications of the Software for Geometry but also to show the user the beauty of geometry and to animate him into creating geometrical figures on his own.
All three CD-ROMs were widely reviewed in computer
journals, weekly journals and daily newspapers. In 1996-97 the Beauty
of Geometry and the Fascination of Interactive Computer Graphics
were shown in the Deutsches Museum in Munich on the occasion of
the exposition Digital Worlds . In addition the three CD-ROMs are
also on permanent show in the Digital Workshop of the Heinz Nixdorf
Museum in Paderborn.
3.1 Beauty of Geometry, Science and Aesthetics
This CD-ROM represents a multimedia collection of 620 pages with innumerable hyperlinks. [Endl K. & Endl R. 1994], (http://www.uni-giessen.de/~gc1087/schoenh/schoenhf.html). It is divided into two chapters:
3.1.2 Software for Geometry
This chapter contains vector graphics as a direct application of the Software for Geometry. In 2D-graphics a variety of classical curves such as astroids, rosettes, cycloids, etc. are discussed. Furthermore families of those curves are formed. In 3D-graphics planes, rotational surfaces (sphere, cone and cylinder) and Platonic and Archimedic bodies are introduced, leading to many surprising motifs. All surfaces can be cut out in complex forms with the curves introduced in 2D-graphics. At the same time it is possible to paint these surfaces with families of these curves, also with very sophisticated ornamentation.
There are 400 different motifs which can be seen. In addition all these motifs are saved as vector graphics and can be loaded and run. This is especially interesting because it shows the genesis of a motif giving insight also into the geometrical construction. During the drawing of such a motif one can change colors, the width of the pen and other parameters.
There are also 10 demos showing the history of the
Software for Geometry and various application in Differential Geometry.
3.1.2 Ray Tracing
This chapter gives an application of the Software for Geometry to ray tracing (see also 5.1). Although the technique of ray tracing is completely different to that of vector graphics, the methods of the Software for Geometry are used to create very complex photo realistic images. There are sections on illumination models, acceleration techniques and 2D- and 3D-textures. In each of these sections a theoretical introduction is also given. All this leads to 220 motifs, including fractal motifs, Sierpinsky-Tetrahedron, scenes with chessmen and glasses, still lifes, etc.
One of the chessmen scenes won the Computer Graphics
Forum cover photograph prize competition in 1995.
3.2 Fascination of Interactive Computer Graphics
In 1995 the appearance of Borland’s Delphi made it possible to create interactive programs with the Software for Geometry very easily. The CD-ROM Fascination of Interactive Computer Graphics includes 30 interactive programs for 2D- and 3D-graphics. Here the user is able to realize his own artistic ideas. He can change the geometrical scene, the type of ornamentation on the surfaces or the background, the kind of curves used on the surfaces, the colors, the width of the pen and many more parameters. With simple movements of the mouse he can arbitrarily change the perspective. Furthermore he can save the results as bitmaps and HPGL files [Endl K. & Endl R. 1996]. (http://www.uni-giessen.de/~gc1087/faszinat/faszinat.htm)
The graphical user interface of the CD-ROM starts with an introduction and a user’s guide. In a short and not always completely serious manner a brief introduction is given to the history of Euclidean Geometry and Analytic Geometry. Among the demos there is a demo on the Beauty of Geometry and 7 demos of applications to Differential Geometry. Furthermore there are various articles on the „Software for Geometry„ and references to the literature. In 2D-graphics various interactive programs on families of curves are presented. In 3D-graphics there is a brief theoretical introduction to the representation of planes, rotational surfaces and Platonic bodies. Many interactive motifs using these elements are presented. The background can be formed with 12 different kinds of ornamentations.
The Fascination of Interactive Computer Graphic" was awarded the German Education Software Prize digita 96 at the 1996 book fair in Frankfurt.
3.3 Wunderworld of Interactive Computer Graphics
With this CD-ROM the authors have tried - even more than in the preceding CD-ROM - to lead the user in an intuitive way through handling the interactive programs. There are 53 interactive programs with 44 variations. The idea of the variations is to give an impression of how different the results can be obtained from the same program by simply altering a few parameters [Endl K. & Endl R. 1989], (http://www.uni-giessen.de/~gc1087/wunder/wunder.htm).
Now there are 20 kinds of ornamentations that can be used for the background as well as for the surfaces. Each change of a parameter can be tested immediately! This is very important because most of the programs are very complex. Again the perspective can be changed by simple movements of the mouse and the results can be saved as bitmaps and HPGL files.
As a new feature, a guided tour has been created as an insight in the workshop revealing some of the programming secrets. Among the demos one finds a demo on the CD-ROMs Beauty of Geometry and Fascination of Interactive Computer Graphics as well as 7 demos of applications to Differential Geometry.
In the chapter on ornamentations a new type of fill-ornamentation
is introduced serving as a prototype for tiling surfaces. As applications
of Platonic and Archimedic bodies there are interesting applications such
as Euro-football, Adeno virus and the C60 molecule. There are also five
Impossible Figures à la Escher and a gallery of 11 even more
4. Available Internet Applications of the Software for Geometry
Recently there have been two Software for Geometry initiatives to the Internet. The purpose is to establish a public computer graphics forum for the software.
To show what can be done with the Software for Geometry and these CD-ROMs, two illustrations have been introduced.
4.1 Picture of the month
Under this title a new interactive program for generating complex pictures is presented each month. The interactive executable can be downloaded and permits almost an infinite number of variations. The style of the programs follows those of the interactive CD-ROMs. Hence the newly created motifs can be saved as bitmaps or HPGL files (http://www.uni-giessen.de/~gc1087/ bildmona/index.html).
Under this title one can enter a gallery of complex
motifs created using the programs of the month and the programs on the
three CD-ROMs. The pictures are commented, they can be enlarged and of
course downloaded (http://www.uni-giessen.de/
5. The book Creative Computer Graphics
Before the development of the Software for Geometry, a more elementary introduction for programming geometry appeared in 1986 using the programming language GW-Basic. In 2D-graphics, there are chapters on the basics of geometry: coordinate systems, elementary vector calculus, angles and trigonometric functions, lines, circles, classical curves such as astroids, lissajous figures, spirals, polygons, etc. In 3D-graphics planes and rotational surfaces (sphere, cone and cylinder) are treated as well as coordinate systems and vector calculus. It finishes with the construction of ornamention on surfaces.
In a second edition in 1993, all the programs were
adapted to Q-Basic [Endl K. 1993], (http://www.uni-giessen.de/~gc1087/kreativ/kreativ.htm).
An important application of the Software for Geometry was developed at the University of Marburg between 1990 and 1995. For this an object-oriented ray tracing system for the large class of acceleration techniques using spatial subdivisions was designed and implemented. The object-oriented approach of the architecture enables an open, extendable system including qualitative and quantitative methods for the comparison of spatial subdivision techniques.
6.2 Differential Geometry
Quite a number of applications of the Software for Geometry were made to Differential Geometry. In this direction two members of the Mathematical Institut at the University of Giessen – Eberhard Malkowsky and Wolfgang Nickel – extended the Software for Geometry to a Software of Differential Geometry. This is also an object-oriented software in Pascal on the programming level. Here the whole arsenal of notions and methods of Differential Geometry has been added. Quite a number of applications of this software have been made since the appearance of this book [Malkowsky E. & Nickel W. 1993].
Another interesting application was made by Markus
Failing at the same Institute. He uses the methods of Differential Geometry
and Computer Graphics to investigate the famous theory of G. Wulff on the
growth of crystals and their connection with potential surfaces. [Failing