グラフが JPanel に表示されるグラフ実装を作成しようとしています。
問題なく頂点を追加および削除しています(これらのパネルをさらに使用しています)。私が抱えている問題は、エッジを表す線を追加することです。私は私が使用できることを知っています
contentPane.getGraphics().drawLine(x1, y1, x2, y2)
行を追加することはできますが、後でその行を削除する方法はありません。何か案は?
GraphPanel
を使用してList<Edge>
、グラフのノードを接続するエッジをモデル化します。
本当にそれはできないと思います...背景色に同じ線をペイントすると、もちろん、その線を越えて描いた他のものを台無しにしてしまいます...
最も簡単な解決策は、線なしでコントロール全体を再描画することです
Photoshop や GIMP でレイヤーを使用するように、コントロールのルート パネルの内側に透明なパネルを作成することができた場合にのみ、その線を描画できますが、その方法/場合についてはわかりません。 Swingで可能です。
グラフを取得しようとしているだけなら、優れたグラフ ライブラリがいくつかあります...