Chapter 1. Introduction
This is Glay, a system for handling, processing and visualizing
graphs written in Perl and modern C++. It aims to follow the KISS
(Keep It Stupid and Simple) design principles, and concentrates on
implementing reusable pieces of actions. Hence people knowing
the Perl programming language are able to exploit it in is
entirety. Using only the built-in modules like layout algorithms
or the Visualization module however does not require any programming or Perl
whatsoever.
Glay is built up of two main modules. One of them --- the "Visualization
module" --- eats vertex coordinates, connectivity data and style
information, and produces nice 3D pictures of the graph. It just
draws; it has no brains or any means at all to figure out where to
put the vertices, or what color the edges should have. It is usable
on its own: if you provide the simple text format that it recognizes
you are able to visualize graphs.
The "main module" of glay is the place that the graph can be read
into, and manipulated with. It is basically a collection of
actions, like an action for inputting different formats, an action
for coloring, etc.
Most important is the easiness of creating user defined
action-files. It means that if you would like to experience with the
graph, recolor some parts, calculate some quantities, etc, you
only have to code the very action you want, in a minimalistic format.
The "Visualization module" and the "Main module" are designated as independent
software and you are encouraged to consider using them separately,
if either one alone fits your needs. If you just need to manipulate
a graph, probably a command "glay -i filename -a actionname" is a command
for you. If you have a separate program that can produce appropriate
input for the "Visualization module", you can use that alone to visualize your
data. Feel free to experience, and good luck!