問題タブ [edges]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1394 参照

java - グラフが複数のカスタムエッジを追加しないようにするにはどうすればよいですか?

無向スパースグラフで使用するカスタムのエッジと頂点のタイプを定義しました。問題は、グラフが不要な複数のエッジを追加していることです。たとえば、以下のコードを考えてみましょう。

2つの類似したエッジ(最初のエッジ)を意図的に追加しました。作成した両方のクラス、つまりEdgeとVertexのequalsメソッドをオーバーライドしましたが、グラフは、頂点が異なるためエッジと見なし、それらすべてを追加します。出力は次のとおりです。

だから、私は何が間違っているのですか?

PS。参考までに、私が作成したクラスは次のとおりです。

0 投票する
3 に答える
11443 参照

java - Java Graphics.fillPolygon:右端と下端もレンダリングする方法は?

ポリゴンを描画する場合、Java2Dは右端と下端を省略します。なぜこれが行われるのか理解しています。しかし、それらのエッジを含むものを描きたいと思います。私が思いついたのは、同じ座標でフォローすることでしたfillPolygondrawPolygon、これはギャップを残しているようです。(下部の小さな三角形の画像を参照してください。)2つの可能性がありますが、どちらかはわかりません。アンチエイリアスを有効にするために、私はこれを行っています:

1つの可能性は、アンチエイリアシングがアルファチャネルで実行されていないため、ギャップがオーバードローによって引き起こされていることです。その場合、アルファチャネルがアンチエイリアス処理されていたものであれば、エッジは適切に隣接します。もう1つの可能性は、ここにギャップがあることです。

どうすればこれを修正できますか?

また、よくわかりませんが、ポリゴンの輪郭が大きすぎるようです。つまり、含めたい右端と下端よりも遠くにある可能性があります。

ありがとう。

ここに画像の説明を入力してください

- アップデート -

Hovercraft Full of Eelsによる非常に素晴らしい提案に基づいて、私はコンパイル可能な例を作成しました。

塗りつぶされたポリゴンを赤のままにすると、下の画像(500%ズーム)が表示されます。これは、ポリゴンが右端まで伸びていないことを示しています。つまり、緑の縦線はに対応しx=(2*WIDTH)/2、赤のポリゴンにはその座標が含まれていますが、そこにはピクセルがペイントされていません。

ここに画像の説明を入力してください

ギャップの問題を確認するためredに、プログラムをに変更しましたblack。この画像では、右下に微妙なギャップがあり、によって描かれた輪郭がで描かれたdrawPolygonものと完全に一致していませんfillPolygon

ここに画像の説明を入力してください

0 投票する
4 に答える
38185 参照

c# - ピクチャーボックスC#の丸みを帯びたエッジ

ピクチャーボックスコントロールでエッジを丸める方法。楕円のような角度を取得したいのですが、その方法がわかりません。私はC#を使用しています。ありがとう!

0 投票する
2 に答える
7504 参照

image - DOT グラフに画像で注釈を付ける

Python で Graphviz/dot グラフを生成するために PyDot を使用しています。ファイルから読み取った画像でノードとエッジに注釈を付けたいのですが、ドキュメントで画像をノードとして配置する方法を見つけましたが、画像をノードの下に配置したり、エッジよりも下に配置したりする方法は見つかりませんでした。

http://www.graphviz.org/doc/info/attrs.html

http://www.graphviz.org/doc/info/shapes.html

http://www.graphviz.org/Documentation/html/shapehowto.html

誰もそれを行う方法を知っていますか?

0 投票する
1 に答える
2723 参照

performance - ブースト グラフ ライブラリ: 大きなグラフのエッジ挿入が遅い

インタラクティブな画像セグメンテーションに「インテリジェントなはさみ」を実装しようとしています。したがって、各頂点が 1 つのピクセルを表す画像から有向グラフを作成する必要があります。次に、各頂点は、2 つのエッジ (1 つの発信エッジと 1 つの着信エッジ) によって隣接する各頂点に接続されます。これは、エッジ (a,b) のコストが (b,a) のコストと異なる可能性があるためです。サイズが 512*512 ピクセルの画像を使用しているため、262144 個の頂点と 2091012 個のエッジを持つグラフを作成する必要があります。現在、次のグラフを使用しています。

グラフを処理する追加のクラスGraph (刺激を受けていない命名で申し訳ありません) を使用しています。

};

262144 個の頂点を持つ新しいグラフを作成するのは非常に高速ですが、エッジの挿入には最大 10 秒かかり、目的のアプリケーションには遅すぎます。現在、次の方法でエッジを挿入しています。

プログラムの速度を向上させるためにできることはありますか? Microsoft Visual C++ 2010 Express を最適化されたリリース モードで使用しています (Boost の推奨に従って)。頂点またはエッジにlistSコンテナーを使用できると考えましたが、頂点は問題ありません。エッジにlistSを使用すると、さらに遅くなります。

0 投票する
1 に答える
1901 参照

java - JUNG でエッジ ラベルと値を取得するにはどうすればよいですか?

JUNG とエッジ (頂点) ラベルに問題があります。

私のアプリケーションは JUNG に基づいています。与えられたグラフからいくつかの値を計算する必要があります。グラフは「手で」溺れる必要があり、そのグラフで「開始値」を設定する必要があります。その値にラベルを使用することを考えていました(頂点の名前、エッジの長さ)。

これで、グラフを描くことができます。頂点と辺の数は取得できますが、ラベルと値の取得方法がわかりません。

エッジと頂点にカスタム クラスを使用してみましたが、ラベルの設定方法がまったくわかりません。

これは私のコードの一部です。これはドキュメントから取得されます。グラフの描画中にラベルを設定し、その後値を取得できるように、何を変更すればよいか教えてもらえますか?

0 投票する
1 に答える
1633 参照

graph-algorithm - 特定のエッジを通過する最短経路アルゴリズム

「通過する必要がある」とマークされた少なくとも1つのエッジを通過するグラフ内の最短経路を見つける必要があります。何か案は?これを達成するために、ダイクストラのアルゴリズムを変更できますか?

0 投票する
0 に答える
215 参照

points - エッジでポイントを三角形化する

ポイントのセットとそれらのペアを接続するエッジがあります。エッジのサブセットを選択してポイントを三角形分割できるように、十分なエッジがあります。それはまさに私がやりたいことです-既存のエッジを使用し、元のグラフに存在しなかった新しいエッジを追加しない三角形分割を見つけます。それを行うための既存のコードはありますか?

0 投票する
1 に答える
5779 参照

graph - グラフの負のエッジ

グラフの負のエッジの物理的な意味は何ですか?つまり、実際のプログラミングでエッジを負にする必要がある場合は?

0 投票する
0 に答える
467 参照

tree - ノードの非表示に関する問題

決定木を作っているのですが、それを Tree で描きたいと思っています。私の考えは、シミュレーションのようにすることです。ユーザーが [次へ] をクリックすると、次のノードが表示されます。基本的に、ノードをインタラクティブに再表示する必要があります (デフォルトでは非表示になります)。

それよりも、頂点 - ルートとエッジを追加しています:

と を作成TreeNodePredicateTreeLinkPredicate、ノード/リンクを非表示/非表示にするロジックを挿入しました。私が言うなら

すべてが正常に機能し、エッジが非表示になります。しかし、私が言うなら

注目が起こります。私のツリーはすべてのノードが表示された状態で表示されます - エッジは非表示になります。これはノードを非表示にする正しい方法ではないと推測しています。addChild()一部のJUNGクラスにはメソッドがあることを知っています(ここにはありませんaddChild())-おそらく、鍵はそのメソッドを使用することSparseTreeですか、それとも.