边连接到顶点的约束(JGraphX)

时间:2014-05-02 09:08:19

标签: jgraphx jgraph

我注意到,当将多个边连接到单个(矩形)顶点时,它们连接的位置均匀分布在顶点的一侧。有没有办法改变这种行为?我正在使用mxHierarchicalLayout。

在我的图表中,我希望边缘尽可能直(但只有水平和垂直)。这就是我目前所拥有的:

enter image description here

例如,为什么边缘“G”略微弯曲?我希望它从“PIC”到“W4”的直线水平线。理想情况下,我想将设置边缘连接行为的每个顶点的设置更改为“连接到您喜欢的位置”,并让布局找出边缘最小角落的最佳位置。

我知道我可以设置“exitX / Y”和“entryX / Y”,但这需要我手动计算这些值和整个布局过程。我正在寻找一种更好的方法来实现这一目标。

1 个答案:

答案 0 :(得分:3)

您可以尝试使用Orthogonal edgestyle。

Map<String, Object> EdgeStyle = graph.getStylesheet().getDefaultEdgeStyle();
EdgeStyle.put(mxConstants.STYLE_EDGE, mxEdgeStyle.OrthConnector);
EdgeStyle.put(mxConstants.STYLE_STROKECOLOR, "red");
EdgeStyle.put(mxConstants.STYLE_STROKEWIDTH, 2);

这会使你的边缘像下面那样。我认为它也可以在没有端口的情况下工作。

enter image description here

不要忘记在布局中启用边缘样式。

layout.setDisableEdgeStyle(false);