Unmask ALL the masks in a model

4 views (last 30 days)
Ubaldo
Ubaldo on 22 Sep 2016
Edited: Paras Kapoor on 4 Oct 2016
Hi all, I have a fairly large model, and I need to unmask all the masked blocks. Going through the model and to manually unmask one-by-one all the masked blocks is nearly impossible. Is there a way to do it automatically?
Many thanks!

Answers (1)

Paras Kapoor
Paras Kapoor on 4 Oct 2016
Edited: Paras Kapoor on 4 Oct 2016
There are 2 types of mask :
1. Functional : It contains its own parameters. You have to manually unmask them because parameters used inside the mask have to be saved in Matlab workspace.
2. Graphical : It is just a display of block. No use of parameters.
Below is a script to run while your model is open. It will remove all the graphical masks automatically.
sys = bdroot;
load_system(sys);
BlockNames = find_system(sys);
val = hasmask(BlockNames);
graphical = find(val==1);
functional = find(val==2);
for i = 1:length(graphical)
name = char(BlockNames(graphical(i)));
p = Simulink.Mask.get(name);
p.delete;
end

Tags

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!