在使用mxCircleLayout时,可以指定半径。但是,似乎半径仅影响半径大于基于图形边界的默认值的图形。在查看mxCircleLayout的源代码(JGraphX 3.3.1.1)时,第230行有:
double r = Math.max(vertexCount * max / Math.PI, radius);
其中" r"用作圆布局的半径。不应该
double r = Math.min(vertexCount * max / Math.PI, radius);
如果我想要更小的半径?也许我误解了什么" radius"意味着,但对于一个圆圈,它应该具有自然意义。并且改变线条给了我想要的(较小的)圆圈。
答案 0 :(得分:0)
使用max
以确保顶点不重叠。请参阅execute
声明开头的评论:
// Moves the vertices to build a circle. Makes sure the
// radius is large enough for the vertices to not
// overlap
然而,这似乎确实使用了最大顶点的边界,如果顶点具有不同的大小,其中最大值远大于平均值,则这个边界不是很有用。