calculate the area of three circles overlapping

조회 수: 3 (최근 30일)
vatankhah
vatankhah 2013년 9월 12일
댓글: Sunita Saha 2018년 2월 24일
I have 3 circles. We know the center coordinates of each circle and also their radii.
For example:
circle 1: radius=r1 , center coordinate=(x1,y1)
circle 2: radius=r2 , center coordinate=(x2,y2)
circle 3: radius=r3 , center coordinate=(x3,y3)
I want to calculate the overlapping area of these three circles. I mean just the area which all these three circles have in common
thanks

답변 (1개)

Image Analyst
Image Analyst 2013년 9월 12일
I suggest you start with this answer by Roger: http://www.mathworks.com/matlabcentral/answers/86975#answer_96518
  댓글 수: 5
Image Analyst
Image Analyst 2018년 2월 23일
Create a digital image with the faq http://matlab.wikia.com/wiki/FAQ#How_do_I_create_a_circle.3F. Then sum the circle binary image into a cumulative one as you draw each circle.
sumImage = zeros(rows, columns);
for k = 1 : numCircles
thisOneCircle = .... use FAQ to create image of one circle.
sumImage = sumImage + thisOneCircle;
end
Then use sum to count the number of pixels where the count is more than 2
overlappedPixels = sumImage >= 2;
numOverlapPixels = sum(overlappedPixels (:));
Sunita Saha
Sunita Saha 2018년 2월 24일
Thank you for the solution suggestion.

댓글을 달려면 로그인하십시오.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by