protected int calculateInDegree(DirectedGraph directedGraph, Node n) { return directedGraph.getInDegree(n); }
@Override public Number getValue(Element element, Graph gr) { return ((DirectedGraph)gr).getInDegree((Node) element); }
@Override public boolean evaluate(Graph graph, Node node) { int degree = ((DirectedGraph) graph).getInDegree(node); return range.isInRange(degree); }
@Override public Number[] getValues(Graph graph) { DirectedGraph dgraph = (DirectedGraph) graph; List<Integer> values = new ArrayList<>(dgraph.getNodeCount()); for (Node n : dgraph.getNodes()) { int degree = dgraph.getInDegree(n); values.add(degree); } return values.toArray(new Number[0]); }
@Override protected void refresh() { if (graph.getNodeCount() > 0) { int minV = Integer.MAX_VALUE; int maxV = Integer.MIN_VALUE; for (Node n : graph.getNodes()) { int degree = graph.getInDegree(n); minV = Math.min(degree, minV); maxV = Math.max(degree, maxV); } min = minV; max = maxV; } } }
int indegree = directedGraph.getInDegree(n); int outdegree = directedGraph.getOutDegree(n);