edu.uci.ics.jung.visualization
Class SpringLayout

java.lang.Object
  extended byedu.uci.ics.jung.visualization.AbstractLayout
      extended byedu.uci.ics.jung.visualization.SpringLayout
All Implemented Interfaces:
Layout, LayoutMutable
Direct Known Subclasses:
DAGLayout

public class SpringLayout
extends AbstractLayout
implements LayoutMutable


Nested Class Summary
static interface SpringLayout.LengthFunction
           
 class SpringLayout.SpringDimensionChecker
           
static class SpringLayout.UnitLengthFunction
           
 
Field Summary
static SpringLayout.LengthFunction UNITLENGTHFUNCTION
           
 
Constructor Summary
SpringLayout(Graph g)
           
SpringLayout(Graph g, SpringLayout.LengthFunction f)
           
 
Method Summary
 void advancePositions()
          Advances an incremental visualization.
 double getForceMultiplier()
           
 double getLength(Edge e)
           
 int getRepulsionRange()
           
 edu.uci.ics.jung.visualization.SpringLayout.SpringEdgeData getSpringData(Edge e)
           
 edu.uci.ics.jung.visualization.SpringLayout.SpringVertexData getSpringData(Vertex v)
           
 java.lang.Object getSpringKey()
           
 java.lang.String getStatus()
          Returns the current status of the sytem, or null if there is no particular status to report.
 double getStretch()
           
 boolean incrementsAreDone()
          If this visualization is incremental, tells whether it has stabilized at a satisfactory spot yet.
 boolean isIncremental()
          Indicates whether this visualization has an incremental mode.
 void setForceMultiplier(double force)
           
 void setRepulsionRange(int range)
           
 void setStretch(double stretch)
           
 void update()
           
 
Methods inherited from class edu.uci.ics.jung.visualization.AbstractLayout
applyFilter, dontMove, forceMove, getBaseKey, getCoordinates, getCurrentSize, getEdge, getEdge, getGraph, getVertex, getVertex, getVisibleEdges, getVisibleVertices, getX, getY, initialize, lockVertex, resize, restart, unlockVertex
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface edu.uci.ics.jung.visualization.Layout
applyFilter, forceMove, getCurrentSize, getGraph, getVertex, getVertex, getVisibleEdges, getVisibleVertices, getX, getY, initialize, lockVertex, resize, restart, unlockVertex
 

Field Detail

UNITLENGTHFUNCTION

public static final SpringLayout.LengthFunction UNITLENGTHFUNCTION
Constructor Detail

SpringLayout

public SpringLayout(Graph g)

SpringLayout

public SpringLayout(Graph g,
                    SpringLayout.LengthFunction f)
Method Detail

getStatus

public java.lang.String getStatus()
Description copied from interface: Layout
Returns the current status of the sytem, or null if there is no particular status to report. Useful for reporting things like number of iterations passed, temperature, and so on.

Specified by:
getStatus in interface Layout
Overrides:
getStatus in class AbstractLayout

getStretch

public double getStretch()

setStretch

public void setStretch(double stretch)

getRepulsionRange

public int getRepulsionRange()

setRepulsionRange

public void setRepulsionRange(int range)

getForceMultiplier

public double getForceMultiplier()

setForceMultiplier

public void setForceMultiplier(double force)

getSpringKey

public java.lang.Object getSpringKey()

advancePositions

public void advancePositions()
Description copied from interface: Layout
Advances an incremental visualization. Many visualizations are incremental--that is, they get better over time and recalculations. This moves it forward one step.

Specified by:
advancePositions in interface Layout
Specified by:
advancePositions in class AbstractLayout
See Also:
Layout.advancePositions()

getSpringData

public edu.uci.ics.jung.visualization.SpringLayout.SpringVertexData getSpringData(Vertex v)

getSpringData

public edu.uci.ics.jung.visualization.SpringLayout.SpringEdgeData getSpringData(Edge e)

getLength

public double getLength(Edge e)

isIncremental

public boolean isIncremental()
Description copied from interface: Layout
Indicates whether this visualization has an incremental mode. If so, it may be good to increment a bunch of times before showing. If not, the containing program may not wish to call increment.

Specified by:
isIncremental in interface Layout

incrementsAreDone

public boolean incrementsAreDone()
Description copied from interface: Layout
If this visualization is incremental, tells whether it has stabilized at a satisfactory spot yet.

Specified by:
incrementsAreDone in interface Layout

update

public void update()
Specified by:
update in interface LayoutMutable