Code covered by the BSD License  

Highlights from
Digital Karma: State Graphing

image thumbnail
from Digital Karma: State Graphing by Aman Siddiqi
Evolutionary Simulation, Interaction Graph

displaybox_callback.m
% this is run when you type in the display box
run computeiterations;
displayboxvalue=round(str2num(get(findobj('Tag','displaybox'),'string')));

if dimension==2;
    if displayboxvalue(1,1)>completediterations; displayboxvalue(1,1)=completediterations; end;
    if displayboxvalue(1,1)<0; displayboxvalue(1,1)=0; end;
    if displayboxvalue(2,1)>totalrows; displayboxvalue(2,1)=totalrows; end;
    if displayboxvalue(2,2)>totalrows; displayboxvalue(2,1)=totalrows; end;
    if displayboxvalue(2,1)<1; displayboxvalue(2,1)=1; end;
    if displayboxvalue(2,2)<1; displayboxvalue(2,1)=1; end;
    if displayboxvalue(3,1)>columns; displayboxvalue(3,1)=columns; end;
    if displayboxvalue(3,2)>columns; displayboxvalue(3,2)=columns; end;
    if displayboxvalue(3,1)<1; displayboxvalue(3,1)=1; end;
    if displayboxvalue(3,2)<1; displayboxvalue(3,2)=1; end;
    displayboxvalue(1,2)=completediterations;
    
    currentiteration=displayboxvalue(1,1);
    firstrow=displayboxvalue(2,1); rowsshown=(displayboxvalue(2,2)-firstrow+1);
    set(findobj('Tag','rowsinputbox'),'string', rowsshown);
    firstcolumn=displayboxvalue(3,1); columnsshown=(displayboxvalue(3,2)-firstcolumn+1);
    set(findobj('Tag','columnsinputbox'),'string', columnsshown);
    opening_iteration; CA_Display;
elseif dimension==1;
    if displayboxvalue(1,1)>completediterations; displayboxvalue(1,1)=completediterations; end
    if displayboxvalue(1,1)<0; displayboxvalue(1,1)=0; end;
    if displayboxvalue(3,1)>columns; displayboxvalue(3,1)=columns; end;
    if displayboxvalue(3,2)>columns; displayboxvalue(3,2)=columns; end;
    if displayboxvalue(3,1)<1; displayboxvalue(3,1)=1; end;
    if displayboxvalue(3,2)<1; displayboxvalue(3,2)=1; end;
    displayboxvalue(2,1)=0; displayboxvalue(2,2)=0; displayboxvalue(1,2)=completediterations;
    
    currentiteration=displayboxvalue(1,1);
    firstcolumn=displayboxvalue(3,1); columnsshown=(displayboxvalue(3,2)-firstcolumn+1);
    set(findobj('Tag','columnsinputbox'),'string', columnsshown);
    opening_iteration; CA_Display;
end;
set(findobj('Tag','displaybox'), 'string', num2str(displayboxvalue));

Contact us at files@mathworks.com