protected double getSourceLength() { if (element == Element.EDGE) return 0; return lengthAttribute == null ? 1 : source.getNumber(lengthAttribute); }
/** * The sigma value of the given node. * * @param node * Extract the sigma value of this node. * @return The sigma value. */ protected double sigma(Node node) { return node.getNumber(sigmaAttributeName); }
protected double getSourceLength() { if (element == Element.EDGE) return 0; return lengthAttribute == null ? 1 : source.getNumber(lengthAttribute); }
/** * The distance value of the given node. * * @param node * Extract the distance value of this node. * @return The distance value. */ protected double distance(Node node) { return node.getNumber(distAttributeName); }
/** * The delta value of the given node. * * @param node * Extract the delta value of this node. * @return The delta value. */ protected double delta(Node node) { return node.getNumber(deltaAttributeName); }
/** * The number of entity passage on the given node. * @param node The node to look at. * @return The number of passes on the node. */ public double getPasses(Node node) { return node.getNumber(context.passesAttribute); }
/** * Returns the rank of a node. If the ranks are not up to date, recomputes * them * * @param node * A node * @return The rank of the node */ public double getRank(Node node) { compute(); return node.getNumber(rankAttribute); }
public void nodeRemoved(String sourceId, long timeId, String nodeId) { // removed node will give equal parts of its rank to the others double part = graph.getNode(nodeId).getNumber(rankAttribute) / (graph.getNodeCount() - 1); for (Node node : graph) if (!node.getId().equals(nodeId)) node.addAttribute(rankAttribute, node.getNumber(rankAttribute) + part); upToDate = false; }
public void nodeRemoved(String sourceId, long timeId, String nodeId) { // removed node will give equal parts of its rank to the others double part = graph.getNode(nodeId).getNumber(rankAttribute) / (graph.getNodeCount() - 1); for (Node node : graph) if (!node.getId().equals(nodeId)) node.addAttribute(rankAttribute, node.getNumber(rankAttribute) + part); upToDate = false; }
protected double getNodeY(Node n) { if (n.hasAttribute(XYZ_ATTR)) return ((Number) (n.getArray(XYZ_ATTR)[1])).doubleValue(); if (n.hasAttribute("y")) return n.getNumber("y"); return Double.NaN; }
protected double getNodeY(Node n) { if (n.hasAttribute(XYZ_ATTR)) return ((Number) (n.getArray(XYZ_ATTR)[1])).doubleValue(); if (n.hasAttribute("y")) return n.getNumber("y"); return Double.NaN; }
protected double getNodeX(Node n) { if (n.hasAttribute(XYZ_ATTR)) return ((Number) (n.getArray(XYZ_ATTR)[0])).doubleValue(); if (n.hasAttribute("x")) return n.getNumber("x"); return Double.NaN; }
protected double getNodeX(Node n) { if (n.hasAttribute(XYZ_ATTR)) return ((Number) (n.getArray(XYZ_ATTR)[0])).doubleValue(); if (n.hasAttribute("x")) return n.getNumber("x"); return Double.NaN; }
/** * Increment the count of the given node and edge. * @param e The edge. * @param n The node. */ protected void addPass(Edge e, Node n) { e.setAttribute(context.passesAttribute, e.getNumber(context.passesAttribute) + 1); n.setAttribute(context.passesAttribute, n.getNumber(context.passesAttribute) + 1); }
/** * Apply evaporation on each edge. */ protected void evaporate() { for(Edge edge: context.graph.getEachEdge()) { edge.setAttribute(context.passesAttribute, edge.getNumber(context.passesAttribute)*evaporation); } for(Node node: context.graph) { node.setAttribute(context.passesAttribute, node.getNumber(context.passesAttribute)*evaporation); } }
private static int sumCalc(Node n) { if (n == null) return 0; return n.getNumber() + sumCalc(n.getLeftSon()) + sumCalc(n.getRightSon()); }