next up previous contents index
Next: The Pure Orthogonal Drawing Up: Planarization-Based Layout Methods Previous: The Planarization Method (   Contents   Index


Planarization on the Grid ( PlanarizationGridLayout )

Baseclasses


\begin{picture}(9.5,8)
\thicklines
\put(0,7){\framebox (5,1){\bf AGDModule}}...
...}}\put(1.8,2.5){\framebox (7.7,1){\bf PlanarizationGridLayout}}
\end{picture}

Definition

The class PlanarizationGridLayout represents a general framework for drawing with planarization on the grid. It applies a planarization module in order to transform a general graph into a planar graph by introducing dummy vertices at edge crossings, and draws the resulting planar graph using a grid layout algorithm for planar graphs. The planarization and planar layout algorithms are exchangeable modules allowing to use PlanarizationGridLayout with different methods for planarization and planar drawing.

General Information

Algorithm
name Planarization
long name Grid Planarization
author
Implementation
author C. Gutwenger
date May 1998
version 1.0

Pre- and Postcondition

precondition = noselfloops } $ \cup$ (PreL $ \cap$ {simple, four - graph, connected}
postcondition(PRE) = $ \emptyset$


where PreL is the precondition of the planar_layouter module.

Exchangeable Modules Instances of type PlanarizationGridLayout provide the following module options:

$ \bullet$
planarizer
a PlanarizerModule option used to compute the planarization of the input graph.

guaranteed precondition: noselfloops, directed }
required postcondition: planar, noselfloops }
initial module: PlanarSubgraph

$ \bullet$
planar_layouter
a GridLayoutModule option used to draw the planarized graph.

guaranteed precondition: planar, simple, noselfloops, connected, four - graph }
required postcondition: (PlaneGraphCopy - callable,{ nocrossings })
initial module: QuasiOrthogonalLayout

#include < AGD/PlanarizationGridLayout.h >

Creation

PlanarizationGridLayout L creates an instance L of type PlanarizationGridLayout.

Operations

int L.number_of_crossings() returns the number of crossings in the layout produced by a preceding call.


Standard Interface (Inherited Methods) The detailed description of these methods can be found in the manual entries of the base classes (LayoutModule, GridLayoutModule).

bool L.check(const graph& G, AgdKey& p)

void L.call(const graph& G, LayoutInterface& A)

void L.call_grid(const graph& G, GridLayout& gl)

IRect L.bounding_box()

void L.set_mapper(const GridCoordinateMapper& gcm)

Access to Options

bool L.set_planar_layouter(const GridLayoutModule& M)

bool L.set_planarizer(const PlanarizerModule& M)


next up previous contents index
Next: The Pure Orthogonal Drawing Up: Planarization-Based Layout Methods Previous: The Planarization Method (   Contents   Index

© Copyright 1998-2001, Algorithmic Solutions Software GmbH. All rights reserved.
2001-08-13