I’m looking for a fast way to determine the area of intersection between a rectangle and a circle (I need to do millions of these calculations).
A specific property is that in all cases the circle and rectangle always have 2 points of intersection.
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
Given 2 points of intersection:
0 vertices is inside the circle: The area of a circular segment
1 vertex is inside the circle: The sum of the areas of a circular segment and a triangle.
2 vertices are inside the circle: The sum of the area of two triangles and a circular segment
3 vertices are inside the circle: The area of the rectangle minus the area of a triangle plus the area of a circular segment
To calculate these areas:
Most of the points you’ll need to use can be found by finding the intersection of a line and a circle
The areas you need to compute can be found by computing the area of a circular segment and computing the area of a triangle.
You can determine if a vertex is inside the circle by calculating if its distance from the center is less than the radius.