"Not enough input arguments" error using add_line()

2 visualizzazioni (ultimi 30 giorni)
Lucas S
Lucas S il 28 Giu 2019
Commentato: Lucas S il 28 Giu 2019
Hello !
I'm trying to use add_line() function and to organize link with the 'autorouting' parameter. Here is my code :
add_line(sprintf('%s',diagrammeName), [pos_array_out{pos_out};pos_array_in{pos_in}], 'autorouting','on');
where pos_array_out is a cell of Output position and pos_array_in is a cell of Input position.
And pos_in and pos_out are index of cell.
But it returns me an error :
Not enough input arguments
And i don't understnd why

Risposte (1)

Stephen23
Stephen23 il 28 Giu 2019
Modificato: Stephen23 il 28 Giu 2019
"...i don't understnd why"
Read the error message!
According to the add_line documentation you can supply these input arguments:
add_line(sys,out,in,'autorouting',autoOption)
but in your code you have concatenated out and in into one array. Try this:
add_line(sprintf('%s',diagrammeName),...
[pos_array_out{pos_out}],... OUT
[pos_array_in{pos_in}],... IN
'autorouting','on');
  2 Commenti
Lucas S
Lucas S il 28 Giu 2019
The problem is that pos_array_out{pos_out} is a Position from get_param('System', 'PortConnectivity') (for example 150 75) and so it returns me Invalid Simulink port handle when i do like you say
Lucas S
Lucas S il 28 Giu 2019
I'm using this way of {add_line()function : h = add_line(sys,points)`

Accedi per commentare.

Categorie

Scopri di più su Programmatic Model Editing in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by