У меня проблема с метками JUNG и ребра (вершины).
Мое приложение основано на JUNG. Необходимо рассчитать некоторые значения из данного графика. График должен быть утоплен «вручную», и на этом графике мне нужно установить «начальные значения». Я думал использовать метки для этих значений (имена для вершины, длина для ребер).
Теперь я могу нарисовать график, я могу получить количество вершин и ребер, но я не знаю, как получить эти метки и значения.
Я пытался использовать пользовательские классы для ребер и вершин, но потом вообще не знаю, как устанавливать метки.
Это часть моего кода. Это взято из документации. Может кто-нибудь сказать мне, что изменить, чтобы я мог установить метки при рисовании графика и после этого получить значения?
graph = new SparseMultigraph<Number, Number>();
this.layout = new StaticLayout<Number, Number>(graph,
new Dimension(600, 600));
vv = new VisualizationViewer<Number, Number>(layout);
vv.setBackground(Color.white);
vv.getRenderContext().setVertexLabelTransformer(
MapTransformer.<Number, String>getInstance(LazyMap.<Number, String>decorate(
new HashMap<Number, String>(),
new ToStringLabeller<Number>())));
vv.getRenderContext().setEdgeLabelTransformer(
MapTransformer.<Number, String>getInstance(LazyMap.<Number, String>decorate(
new HashMap<Number, String>(),
new ToStringLabeller<Number>())));
vv.setVertexToolTipTransformer(vv.getRenderContext().getVertexLabelTransformer());
Container content = getContentPane();
final GraphZoomScrollPane panel = new GraphZoomScrollPane(vv);
content.add(panel);
Factory<Number> vertexFactory = new VertexFactory();
Factory<Number> edgeFactory = new EdgeFactory();
final EditingModalGraphMouse<Number, Number> graphMouse = new EditingModalGraphMouse<Number, Number>(
vv.getRenderContext(), vertexFactory, edgeFactory);
vv.setGraphMouse(graphMouse);
vv.addKeyListener(graphMouse.getModeKeyListener());