是否可以使图表具有确定性?我的意思是,例如:
如果我添加A顶点然后添加B,图形看起来就像我先添加B然后再添加A.一样。
我目前正在使用mxCompactTreeLayout,但它并不像我想的那样有用。
答案 0 :(得分:1)
是的,但是,您需要自己创建规则,因为它们可能非常特定于您的用例。我通过继承mxGraphComponent并覆盖mxGraphComponent.ImportCell
- 方法从ImportCell
调用此逻辑来注入关系,并在必要时重新组织图形。
@Override
public Object[] importCells(Object[] cells, double dx, double dy, Object target, Point location) {
Object[] importedCells = super.importCells(cells, dx, dy, target, location);
for (Object cell : importedCells) {
updateGraphRelationsFor(cell);
}
return importedCells;
}
请注意,我使用updateGraphRelationsFor()
方法返回的importedCells
来调用super.importCells
,因为它们将被克隆到此方法中。