Is there any way to access the text of a Simulink DocBlock ?

Does anybody know a way to access the Text of a Simulink DocBlock in a model via command line, using find_system command ?

 Réponse acceptée

TAB
TAB le 8 Mai 2018
Modifié(e) : TAB le 8 Mai 2018
% Find docblocks in model
dBlkH = find_system('MyModel', 'BlockType', 'SubSystem', 'Mask', 'on', 'MaskType', 'DocBlock');
% Extract the docblock text
dBlkUData = get_param(dBlkH(1), 'UserData');
bBlkText = dBlkUData.content;

2 commentaires

Thanks Tabrez, this is helpful ! :-)
If I add a 'FindAll', 'on' it is returning me the Handles to the DocBlocks (otherwise a cell array). I can use either of it.
>> dBlkH = find_system('tl_vwe_model', 'FindAll', 'on', 'BlockType', 'SubSystem', 'Mask', 'on', 'MaskType', 'DocBlock')
dBlkH =
5.0002
8.0002
>> dBlkH = find_system('tl_vwe_model', 'BlockType', 'SubSystem', 'Mask', 'on', 'MaskType', 'DocBlock')
dBlkH =
2×1 cell array
'tl_vwe_model/ChangeHistory'
'tl_vwe_model/Requirements'
I still do not know why this only finds the blocks on top model level (not in the lower subsystem levels).
TAB
TAB le 9 Mai 2018
Modifié(e) : TAB le 9 Mai 2018
Above search command should find the DocBlock in all level of model.
Try to use the 'SearchDepth' option and check there is any difference.

Connectez-vous pour commenter.

Plus de réponses (1)

liuyan
liuyan le 24 Déc 2020
尝试引用非结构体数组的字段。
出错 Untitled5 (line 31)
bBlkText = dBlkUData.content;

Catégories

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by