Я использую JGraphX для рисования графика, используя mxCircleLayout в качестве основного представления, но я хочу изменить какое-то поведение. Например, я хочу EDGESTYLE_TOPTOBOTTOM, поэтому перед построить mxGraphComponent я определить новый стиль края:Стили Jgraphx, примененные к circleLayout
' JGraphXAdapter graphAdapter = новый JGraphXAdapter (this.stradario.getStradario());
graphAdapter.getModel().beginUpdate();
try {
Map<String, Object> edgeStyle = new HashMap<String, Object>();
edgeStyle = graphAdapter.getStylesheet().getDefaultEdgeStyle();
edgeStyle.put(mxConstants.STYLE_EDGE, mxConstants.EDGESTYLE_TOPTOBOTTOM);
mxStylesheet stylesheet = new mxStylesheet();
stylesheet.setDefaultEdgeStyle(edgeStyle);
graphAdapter.setStylesheet(stylesheet);
} finally {
graphAdapter.getModel().endUpdate();
}
mxCircleLayout layout = new mxCircleLayout(graphAdapter);
layout.execute(graphAdapter.getDefaultParent());
mxGraphComponent graphComponent = new mxGraphComponent(graphAdapter);
graphComponent.getViewport().setBackground(Color.white);
' График был составлен в виде макета окружности, но края не в стиле TopToBottom. First draw Затем, если я нарисую новый край, или я изменил существующий, край будет нарисован с помощью стиля TOPTOBOTTON.
Modified edge take the TOPTOBOTTOMSTYLE
Я не понимаю, почему первоначальный обращается без стиля TopToBottom и модифицированный край был сделан с новым стилем.