⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 koch.m

📁 该程序为在matlab环境运行
💻 M
字号:

function [z,A]=Koch(z,A,n); 
% 递归法生成Koch曲线 
% Example: 
%     [z,A]=Koch(0,pi/2,0); 
% 算法见: 
% http://graphics.shu.edu.cn/course/fractal/program/p3-4-1-2.htm 
z=0;A=pi/2;n=0;
N=4;   % 递归次数 
len=400/3^n; 
hold on; 

if n>=N 
   plot([z,z+len*exp(i*A)]/i); 
   z=z+len*exp(i*A); 
else 
   [z,A]=Koch(z,A,n+1); 
   A=A+pi/3; 
   [z,A]=Koch(z,A,n+1); 
   A=A-pi*2/3; 
   [z,A]=Koch(z,A,n+1); 
   A=A+pi/3; 
   [z,A]=Koch(z,A,n+1); 
end 
axis on;axis equal 
% zz=xlim; 
% xlim([min(zz),mean(zz)])
function iterative_f2_move; 
% x=y-sign(x)*sqrt(abs(b*x-c)) 
% y=a-x 
% Author's email:zjliu2001@163.com 
% reference: 
% http://astronomy.swin.edu.au/~pbourke/fractals/wallpaper/ 
% 
% 

figure; 
set(gcf,'doublebuffer','on'); 
for h=1:10^6; 
   c=(mod(h,100)-50)/50*2; 
   h1=round(h/100); 
   b=(mod(h1,100)-50)/50*2; 
   h2=round(h1/100); 
   a=(h2-50)/50*2; 
   funabc(a,b,c); 
   title(['(a,b,c)= ','(',num2str(a),',',... 
           num2str(b),',',num2str(c),')']); 
   pause(0.4); 
end 

function funabc(a,b,c); 
% a=05;     % month 
% b=21;     % day 
% c=1979;   % year 
N=10000; 
x=zeros(1,N); 
y=x; 
for k=1:N-1; 
   x(k+1)=y(k)-sign(x(k))*sqrt(abs(b*x(k)-c)); 
   y(k+1)=a-x(k); 
end 
X=[cos(pi/4),sin(pi/4);sin(-pi/4),cos(pi/4)]; 
S=[-y;x]'*X; 
xx=S(:,1);yy=S(:,2); 
plot(xx,yy,'w.','markersize',2); 
set(gca,'color','k'); 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -