#1906·penrose

Generate the IMO level geometric figure.

Author: aruiplexCreated Aug 4, 2025Updated Aug 5, 2026

Hello, I want to use this library to generate the IMO level geometric figure. But I face some problems.

Here is the 1959 Problem 5. The original description is:

An arbitrary point $M$ is selected in the interior of the segment $AB$. The squares $AMCD$ and $MBEF$ are constructed on the same side of $AB$, with the segments $AM$ and $MB$ as their respective bases. The circles about these squares, with respective centers $P$ and $Q$, intersect at $M$ and also at another point $N$. Let $N'$ denote the point of intersection of the straight lines $AF$ and $BC$.

Here is my code:

Point A,B,C,D,E,F,M,N,O,P
Circle O1 := CircleR(O, A)
Circle O2 := CircleR(P, B)
Segment AF

Rectangle R1 := Rectangle(A, M, C, D)
Rectangle R2 := Rectangle(M, B, E, F)

OnCircle(O1, D)
OnCircle(O1, N)
OnCircle(O1, C)
OnCircle(O1, M)
OnCircle(O2, M)
OnCircle(O2, E)
OnCircle(O2, F)
Segment AM := Chord(O1, A, M)
Segment CM := Chord(O1, C, M)
Segment CD := Chord(O1, C, D)
Segment AD := Chord(O1, A, D)
Segment FM := Chord(O2, F, M)
Segment BM := Chord(O2, B, M)
Segment BE := Chord(O2, B, E)
Segment FE := Chord(O2, F, E)
Segment BN := PerpendicularBisectorLabelPts(AF, B, N)
On(C,FM)
On(C,BN)


AutoLabel A,B,C,D,E,F,M,N,O,P

Here is the generated figure:

Image

I wonder if I missed something.