spirall.m

来自「包括Koch曲线、Levy 曲线、分形树、Sierpinski三角形」· M 代码 · 共 22 行

M
22
字号
function [z,A,L,zp]=spirall(z,A,L,zp); 
% 递归法生成涡旋曲线 
% L 初始线长   
% Example: 
%     [z,A,L,zp]=spirall(0,0,100,0); 
% 算法参见 
% http://graphics.shu.edu.cn/course/fractal/program/p3-4-1-1.htm 
sc=0.96;  % 缩小率 
clf;
if nargin==0;
    z=0;A=0;L=100;zp=0;
end
hold on;
if L>1; 
   z=z+L*exp(i*A); 
   A=A+pi/4; 
   zp=[zp,z]; 
   [z,A,L,zp]=spirall(z,A,L*sc,zp); 
else 
   plot(zp,'r');axis off;axis equal 
end 

⌨️ 快捷键说明

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