2

静的レイアウトを使用して頂点に固定座標位置を割り当てようとしています。通常、次を使用して Point2D オブジェクトとして頂点座標を取得できます。layout.transform(Vertex);

今、私はレイアウトを初期化し、指定された位置に頂点を設定したかったのですが、どういうわけか立ち往生しています。インターフェイスを実装する場合、StackOverflowでここを読みTransformer<Vertex, Point2D>ます:

Transformer<Vertex, Point2D> locationTransformer = 
                           new Transformer<Vertex, Point2D>() {
    @Override
    public Point2D transform(Vertex) {
        Point2D p2d = //here i calculate the position
        return p2D;
    }
};  

私はこれを試しました。固定グラフでは機能しますが、編集可能なグラフがあり、何も起こりません。上記の位置を修正した場合、マウスクリックで追加したノードはどこに置いても固定位置に移動するはずです。

何が原因なのか教えてください。または、編集可能なグラフで、どこかで位置を再度オーバーライドしていますか?

更新:
たとえば、これらの実装を視覚化ビューアから削除すると:

vv.getRenderContext().setVertexFontTransformer(fontTransfoer);
vv.getRenderContext().setVertexFillPaintTransformer(colorTransformer);
vv.getRenderContext().setVertexShapeTransformer(shapeTransformer);  

機能し始めますが、ノードはデフォルトの形状の円形の赤いものになります。前回描いた構造を一から描き直したい。それで、この問題でできることはありますか?

4

0 に答える 0