JUNG2 - как установить собственный egde цвет / толстый трансформатор - PullRequest
3 голосов
/ 11 марта 2012

В моем приложении я хочу установить каждый egde с другим стилем.Это может быть цвет края или толщина края.Я читал о трансформаторах в JUNG, но я не нашел ничего полезного.

Знаете ли вы какой-нибудь способ установить определенный цвет или толщину линии для определенного края?Это может быть какой-то Transformer или класс, имеющий такие методы, как setWidth () или setColour ().Пример был бы хорош;)

Ответы [ 2 ]

6 голосов
/ 11 марта 2012

Спасибо, и вот рабочий пример:

private Transformer<String, Paint> edgePaint = new Transformer<String, Paint>() {
    public Paint transform(String s) {
        return Color.RED;
    }
};

private Transformer<String, Stroke> edgeStroke = new Transformer<String, Stroke>() {
    float dash[] = { 10.0f };
    public Stroke transform(String s) {
        return new BasicStroke(1.0f, BasicStroke.CAP_BUTT,
                BasicStroke.JOIN_MITER, 10.0f, dash, 0.0f);
    }
};

(...)

vv.getRenderContext().setEdgeDrawPaintTransformer(edgePaint);
vv.getRenderContext().setEdgeStrokeTransformer(edgeStroke);
2 голосов
/ 11 марта 2012

Класс, который вам нужен - PluggableRendererContext.Есть пример, который широко использует его (PluggableRendererDemo), исходный код которого находится в дистрибутиве и который демонстрируется в форме апплета на веб-сайте JUNG.

...