Dynamic Geometry on the WorldWideWeb

Gilles Kuntz (gilles.kuntz@imag.fr)
Leibniz IMAG, Université de Grenoble, France


Abstract
The development of dynamic geometry in teaching is arousing the creation of many pedagogical Web sites that cannot take benefit from this technology throughout their pages at the present time. Classical techniques in figures animation on the Web are either too limited, or too difficult to implement. The project Cabri-Java plans in a first time to develop a Java applet allowing to bundle all the advantages of dynamic geometry in active figures. The realization of a complete Java application for creating and manipulating figures is being studied.

 

Table of Contents

 

Dynamic Geometry and Teaching

The developement of Dynamic Geometry has been closely related to the development of Direct Manipulation.

Actually dynamic geometry roots probably long time ago when some mathematicians including Clairault (XVIII) or some more recent authors have considered the idea of moving elements of figures in order to illustrate (geometrical) phenomenons and to prove theorems .

Dynamic Geometry with Direct Manipulation is often embodied in computer environments offering to the user - teacher or student - an opportunity to develop intellectual activities based on geometrical knowledge. In other words the user is placed in a microworld, in the sense of what has been called by Seymour Papert when writing his most famous book Mindstorms,Children, Computers, and Powerful Ideas [1] (Cf the Logo orientation). In contrast to Logo in a microworld centered on geometry, as implemented in Cabri or Geometer's Sketchpad, the mathematical content to be taught plays a key role. Through Direct Manipulation the student can construct his own sophisticated construction, mobilizing for that more or less complex geometrical knowlege, and he can interact directly with the representations of the theoretical geometrical objects. Key features of such Dynamic Geometry environments are

  • a mathematically solid base of the implemented geometry
  • a user's friendly Man-Machine interface to allow for immediate familiarity with a substantial part of the environment
  • a fast feedback of the system to allow the user to have control of the behaviour of the objects (s)he has constructed.

For many years, works [2,3, 4, 5] have shown the importance of direct engagement of the learner using construction software for manipulating of geometrical objects. . Research made around the software Cabri-géomètre [6] underlines the preponderant role of student's personal investment.This frees his mind from the difficulties he is faced with when constructing geometrical objects that can be often difficult to draw, and he can freely analyze problems that are posed for him in an active and dynamic way. Cabri, as a multilingual software available on Macintosh or PC platforms, but also on pocket calculators [7] has today exceeded the million of copies sold around the world and has aroused the creation of many collaborative groups such as "Cabri clubs". Its use in classroom, but also in auto-learning out of school time has been so much greatly developed so that hundreds of users meet together during Summer Institutes organized about this software.

This tool for dynamic geometry is also used in a fruitful manner in other areas where geometry serves as mathematical support for scientific modeling in optics, electronics, mechanics, astronomy...

[Cabri-géomètre example]
That kind of tools turns out to be also well suited in contexts involving disabled students being in difficulties, either at the school level (personalized support), or at the medical level (TéléCabri project [8] , a distance learning project for hospitalized children).

 

Geometry on WWW

From its beginning, the Web appeared as an indispensable tool to allow in the first place for a better collaboration between teachers. They were able to exchange their courses, discuss on concrete documents about best tools for teaching. Mailing lists have been created, many Web sites have extended through the world; some of them include particurlarly dynamic geometry.

Other teaching experiences where the main centre of interest is the creation of Web sites by pupils themselves, have spread out recently. In this framework, pupils become to be actors of their learning, to communicate with others classes throughout the world, and to share their growing knowledge. Faced with this new situation, some students who were exposed to a traditional teaching feel comfortable in a context where personal initiative is more requested. Generous ideas of youth to help other pupils who perform badly at school or are experiencing momentary difficulties (for example hospitalized) often motivate children to give their best to put exercises and comments on the Web, or edutainment activities or corrected versions of homework (see for example this site of a college from Grenoble[6].

How to manage then to gather benefits of dynamic geometry and the Web?

The first solution consists in describing in phrasing of the problem and by screen copies, the exercises that have to be done with the help of a software as Cabri-géomètre. The major disadvantage of this method is a loss of time caused by the installation of geometrical elements of the figure before being able to really tackle the problem posed. The play side of the learning process through the Web is then totally erased.

A second possibility is to allow the direct transfer of files coming from the dynamic geometry software from the Web server. This solution needs the definition of a MIME type for the transfer of files, the configuration often manual of the browsers as well as the preliminary existence of the software Cabri-géomètre on the client's computer. The client will have to be able thus to launch the software at the same time that the browser, as an application helper. If all these conditions are gathered, the user will be able thus to take full advantage of the capacities of the software, but his work will not be directly integrated in the page Web where the figure will have been unloaded. It will have then to make back and forths between the software and the browser to follow for example the instructions given in the Web page.

These two methods have therefore the disadvantages to require several preliminaries for the use of dynamic geometry through the Web :

  • to have the software Cabri-géomètre, which does not run outside the compatible systems DOS, Windows or MacOS.
  • to have its browser configured in order to launch Cabri directly from the downloaded figures or macros .
  • to have an enough powerful computer to allow the launching of the two softwares concurrently : the browser and the dynamic geometry software.

Until a more adapted solution is found, some sites use nevertheless this method as for example the site abraCAdaBRI [10] available on the server of the Cabri project. But all the webmasters of these sites request to have the possibility to place animated geometry figures directly in their Web pages.

 

Classical Supports for Animations

Let's study the ways to put animations done with an dynamic geometry software directly in pages of a Web site.

QuickTime or AVI which are animations people use mostly have formats that can be useful to code animated sequences captured from a direct use of the software. But despite these formats are taking up a growing part on various platforms, some incompatibilities with some systems are remaining. Moreover the size of corresponding produced animations remains often too important for slow connections.

To overcome the impact of this difficulty a solution can consist in producing graphic animations in the format of animated Gifs, directly supported by all recent browsers. Today, many tools allow to create such animations by a sequence of files taken from "screen snapshots". By limiting the number of colors (a coding on 4 or 5 bits is often enough), the size of the animated files is often smaller than the size of corresponding QuickTime or AVI files. The official Cabri site shows some simple examples of animations that can be produced.

These animations have nevertheless a major defect : they are only " pictures " of an animated sequence and in front of them pupils remain passive. Any direct commitment disappears and with it one of the essential contributions to the Sciences of Education of these last years.

Then, how to allow to create a real interactivity between pupil and animated picture on the Web ?

The first solution is to use one of the most well-known softwares in animation like Macromedia Shockwave to create animated sequences based on a real interaction scenario ; the free use of the Shockwave plugin allows then the integration of animation into Web pages. It is this way which has been used in some pages of the site AbraCadaBRI [10], whose a copy figures hereafter.

[Shockwave animation]

This method involves several major disadvantages :

  • the cost of the software Director making Shockwave animations often too expensive for school budgets.
  • the necessary time to create an animation (the author of the animation shown in the above example, claims he has needed a complete day to create it).
  • the interactivity too heavely controlled by the system reducing the freedom to explore and discover new solutions.
  • the additional memory size asked to the browser when loading the plug-in which often causes a lockout of this plug-in on limited configurations.

An other solution would be to realize a specific plugin allowingto recreate the Cabri environment for figures integrated into the Web pages. Writing this plugin with a native code presents pros and cons. On the one hand, it is the best way to put Cabri on the Web, but on the other hand, it is necessary to rewrite the plugin for each existent or future system. This last point added to the problem of the preliminary installation inherent in plugins led us to turn down this possibility.

 

Cabri-java

[Pythagoras]

The solution finally chosen to put active figures on the Web was to use the language object Java. This choice has been taken for several reasons:
  • the Java multiplatform support through virtual machines for each architecture,
  • the increasingly close integration of Web and Java in recent browsers,
  • the object-programming well adapted for realizing animation of geometrical structured objects.

The project Cabri-Java in its current phase devotes in a first time to writing an applet allowing to animate a dynamic geometry figure by resuming as best as possible ergonomics of the software Cabri. This is sometimes difficult to do because of gaps contained in first tools of Java development (JDK 1.0.2). By example, the only standard classes known by browsers do not propose direct possibility to change the mouse cursor's form in an applet, neither to display pop-up menu in the applet zone itself. At the graph level, the aspect for dotted or bold lines is not planned, unless to program it oneself, what would not be efficient compared with the selection of native methods on each architecture. All these gaps are nevertheless on the way to being filled by JDK 1.2 and the new standard Java 2D API.

Once Java has been chosen, it remains to determine the way to transmit to the applet the numerous parameters allowing to define a geometrical figure even not very complex. A solution could be to describe all objects and their properties with the help of PARAM tags of the applet. This is the way chosen to communicate geometrical data to applet in two other dynamic geometry java projects [11, 12] But, on the one hand it is soon very difficult to create manually all these data and on the other hand HTML files would have become then very heavy. The undertaken choice has been to preserve all the files generated by the software Cabri by putting them on the server in order the applet could read them, only one tag PARAM was necessary to indicate the file name and its position on the Web server.

The advantage of this solution is an easy publication, but the disadvantage is that it requires to have the software Cabri, what is not a real restriction for webmasters who are developing sites devoted to the use of this software in classroom...

[Cabri-java figure]

How to do in practice to publish an active figure ?

  • It is necessary to put on the Web server binary files Java (.class) of the applet or a non compressed zip archive of these binaries. (One can also reference an other server that have the applet binary through the parameter CODEBASE).
  • In Web pages, the whole tag describing the applet can be for example:
    <APPLET CODE="CabriJava.class" WIDTH=600 HEIGHT=400 ARCHIVE="CabriJava.zip">
    <PARAM name = "lang" value = "en">
    <PARAM name = "file" value = "figures/College/Star">
    </APPLET>
    The "lang" parameter can for the moment take " fr" values for the French messages and "en" for the English ones.
    The "file" parameter indicates the path (here the relative one) of the figure on the server.
  • Other decoration parameters have been added like tags for Web page's background :
    <PARAM name = "background" value = "images/bg.gif">
    <PARAM name = "bgcolor" value = "#F0F0A0">
    <PARAM name = "border" value = "0">
 

In its current preliminary version, the CabriJava applet already allows to put active figures in Web pages, in which the user can drag geometrical objects while preserving the geometrical properties defined in their creation. A demonstration page is available on the Cabri project's server [13] and allows to better test the possibilities.

Even if all the possibilities of the software Cabri are not yet transcribe in Java (loci, conic...), a first pedagogical use has already been done on the Mathematical Server of La Réunion [14]

To the current stage, Cabri-Java suffers from slowness of virtual machines proposed with browsers. But a new generation of VM (virtual machines) is coming, implementing JIT (Just-In-Time) compilation technology, allowing to obtain a feedback really sufficient during objects draging .

 

Future Work

[bicycle]

In parallel with the work consisting in completing the CabriJava applet to integrate in it most of the possibilities offered by the software itself, the project is developing into two ways:

  • implementing "a priori" or on action animation aspects : Cabri already allows to animate figures on user's action by using the "animation spring" tool as in the opposite figure. But, it seems also useful to be able to animate figures on the Web immediately from their display in case of no intervention from the user. In order to specify the drag that should be undertaken, a supplementary parameter of the applet will be able for example to transmit messages to named objects of the figure through a script language already defined in the framework of Cabri-script project for communication between Cabri figures.
  • conceiving and realizing a Java application for constructing and manipulating Cabri figures: the equivalent of a multi-platform Cabri. Even if this program will never have the fluidity of Cabri native applications, it will be very helpful to create figures that could be then used by CabriJava applet. An other interest of such application will be to enable a best knowledge of dynamic geometry by allowing a larger distribution of its approach and its use in many active figures throughout Web pages. To develop such an application presenting a same user- interface on all platforms, it is envisaged to use Java Foundations Classes defined by SUN [14]

 

References

  1. Papert S "Mindstorms,Children, Computers, and Powerful Ideas" 1980 New-York
  2. Schneiderman B "Direct Manipulation: a Step Beyond Programming Languages", IEEE Computer (16)8 57-69 1983
  3. Laborde JM "Des connaissances abstraites aux réalités artificielles, le concept de micromonde Cabri" dans Environnements Interactifs d'Apprentissage avec Ordinateurs, pp 29-41, Eyrolles Paris 1996
  4. Laborde JM & Strasser R, "Cabri-Géomètre : A microworld of geometry for guided discovery learning", Zentrablatt für Didactik der Mathematik 5 p. 171-177, 1990
  5. Schumann H "The design of microworlds in geometry based on a two-dimensoinal graphics system devised for second education", INT. J. MATH. EDUC. SCI. TECHNOL., 1993, VOL. 24, N°2, 231-250
  6. Official Cabri project site
    http://www-cabri.imag.fr/index-e.html
  7. Texas Instruments Cabri site
    http://www.ti.com/calc/docs/cabri.htm
  8. TeleCabri project site
    http://www-cabri.imag.fr/TeleCabri/
  9. Desigaux M. Collège Jules Flandrin
    http://www-cabri.imag.fr/TeleCabri/PassionRecherche/
  10. Martin Y. abraCAdaBRI site
    http://www-cabri.imag.fr/abracadabri/
  11. Jackiw N. JavaSketchpad site
    http://forum.swarthmore.edu/dynamic/java_gsp/
  12. Joyce D. Geometry applet site
    http://aleph0.clarku.edu/~djoyce/java/Geometry/Geometry.html
  13. Kuntz G. Cabri-java project 1997
    http://www-cabri.imag.fr/cabrijava/
  14. Hakenholz E. First real experiment of Cabri-java 1998
    http://www.ac-reunion.fr/pedagogie/covincep/icosaweb/GeomJava/activite/Quatre/Docs/Pytha/Pytha.htm
  15. Sun Microsystems Java Foundations Classes
    http://java.sun.com/products/jfc/