基本的には、概要図を作成し、ブラウザから関連する図をドラッグアンドドロップするだけです。これは、選択ボックスあなただけの最初の選択Diagram Frame
を残す
を提供しています。 EAはダイアグラム名から提案された名前の新しいオブジェクトを作成します(それを残すことはできますが、必要があれば変更することもできます)。これで、ドラッグされた図が概要図の名前付きフレームの内側に表示されます。この図を拡大縮小することはできません。元の図形とその周りの枠のサイズになります。
注:上のダイアログでHyperlink
を使用して、図の間を素早くリンクしてナビゲーションを行うことができます。
スクリプト部分については、今すぐ私はメタ言語を使用しますが、あなたは好みの言語でそれを使う方法を推測するでしょう。最初に、概要図を探します。ブラウザで右クリックし、Copy/Copy Node GUID...
を使用して、その図のguidに問い合わせることができます。今、そのIDであなたは(下記のguid例)でそれを見つけることができます。
overview = rep.GetDiagramByGUID("{A006B95E-1237-4778-A339-D1B407C6FD5C}")
次はあなたが概要に表示したい単一図を配置することです。これはどのようにそれらを見つけるかはあなた次第です。最終的にリポジトリ内の特定の場所に配置されます。静的に最初のルートの最初のビューで最初のパッケージの最初の図をロードするには、あなたはおそらく、関連図を反復処理し、見つけるために、よりスマートな方法を使用します
model = repository.Models.GetAt(0)
view = model.Packages.GetAt(0)
package1 = view.Packages.GetAt(0)
dia1 = package1.Diagrams.GetAt(0)
を呼び出します。
ここでこれらの図オブジェクトを使用すると、ダイアグラムフレームを作成できます。これはパッケージのどこかに配置する必要があります。簡単にするために、私はpackage1
を使用しますが、最終的に概要図のパッケージに入れます。
frame = package1.Elements.AddNew(dia1.Name, "UMLDiagram")
frame.Update()
sql = "UPDATE t_object SET PDATA1=" + str(dia1.DiagramID) + " WHERE Object_ID=" + str(overview.diagramID
repository.Execute(sql)
これはブードーです。 APIは、UMLDiagram要素を参照された図とリンクする方法を提供しません。したがって、これはデータベースに直接ポーズされなければなりません。最後に、新しく作成されたフレームのオブジェクトは概要図に配置することができる
:
diagramObj = overview.DiagramObjects.AddNew("l=10;r=110;t=-20;b=-80","")
diagramObj.ElementID = frame.ElementID
diagramobj.Update()
このEAので、Y軸の座標は、上部(L、R、Tから負に向かっていますbは、推測する)。 EAはフレームを指定されたサイズよりも小さい最小値に拡張します。
結果を確認するには、概要図を閉じる/開く必要があります。私はあなたに運動としてそれを残します:-)