"Not enough input arguments" error using add_line()

1 Ansicht (letzte 30 Tage)
Lucas S
Lucas S am 28 Jun. 2019
Kommentiert: Lucas S am 28 Jun. 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

Antworten (1)

Stephen23
Stephen23 am 28 Jun. 2019
Bearbeitet: Stephen23 am 28 Jun. 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 Kommentare
Lucas S
Lucas S am 28 Jun. 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 am 28 Jun. 2019
I'm using this way of {add_line()function : h = add_line(sys,points)`

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Programmatic Model Editing finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by