Interactive geometry software (IGS) or dynamic geometry environments (DGEs) are computer programs which allow one to create and then manipulate geometric constructions, primarily in plane geometry. In most IGS, one starts construction by putting a few points and using them to define new objects such as lines, circles or other points. After some construction is done, one can move the points one started with and see how the construction changes.
The earliest IGS was the Geometric Supposer, which was developed in the early 1980s. [1] This was soon followed by Cabri in 1986 and The Geometer's Sketchpad.
There are three main types of computer environments for studying school geometry: supposers[ vague ], dynamic geometry environments (DGEs) and Logo-based programs. [2] Most are DGEs: software that allows the user to manipulate ("drag") the geometric object into different shapes or positions. The main example of a supposer is the Geometric Supposer, which does not have draggable objects, but allows students to study pre-defined shapes. Nearly all of the following programs are DGEs. For a related, comparative physical example of these algorithms, see Lenart Sphere.
The following table provides a first comparison of the different software according to their license and platform.
Software | Cost (USD) | Licence | Platforms |
---|---|---|---|
Cabri Geometry | ? | Proprietary | Windows, macOS |
C.a.R. | Free | GPL | Windows, Linux, macOS |
CaRMetal | Free | GPL | Windows, Linux, macOS |
Cinderella 1.4 | Free | Proprietary | Windows, Linux, Mac OS X (Java) |
Cinderella 2.0 | Free | Proprietary | Windows, Linux, Mac OS X (Java) |
DrGeo | Free | GPL | Windows, Linux, Mac OS X |
GeoGebra | Free/Paid | GeoGebra License [3] | Windows, Linux, Mac OS X |
Geom | Free | ? | Windows, MacOS, Linux |
The Geometer's Sketchpad | 70.02 US$ | Proprietary | Windows, Mac OS X (Java) |
Geometry Expert (GEX) | ? | ? | Windows, Linux, Mac OS X |
GEUP | ? | Proprietary | Windows |
Kig | Free | GPL | Linux |
KSEG | Free | GPL | Windows, Linux, Mac OS X |
WIRIS | ? | Proprietary | Linux, Windows, Mac OS X (Java) |
Software | Cost (USD) | Licence | Platforms |
---|---|---|---|
Archimedes Geo3D | Shareware | Proprietary | Windows/Mac OS X/Linux |
GeoGebra (from version 5.0 Beta) | Free/Paid | GeoGebra License [3] | Windows, Linux, Mac OS X, Android, iOS, Windows RT |
GEUP 3D | ? | Proprietary | Windows |
Yenka 3D Shapes | Free for non-commercial use | Proprietary | Windows |
WIRIS | ? | Proprietary | Windows, Linux, Mac OS X |
The following table provides a more detailed comparison :
Software | Calculations | Macros | Loci | Animations | Scripting | Assignments | LaTeX export | Web export | Multilingual | Proofs | Extra |
---|---|---|---|---|---|---|---|---|---|---|---|
Cabri II Plus | Yes | Yes | Yes | Yes | Yes | Yes (with plug-in) | No | Yes | Yes | Yes (on relations) | Available on TI Calculator |
Calques 3D | Yes | Yes | Yes | Yes | No | No | No | No | Yes (FRA ENG DEU ESP PTG) | Yes (on relations) | Experimental connection with some CAS |
CaR | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | ? |
CaRMetal | Yes (recursive) | Yes | Yes | Yes (multiple) | Yes (JavaScript) | Yes | Yes | Yes | Yes | Yes (probabilistic) | Amodality, folder system, the Monkey |
Cinderella | Yes | Yes | Yes | Yes | Yes | Yes | Yes (PDF) | Yes | Yes | Probabilistic | Several geometries, Physics simulations |
Ganja.js | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | No | No | 2D and 3D, projective and conformal, Geometric Algebra. |
GCLC | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Readable proofs, support for 3D |
GeoGebra | Yes | Yes | Yes | Yes | Yes (JavaScript) | No | Yes (PSTricks & PGF/TikZ) | Yes | Yes (55 languages) | Yes | CAS, HTML5 Export (from version 4.2) 3D & Automatic Proof (from version 5.0) |
Geometria | Yes | No | Yes | Yes | No | Yes | No | Yes | Yes | No | Two-role (teacher, student) model |
Geometrix | Yes | No | Yes | Yes | No | Yes | No | No | Yes | Yes | Interactive proof, diagram checking, teacher/student models, labels with dynamic placeholders |
Geometry Expressions | Yes | No | Yes | Yes | No | No | Yes | Yes (Interactive HTML5/JS Apps) | Yes | No | Symbolic calculations, which can be copied as input for CAS, TeX, and source code in 21 formats/languages. Functions. Arcs on any function or curve. Website for exported HTML5 Canvas and JavaScript Interactive Apps (Euclid's Muse). |
GeoNext | Yes | No | No | Yes | ? | ? | No | ? | Yes | No | Available as a web app |
Géoplan-Géospace | Yes | Yes | Yes | Yes | Yes | No | No | Yes (activeX) | Yes | Yes | Sequences, 2D & 3D, human readable file format |
GeoProof | Yes | No | No | No | No | No | Yes | No | No | Yes | Automatic formal proofs |
GEUP | Yes | Yes | Yes | Yes | Yes | No | ? | No | Yes | No | CAD functionality through CADGEUP |
iGeom | Yes | Yes | Yes | No | Yes | Yes | No | Yes | Yes | Probabilist | Recurrent scripts |
Kig | Yes | Yes | Yes | No | Yes (Python) | No | Yes (PSTricks) | No | Yes | No | Labels with dynamic placeholders |
Live Geometry | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Includes player. |
Sarit2d | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Available on web |
Sketchpad | Yes | Yes | Yes | Yes | Yes | No | ? | Yes (limited) | Yes | No | Functions & function plots, symbolic differentiation, mathematical notation |
Tabula | Yes | Yes | Yes | Yes | No | No | No | No | No | No | Folding, cutting, taping, marker, and working instrument models. |
Tabulae | Yes | Yes | Yes | No | No | No | No | Yes | Yes | No | Collaborative sessions over the internet. |
Cabri 3D | Yes | No | No | Yes | No | No | No | Yes (limited) | Yes | No | ? |
Archimedes Geo3D | Yes | Yes | Yes | Yes | No | No | No | No | No (Eng De Fr) | No | Intersection of Loci |
GEUP 3D | Yes | Yes | Yes | Yes | Yes | No | No | No | Yes | No | CAD functionality through CADGEUP |
Netpad | Yes | Yes | Yes | Yes | No | No | No | Yes | No | Yes | Base on Web |
Software | Calculations | Macros | Loci | Animations | Scripting | Assignments | LaTeX export | Web export | Multilingual | Proofs | Extra |
Features related to macro constructions: (TODO)
Software | Allows recursity | Allows saving |
---|---|---|
Cabri II Plus | Yes | Yes |
Calques 3D | No | Yes |
GCLC | No | No |
GeoGebra | Yes | Yes |
Géoplan-Géospace | Yes | Yes |
GEUP | Yes | Yes |
iGeom | Yes | Yes |
Kig | ? | Yes |
KSEG | Yes | Yes |
Sketchpad (GSP) | Yes (via Iteration) | Yes |
Loci features related to IGS: (TODO)
Software | Take a point of a locus | Intersection of two loci |
---|---|---|
Cabri II Plus | Yes | Yes |
Calques 3D | No | No |
CaR | Yes | Yes |
GeoGebra | Yes | No |
Géoplan-Géospace | Yes | No |
GEUP | Yes | Yes |
iGeom | Yes | No |
Kig | Yes | No |
Sketchpad (GSP) | Yes | No |
NetPad | Yes | Yes |
We detail here the proof related features. (TODO)
Software | Interactive Proofs | Automatic Proofs | Probabilist Proofs |
---|---|---|---|
Cabri II Plus | Feedback for | No | Yes in Cabri I |
Cinderella | No | Using external CAS | Yes |
GCLC | No | Yes | No |
GeoGebra | Yes | Yes | No |
Geometrix | Yes | Yes | No |
Géoplan-Géospace | No | No | Yes |
GeoProof | Yes | Yes | No |
iGeom | No | No | Yes |
Jeometry | No | Yes | No |
NetPad | Yes | Yes | ? |
Measurement and calculation features related to IGS: (TODO)
Software | Arbitrary Precision | Arithmetic expressions | Trigonometric functions | If | Object existence test |
---|---|---|---|---|---|
Cabri | Yes | Yes | Yes | Yes | No |
Calques 3D | No | Yes | Yes | No | No |
C.a.R. | No | Yes | Yes | Yes | Yes |
GCLC | No | Yes | Yes | Yes | Yes |
GeoGebra | No | Yes | Yes | Yes | Yes (JavaScript) |
Geometria | No | Yes | Yes | No | No |
Géoplan-Géospace | No | Yes | Yes | Yes (μ function) | No |
GeoProof | Yes | Yes | Yes | Yes | No |
Geometrix | No | Yes | Yes | Yes | No |
iGeom | No | Yes | Yes | No | No |
NetPad | Yes | Yes | Yes | Yes | No |
Software | PNG | BMP | TIFF | GIF | SWF | SVG | EMF | Fig | Postscript | LaTeX/Eukleides | LaTeX/Pstricks | LaTeX/PGF/TikZ | Asymptote | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Calques 3D | No | No | No | No | No | No | No | Yes | No | No | No | No | No | No |
C.a.R. | Yes | No | ? | ? | ? | Yes | No | Yes | Yes | No | No | Yes | ? | ? |
Cinderella | Yes | Yes | ? | ? | ? | ? | ? | ? | No | Yes | ? | ? | ? | ? |
GCLC | No | Yes | No | No | No | Yes | No | No | Yes | No | No | Yes | Yes | No |
GeoGebra | Yes | No | No | Yes (animated) | No | Yes | Yes | No | Yes | Yes | No | Yes | Yes | Yes |
Geometry Expressions | Yes | Yes | Yes | Yes (animated) | No | No | Yes | No | Yes | No | ? | ? | ? | ? |
GeoProof | Yes | No | ? | ? | ? | Yes | No | No | No | No | Yes | No | ? | ? |
Kig | Yes | Yes | ? | ? | ? | Yes | No | Yes | Yes | Yes | No | Yes | ? | ? |
KmPlot | Yes | Yes | ? | ? | ? | Yes | ? | ? | ? | ? | ? | ? | ? | ? |
KSEG | Yes | Yes | ? | ? | ? | No | No | ? | No | No | No | ? | ? | |
Geometrix | No | Yes | Yes | Yes | Yes | Yes | No | No | No | No | No | No | ? | ? |
iGeom | No | No | No | Yes | No | No | No | No | Yes | No | No | No | ? | ? |
Software | Color | Filled/Not filled | Width | Transparency | Shown/Hidden | Layer | Shape of points | Type of line |
---|---|---|---|---|---|---|---|---|
Cabri | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes |
Calques 3D | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes |
C.a.R. | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
GCLC | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes |
GeoGebra | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
Geometria | Yes | Yes | No | Yes | Yes | Yes | No | Yes |
Geometry Expressions | Yes | Yes | Yes | Yes | Yes | Yes | No (but size) | Yes |
Géoplan-Géospace | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes |
Kig | Yes | Yes | Yes | No | Yes | No | Yes | Yes |
GeoProof | Yes | No | Yes | No | Yes | Yes | Yes | Yes |
Geometrix | Yes | Yes | Yes | No | Yes | No | Yes | Yes |
GEUP | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes |
iGeom | Yes | Yes | Yes | No | Yes | No | No | Yes |
Sketchpad | Yes | Yes | Yes | Yes | Yes | ? | Yes | Yes |
NetPad | Yes | Yes | Yes | Yes | Yes | Yes | No (but size) | Yes |
C.a.R. is a free GPL analog of The Geometer's Sketchpad (GSP), written in Java.
Cabri Cabri was developed by the French school of mathematics education in Grenoble (Laborde, 1993)
CaRMetal is a free GPL software written in Java. Derived from C.a.R., it provides a different user interface.
Cinderella, written in Java, is very different from The Geometer's Sketchpad. The later version Cinderella.2 also includes a physics simulation engine and a scripting language. Also, it now[ when? ] supports macros, line segments, calculations, arbitrary functions, plots, etc. Full documentation is available online.
Dr Genius was an attempt to merge Dr. Geo and the Genius calculator.
Dr. Geo is a GPL interactive software intended for younger students (7-15). The later version, Dr. Geo II, [4] is a complete rewrite of Dr. Geo, for the Squeak/Smalltalk environment.
GCLC [5] is a dynamic geometry tool for visualizing and teaching geometry, and for producing mathematical illustrations. In GCLC, figures are described rather than drawn. This approach stresses the fact that geometrical constructions are abstract, formal procedures and not figures. A concrete figure can be generated on the basis of the abstract description. There are several output formats, including LaTeX, LaTeX/PStricks, LaTeX/Tikz, SVG and PostScript. There is a built-in geometry theorem prover (based on the area method). GCLC is available for Windows and Linux. WinGCLC is a Windows version of GCLC with a graphical interface that provides a range of additional functionalities. GCLC is open source software (licence CC BY-ND).
GeoGebra is software that combines geometry, algebra and calculus for mathematics education in schools and universities. It is available free of charge for non-commercial users. [6]
GeoKone.NET [7] is an interactive recursive natural geometry (or "sacred geometry") generator that runs in a web browser. GeoKone allows the user to create geometric figures using naturalistic rules of recursive copying, such as the Golden ratio.
Geolog [8] is a logic programming language for finitary geometric logic.
Geometry Expressions [9] Does symbolic geometry. It uses real symbolic inputs and returns real and symbolic outputs. It emphasises use with a Computer Algebra System (CAS), as well as exporting and sharing via interactive HTML5, Lua, and OS X dashboard widget apps.
The Geometer's Sketchpad (GSP)
This section needs expansion. You can help by adding to it. (November 2013) |
The Geometric Supposer [10]
This section needs expansion. You can help by adding to it. (July 2018) |
Geonext was developed by the University of Bayreuth until 2007 and is completely implemented in Java. Its final version was 1.74.
GeoProof [11] is a free GPL dynamic geometry software, written in OCaml.
GEUP is a more calculus-oriented analog of The Geometer's Sketchpad.
GRACE (The Graphical Ruler And Compass Editor) is an analog of The Geometer's Sketchpad (GSP), written in Java.
Jeometry is a dynamic geometry applet.
Kig is a free (GPL) analog of The Geometer's Sketchpad (GSP) for KDE, but more calculus-oriented. It is a part of the KDE Edutainment Project.
KmPlot is a mathematical function plotter released under the free GPL license. Includes a powerful parser and precision printing in correct scale. Simultaneously plot multiple functions and combine function terms to build new functions. Supports functions with parameters and functions in polar coordinates. Several grid modes are available. Features include:
KSEG is a free (GPL) analog of The Geometer's Sketchpad (GSP) with some unique features. This software can handle heavy, complex constructions in Euclidean geometry.
Live Geometry is a free CodePlex project that lets you create interactive ruler and compass constructions and experiment with them. It is written in Silverlight 4 and C# 4.0 (Visual Studio 2010). The core engine is a flexible and extensible framework that allows easy addition of new figure types and features. The project has two front-ends: WPF and Silverlight, which both share the common DynamicGeometry library.
TracenPoche is a completely Adobe Flash program. It is available in English, Spanish, and French.
This section needs expansion. You can help by adding to it. (November 2013) |
Euler 3D is a program that allows you to create and manipulate your own polyhedrons. It has a number of facilities: transformations, animations, creating duals, import/export VRML, etc.
Free registration required.
GeoGebra, includes a 3D mode since version 5.0
All these programs can be divided into two category: deterministic and continuous. GeoGebra can be deterministic or continuous (one can change it in preferences).
All constructions in the deterministic programs (GSP, Cabri, Kseg and most of others) are completely determined by the given points but the result of some constructions can jump or behave unexpectedly when a given point is moved.
On the contrary, some constructions in continuous programs (so far only Cinderella and GeoGebra), depend on the number of hidden parameters and in such a way that moving a given point produces a continuous motion of the construction, as a result, if the point is moved back to the original position the result of construction might be different.
Here is a test to check whether a particular program is continuous:
Construct the orthocenter of triangle and three midpoints (say A', B' C' ) between vertices and orthocenter.
Construct a circumcircle of A'B'C' .
This is the nine-point circle, it intersects each side of the original triangle at two points: the base of altitude and midpoint. Construct an intersection of one side with the circle at midpoint now move opposite vertex of the original triangle, if the constructed point does not move when base of altitude moves through it that probably means that your program is continuous.
Although it is possible to make a deterministic program which behaves continuously in this and similar simple examples, in general it can be proved that no program can be continuous and deterministic at the same time. [12]
A fractal landscape or fractal surface is generated using a stochastic algorithm designed to produce fractal behavior that mimics the appearance of natural terrain. In other words, the surface resulting from the procedure is not a deterministic, but rather a random surface that exhibits fractal behavior.
KSEG is a free (GPL) interactive geometry software for exploring Euclidean geometry. It was created by Ilya Baran. It runs on Unix-based platforms. It also compiles and runs on Mac OS X and should run on anything that Qt supports. Additionally, it was also ported to Microsoft Windows.
PSTricks is a set of macros that allow the inclusion of PostScript drawings directly inside TeX or LaTeX source code. It was originally written by Timothy Van Zandt and has been maintained in recent years by Denis Girou, Sebastian Rahtz and Herbert Voss.
GeoGebra is an interactive geometry, algebra, statistics and calculus application, intended for learning and teaching mathematics and science from primary school to university level. GeoGebra is available on multiple platforms, with apps for desktops, tablets and web. It is presently owned by Indian edutech firm Byju's.
The Geometer's Sketchpad is a commercial interactive geometry software program for exploring Euclidean geometry, algebra, calculus, and other areas of mathematics. It was created as part of the NSF-funded Visual Geometry Project led by Eugene Klotz and Doris Schattschneider from 1986 to 1991 at Swarthmore College. Nicholas Jackiw, a student at the time, was the original designer and programmer of the software, and inventor of its trademarked "Dynamic Geometry" approach; he later moved to Key Curriculum Press, KCP Technologies, and McGraw-Hill Education to continue ongoing design and implementation of the software over multiple major releases and hardware platforms. Present versions run Microsoft Windows and MacOS Ventura. It also runs on Linux under Wine with a few bugs. There was also a version developed for the TI-89 and TI-92 series of Calculators. In June 2019, McGraw-Hill announced that it would no longer sell new licenses. Nonetheless, a license-free 64-bit version of Mac Sketchpad that is compatible with the latest Apple silicon chips is available. A license-free Windows version of the software is also available. The Sketchpad Repository contains over 200 videos, with Sketchpad and Web Sketchpad tutorials as well as an archive of Sketchpad webinars that were offered by Key Curriculum Press.
Cabri Geometry is a commercial interactive geometry software produced by the French company Cabrilog for teaching and learning geometry and trigonometry. It was designed with ease-of-use in mind. The program allows the user to animate geometric figures, proving a significant advantage over those drawn on a blackboard. Relationships between points on a geometric object may easily be demonstrated, which can be useful in the learning process. There are also graphing and display functions which allow exploration of the connections between geometry and algebra. The program can be run under Windows or the Mac OS.
In plane geometry, Van Aubel's theorem describes a relationship between squares constructed on the sides of a quadrilateral. Starting with a given convex quadrilateral, construct a square, external to the quadrilateral, on each side. Van Aubel's theorem states that the two line segments between the centers of opposite squares are of equal lengths and are at right angles to one another. Another way of saying the same thing is that the center points of the four squares form the vertices of an equidiagonal orthodiagonal quadrilateral. The theorem is named after Belgian mathematician Henricus Hubertus (Henri) Van Aubel (1830–1906), who published it in 1878.
ImageJ is a Java-based image processing program developed at the National Institutes of Health and the Laboratory for Optical and Computational Instrumentation. Its first version, ImageJ 1.x, is developed in the public domain, while ImageJ2 and the related projects SciJava, ImgLib2, and SCIFIO are licensed with a permissive BSD-2 license. ImageJ was designed with an open architecture that provides extensibility via Java plugins and recordable macros. Custom acquisition, analysis and processing plugins can be developed using ImageJ's built-in editor and a Java compiler. User-written plugins make it possible to solve many image processing and analysis problems, from three-dimensional live-cell imaging to radiological image processing, multiple imaging system data comparisons to automated hematology systems. ImageJ's plugin architecture and built-in development environment has made it a popular platform for teaching image processing.
C.a.R.– Compass and Ruler — is a free and open source interactive geometry app that can do geometrical constructions in Euclidean and non-Euclidean geometry. The software is Java based. The author is René Grothmann of the Catholic University of Eichstätt-Ingolstadt. It is licensed under the terms of the GNU General Public License (GPL).
JTS Topology Suite is an open-source Java software library that provides an object model for Euclidean planar linear geometry together with a set of fundamental geometric functions. JTS is primarily intended to be used as a core component of vector-based geomatics software such as geographical information systems. It can also be used as a general-purpose library providing algorithms in computational geometry.
Geometry is a branch of mathematics concerned with questions of shape, size, relative position of figures, and the properties of space. Geometry is one of the oldest mathematical sciences.
The Computational Geometry Algorithms Library (CGAL) is an open source software library of computational geometry algorithms. While primarily written in C++, Scilab bindings and bindings generated with SWIG are also available.
CaRMetal is an interactive geometry program which inherited the C.a.R. engine. The software has been created by Eric Hakenholz, in Java. CaRMetal is free, under GNU GPL license. It keeps an amount of functionality of C.a.R. but uses a different graphical interface which purportedly eliminates some intermediate dialogs and provides direct access to numerous effects. Constructions are done using a main palette, which contains some useful construction shortcuts in addition to the standard compass and ruler tools. These include perpendicular bisector, circle through three points, circumcircular arc through three points, and conic section through five points. Also interesting are the loci, functions, parametric curves, and implicit plots. Element thickness, color, label, and other attributes can be set using a separate panel.
GNU Dr. Geo is an interactive geometry software that allows its users to design & manipulate interactive geometric sketches, including dynamic models of Physics. It is free software, created by Hilaire Fernandes, it is part of the GNU project. It runs over a Morphic graphic system. Dr. Geo was initially developed in C++ with Scheme scripting, then in various versions of Smalltalk with Squeak, Etoys_(programming_language) for One Laptop per Child Pharo then Cuis-Smalltalk.
In mathematics education, a representation is a way of encoding an idea or a relationship, and can be both internal and external. Thus multiple representations are ways to symbolize, to describe and to refer to the same mathematical entity. They are used to understand, to develop, and to communicate different mathematical features of the same object or operation, as well as connections between different properties. Multiple representations include graphs and diagrams, tables and grids, formulas, symbols, words, gestures, software code, videos, concrete models, physical and virtual manipulatives, pictures, and sounds. Representations are thinking tools for doing mathematics.
KIG is free and open-source interactive geometry software, which is part of the KDE Education Project. It has some facilities for scripting in Python, as well as the creating macros from existing constructions.
Desmos is an advanced graphing calculator implemented as a web application and a mobile application written in TypeScript and JavaScript.
PyX is a Python package for the creation of PostScript, PDF, and static SVG files. It combines an abstraction of the PostScript drawing model with a TeX/LaTeX interface. Complex tasks like 2d and 3d plots in publication-ready quality are built out of these primitives. Its goals are similar to those of other metalanguages for PDF drawing, such as TikZ or Asymptote.
{{cite web}}
: CS1 maint: archived copy as title (link)