0

私は jung ライブラリを使用してグラフを描画しているので、楕円を作成するのではなく、別の形状で頂点を作成する方法があるかどうか疑問に思っていました。たとえば、八角形が欲しい。これは私が形状を設定する方法です:

    Transformer<String,Shape> vertexSize = new Transformer<String,Shape>(){

    @Override
    public Shape transform(String str) {
        Ellipse2D circle = new Ellipse2D.Double(-5, -5, 10, 10);
        if(drugnames.contains(str)){
            return AffineTransform.getScaleInstance(3,3).createTransformedShape(circle);
        }
        else{
            return AffineTransform.getScaleInstance(1,1).createTransformedShape(circle);
        }

        // TODO Auto-generated method stub
    }
};
4

1 に答える 1

0
VisualizationViewer.getRenderContext().setVertexShapeTransformer(vst)

vst はTransformer<V, Shape>です。

AbstractVertexShapeTransformer can do a lot of the heavy lifting for you.

これらの実際の例については、を参照PluggableRendererDemoしてください (ソースはディストリビューションの一部です)。

于 2012-12-14T16:23:07.133 に答える