アドイン側で親要素の位置を取得し,ポート要素の位置を四辺上にすることで
問題は解決しました.
ありがとうございました.
ご回答いただいた中で,気になった点を2点ほど.
引用:
アドインからのポート要素作成では、自動的に親要素の位置を
判断して、その四辺上に乗せることは行っておらず、指定された
位置に配置するよう、自由度を持たせています。
確かに,一見,アドインで自由にポート要素の位置を設定できますが,
ダイアグラム上で親要素をちょっとでも動かそうものなら,
アドインで作成したポート要素が,強制的に親要素の四辺上に移動するので,
実質的に「自由度」は無いように思えます.
引用:
(なお、この位置設定において、四辺上以外を指定した場合は、
現状、ダイアグラムの左上に配置されます。)
私の環境ですと,
四辺上以外を指定した場合⇒指定した場所に配置される
位置を指定しなかった場合⇒ダイアグラムの左上に配置される
ようですが,位置の設定方法を誤っているのでしょうか?
位置の設定方法は,
(1) Diagramクラスの属性DiagramObjectsに対して,
AddNew("l=xx;r=xx;・・・)で設定
(2) DiagramObjectクラスの属性top, bottom, left, rightで設定
のいずれも試したのですが同じ動きでした.
※開発環境:C#, EA:ビルド832