• Level 0 -- boundary representation, containing no explicit topological
information
• Level 1 — non-planar graph, suitable for representing networks
• Level 2 — planar graph, in which no edges overlap
• Level 3 - full topology, in which no faces overlap
Within a library of coverages, the actual level of topology may vary by coverage.
Full topology is the most complex topological structure to manage. There are several ways
to represent full topology; VPF specifies the “winged-edge” format (see Figure 4; also
DMA 1993, Appendix B).
The function of winged-edge topology is to provide line network and face
topology. Three components are necessary to define winged-edge topology: node
information, edge information, and face information. Nodes provide contiguity
information; for example, each edge knows its start node and end node. Start and end
nodes also provide orientation information for edges, and define the common point for
contiguous edges.
Adjacency information is also maintained by edges. An edge knows its
neighboring edges by its right edge and left edge attributes. An edge, together with its left
and right edges, gives a ‘winged’ appearance, leading to the term winged-edge topology.
The right edge is the first edge connected to the end node in a counterclock-wise direction.
The left edge is the first edge connected to the start node in a counterclockwise direction. If
there is no neighboring edge, the right or the left edge will be just itself. Each edge also
knows its left and right faces. Left and right faces are determined by the edge direction.
With these definitions, the winged-edge topology provides adjacency, contiguity and the
orientation of neighboring nodes, edges and faces.
Figure 4. Winged-Edge Topology
According to these relationships, a geographic region is completely defined by a set
of faces and edges that do not overlap. Due to this characteristic, intersection of edges
implies the creation of a connected node at the intersecting point, and a change of each
original edge definition from one edge to two unique edges that connect at the intersecting
point. Similarly, an intersection of faces implies the creation of a new face for the overlap
region, and creation of new edges and connected nodes at the overlap boundaries.
According to the definition for coverages (DMA 1993), topological relationships among
primitives must be maintained for all features within each coverage.
Since all VPF primitives share some common structure, an abstract superclass,
TopologicalStructure , was created to define these shared attributes. For example, all
primitives’ record id’s are numbered in separate sequences for each coverage and tile, so
attribute variables to hold the coverage . tile id , and primitive id links were defined. In