miércoles, 19 de marzo de 2014

Puntos aleatorios dentro de una circunferencia


Esta función permite dibujar puntos distribuidos aleatoriamente dentro de una región delimitada por una circunferencia. El radio de la circunferencia y el número de puntos son los argumentos de entrada.


function circ_punt(r,N)
% Donde:
%   r : radio del círculo
%   N : número de puntos aleatorios
%
% Ej:   >> circ_punt(10,200);

t=linspace(0,2*pi,1000);
x=r*cos(t);
y=r*sin(t);
hold on
plot(x,y,'linewidth',2);
k=1;
while k <= N
    px=randi([-100*r,100*r])/100;
    py=randi([-100*r,100*r])/100;
    ifsqrt(px^2+py^2)<r
        plot(px,py,'.r')
        k=k+1;
    end
    axis([-(r+1) r+1 -(r+1) r+1]);
    axis('square');
end    
end


La siguiente imagen es el resultado de la ejecución con r=10 y N=200:





No hay comentarios.:

Publicar un comentario