Problems with MaskDisplay command

Hi,
I've a simulink block and I set for it
disp('{\bf\it\fontsize{20}\fontname{Calisto MT}MODEL}', 'texmode','on');
port_label('output', 1, 'qpp');
port_label('output', 2, 'qp');
port_label('output', 3, 'q');
port_label('input', 1, 'u');
by the Mask Editor. Now I want apply it at a new block using matlab commands, I do:
set_param('sys/blockname', 'MaskDisplay', {'disp('{\bf\it\fontsize{20}\fontname{Calisto MT}MODEL}', 'texmode','on'); port_label('output', 1, 'qpp'); port_label('output', 2, 'qp'); port_label('output', 3, 'q'); port_label('input', 1, 'u')'})
it returns:
set_param('sys/blockname', 'MaskDisplay', {'disp('{\bf\it\fontsize{20}\fontname{Calisto MT}MODEL}', 'texmode','on'); port_label('output', 1, 'qpp'); port_label('output', 2, 'qp'); port_label('output', 3, 'q'); port_label('input', 1, 'u')'})
|
Error: Unbalanced or unexpected parenthesis or bracket.

 Réponse acceptée

Kaustubha Govind
Kaustubha Govind le 23 Sep 2013

0 votes

You can just execute what you're passing in as the third parameter to set_param to make sure that it's a string (and not a cell-array). I get the same error in MATLAB when I say:
>> {'disp('{\bf\it\fontsize{20}\fontname{Calisto MT}MODEL}', 'texmode','on'); port_label('output', 1, 'qpp'); port_label('output', 2, 'qp'); port_label('output', 3, 'q'); port_label('input', 1, 'u')'}
{'disp('{\bf\it\fontsize{20}\fontname{Calisto MT}MODEL}', 'texmode','on'); port_label('output', 1, 'qpp'); port_label('output', 2, 'qp'); port_label('output', 3, 'q'); port_label('input', 1, 'u')'}
|
Error: Unbalanced or unexpected parenthesis or bracket.
Just from a cursory glance, the problem is that you are not escaping the quotes in the string. So you need:
set_param('sys/blockname', 'MaskDisplay', 'disp(''{\bf\it\fontsize{20}\fontname{Calisto MT}MODEL}'', ''texmode'',''on''); port_label(''output'', 1, ''qpp''); port_label(''output'', 2, ''qp''); port_label(''output'', 3, ''q''); port_label(''input'', 1, ''u'')')

Plus de réponses (0)

Catégories

En savoir plus sur Simulink dans Centre d'aide et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by