suvi.alg.util
Class EdgeRoutingPolicies

java.lang.Object
  |
  +--javautils.collections.Algs
        |
        +--javautils.graph.Graphs
              |
              +--suvi.alg.util.EdgeRoutingPolicies

public abstract class EdgeRoutingPolicies
extends javautils.graph.Graphs

Utility methods especially for edge routing policies.


Field Summary
 GraphLayoutAttrMap attrMap
           
 double edgeGap
           
 NodeExtentAttr nodeExtentAttr
           
 AugmentedNodeOrdering ordering
           
 javautils.graph.adt.AugmentedGraph original
           
 java.util.Map originalEdgeToSourcePointMap
           
 java.util.Map originalEdgeToTargetPointMap
           
 javautils.maps.ObjectToDoubleMap originalFlatEdgeToHeightMap
           
 AugmentedNodePositioning positioning
           
 javautils.graph.adt.AugmentedGraph preprocessed
           
 AugmentedNodeRanking ranking
           
 GraphTopology topology
           
 
Fields inherited from class javautils.collections.Algs
EMPTY_ARRAY, EMPTY_LIST, EMPTY_MAP, EMPTY_SEQUENCE, EMPTY_SET
 
Constructor Summary
EdgeRoutingPolicies(javautils.graph.adt.AugmentedGraph original, javautils.graph.adt.AugmentedGraph preprocessed, GraphTopology topology, GraphLayoutAttrMap attrMap, AugmentedNodeRanking ranking, AugmentedNodeOrdering ordering, AugmentedNodePositioning positioning)
           
 
Method Summary
protected abstract  java.util.Map edgeRouting()
           
 boolean isFlat(javautils.graph.adt.AugmentedGraph graph, java.lang.Object edge)
           
 boolean isIncomingLeft(javautils.graph.adt.AugmentedGraph graph, java.lang.Object edge, java.lang.Object node)
           
 boolean isIncomingRight(javautils.graph.adt.AugmentedGraph graph, java.lang.Object edge, java.lang.Object node)
           
 boolean isIncomingTopOrOutgoingBottom(javautils.graph.adt.AugmentedGraph graph, java.lang.Object edge, java.lang.Object node)
           
 boolean isOnTop(javautils.graph.adt.AugmentedGraph graph, java.lang.Object edge, java.lang.Object node)
           
 boolean isOutgoingLeft(javautils.graph.adt.AugmentedGraph graph, java.lang.Object edge, java.lang.Object node)
           
 boolean isOutgoingRight(javautils.graph.adt.AugmentedGraph graph, java.lang.Object edge, java.lang.Object node)
           
 boolean isToTheLeft(javautils.graph.adt.AugmentedGraph graph, java.lang.Object edge, java.lang.Object node)
           
 EdgeRouting with()
           
 
Methods inherited from class javautils.graph.Graphs
asSourceTargetPair, asString, asString, augmented, connectedComponents, edges, edgeSet, forEachEdge, forEachNode, inducedByEdgesAndContainingNodes, invariant, isAcyclic, isIncoming, isSelf, nodesByDecreasingDfsFinishingTime, nodesByIncreasingIndegree, nodesByIncreasingOutdegree, nodeSet, nodesReachableFrom, nodesReachableFrom, nodesReachableFrom, otherNode, randomGraph, restrictedToNodes, restrictedToNodes, restrictedToNodes, sameNodesAndEdges, stronglyConnectedComponents, transitiveIrreflexiveClosure, transposed, transposed, undirected
 
Methods inherited from class javautils.collections.Algs
addAll, allSuperInterfaces, asArray, asArray, asComparator, asUnmodifiableList, collect, collectMap, collectSet, collectUnmodifiable, concat, concat, concat, copyOf, copyOf, copyOf, copyOf, copyOf, copyOf, copyOf, copyOf, copyOf, copyOfArray, ensureLength, exists, exists, exists, filter, filter, filter, find, find, find, flatten, flatten, flatten, fold, fold, fold, foldRight, foldRight, foldRight, forAll, forAll, forAll, forEach, forEach, forEach, forEach, forEach, forEach, forEachInProduct, forEachInProduct, forEachInProduct, forEachInProduct, genAddAll, genConcat, genConcat, genForEach, genForEach, getOrIfNull, integersInRange, iterator, iterator, iterator, iterator, iterator, iterator, iterator, iterator, iterator, iterator, iterator, iterator, iterator, iterator, iterator, iterator, iterator, iterator, iterator, iterator, iterator, iterator, iterator, iterator, iterator, iterator, iterator, iterator, iteratorOverArray, map, map, map, map, map, map, mapMorphism, mapMorphismTo, mapTransform, max, max, max, max, max, max, max, min, min, min, min, min, min, min, newMap, newShapedArray, newUnmodifiableList, putAll, putAll, reverseIterator, reverseIterator, select, select, select, sign, singletonIterator, sort, sort, sorted, sorted, transform, transform, transform
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

original

public final javautils.graph.adt.AugmentedGraph original

preprocessed

public final javautils.graph.adt.AugmentedGraph preprocessed

topology

public final GraphTopology topology

attrMap

public final GraphLayoutAttrMap attrMap

edgeGap

public final double edgeGap

ranking

public final AugmentedNodeRanking ranking

ordering

public final AugmentedNodeOrdering ordering

positioning

public final AugmentedNodePositioning positioning

nodeExtentAttr

public final NodeExtentAttr nodeExtentAttr

originalEdgeToTargetPointMap

public final java.util.Map originalEdgeToTargetPointMap

originalEdgeToSourcePointMap

public final java.util.Map originalEdgeToSourcePointMap

originalFlatEdgeToHeightMap

public final javautils.maps.ObjectToDoubleMap originalFlatEdgeToHeightMap
Constructor Detail

EdgeRoutingPolicies

public EdgeRoutingPolicies(javautils.graph.adt.AugmentedGraph original,
                           javautils.graph.adt.AugmentedGraph preprocessed,
                           GraphTopology topology,
                           GraphLayoutAttrMap attrMap,
                           AugmentedNodeRanking ranking,
                           AugmentedNodeOrdering ordering,
                           AugmentedNodePositioning positioning)
Method Detail

edgeRouting

protected abstract java.util.Map edgeRouting()

with

public final EdgeRouting with()

isIncomingLeft

public boolean isIncomingLeft(javautils.graph.adt.AugmentedGraph graph,
                              java.lang.Object edge,
                              java.lang.Object node)

isOutgoingLeft

public boolean isOutgoingLeft(javautils.graph.adt.AugmentedGraph graph,
                              java.lang.Object edge,
                              java.lang.Object node)

isIncomingRight

public boolean isIncomingRight(javautils.graph.adt.AugmentedGraph graph,
                               java.lang.Object edge,
                               java.lang.Object node)

isOutgoingRight

public boolean isOutgoingRight(javautils.graph.adt.AugmentedGraph graph,
                               java.lang.Object edge,
                               java.lang.Object node)

isIncomingTopOrOutgoingBottom

public boolean isIncomingTopOrOutgoingBottom(javautils.graph.adt.AugmentedGraph graph,
                                             java.lang.Object edge,
                                             java.lang.Object node)

isOnTop

public boolean isOnTop(javautils.graph.adt.AugmentedGraph graph,
                       java.lang.Object edge,
                       java.lang.Object node)

isFlat

public boolean isFlat(javautils.graph.adt.AugmentedGraph graph,
                      java.lang.Object edge)

isToTheLeft

public boolean isToTheLeft(javautils.graph.adt.AugmentedGraph graph,
                           java.lang.Object edge,
                           java.lang.Object node)