GeometricScene

GeometricScene[{p1,p2,},{hyp1,hyp2,}]

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

GeometricScene[{{p1,p2,},{k1,k2,}},hyps]

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

GeometricScene[{{p1{x1,y1},},{k1v1,}},hyps]

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

GeometricScene[{{{p1{x1,y1},},{k1v1,}},},hyps]

represents a collection of specific instances of the same scene.

GeometricScene[,,{con1,con2,}]

represents a scene together with some conclusions coni about it.

GeometricScene[{scene1,scene2,}]

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
    Parallelogram[pt,{v1,v2}]parallelogram
    Point[pt]point set
    Polygon[{pt1,}]simple polygon
    Rectangle[pt1,pt2]rectangle
    RegularPolygon[n]regular polygon
    Triangle[{pt1,}]triangle
  • 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
    Circumsphere[{pt1,pt2,pt3}]circumsphere
    Insphere[{pt1,pt2,pt3}]insphere
    Midpoint[{pt1,pt2}]midpoint
    PerpendicularBisector[{pt1,pt2}]perpendicular bisector, as an infinite line
    RegionBoundary[reg]boundary
    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
    Area[reg]area
    EuclideanDistance[pt1,pt2]Euclidean distance
    Perimeter[reg]perimeter
    PlanarAngle[{pt1,pt2,pt3}]angle
    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.

Examples

open all close all

Basic Examples  (2)

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

In[1]:=
Click for copyable input
Out[1]=

RandomInstance fills in explicit coordinates for the points:

In[2]:=
Click for copyable input
Out[2]=

This gets the rules giving coordinates for the points:

In[3]:=
Click for copyable input
Out[3]=

Represent a geometric scene with explicit coordinates for points:

In[1]:=
Click for copyable input
Out[1]=

Scope  (3)

Options  (1)

Applications  (6)

Neat Examples  (2)

Introduced in 2019
(12.0)