Overlap between N circles
Mostrar comentarios más antiguos
Hello everyone I have an excel file with 2 columns (x and y) and 2111 rows. What my program does as far now is to : call the file from matlab, place all the couples (xi,yi) on the graph and construct one circle for each point of the excel matrix
clc
close all
clear all
DataSelect='celapossofare';
[v,X,vX]=xlsread('celapossofare.xlsx');
x=v(:,1);y=v(:,2);
plot(x,y,'.');
r = x*0 + 1000;
CIP=circles_new(x,y,r);
Now I would like to calculate the overlapping of this circles (that has as centre xi, yi).
Can someone help me?
[EDIT] CHIARA'S "ANSWER" MOVED HERE:
what I did is the following code
d2 = (x2-x1)^2+(y2-y1)^2;
d = sqrt(d2);
t = ((2*r)^2-d2)*(d2);
if r <= d <= 2*r
A = 2*r^2*acos(d2/(2*d*r))-1/2*sqrt(t);
elseif d > 2*r
A = 0;
else % d < r
A = pi*r^2;
end
My problem Is very stupid but I just started to prgram in matlab.
I don't know How to take x,y from a matrix that I have in excel
4 comentarios
Sara
el 4 de Jun. de 2014
Do you need the points where the circles intersect or the area of the overlap?
chiara
el 5 de Jun. de 2014
Roger Wohlwend
el 5 de Jun. de 2014
Do you want to know just the size of the area or do you want to know exactly where it is so that you could highlight it in a diagram for example?
chiara
el 5 de Jun. de 2014
Respuesta aceptada
Más respuestas (2)
Categorías
Más información sobre Logical en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!