Given 4 coordinates from the perimiter of a square, can the square be constructed?

105 Views Asked by At

I have a square, tilted at an unknown angle.

I am given 4 coordinates of the square. They lie on the perimeter, one per side. With these 4, and nothing else, am I able to determine the vertices of this square?

An example of 4 coordinates: $(4,13)$, $(12,23)$, $(23,14)$, $(14,5)$.

Trial and improvement (guessing the gradient?) would be acceptable, but I'm not sure how to start, as the gradient can go up to $X/0$, or undefined.

2

There are 2 best solutions below

3
On

no.

Suppose they are the vertices of a square, they are the mid-points of the sides of another square rotated 45 degrees.

0
On

The given points form a convex quadrilateral. If its two diagonals meet orthogonally, there are infinitely many possible squares. Choose any orientation for one of the sides (so that the three other points are on one side of it, of course), and you can complete this construction into a square with the four given points on the sides. A special case of this is when the four points form a square. If the two diagonals do not meet orthogonally, the square is unique and can be constructed.

We need a little lemma to prove this: Take a square and join two points on opposite sides by a line segment. Take any point on this line and draw a normal to the segment. Consider the two points where this normal meets the other two sides of the square or their extensions. Then the original line segment and this normal line segment have the same length. (Once you draw a figure, a proof will be obvious.)

Now, let us start with the problem. Suppose the four given points form a convex quadrilateral whose two diagonals do not intersect orthogonally.

Take two opposite points of these four and connect them with a line segment. Let the remaining two points be called A and B. Draw a normal to this segment through A. On this normal, take the point whose distance to A is the same as the distance of the original line segment and which is on the other side of the segment. Call this point C. Since the line segment from A to B does not intersect the other diagonal orthogonally, the points B and C must be distinct. There is a unique point in the intersection of the line through A and C and the extension of the side containing B. By our lemma this point of intersection is C. We thus know that B and C are on the same side, so the side joining B and C contains one of the sides of the square sought for.

Starting with this side you can construct the other sides by orthogonality and points on them, or you can run the same construction three more times to find the three other sides.

This construction can be implemented by a computer or by a compass and straightedge. Try running this on your four points and see what happens.