matlab 生成均匀等间距分布的散点圆
程序员文章站
2022-03-04 20:01:40
...
先上结论
clc
%%%%%%%%%%%%%%%%%%%%%%% 均匀散点圆 %%%%%%%%%%%%%%%%%%%%%%%%%%
shape_radius = 6; % 大圆形半径
particle_x = []; % 粒子x矩阵
particle_y = []; % 粒子y矩阵
particle_p = [;]; % 均匀点坐标
x0 = 0; y0 = 0; % 大圆心坐标
r0=1; dr = 0.02; % 大圆半径 增量
% 生成等间距矩形
i = x0- r0; j = y0 - r0;
while(abs(i - x0) <= r0)
particle_x = [particle_x ; i];
i = i + dr;
end
while(abs(j - y0) <= r0)
particle_y = [particle_y ; j];
j = j + dr;
end
% 如果点到圆心的距离大于r就舍弃这个点,小于等于就保存这个点到数组particle_p中
for(i = 1 : length(particle_x))
for(j= 1 : length(particle_y))
d=(particle_x(i)^2 + particle这个_y(j)^2)^(1/2); %均匀点到大圆圆心的距离
if(d > r0)
continue;
else
particle_p(end + 1,1) = particle_x(i);% 最终数据坐标
particle_p(end ,2) = particle_y(j);% 最终数据坐标
end
end
end
plot(particle_p(:,1),particle_p(:,2),'.');