Toward a Notation for
Drawing and Flow
Certain domains of visual expression lend themselves more naturally to
the two-dimensional media of paper, canvas, computer, and smartphone
than to sculpture or other 3D forms. For example, it is conventional to
present literature, maps, and diagrams in 2D. Likewise, despite the
intrinsic three-dimensionality of such things as fabric-weave, highway
interchanges, river systems, roofs, knots and even visual paradoxes,
a two dimensional rendition sometimes has more explanatory power than a
full-fledged three dimensional presentation of the thing being
visualized.
Certain "3D" things are easier to visualize when drawn in 2D:
- fabric weave
- set relationships
- highway interchanges
At the same time, SVG, because of its two-dimensional focus, is
encumbered by a two-dimensional semantics that focuses on geometry
rather than meaning, flow, or connectivity. Put simply, in SVG, objects
cannot occlude parts of themselves. Nor do objects that are "linked
together" semantically have any natural way, other than hierarchical
grouping or shared decoration, to reflect a typical graph theoretic connection. And other
than the currently quite limited options for gradients, markers and
animation, the directionality of flow is not intrinsic to SVG drawings.
Depicting such things as weave, underpasses, relationships, knots, and
visual paradox is difficult to accomplish with SVG. This often forces
authors to use much less elegant tool sets (such as animated GIF and
WebGL) to visualize such domains. Examination of the source code used
in such examples as these may indicate that, despite compelling reasons
for using SVG, there are dogged complexities associated with these
depictions.
Certain domains of discourse would seem to be natural matches for a
vector-based 2D graphical standard. Over the past several years I've
examined various ways that SVG falls short of the expressiveness that
might be required of some of these domains. Encouraged by the existence
of concise notations for certain combinatorial structures like Venn
diagrams, knots, tangles, and polyominoes, this talk will summarize the
findings of this inquiry as well as point toward the possibilities for
creating a declarative language, like SVG, but which focuses more on
topology than on geometry. In particular What are some types of things
SVG doesn't do well? What are the requirements of a notation/language
for the depiction of drawing and flow? What domains of connectivity,
topology, activity and weave can be properly addresses by such a
notation?