Automated Planar Geometry

Daniel McDonald, Peter Barendse, Xiaofan Zhang, Jack Heimrath

GeometricSolve

ResourceFunction["GeometricSolve"]

Solve for the hypotenuse of a right triangle:

[
GeometricScene[{a,b,c},{Triangle[{a,b,c}],PlanarAngle[{a,b,c}]==90°,EuclideanDistance[a,b]==3,EuclideanDistance[b,c]==4}],
EuclideanDistance[a,c]
]

Compute the area of a triangle where one point has an unknown but positive x value:

[
GeometricScene[{a,b,c},{a=={0,0},b=={0,4},c=={d,5},d>0,p==Polygon[{a,b,c}]}],
Area[p]
]

Find an instance of a scene:

scene=RandomInstance[
GeometricScene[{a,b,c,d},{Triangle[{a,b,c}],CircleThrough[{a,b,c},d],Line[{a,d,c}]}]
]

Solve for the point a, the distance between points a and c and the area of the triangle in this scene instance:

[scene,{a,EuclideanDistance[a,c],Area[Triangle[{a,b,c}]]}]