Code covered by the BSD License  

Highlights from
Companion software for the book "Simulink 7.2 - Guia Pratico"

image thumbnail
from Companion software for the book "Simulink 7.2 - Guia Pratico" by Elia Matsumoto
Supplemental set of MATLAB M-files and Simulink models.

animacao2(block)
% animacao Level 2 M-File S-function: cria animacao do salto 'bungie jump'
function animacao2(block)
% Configura parmetros inicials:
setup(block)

% Inicia tela de animacao
animinit('Bungie02');
axis([-50 50 -120 10]); % Define Eixos
hold on;
x=[0 0];
y=[0 0];
plot([-40 40],[0 0],'LineWidth',5)   % Desenha linha base
hndlList(1)=plot(x,y,'LineWidth',5,'EraseMode','background'); % Desenha corda
hndlList(2)=plot(0,0,'.','MarkerSize',40,'EraseMode','back'); % Desenha corpo
set(gca,'DataAspectRatio',[1 1 1]);
set(gca,'UserData',hndlList);

% Estado atual: desenha posicao corrente
block.RegBlockMethod('Outputs' ,@Desenha);


function setup(block)
block.NumInputPorts  = 1;
block.NumOutputPorts = 1;
block.InputPort(1).Dimensions        = 1;
block.InputPort(1).DirectFeedthrough = false;
block.OutputPort(1).Dimensions       = 1;
block.NumDialogPrms     = 0;
block.SampleTimes = [0.1 0];

function Desenha (block)
hndlList=get(gca,'UserData');
sigVal = block.InputPort(1).Data;
x=[0 0];
y=[0 sigVal];
set(hndlList(1),'XData',x,'YData',y);       % Desenha corda
set(hndlList(2),'XData',x(2),'YData',y(2)); % Desenha corpo
drawnow;

Contact us at files@mathworks.com