
add_blockで追加をするとブロックが重なる
20 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
MATLABにて、simulinkにadd_blockで同じブロックを追加すると、同じ場所に配置されてしまい、重なってしまいます。ポジションを指定する方法は見つけたのですが、MakeNameUniqueオプションのように自動で位置を調整してくれる方法はありませんでしょうか。
0 Commenti
Risposta accettata
交感神経優位なあかべぇ
il 24 Giu 2022
自動で位置調整してくれる方法はないはずです。
地道にブロックのPositionを計算するしか手段はないと思います。
例として、下記のIn1ブロックを選択して、下記コードを実行すると、In2ブロックが、In1ブロック直下にコピーされます。

pos = get_param(gcbh, 'Position');
pos([2,4]) = pos([2,4]) + 30;
add_block(gcb, gcb, 'MakeNameUnique', 'on', 'Position', pos);
3 Commenti
交感神経優位なあかべぇ
il 24 Giu 2022
ブロックを選択して、get_param(gcbh, 'Position')を実行すると、そのブロックのPosition値である4要素を持った配列が返ってきます。

この4つの値は、キャンパスの左上の縦横 0 位置を基準にそれぞれ、左、上、右、下の位置を示しています。

つまり、先ほどの例は、ブロックの上と下の位置を示す、配列の要素2と4の値を、それぞれ+30を加算させることで、In1ブロックから、下方向に30移動させた位置のPosition値を作成したということになります。

交感神経優位なあかべぇ
il 24 Giu 2022
Positionなどのブロックのプロパティは下記ページに色々書いていますので、参考になると思います。
Più risposte (0)
Vedere anche
Categorie
Scopri di più su プログラムによるモデル編集 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!