public int incomingSize(Object vertex) { return digraph.outgoingSize(vertex); }
public static Digraph randomizeAcyclic(Digraph digraph, int order, int incomingSize, int outgoingSize, Random randomizer) { Random random = randomizer; int arc = 1; for (int i = 1; i <= order; i++) { Integer destination = new Integer(i); digraph.addVertex(destination); for (int j = 0; j < incomingSize; j++) { int org = random.nextInt(i); if (org == 0) continue; Integer origin = new Integer(org); if (digraph.outgoingSize(origin) >= outgoingSize) continue; digraph.putArc(origin, destination, new Integer(arc++)); } } return digraph; }
private void minimizeDistancesToBarycentres() { // set center x, priorities for (int i = 0; i < levels.length; i++) { double previousCenterX = areaBounds.getMinX() - horizontalSpacing; double previousWidth = 0; for (int j = 0; j < levels[i].length; j++) { VertexWrapper box = levels[i][j]; // init x coordinate of box center box.setCenterX(previousCenterX + horizontalSpacing + (previousWidth + box.getWidth()) / 2); previousCenterX = box.getCenterX(); previousWidth = box.getWidth(); // set upper/lower priority box.setUpperConnectivity(wrapperDigraph.incomingSize(box)); box.setLowerConnectivity(wrapperDigraph.outgoingSize(box)); } } int passCount = Math.min(adjustingPassCount, levels.length - 1); for (int pass = 0; pass < adjustingPassCount; pass++) { // move down adjustMovingDown(pass + 1); // move up // if (pass != adjustingPassCount - 1) adjustMovingUp(levels.length - 2); } }
System.out.print("(" + vertex + "->" + child + ")[" + shape.getCenterX() + "," + shape.getMinY() + "]"); if (digraph.outgoingSize(vertex) != 0) System.out.println();
if (wrapper == null) { wrapper = new LayerVertex( vertex, digraph.incomingSize(vertex), digraph.outgoingSize(vertex)); if (vertexShape != null) wrapper.setGeometry(vertexShape); if (dstWrapper == null) { dstWrapper = new LayerVertex( dst, digraph.incomingSize(dst), digraph.outgoingSize(dst)); if (vertexShape != null) dstWrapper.setGeometry(vertexShape);
private Table generateTable(Integer vertex, Digraph graph) { Table table = new Table(catalog, schemaName, "TABLE" + vertex); int outSize = graph.outgoingSize(vertex); int inSize = graph.incomingSize(vertex); if (outSize != 0 || (outSize == 0 && inSize == 0)) {