Morphing Planar Graph Drawings via Orthogonal Box Drawings
Therese Biedl, Anna Lubiw, Jack Spalding-Jamieson
TL;DR
The paper addresses morphing between planar straight-line drawings of a connected planar graph while keeping the intermediate drawings on a compact grid and with a bounded number of bends per edge. It introduces a two-phase approach: first morph each input drawing to a planar orthogonal box drawing (vertices as boxes, edges as orthogonal polylines), then morph between orthogonal box drawings using port-alignment, twists, and zig-zag eliminations, with a key lemma linking box-drawing morphs to admitted poly-line morphs. The main result is a planarity-preserving linear morph sequence of length $O(n)$, where each intermediate drawing lies on an $O(n) imes O(n)$ grid and has $O(1)$ bends per edge, computable in $O(n^2)$ time. This significantly improves previous bounds by Lubiw and Petrick, reducing grid size and bends while maintaining efficient running time, thus enabling more practical and stable morphing of planar graphs.
Abstract
We give an algorithm to morph planar graph drawings that achieves small grid size at the expense of allowing a constant number of bends on each edge. The input is an $n$-vertex planar graph and two planar straight-line drawings of the graph on an $O(n) \times O(n)$ grid. The planarity-preserving morph is composed of $O(n)$ linear morphs between successive pairs of drawings, each on an $O(n) \times O(n)$ grid with a constant number of bends per edge. The algorithm to compute the morph runs in $O(n^2)$ time on a word RAM model with standard arithmetic operations -- in particular no square roots or cube roots are required. The first step of the algorithm is to morph each input drawing to a planar orthogonal box drawing where vertices are represented by boxes and each edge is drawn as a horizontal or vertical segment. The second step is to morph between planar orthogonal box drawings. This is done by extending known techniques for morphing planar orthogonal drawings with point vertices.
