Area of two identical overlapping ellipses
    2 views (last 30 days)
  
       Show older comments
    
    laoliu102
 on 19 Dec 2017
  
    
    
    
    
    Commented: John D'Errico
      
      
 on 20 Dec 2017
            Hi, I have two identical overlapping ellipses (one is moved by 0.2 in the y direction). How can I calculate the overlapping area?
I know how to analytically solve the overlapping area of two identical circles, but the analytical solution for two identical overlapping ellipses is very hard to find...Maybe Matlab can do it numerically or by comparing pixels?
My two ellipses are generated using the following code:
a = 1;
b = sqrt(2);
x0=0;
y0=0;
t=-pi:0.01:pi;
x=x0+a*cos(t);
y=y0+b*sin(t);
m1=fill(x,y,'b')
m1.FaceAlpha=0.2;
y01=y0+0.2;
y1=y01+b*sin(t);
hold on
m2=fill(x,y1,'r')
m2.FaceAlpha=0.2;
0 Comments
Accepted Answer
  John D'Errico
      
      
 on 20 Dec 2017
        
      Edited: John D'Errico
      
      
 on 20 Dec 2017
  
      Pretty simple actually as just a transformation of variables.
You claim to have the analytical solution for a pair of circles, with a simple y offset.
Solve the problem for a pair of circles with unit radius, where one circle is offset in y by a delta of 0.2/b. (.2/b is important here.) Get the area as A_c. (Thus the area of intersection for two circles of radius 1.)
Now, if you implicitly transform the variables such that
X_e = x_c*a
Y_e = Y_c*b
The area of the ellipse intersection will be a*b*A_c.
5 Comments
  John D'Errico
      
      
 on 20 Dec 2017
				Exactly. Were one of the ellipses rotated, it gets a bit messy. But this case is a simple one.
More Answers (0)
See Also
Categories
				Find more on Logical in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

