List of interactive geometry software

Last updated

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.

Contents

History

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.

Comparison

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.

License and platform

The following table provides a first comparison of the different software according to their license and platform.

SoftwareCost (USD)LicencePlatforms
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/PaidGeoGebra 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)

3D Software

SoftwareCost (USD)LicencePlatforms
Archimedes Geo3D Shareware Proprietary Windows/Mac OS X/Linux
GeoGebra (from version 5.0 Beta)Free/PaidGeoGebra License [3] Windows, Linux, Mac OS X, Android, iOS, Windows RT
GEUP 3D? Proprietary Windows
Yenka 3D ShapesFree for non-commercial use Proprietary Windows
WIRIS ? Proprietary Windows, Linux, Mac OS X

General features

The following table provides a more detailed comparison :

SoftwareCalculationsMacrosLociAnimationsScriptingAssignmentsLaTeX exportWeb exportMultilingualProofsExtra
Cabri II PlusYesYesYesYesYesYes (with plug-in)NoYesYesYes (on relations)Available on TI Calculator
Calques 3DYesYesYesYesNoNoNoNoYes (FRA ENG DEU ESP PTG)Yes (on relations)Experimental connection with some CAS
CaRYesYesYesYesYesYesYesYesYesNo?
CaRMetalYes (recursive)YesYesYes (multiple)Yes (JavaScript)YesYesYesYesYes (probabilistic)Amodality, folder system, the Monkey
CinderellaYesYesYesYesYesYesYes (PDF)YesYesProbabilisticSeveral geometries, Physics simulations
Ganja.jsYesYesYesYesYesYesNoYesNoNo2D and 3D, projective and conformal, Geometric Algebra.
GCLCYesYesYesYesYesYesYesNoNoYesReadable proofs, support for 3D
GeoGebraYesYesYesYesYes (JavaScript)NoYes (PSTricks & PGF/TikZ)YesYes (55 languages)YesCAS, HTML5 Export (from version 4.2)
3D & Automatic Proof (from version 5.0)
GeometriaYesNoYesYesNoYesNoYesYesNoTwo-role (teacher, student) model
GeometrixYesNoYesYesNoYesNoNoYesYesInteractive proof, diagram checking, teacher/student models, labels with dynamic placeholders
Geometry ExpressionsYesNoYesYesNoNoYesYes (Interactive HTML5/JS Apps)YesNoSymbolic 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).
GeoNextYesNoNoYes??No?YesNoAvailable as a web app
Géoplan-GéospaceYesYesYesYesYesNoNoYes (activeX)YesYesSequences, 2D & 3D, human readable file format
GeoProofYesNoNoNoNoNoYesNoNoYesAutomatic formal proofs
GEUPYesYesYesYesYesNo?NoYesNoCAD functionality through CADGEUP
iGeomYesYesYesNoYesYesNoYesYesProbabilistRecurrent scripts
KigYesYesYesNoYes (Python)NoYes (PSTricks)NoYesNoLabels with dynamic placeholders
Live GeometryYesYesYesYesNoNoNoNoNoNoIncludes player.
Sarit2dYesYesYesYesYesYesYesYesNoYesAvailable on web
SketchpadYesYesYesYesYesNo?Yes (limited)YesNoFunctions & function plots, symbolic differentiation, mathematical notation
TabulaYesYesYesYesNoNoNoNoNoNoFolding, cutting, taping, marker, and working instrument models.
TabulaeYesYesYesNoNoNoNoYesYesNoCollaborative sessions over the internet.
Cabri 3DYesNoNoYesNoNoNoYes (limited)YesNo?
Archimedes Geo3DYesYesYesYesNoNoNoNoNo (Eng De Fr)NoIntersection of Loci
GEUP 3DYesYesYesYesYesNoNoNoYesNoCAD functionality through CADGEUP
NetpadYesYesYesYesNoNoNoYesNoYesBase on Web
SoftwareCalculationsMacrosLociAnimationsScriptingAssignmentsLaTeX exportWeb exportMultilingualProofsExtra

Macros

Features related to macro constructions: (TODO)

SoftwareAllows recursityAllows saving
Cabri II PlusYesYes
Calques 3DNoYes
GCLCNoNo
GeoGebraYesYes
Géoplan-GéospaceYesYes
GEUPYesYes
iGeomYesYes
Kig?Yes
KSEGYesYes
Sketchpad (GSP)Yes (via Iteration)Yes

Loci

Loci features related to IGS: (TODO)

SoftwareTake a point of a locusIntersection of two loci
Cabri II PlusYesYes
Calques 3DNoNo
CaRYesYes
GeoGebraYesNo
Géoplan-GéospaceYesNo
GEUPYesYes
iGeomYesNo
KigYesNo
Sketchpad (GSP)YesNo
NetPadYesYes

Proof

We detail here the proof related features. (TODO)

SoftwareInteractive ProofsAutomatic ProofsProbabilist Proofs
Cabri II PlusFeedback forNoYes in Cabri I
CinderellaNoUsing external CASYes
GCLCNoYesNo
GeoGebraYesYesNo
GeometrixYesYesNo
Géoplan-GéospaceNoNoYes
GeoProofYesYesNo
iGeomNoNoYes
JeometryNoYesNo
NetPadYesYes?

Measurements and calculation

Measurement and calculation features related to IGS: (TODO)

SoftwareArbitrary PrecisionArithmetic expressionsTrigonometric functionsIfObject existence test
CabriYesYesYesYesNo
Calques 3DNoYesYesNoNo
C.a.R.NoYesYesYesYes
GCLCNoYesYesYesYes
GeoGebraNoYesYesYesYes (JavaScript)
GeometriaNoYesYesNoNo
Géoplan-GéospaceNoYesYesYes (µ function)No
GeoProofYesYesYesYesNo
GeometrixNoYesYesYesNo
iGeomNoYesYesNoNo
NetPadYesYesYesYesNo

Graphics export formats

SoftwarePNGBMPTIFFGIFSWFSVGEMFFigPostscriptPdfLaTeX/EukleidesLaTeX/PstricksLaTeX/PGF/TikZAsymptote
Calques 3DNoNoNoNoNoNoNoYesNoNoNoNoNoNo
C.a.R.YesNo???YesNoYesYesNoNoYes??
CinderellaYesYes??????NoYes????
GCLCNoYesNoNoNoYesNoNoYesNoNoYesYesNo
GeoGebraYesNoNoYes (animated)NoYesYesNoYesYesNoYesYesYes
Geometry ExpressionsYesYesYesYes (animated)NoNoYesNoYesNo????
GeoProofYesNo???YesNoNoNoNoYesNo??
KigYesYes???YesNoYesYesYesNoYes??
KmPlotYesYes???Yes????????
KSEGYesYes???NoNo?NoNoNo??
GeometrixNoYesYesYesYesYesNoNoNoNoNoNo??
iGeomNoNoNoYesNoNoNoNoYesNoNoNo??

Object attributes

SoftwareColorFilled/Not filledWidthTransparencyShown/HiddenLayerShape of pointsType of line
CabriYesYesYesYesYesNoYesYes
Calques 3DYesYesYesNoYesYesYesYes
C.a.R.YesYesYesYesYesYesYesYes
GCLCYesYesYesNoYesYesYesYes
GeoGebraYesYesYesYesYesYesYesYes
GeometriaYesYesNoYesYesYesNoYes
Geometry ExpressionsYesYesYesYesYesYesNo (but size)Yes
Géoplan-GéospaceYesYesYesYesYesNoYesYes
KigYesYesYesNoYesNoYesYes
GeoProofYesNoYesNoYesYesYesYes
GeometrixYesYesYesNoYesNoYesYes
GEUPYesYesYesYesYesNoYesYes
iGeomYesYesYesNoYesNoNoYes
SketchpadYesYesYesYesYes?YesYes
NetPadYesYesYesYesYesYesNo (but size)Yes

2D programs

C.a.R.

C.a.R. is a free GPL analog of The Geometer's Sketchpad (GSP), written in Java.

Cabri

Cabri Cabri was developed by the French school of mathematics education in Grenoble (Laborde, 1993)

CaRMetal

CaRMetal is a free GPL software written in Java. Derived from C.a.R., it provides a different user interface.

Cinderella

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

Dr Genius was an attempt to merge Dr. Geo and the Genius calculator.

Dr. Geo

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

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

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

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

Geolog [8] is a logic programming language for finitary geometric logic.

Geometry Expressions

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

The Geometer's Sketchpad (GSP)

The Geometric Supposer

The Geometric Supposer [10]

Géoplan-Géospace

Geonext

Geonext was developed by the University of Bayreuth until 2007 and is completely implemented in Java. Its final version was 1.74.

GeoProof

GeoProof [11] is a free GPL dynamic geometry software, written in OCaml.

GEUP

GEUP is a more calculus-oriented analog of The Geometer's Sketchpad.

GRACE

GRACE (The Graphical Ruler And Compass Editor) is an analog of The Geometer's Sketchpad (GSP), written in Java.

Jeometry

Jeometry is a dynamic geometry applet.

Kig

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

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

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

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

TracenPoche is a completely Adobe Flash program. It is available in English, Spanish, and French.

3D programs

Cabri 3D

Cabri Geometry

Archimedes Geo3D

Archimedes Geo3D

Euler 3D

Euler (software)

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

GeoGebra, includes a 3D mode since version 5.0

Geomview

Geomview

GEUP 3D

GEUP

Continuity versus determinism

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]

See also

Related Research Articles

<span class="mw-page-title-main">Fractal landscape</span> Stochastically generated naturalistic terrain

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.

<span class="mw-page-title-main">KSEG (software)</span> Geometry software

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.

<span class="mw-page-title-main">GeoGebra</span> Interactive geometry, algebra and calculus application

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.

<span class="mw-page-title-main">The Geometer's Sketchpad</span> Commercial interactive geometry software

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.

<span class="mw-page-title-main">Van Aubel's theorem</span> Lines connecting the centers of squares on opposite sides of a quadrilateral are = and ⟂

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.

<span class="mw-page-title-main">ImageJ</span> Java-based image processing program

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.

<span class="mw-page-title-main">C.a.R.</span>

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.

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.

<span class="mw-page-title-main">CaRMetal</span> Interactive geometry program

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.

<span class="mw-page-title-main">DrGeo</span>

GNU Dr. Geo, and later Dr. Geo II, is interactive geometry software that allows its users to design & manipulate interactive geometric sketches. 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 developed in C++ and Dr. Geo II is a complete rewrite using Pharo that happened in 2005.

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.

<span class="mw-page-title-main">Kig (software)</span>

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.

References

  1. Schwartz; Yerushalmy and Wilson (1993). The Geometric Supposer: What is it a Case of?. Hillsdale, NJ: Lawrence Erlbaum Associates.
  2. Battista, M.T. (2007). "The Development of Geometric and Spatial Thinking". In Lester, Jr., F.K. (ed.). Second Handbook of Research on Mathematics Teaching and Learning. Charlotte, NC: Information Age and the National Council of Teachers of Mathematics. pp. 843–903.
  3. 1 2 "GeoGebra License" . Retrieved 2022-01-11.
  4. "DrGeo - OLPC".
  5. "Mathematical Tool GCLC - Geometry Constructions -> LaTeX Converter".
  6. "License".
  7. "Home". GeoKone.NET.
  8. "Geolog and Skolem Machines". Archived from the original on 2008-04-09. Retrieved 2008-03-01.
  9. "Geometry Expressions".
  10. "CET - Mathematics". Archived from the original on 2001-04-20.
  11. "Archived copy". Archived from the original on 2006-04-21. Retrieved 2006-04-21.{{cite web}}: CS1 maint: archived copy as title (link)
  12. Kortenkamp, Ulrich (1999): Foundations of Dynamic Geometry, Dissertation, ETH Zurich 1999. Available online at http://kortenkamps.net/papers/1999/diss.pdf