Package edu.uci.ics.jung.visualization

Provides a visualization mechanism for drawing and rendering Graphs.

See:
          Description

Interface Summary
GraphElementAccessor Interface for coordinate-based selection of graph components.
GraphLabelRenderer  
GraphMouseListener This interface allows users to register listeners to register to receive vertex clicks.
HasGraphLayout Interface to tag classes that can provide a graph Layout to a caller.
HasShapeFunctions Interface used to tag classes that can provide Shapes for graph elements.
Layout A generalized interface is a mechanism for returning (x,y) coordinates from vertices.
LayoutMutable An extended interface for signalling a layout that the underlying graph has been changed.
PersistentLayout interface for PersistentLayout Also holds a nested class Point to serialize the Vertex locations
PickedInfo An interface for classes that return information regarding whether a given vertex or edge has been selected.
PickedState An interface for classes that keep track of the "picked" state of edges and vertices.
PickEventListener Deprecated. use ItemListener for tracking pick changes
PickSupport Interface to adapt coordinate-based selection of graph components to their display component
Renderer Draws individual vertices and edges on a display.
SettableVertexLocationFunction An extension of VertexLocationFunction that provides a means to alter the location for a ArchetypeVertex.
SpringLayout.LengthFunction If the edge is weighted, then override this method to show what the visualized length is.
StatusCallback This thin interface is used to allow the GraphDraw and _VisualizationViewer systems to get status reports from Layouts.
VertexLocationFunction An interface for classes that return a location for an ArchetypeVertex.
VisualizationModel Interface for the state holding model of the VisualizationViewer.
VisualizationViewer.GraphMouse a convenience type to represent a class that processes all types of mouse events for the graph
VisualizationViewer.Paintable an interface for the preRender and postRender
VisualizationViewer.ToolTipListener The interface for the tool tip listener.
 

Class Summary
AbstractLayout Implements some of the dirty work of writing a layout algorithm, allowing the user to express their major intent more simply.
AbstractPickedState An abstract class to support ItemEvents for PickedState
AbstractRenderer This abstract class structures much of the annoying bits of Renderers, allowing the user to simply override the important methods and move on.
ArrowFactory A utility class for creating arrowhead shapes.
BirdsEyeVisualizationViewer Deprecated. Use the SatelliteVisualizationViewer instead
Coordinates Stores coordinates (X,Y) for vertices being visualized.
DefaultGraphLabelRenderer DefaultGraphLabelRenderer is similar to the cell renderers used by the JTable and JTree jfc classes.
DefaultSettableVertexLocationFunction A Map-based implementation of SettableVertexLocationFunction.
DefaultVisualizationModel The model containing state values for visualizations of graphs.
EdgeColorToEdgePaintFunctionConverter Deprecated. This utility class converts an EdgeColorFunction into an EdgePaintFunction
EdgeThicknessToEdgeStrokeFunctionConverter Converts an EdgeThicknessFunction into an EdgeStrokeFunction.
FadingVertexLayout Deprecated. If you are using this code, PLEASE CONTACT US
FourPassImageShaper Provides factory methods that, given a BufferedImage, an Image, or the fileName of an image, will return a java.awt.Shape that is the contiguous traced outline of the opaque part of the image.
FRLayout Implements the Fruchterman-Reingold algorithm for node layout.
FRLayout.FRVertexData  
GraphDraw Deprecated. As of version 1.7, use VisualizationViewer directly instead.
GraphZoomScrollPane GraphZoomScrollPane is a Container for the Graph's VisualizationViewer and includes custom horizontal and vertical scrollbars.
ISOMLayout Implements a self-organizing map layout algorithm, based on Meyer's self-organizing graph methods.
ISOMLayout.ISOMVertexData  
LayoutDecorator a pure decorator for the Layout interface.
Lens Deprecated. use the SatelliteVisualizationViewer instead
MouseListenerTranslator This class translates mouse clicks into vertex clicks
MultiPickedState Maintains the state of what has been 'picked' in the graph.
PersistentLayout.Point a serializable class to save locations
PersistentLayoutImpl Implementation of PersistentLayout.
PivotingImageShaper Provides factory methods that, given a BufferedImage, an Image, or the fileName of an image, will return a java.awt.Shape that is the contiguous traced outline of the opaque part of the image.
PluggableRenderer A renderer with all sorts of buttons to press and dials to turn.
RadiusGraphElementAccessor Simple implementation of PickSupport that returns the vertex or edge that is closest to the specified location.
RadiusPickSupport Simple implementation of PickSupport that returns the vertex or edge that is closest to the specified location.
RandomVertexLocationDecorator  
ShapePickSupport ShapePickSupport provides access to Vertices and Edges based on their actual shapes.
SimpleGraphMouse SimpleGraphMouse is the original GraphMouse class that was nested in VisualizationViewer and installed as a listener for mouse events and mouse motion events.
SpringLayout The SpringLayout package represents a visualization of a set of nodes.
SpringLayout.SpringEdgeData  
SpringLayout.SpringVertexData  
SpringLayout.UnitLengthFunction Returns all edges as the same length: the input value
StaticLayout  
VertexColorToVertexPaintConverter Deprecated. You should create a new VertexPaintFunction if you can
VertexLocationUtils  
VertexShapeFactory A utility class for generating Shapes for drawing vertices.
VisualizationViewer A class that maintains many of the details necessary for creating visualizations of graphs.
VisualizationViewer.ToolTipListenerWrapper used internally to wrap any legacy ToolTipListener implementations so they can be used as a ToolTipFunction
ZoomPanGraphMouse ZoomPanGraphMouse is a PluggableGraphMouse class that includes zoom via the mouse wheel, and pan via a mouse drag
 

Package edu.uci.ics.jung.visualization Description

Provides a visualization mechanism for drawing and rendering Graphs. Current default implementation is for Swing, but most subsystems are extensible for other toolkits.

In general, a visualization is accomplished with

Thus, by selecting one of each of these three, it is possible to coordinate drawing. The default implementation traverses the Visualizer, asking it for locations of vertices, and then paints them individually with the Renderer inside the Swing component. In addition, the GraphDraw infrastructure simplifies many of these transformations by packaging the VisualizationViewer, the Renderer, and the Visualizer together. Users may then substitute out parts as it is appropriate. (Sample code is available in the GraphDraw documentation.)

The current implementation supports only 2-D layout algorithms (because it doesn't contain code to transform 3D coordinates to 2D) and only visualizes Graphs (as opposed to the more general ArchetypeGraphs.)

In order to set up fading effects when vertices are filtered out and filtered in, see the notes at FadingVertexLayout.