GeoGebra


Release Notes GeoGebra 5.0

Jump to: navigation, search

This page gives an overview of the new features in GeoGebra 5 since version 4.4. Please see our fully revised Guide for more detailed descriptions of each new tool and command.

You can install the stable version of GeoGebra by using our Download option.

Information about how to run version 5 (with 3D) is in our user forum.

New Tools

  • Plane
  • Right prism
  • Sphere
  • View in front of

Improved Tools

  • Freehand Shape Tool now recognises Ellipses

General Features

  • You can create special .ggb files which can be used to apply a style to other files. More details here:

http://wiki.geogebra.org/en/Open_Dialog_-_Style_Templates

  • You can load a .ggb file into another. More details here:

http://wiki.geogebra.org/en/Open_Dialog_-_Insert_File

  • typing the decimal comma key on the numeric keypad types a .
  • The Winding Rule for self-intersecting polygons has changed to be consistent with 3D
  • global variables allowed in Global JavaScript (as well as global functions)
  • Spreadsheet "File Browser" removed (will soon be replaced with support for CSV files through File -> Open and File -> Open from GeoGebraTube)
  • Opacity for Lines and perimeters of shapes

New Features

Extended types to 3D

  • Points
eg A=(5,-2,1)
  • Vectors
eg u=(5,-2,1)
eg Cross product: a = u ⊗ v 
  • Lines
  • Segments
  • Rays
  • Polygons
  • Circles

New Object Types

Surfaces

 eg f(x,y) = sin(x * y)
 eg Function[sin(a * b), a, -5, 5, b, -5, 5]

Planes

 eg x + y + z = 1

Pyramids

Prisms

Spheres

Cylinders

Cones

3D View

Applets

  • 3D export to applets and GeoGebraTube is not supported at the moment

Moving objects

  • left-drag points in the 3D view. Click on the point to change the mode "along xOy plane" to "along z axis", and so on.

Translation of the scene

  • shift+left-drag the 3D view (without pointing on a moveable object)
  • use move view tool

Rotation of the scene

  • "Rotate 3D graphic view" tool
  • right-drag the 3D view (without pointing on a moveable object)
  • continue rotation when mouse released
  • view in front of an object (toolbar)

Zoom

  • use wheel mouse
  • use zoom tool

Gridlines

  • show/hide axes, grid, xOy plane

Commands

Improved Commands

  • DotPlot will work with a list of text eg DotPlot[ {"Red", "Red", "Red", "Blue", "Blue" } ]
  • Coefficients can now be used with the output of Fit (if non-polynomial) to get the calculated coefficients for the fit

These three commands will now work with Conics as well as Curves

All commands below work with 2D/3D objects

 (will set output line to undefined if point is on the line in 3D)
  • Circle[ <Point> , <Point> , <Point> ]
  • Distance[ <Point> , <Point> ]
  • Angle[ <Point> , <Point> , <Point> ]
  • Area[ <Polygon> ], Area[ <Conic> ]
  • Vertex[ <Polygon> ], Vertex[ <Conic> ]
  • Center[ <Conic> ]

New CAS Commands

New Commands

  • Spline[ <List of Points> ]
  • Spline[ <List of Points>, <Order ≥ 3> ]
  • Tangent[ <Point>, <Spline> ]
  • RandomUniform[ <Min>, <Max>, <n> ]
  • AreEqual[ <Object>, <Object> ]
  • AreCollinear[ <Point>, <Point>, <Point> ]
  • AreConcurrent[ <Line>, <Line>, <Line> ]
  • AreConcyclic[ <Point>, <Point>, <Point>, <Point> ]
  • AreParallel[ <Line>, <Line> ]
  • ArePerpendicular[ <Line>, <Line> ]
  • Prove[ <Boolean Expression> ]
  • ProveDetails[ <Boolean Expression> ]
  • UpdateConstruction[ <Number of times> ]
  • Min[ <List of Data>, <List of Frequencies> ]
  • Max[ <List of Data>, <List of Frequencies> ]
  • IntersectPath[ <Line>, <Polygon> ]
  • Envelope[ <Path Creating Envelope>, <Moving Point> ]
  • SetPerspective[ <Options> ]
  • Remove[ <List>, <List> ]
  • FitImplicit[ <List of Points>, <Order> ]
  • DotPlot[ <List of Raw Data>, <Stack Adjacent Dots (optional)>, <Scale Factor (optional)>]
  • StartLogging[ "<Sensor>", <Variable>, "<Sensor>", <Variable>, ...] For data logging eg from a phone
  • StopLogging[ ] For data logging eg from a phone
  • BarChart[ <List of Raw Data>, <Width of Bars>, <Vertical Scale Factor> ]
  • FrequencyTable[ <List of Raw Data>, <Scale Factor> ]
  • Payment[ <Rate>, <Number of Periods>, <Present Value>, <Future Value (optional)>, <Type (optional)> ] Like the Excel Pmt function
  • Rate[ <Number of Periods>, <Payment>, <Present Value>, <Future Value (optional)>, <Type (optional)>, <Guess (optional)> ] Like the Excel Rate function
  • Periods[ <Rate>, <Payment>, <Present Value>, <Future Value (optional)>, <Type (optional)> ] Like the Excel NPer function
  • PresentValue[ <Rate>, <Number of Periods>, <Payment>, <Future Value (optional)>, <Type (optional)> ] Like the Excel PV function
  • FutureValue[ <Rate>, <Number of Periods>, <Payment>, <Present Value (optional)>, <Type (optional)> ] Like the Excel FV function

3D Commands

General

  • SetViewDirection[ <Direction> ]
  • Rotate[ <Object>, <Angle>, <Axis of Rotation> ]
  • Rotate[ <Object>, <Angle>, <Point on Axis>, <Axis Direction> ]
  • Rotate[ <Object>, <Angle>, <Point on Axis>, <Plane> ]
  • Reflect[ <Object>, <Plane> ] reflects an object about a plane

Points

  • Intersect[ <Line>, <Object> ] creates the intersection point of a line and a plane, segment, polygon, etc
  • Intersect[ <Plane>, <Object> ] creates the intersection point of a plane and segment, polygon, etc
  • ClosestPoint[ <Region>, <Point> ]
  • ClosestPoint[ <Line>, <Line> ]
  • Corner[3, <Number>] creates a point at one of the 3D view's corners (the number is from 1 to 8)
  • Center[ <Quadric> ] creates the center of a quadric (e.g. sphere, cone, etc.)

Lines

Vectors

Polygons

  • Intersect[ <Plane>, <Polyhedron> ] creates the polygon(s) intersection of plane and polyhedron
  • Polygon[ <Point>, <Point>, <Number of Vertices>, <Direction> ] creates a regular polygon with n vertices, and directed by the direction (e.g. a plane to which the polygon will be parallel, if possible)

Circles

  • Circle[ <Line>, <Point> ] creates the circle with line for axis and through the point
  • Circle[<Point>,<Radius>,<Direction>] create circle with center, radius, and axis parallel to direction, which can line, vector or plane (in this case : normal vector of the plane)
  • Circle[<Point>,<Point>,<Direction>] creates a circle with center, through a point, and axis parallel to direction (may be undefined)
  • Intersect[ <Sphere>, <Sphere> ] creates the circle intersection of two spheres

Conics

  • Intersect[ <Plane>, <Quadric> ] or IntersectPath[ <Plane>, <Quadric> ] creates the conic intersection of the plane and the quadric (sphere, cone, cylinder, ...)

Planes

  • Plane[ <Polygon> ]
  • Plane[ <Conic> ]
  • Plane[ <Point> , <Point> , <Point> ] creates the plane through the points
  • Plane[ <Point> , <Line> ] creates the plane through the point and the line
  • Plane[ <Line> , <Line> ] creates the plane through the lines (if in the same plane)
  • Plane[ <Point> , <Plane> ] creates the plane through the point and parallel to the plane
  • PerpendicularPlane[ <Point> , <Line> ] creates the plane through the point and perpendicular to the line
  • PerpendicularPlane[ <Point> , <Vector> ] creates the plane through the point and perpendicular to the vector
  • PlaneBisector[ <Point> , <Point> ] create the plane orthogonal bisector between the two points
  • PlaneBisector[ <Segment> ] create the plane orthogonal bisector of the segment

Angles

  • Angle[ <Line> , <Plane> ]
  • Angle[ <Plane> , <Plane> ]

Spheres

  • Sphere[ <Point> , <Number>] creates a sphere with center and radius
  • Sphere[ <Point> , <Point> ] creates a sphere with center as the first point through the second point.

Cylinders and cones

  • Cylinder[ <Point>, <Point>, <Radius Number> ] creates a cylinder of revolution between the two points, and with number for radius
  • Cylinder[ <Circle>, <height> ] (right circular cylinder, "Extrude to Prism/Cylinder" tool : Drag circle, or select circle and enter altitude to create right cylinder)
  • Cone[ <Point>, <Point>, <Radius Number> ] creates a cone of revolution between the two points, with disc around first point and of given radius, and with second point for apex
  • Cone[ <Point>, <Vector>, <Angle ]
  • Cone[ <Circle>, <Height> ] (right circular cone, "Extrude to Pyramid/Cone" tool : Drag circle, or select circle and enter altitude to create right circular cone)
  • Bottom[ <Limited quadric> ] creates the bottom of the limited quadric (e.g. circle for a cylinder)
  • Top[ <Limited quadric> ] creates the top of the limited quadric (e.g. circle for a cylinder)
  • Ends[ <Limited quadric> ] creates bottom and top of the limited quadric (e.g. circles for a cylinder)
  • Side[ <Limited quadric> ] creates the side of the limited quadric

Quadrics

  • InfiniteCylinder[ <Point> , <Vector>, <Radius Number> ] creates a cylinder of revolution around (point,vector) direction, and with number for radius
  • InfiniteCylinder[ <Point>, <Point>, <Radius Number> ] creates a cylinder of revolution around (point,point) direction, and with number for radius
  • InfiniteCylinder[ <Line>, <Radius Number> ]creates a cylinder of revolution around line direction, and with number for radius
  • InfiniteCone[ <Point> , <Vector>, <Angle Number> ] creates a cone of revolution around (point,vector) direction, with point for apex, and with number for angle (half-angle of the cone)
  • InfiniteCone[ <Point>, <Point>, <Angle Number> ] creates a cone of revolution around (point,point) direction, with point for apex, and with number for angle (half-angle of the cone)
  • InfiniteCone[ <Point>, <Line>, <Angle Number> ] creates a cone of revolution with point for apex, with axis parallel to line, and with number for angle (half-angle of the cone)
  • Axes [ <Quadric> ] create the 3 axes of a quadric

Polyhedrons

  • Pyramid[ <Point> , <Point> , ... , <Point> ] : pyramid
 eg Pyramid[A,B,C,D] creates the pyramid with basis ABC and apex D
  • Pyramid[ <polygon>, <top point> ] ("Pyramid" tool : select basis + create/select top point)
  • Pyramid[ <polygon>, <height> ] ("Extrude to Pyramid/Cone" tool : Drag polygon, or select polygon and enter altitude to create centered pyramid)
  • Prism[ <Point> , <Point> , ... , <Point> , <Point> ] : prism
 eg Prism[A,B,C,D] creates the prism with basis ABC and top DEF, vectors AD, BE, CF are equal
  • Prism[ <polygon>, <top point> ] ("Prism" tool : select basis + create/select first top point)
  • Prism[ <polygon>, <height> ] ("Extrude to Prism/Cylinder" tool : Drag polygon, or select polygon and enter altitude to create right prism)

Platonic solids

Net

  • Net[ <Polyhedron> , <Number> ] : create the net for a convex pyramid, convex prism, platonic solid. The number must be between 0 and 1. The net is totally unfold when number value equals 1.
  • Net[ <Polyhedron> , <Number>, <Face>, <Edge>, <Edge>, ... ] (just for cube right now, more to come)

Curves, Surfaces

  • Curve[ <Expression> , <Expression> , <Expression> , <Parameter Variable> , <Start Value> , <End Value> ]
  • Function[ <Expression>, <Parameter Variable 1>, <Start Value>, <End Value>, <Parameter Variable 2>, <Start Value>, <End Value> ]
  • Surface[ <Expression>, <Expression>, <Expression>, <Parameter Variable 1>, <Start Value>, <End Value>, <Parameter Variable 2>, <Start Value>, <End Value> ]

Following commands automatically add xOy plane for direction (first face is contained in xOy plane)

Volume

  • Volume[ <Pyramid> ], Volume[ <Prism> ], Volume[ <Cone> ], Volume[ <Cylinder> ]

Height

  • Height[ <Solid> ], Height[ <Cone> ], Height[ <Cylinder> ] : returns an "oriented" height of the solid

Scripts

  • SetViewDirection[ <Direction> ] sets the 3D view orientation regarding the direction

Turtle Commands

New Keyboard Shortcuts

  • Page Up: Move object up (3D View only)
  • Page Down: Move object down (3D View only)

Description of all Keyboard Shortcuts

New Applet Parameters

Description of all Applet Parameters

New Command Line Arguments

You can get the command line arguments for the prover and the SingularWS subsystems by using the --proverhelp and --singularWShelp options, namely:

 --prover=OPTIONS	set options for the prover subsystem
   where OPTIONS is a comma separated list, formed with the following available settings (defaults in brackets):
     engine:ENGINE	set engine (Auto|OpenGeoProver|Recio|Botana|PureSymbolic) [Auto]
     timeout:SECS	set the maximum time attributed to the prover (in seconds) [5]
     maxterms:NUMBER	set the maximal number of terms [10000] (OpenGeoProver only)
     method:METHOD	set the method (Wu|Groebner|Area) [Wu] (OpenGeoProver only)
     fpnevercoll:BOOLEAN	assume three free points are never collinear for Prove [null] (Botana only, forced to 'yes' when SingularWS is unavailable)
     usefixcoords:NUMBER1NUMBER2	use fix coordinates for the first NUMBER1 for Prove and NUMBER2 for ProveDetails, maximum of 4 both [42] (Botana only)
     transcext:BOOLEAN	use polynomial ring with coeffs from a transcendental extension for Prove [true] (Botana only, needs SingularWS)
     captionalgebra:BOOLEAN	show algebraic debug information in object captions [false] (Botana only)
 Example: --prover=engine:Botana,timeout:10,fpnevercoll:true,usefixcoords:43

and

--singularWS=OPTIONS	set options for SingularWS
  where OPTIONS is a comma separated list, formed with the following available settings (defaults in brackets):
     enable:BOOLEAN	use Singular WebService when possible [true]
     remoteURL:URL	set the remote server URL [http://singularws.idm.jku.at/]
     timeout:SECS	set the timeout [5]
     caching:BOOLEAN	set server side caching [auto]
 Example: singularWS=timeout:3

If you use command line arguments, make sure you allocate enough memory, eg:
java -Xms32m -Xmx1024m -jar geogebra.jar --settingsfile=geogebra.properties
Description of all Command Line Arguments

New JavaScript commands

  • registerObjectClickListener(String objName, String JSFunctionName);
  • unregisterObjectClickListener(String objName);
  • registerClickListener(String JSFunctionName);
  • unregisterClickListener(String JSFunctionName);

Description of all GeoGebra JavaScript Methods

GeoGebra's XML File Format

GeoGebra's XML file format is documented at Reference:XML.

License

You are free to copy, distribute and transmit GeoGebra for non-commercial purposes. Please see the GeoGebra license for details: http://www.geogebra.org/download/license.txt