Graph::Easy::Layout::Force - Force-based layouter for Graph::Easy


Graph-Easy documentation  | view source Contained in the Graph-Easy distribution.

Index


NAME

Top

Graph::Easy::Layout::Force - Force-based layouter for Graph::Easy

SYNOPSIS

Top

	use Graph::Easy;

	my $graph = Graph::Easy->new();

	$graph->add_edge ('Bonn', 'Berlin');
	$graph->add_edge ('Bonn', 'Ulm');
	$graph->add_edge ('Ulm', 'Berlin');

	$graph->layout( type => 'force' );

	print $graph->as_ascii( );

	# prints:

	#   +------------------------+
	#   |                        v
	# +------+     +-----+     +--------+
	# | Bonn | --> | Ulm | --> | Berlin |
	# +------+     +-----+     +--------+

DESCRIPTION

Top

Graph::Easy::Layout::Force contains routines that calculate a force-based layout for a graph.

Nodes repell each other, while edges connecting them draw them together.

The layouter calculates the forces on each node, then moves them around according to these forces until things have settled down.

Used automatically by Graph::Easy.

EXPORT

Top

Exports nothing.

SEE ALSO

Top

Graph::Easy.

METHODS

Top

This module injects the following methods into Graph::Easy:

_layout_force()

Calculates the node position with a force-based method.

AUTHOR

Top

Copyright (C) 2004 - 2007 by Tels http://bloodgate.com.

See the LICENSE file for information.


Graph-Easy documentation  | view source Contained in the Graph-Easy distribution.