Simulink - automatically hide the name of a new block?
50 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi all -
When I build Simulink models I tend to immediately hide the name of a block unless it's not obvious exactly what it's doing (and then I rename it). For instance, I will hide the name of "Gain", "Sum", etc.
Is there a setting or way to automatically hide the name of a block I drop into a model? It gets tedious to do this manually, especially as there is no keyboard shortcut to do so.
Thanks!
1 commentaire
Kaustubha Govind
le 7 Déc 2011
How exactly do you hide the name? Do you delete the label? Or do you set it to blankspaces?
Réponse acceptée
Abhishek Gupte
le 7 Déc 2011
There is no way of automatically hiding the block names the moment you drop a block into a model. There is no setting in Simulink Preferences ( http://www.mathworks.com/help/releases/R2011b/toolbox/simulink/gui/briaid4.html ) to do this.
The workaround is:
1. Once you are done adding blocks to the model,
blockNames = find_system( bdroot , 'Type' , 'Block' );
for k = 1 : length( blockNames )
set_param( blockNames{k} , 'ShowName' , 'off' );
end;
2. If you run the above lines in the command window and then drag the lines from the Command History Window to the Shortcuts Toolbar, you can have a nice shortcut without having to type the lines each time.
3. I would recommend having a shortcut for:
set_param( blockNames{k} , 'ShowName' , 'on' );
as well.
2 commentaires
Robert
le 3 Juil 2023
Maybe the link in Simon Greenwold's reply has broken, as I returned to this thread to remember how to hide block names and could not find the answer. To avoid future confusion, the answer in 17b onwards is to go to "Format" tab in simulink > "name" dropdown in BLOCK LAYOUT section > tickbox for "hide automatic block names".
Plus de réponses (3)
Simon Greenwold
le 14 Nov 2017
We added a feature in R2017b to automatically hide block names when the names are default. It's documented here.
Does that help?
1 commentaire
Robert
le 3 Juil 2023
As link has changed, process in 17b onwards is: "Format" tab in simulink > "name" dropdown in BLOCK LAYOUT section > tickbox for "hide automatic block names".
Abhijit Das
le 30 Mar 2012
Abhishek,
Thanks for the answer and it is helpful. Although it is working only with the main simulink window but not for munsked or subsystems. Are you aware of any tip for that too?
Thanks.
Abhijit
1 commentaire
Abhay khemka
le 21 Fév 2019
Modifié(e) : Abhay khemka
le 21 Fév 2019
instead of this,
set_param( blockNames{k} , 'ShowName' , 'on' );
we can make it more generalised
set_param( pathTotheBlockName , 'ShowName' , 'on'/'off' ); this should work for all subsystems and blocks...
for masked systems, refer to the link below:
https://in.mathworks.com/help/simulink/ug/control-masks-programmatically.html
also, if you are working on a big system,make sure to name blocks or subsystems in a systematic order, so that u can access all the blocks/subsystems in one loop. That will reduce lot of effort.
Robert
le 30 Nov 2018
If you have switched off "automatic" hide/display feature for all existing blocks, you can use
set(find_system(get_param(bdroot,'Handle'),'HideAutomaticName','on'),'HideAutomaticName','off','ShowName','off');
to hide the name of all newly added blocks of the current model.
If you need to switch off the "automatic name" in your models blocks i the first place, use
set(find_system(get_param('mymodelroot','Handle'),'HideAutomaticName','on'),'HideAutomaticName','off');
Generally switching off 'HideAutomaticName' is very useful when working with models that have to follow modelling rules such as MAAB or MISRA SLSF that do not allow spaces or line breaks that are found in most of the simulink default block names.
Best regs,
Robert
0 commentaires
Voir également
Catégories
En savoir plus sur Programmatic Model Editing dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!