Simulink.B​lockDiagra​m.arrangeS​ystem does not work inside library

1 vue (au cours des 30 derniers jours)
Manuel K
Manuel K le 30 Nov 2022
Modifié(e) : Manuel K le 1 Déc 2022
Hello,
I'm using the command:
Simulink.BlockDiagram.arrangeSystem(gcb,FullLayout='true');
to sort and rearrange the blocks inside a masked subsystem. This worked fine until I converted this subsystem into a library block.
Now this command does nothing and the internal structure remains cluttered and unreadabel. Because this blocks heavily modifies itself, I can't establish a pleasant alignment beforehand.
Is there any way to get this working?
  4 commentaires
Fangjun Jiang
Fangjun Jiang le 30 Nov 2022
Sorry, to be acurate, for the library block, I shall refer it as "is the LinkStatus inactive".
Manuel K
Manuel K le 30 Nov 2022
Also no.

Connectez-vous pour commenter.

Réponses (1)

Fangjun Jiang
Fangjun Jiang le 30 Nov 2022
I've tried it. You need to disable the library link first.
set_param(gcb,'LinkStatus','inactive')
Simulink.BlockDiagram.arrangeSystem(gcb,FullLayout='true')
  2 commentaires
Manuel K
Manuel K le 1 Déc 2022
Although that's working, I don't want to keep the 'LinkStatus' in the 'inactive' state.
(Restoring it isn't possible because the local instance has different blocks inside, which will get deleted.)
Manuel K
Manuel K le 1 Déc 2022
Modifié(e) : Manuel K le 1 Déc 2022
Since the command only works the first time after placing the library-block (as mentioned in my comment above), my workaround is the following:
Everytime I need to change / update a setting inside the mask of the librry-block, I place a new instance and delete the old one.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Simulink Environment Customization dans Help Center et File Exchange

Produits


Version

R2022b

Community Treasure Hunt

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

Start Hunting!

Translated by