[:de]Blockparameter ändern per Skript.

get(gcbh) %Alle verfügbaren Parameter des aktuell makierten Blocks abrufen

set_param(foundBlocks(i),'GotoTag',paramValue) %Parameter ändern

 

Als beispiel werden hier alle Goto und From Blöcke gesucht und an die jeweiligen Tags „_2“ angehangen. Die Änderung wird nur durchgeführt, wenn der bisherige Tag noch nicht auf die gewünschte Endung endet.

pfad = 'mysimulinkmodel/layer1';

set_ending = '_2';

countChangesGotos = 0;


foundBlocks = find_system(pfad, 'FindAll', 'on', 'BlockType','Goto');
foundBlocks_From = find_system(pfad, 'FindAll', 'on', 'BlockType','From');

foundBlocks = [foundBlocks ; foundBlocks_From];

for i = 1:length(foundBlocks)
    paramValue = get_param(foundBlocks(i),'GotoTag');
    if strcmp( paramValue(end-length(set_ending)+1:end), set_ending) == 0
        paramValue = [paramValue set_ending];
        set_param(foundBlocks(i),'GotoTag',paramValue)
        countChangesGotos = countChangesGotos + 1;
    end
    
    
end
disp(['Gotos und Froms geändert: ' num2str(countChangesGotos)]);

 

 

 [:]