represents an abstract 2D geometric scene defined by the hypotheses hypi in terms of the symbolic points pi.


represents a scene whose hypotheses depend on the symbolic scalar quantities ki.


represents a specific instance with explicit values for all points and scalar quantities.


represents a collection of specific instances of the same scene.


represents a scene together with some conclusions coni about it.


combines several scene instances into one scene object.

Details and Options

  • A GeometricScene object with explicit coordinates for all points and explicit values for all scalars is normally displayed as a graphical diagram.
  • In GeometricScene[{p1,p2,},], the pi can be strings, symbols or other symbolic expressions.
  • Functions such as RandomInstance fill in specific values for the pi and ki in such a way as to satisfy the hypotheses given.
  • The hypotheses in a scene can list objects that must appear in the scene and can give relations and other assertions about those objects.
  • The following primitives can be used to represent geometric objects:
  • Circle[pt,r]circle
    Disk[pt,r]filled disk
    HalfLine[{pt1,pt2}]half-infinite line or ray
    InfiniteLine[{pt1,pt2}]infinite line
    Line[{pt1,}]straight line
    Point[pt]point set
    Polygon[{pt1,}]simple polygon
    RegularPolygon[n]regular polygon
  • The points and scalars in a geometric object can be symbolic or can have explicit values.
  • The following can be used to represent constructions applied to geometric objects:
  • AngleBisector[{pt1,pt2,pt3}]angle bisector, as an infinite line
    CircleThrough[{pt1,}]circle through points
    PerpendicularBisector[{pt1,pt2}]perpendicular bisector, as an infinite line
    RegionCentroid[reg]region centroid, as a point
    RegionNearest[reg, pt]nearest point in a region
    TriangleCenter[tri,type]triangle center of specified type
    TriangleConstruct[tri,type]triangle construct of specified type
  • The following assertions about geometric objects and their properties can be used:
  • ptreg, RegionMember[reg,pt]a point is in a region
    xequality of values or objects
    x>, x<, inequalities between values
    GeometricAssertion[objs,prop]named assertion about geometric objects
  • The following measurements on geometric objects can be used:
  • ArcLength[reg]arc length
    EuclideanDistance[pt1,pt2]Euclidean distance
    PolygonAngle[poly,pt]polygon angle
    RegionDistance[reg,pt]region distance
    RegionMeasure[reg]region measure
    SignedRegionDistance[reg,pt]signed region distance
    TriangleMeasurement[tri,type]triangle measurement
  • GeometricScene[]["prop"] gives property prop of a geometric scene. Possible properties include:
  • "Conclusions"list of conclusions
    "Graphics"diagram of the scene, as a Graphics object
    "Hypotheses"list of hypotheses
    "Instances"list of instances of the scene
    "Points"list of point specifications for the scene
    "Quantities"list of scalar value specifications for the scene
  • With explicit scene instances scenei, GeometricScene[{scene1,scene2,}] is converted to a GeometricScene object in which multiple lists of points and scalar values are given so long as all the scenei are instances of the same abstract scene.
  • When GeometricScene represents multiple instances of an abstract scene, it is normally displayed as a MenuView object with one instance per menu item.
  • The display style of geometric objects can be specified using Style. Style specifications do not affect the geometric meaning of a scene.
  • The following options for GeometricScene can be given:
  • UnconstrainedParametersNonelist of unconstrained parameters
  • Functions such as FindGeometricConjectures fill in conclusions in GeometricScene objects.


open all close all

Basic Examples  (2)

Represent a symbolic geometric scene containing a triangle with points a, b, c and a 30° angle:

Click for copyable input

RandomInstance fills in explicit coordinates for the points:

Click for copyable input

This gets the rules giving coordinates for the points:

Click for copyable input

Represent a geometric scene with explicit coordinates for points:

Click for copyable input

Scope  (3)

Options  (1)

Applications  (6)

Neat Examples  (2)

Introduced in 2019