4

非常に優れた Java グラフ作成ライブラリJUNGがあります。

JUNG が行っていることを行う GWT ライブラリが存在するのだろうか? 商用の Javascript グラフ作成ライブラリmxGraphが存在することは承知しています。しかし、mxGraphは非常に高価であり、非常に制限的なライセンス ポリシーがあります。

mxGraph (JS) や JUNG (Java) に似た GWT グラフ作成ライブラリを知っている人はいますか?

JUNG のようなグラフ作成用の GWT ライブラリがない場合、私は JUNG を GWT に移植することに熱心です。gwt-graphics ライブラリをベースとして使用し、JUNG のような機能を追加して拡張することを考えていました。JUNG を GWT に移植するための良い戦略は何ですか? JUNG Java クラスのほとんどをクライアント GWT クラスに書き直す必要がありますか? 一部のクライアント側 GWT クラス内に JUNG クラスをラップする方法はありますか? b/c JUNG は Java スイング フレームワークを使用していると思います。移植には、ほとんどの UI JUNG クラス (スイング ベース) を GWT ベースのウィジェットに移行する必要があります。

このテーマに関するアイデアや提案はありますか?

一番。

4

2 に答える 2

3

もちろん、最初に JUNG のライセンス ポリシーを確認する必要があります。それはすでにいくつかのオプションを制限している可能性があります. IIRC、ライセンスは Apcahe 2.0 です。

おっしゃるとおり、描画は再実装する必要があります。そのためにいくつかのオプションがあります: GWTCanvasGWT Graphicsg2d、そしておそらく私が忘れていた他のものです。

また、GWT アプローチを最大限に活用するには、外部プロジェクトに依存しすぎないようにする必要があります。

これらすべてに基づいて、一部のクラスのみを使用し、それらを 1 つずつ GWT に移植します。おそらくグラフレイアウトアルゴリズムから始めます。

于 2011-03-12T10:27:41.177 に答える
3

この同様の質問を確認してください。

JUNG 用の GWT プレゼンテーション レイヤーがあると非常に便利です。私たちが取っているアプローチは、RaphaelGWT (RaphaelJS のラッパー)を描画に使用し、JUNG をサーバー側のレイアウトに使用することです。JUNG をクライアント側 (すべてが Javascript に変換される) に移植しようとしましたが、並行ライブラリと JRE の一部に依存しているため、これは実現不可能でした。

サーバー側では、データを取得し、ノード マップと接続マップを使用して独自のグラフ オブジェクト (GEGraph) を作成します。次に、これらすべてを JUNG グラフに入れ、その上でレイアウトを呼び出し、各ノードの x 座標と y 座標を取得して、それを GEGraph に入れます。次に、GEGraph がクライアントに送信され、Raphael で描画されます。

于 2011-04-01T23:46:47.667 に答える