0

Edges が Edge クラスを拡張する 3 つの異なるクラスに属している Graph< Potter, Edge> g があります (これを使用して、さまざまなタイプの相互作用を表し、関連を開始したり、アドバイスを求めたりします...)。すべてのペアレンタル エッジを緑色にして矢印を表示しないように、エッジが表すものに応じてエッジに色を付けたいと思います。色を変更するこのトランスフォーマーがありますが、すべてのエッジの色が変更されているようです:

Transformer<Edge, Paint> parental_color_yes = new Transformer<Edge, Paint>() {
        @Override
        public Paint transform(Edge s) {
            return Color.GREEN;
        }
    };

トランスフォーマーのタイプを Transformer< Parental, Paint> に変更すると、私の VisualizationViewer< Potter, Edge> vv は、そのようなトランスフォーマーを受け入れることができないと文句を言います... 新しい視覚化ビューアーを追加する必要がありますか? それとも変圧器に何か問題がありますか?

返信後に編集:

 parental_color_yes = new Transformer<Edge, Paint>() {
        @Override
        public Paint transform(Edge s) {
            if (s instanceof Parental){
                return Color.GREEN;
            } else if (s instanceof Innovation) {
                return Color.RED;
            } else {
                return Color.BLACK;
            }
        }
    };

お手伝いありがとう!

よろしく、シモーネ

4

1 に答える 1