%MAKEFRAC is a subroutine of the program "fractory.m". It %transforms the information in the vector "curdat" into the %2Kx2 matrix A and the 2K vector B which define the IFS, %which is in turn used by the fractal drawing subroutine %"fracdrw.m". MAKEFRAC also covers the control panel while %the fractal is being drawn. %Set values and prepare windows maxvar=999; maxvar=maxvar-1; A=[]; B=[]; for nn=1:K if fcnon(nn)==1 x1=get(fcns(nn),'XData'); y1=get(fcns(nn),'YData'); A1=[x1(4)-x1(3) x1(2)-x1(3);y1(4)-y1(3) y1(2)-y1(3)]; B1=[x1(3);y1(3)]; A=[A;A1]; B=[B;B1]; end end for nn=1:4 set(curpts(nn),'Visible','off'); end if hldbx==0 for nn=1:K set(fcns(nn),'Visible','off'); end end ctlmode='off'; setwho=[1 2 3]; setctl TotIt=eval(get(NIedtx,'String')); TotPlts=floor(TotIt/maxvar)+1; %Control Panel cover frame FDbox(1) = uicontrol(Cpan,... 'Style','frame',... 'Position',[5 5 355 550]); %Work in progress frame 1 FDbox(2) = uicontrol(Cpan,... 'Style','frame',... 'Position',[50 380 265 50]); %Work in progress frame 2 FDbox(5) = uicontrol(Cpan,... 'Style','frame',... 'Position',[52 382 2 46],... 'ForegroundColor','b',... 'BackgroundColor','k'); %Working/Done static text FDbox(3) = uicontrol(Cpan,... 'Style','text',... 'Position',[50 435 110 20],... 'String','WORKING . . .'); %Interupt/Continue button brk=0; FDbox(4) = uicontrol(Cpan,... 'Style','push',... 'Position',[100 250 165 50],... 'String','INTERRUPT',... 'CallBack','brk=1;'); if intrp==0 set(FDbox(4),'Visible','off'); end pause(.001) cleanup=0; fracdrw pause(.001) cleanup=1; set(FDbox(3),'String','DONE',... 'Position',[50 435 50 20]); set(FDbox(4),'Visible','on',... 'String','CONTINUE...',... 'Callback','fracdrw');