【发布时间】:2013-12-04 19:59:04
【问题描述】:
我有一个 Graph g 其中 Edges 属于三个不同的类,它们扩展了 Edge 类(我用它来表示不同类型的交互,比如开始相关、询问建议等等......)。我想根据它们所代表的内容为边缘着色,例如让所有父母边缘变为绿色而不显示箭头。我有这个变压器来改变颜色,但它似乎改变了所有边缘的颜色:
Transformer<Edge, Paint> parental_color_yes = new Transformer<Edge, Paint>() {
@Override
public Paint transform(Edge s) {
return Color.GREEN;
}
};
如果我将转换器的类型更改为 Transformer
回复后编辑:
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;
}
}
};
感谢您的帮助!
最好的问候, 西蒙娜
【问题讨论】:
标签: java jung transformer jung2