All about flooble | fun stuff | Get a free chatterbox | Free JavaScript | Avatars
 perplexus dot info

 Circular Logic III (Posted on 2006-08-09)
Suppose you had a square intersecting a circle like in Circular Logic, where one vertex is inside the circle and three are outside.

If the vertex inside the circle was not located at the center, but anywhere inside the circle, such that segments ending at that vertex were of length a and b and the circle had radius r, what would be the area of their intersection be?

Note: A geometric solution is expected, without using calculus.

 No Solution Yet Submitted by Gamer No Rating

Comments: ( Back to comment list | You must be logged in to post comments.)
 can this be simplified? -- spoiler | Comment 1 of 3

Call the corner on the interior of the circle C. Call the intersections of the sides of the square with the circle A and B.  Triangle ABC is a right triangle with AB as the hypotenuse.  AB is also a chord of the circle, and the segment of the circle that it defines, along with the right triangle ABC, form the desired area.

The right triangle has area a*b/2.

The hypotenuse has length sqrt(a^2+b^2), and that is also the chord of the circle segment.

Half the arc of the segment is given by arcsin(sqrt(a^2+b^2)/(2*r)), so the whole arc is 2*arcsin(sqrt(a^2+b^2)/(2*r)).  This makes the sector of the circle defined by that arc have area pi*r^2 * 2*arcsin(sqrt(a^2+b^2)/(2*r)) / (2*pi) = r^2 * arcsin(sqrt(a^2+b^2)/(2*r)).  To get the area of the segment we need to subtract the area of the central triangle from that of the sector.  This triangle has sides r, r and sqrt(a^2+b^2), so Heron's formula can be used:

Let s = (2*r+sqrt(a^2+b^2))/2 = r + sqrt(a^2+b^2)/2

This triangle's area is sqrt(s*(s-r)^2*(s-sqrt(a^2+b^2))).

So the area of the segment is r^2 * arcsin(sqrt(a^2+b^2)/(2*r)) - sqrt(s*(s-r)^2*(s-sqrt(a^2+b^2))).

That makes the area of the whole overlap:

r^2 * arcsin(sqrt(a^2+b^2)/(2*r)) - sqrt(s*(s-r)^2*(s-sqrt(a^2+b^2))) + a*b/2.

This has been checked for reasonableness by having a program perform these calculations when (1) a=r and b=r, where the result should be one quarter the area of the full circle, and (2) a = 2*r and b=0, where the result should be half the area of the full circle:

`r        a        b             area5        5        5             19.634954084936215        10       0             39.26990816987242`

DECLARE FUNCTION arcsin# (x#)
DEFDBL A-Z
DIM SHARED pi
CLS
pi = ATN(1) * 4
r = 5
a = 5: b = 5
GOSUB calc
a = 10: b = 0
GOSUB calc
END

calc:
s = r + SQR(a ^ 2 + b ^ 2) / 2
area = r ^ 2 * arcsin(SQR(a ^ 2 + b ^ 2) / (2 * r)) - SQR(s * (s - r) ^ 2 * (s - SQR(a ^ 2 + b ^ 2))) + a * b / 2
PRINT r, a, b, area
RETURN

FUNCTION arcsin (x)
IF ABS(x) = 1 THEN
arcsin = pi / 2 * SGN(x)
ELSE
arcsin = ATN(x / SQR(1 - x * x))
END IF
END FUNCTION

 Posted by Charlie on 2006-08-09 10:47:16

 Search: Search body:
Forums (0)