Hi, I need to generate random points inside a parallelepiped
4 次查看(过去 30 天)
显示 更早的评论
Hi guys, I need to generate a total i of points inside a specific parallelepiped(a*b*c) and plot it then after havings thoses points and their coordinations generate a sphere for each point.I already did a script but unfortunately it gives me a cube results :
clc close all a=10; % mm b=10; % mm depth=0.3; %mm i= 1145916; %total number of pores and thus of points inside the parallelepiped v=i*[]; Vt=a*b*depth; %volume expression mm^3 s = 10; n = bsxfun(@plus,0,s.*rand(i,3)); r=normrnd(0.005,0.001,[1 i]); %mu=0,005 mm ==>5µm x=n(:,1); y=n(:,2); z=n(:,3); scatter3(x,y,z,r,'fill') for k=1:i v(k)=(4*pi*(r(k)^3))/3; end figure plot(v) figure plot(r) figure subplot(3,1,1),histogram(x) subplot(3,1,2),histogram(y) subplot(3,1,3),histogram(z)
if true
clc
close all
a=10; % mm
b=10; % mm
depth=0.3; %mm
i= 1145916; %total number of pores and thus of points inside the parallelepiped
v=i*[];
Vt=a*b*depth; %volume expression mm^3
s = 10;
n = bsxfun(@plus,0,s.*rand(i,3));
r=normrnd(0.005,0.001,[1 i]); %mu=0,005 mm ==>5µm
x=n(:,1);
y=n(:,2);
z=n(:,3);
scatter3(x,y,z,r,'fill')
for k=1:i
v(k)=(4*pi*(r(k)^3))/3;
end
figure
plot(v)
figure
plot(r)
figure
subplot(3,1,1),histogram(x)
subplot(3,1,2),histogram(y)
subplot(3,1,3),histogram(z)
end
Best Regards
0 个评论
回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!