|
|
[求助]
分形图康托尔地毯的matlab程序模拟
生成一张康托尔地毯分形图,特点是在较大方块的四周生产8个小方块,后者边长是前者的1/3,逐代繁衍,生产下图所示
![]()
-----matlab程序有错,请高手指点------------
程序如下
----------------------------------------------------------------
function [I]=Fractal_situoer(M,N,x0,y0,a,k)
% %M,N,像素数;x0,y0,中心位置;a正方形的边长的一半,k是迭代次数
% %例子:
% %Fractal_situoer(486,486,324,324,81,4);
% I0=FractalExm11(M,N,x0,y0,a,k);
I=zeros(M,N);
x=x0-a:1:x0+a-1;
y=y0-a:1:y0+a-1;
I(x,y)=1;
n=[-1 -1 -1 0 0 1 1 1];
m=[-1 0 1 -1 1 -1 0 1];
newa=a/3;
newx0=x0+2*a.*n;
newy0=y0++2*a.*m;
for i=1:8
% x1=x0+2*a;y1=y0;
x=newx0(i)-newa:1:newx0(i)+newa-1;
y=newy0(i)-newa:1:newy0(i)+newa-1;
I(x,y)=1;
if k>1
I=Fractal_situoer(M,N,newx0(i),newy0(i),newa,k-1);%
end
end
——————————————————————————————
clear all
clc
N=486;M=486;k=2;
x0=243;y0=243;a=81;
% I0=zeros(M,N);
A=Fractal_situoer(M,N,x0,y0,a,k);
imshow(A)
--------------
程序中不加红色标注的语句时,可产生一代,加上就以后出错了。
感觉问题出在赋值上,但绞尽脑汁没弄出来。
[ Last edited by smy1982 on 2013-4-27 at 17:15 ] |
» 猜你喜欢
售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急
已经有7人回复
售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急
已经有3人回复
售一区SCI文章T0P,我:8O.551.O54,科目全,可十急
已经有8人回复
售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急
已经有6人回复
售一区SCI文章T0P,我:8O.551.O54,科目全,可十急
已经有6人回复
售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急
已经有10人回复
售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急
已经有15人回复
售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急
已经有13人回复
售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急
已经有16人回复
售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急
已经有20人回复
|