level 1
function genWM(Ds,lambda,nmax)
%GENWM 生成W-M 随机曲面
% 此处显示详细说明
% lambda
% Ds 分形维数
if nargin < 3
nmax = 10;
if nargin < 2
lambda = 1.5;
if nargin < 1
Ds = 2.3;
end
end
end
% nmax = 10;
An = 2*pi*rand(nmax,1);
Bn = 2*pi*rand(nmax,1);
Cn = randn(nmax,1);
x = 0:0.1:6;
y = 0:0.1:6;
[X,Y] = meshgrid(x,y);
% lambda = 1.5;
% Ds = 2.05;
Z= zeros(length(x),length(y));
for ni = 1:nmax
t = -(3-Ds)*ni;
temp1 = X.*cos(Bn(ni)) + Y.*sin(Bn(ni));
zn = Cn(ni)*lambda^t.*sin(lambda^ni.*temp1+An(ni));
Z = zn + Z;
end
surf(X,Y,Z);
xlabel('X');
ylabel('Y');
zlabel('Z');
filename = ['W-M fractal surface','_Ds',num2str(Ds),'_lambda',num2str(lambda),'.bmp'];
saveas(gcf,filename,'bmp');
end
2023年04月05日 08点04分
11
兄弟,请问你会wm的二维随机曲线的绘制吗
2024年12月15日 08点12分
@葫芦酒中意 你解决了吗兄弟,在matlab 中生成二维的
2025年07月02日 07点07分