"Not enough input arguments" error using add_line()

2 次查看(过去 30 天)
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

回答(1 个)

Stephen23
Stephen23 2019-6-28
编辑:Stephen23 2019-6-28
"...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 个评论
Lucas S
Lucas S 2019-6-28
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 2019-6-28
I'm using this way of {add_line()function : h = add_line(sys,points)`

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Programmatic Model Editing 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by