Matlab 均分圆形生成点
程序员文章站
2022-03-10 16:05:31
...
个人学习应用,将圆形内部按照一定规律均分生成一系列点
particle_radius=0.3; % 小圆形半径
shape_radius=6; % 大圆形半径
particle_diameter = 2 * particle_radius;
particle_x =[]; % 粒子x矩阵
particle_y =[]; % 粒子y矩阵
g=floor( shape_radius / particle_diameter); %将大圆形空间按照小圆形直径均分数量
for i=1:g
j=2*i-1; %均分内部圆环按照小圆直径分布
l=(shape_radius-particle_radius*j)*2*pi;
N=floor(l/particle_diameter); % 每个圆形均分数量
for k=1:N
x =(shape_radius-particle_radius*j)*cos(2*k*pi/N);
y =(shape_radius-particle_radius*j)*sin(2*k*pi/N);
particle_x =[particle_x;x];
particle_y =[particle_y;y];
end
end
particle_position = [particle_x particle_y]; % 最终数据坐标
plot(particle_position(:,1),particle_position(:,2),'r.');
axis equal;
最终生成结果:
上一篇: 第二次作业——个人项目实战:数独