liveBook · Manning

Crossing edge

As explained in Advanced Algorithms and Data Structures

An edge crossing is a geometric intersection between two graph edges at a point that is not a shared endpoint.

A crossing edge is involved in a geometric intersection between two graph edges at a point that is not a shared endpoint. In a graph drawing, crossings can obscure relationships and reduce readability. section 15.1 section 15.3

The concept matters when embedding graphs in the two-dimensional plane. Planar graphs can be drawn with no crossings; non-planar graphs require one or more, so layouts aim to minimize them. section 15.3 section 15.0

Use crossing edges to reason about graph layouts:

  • Treat crossings as a layout cost when displaying flow charts, UML diagrams, PERT charts, or other visual graphs. section 15.1
  • Compare embeddings by their number of crossings rather than by the abstract graph alone. section 15.3
  • Distinguish a genuine edge crossing from edges meeting at a common vertex. section 15.1

Printed circuit board layout

Model electronic components as vertices and conductive tracks as edges. A crossing between tracks can make the embedding less suitable, so the layout seeks fewer intersections while respecting the board’s geometric constraints. section 15.0

Figure 15.1 An example of an electronic circuit, and a graph embedding from which the circuit’s layout may have been derived. Looking at the graph, all electronic components have a vertex dual (with different shaded colors by type), and the joints have been modeled with vertices on the graph (to cope with the fact that we need to restrict to horizontal and vertical segments for conductive tracks).

Use the circuit embedding to connect crossing edges with a concrete layout problem involving components, joints, and conductive tracks. section 15.0

How Advanced Algorithms and Data Structures covers it

How deep it goes
Defines crossings geometrically, relates them to planarity and crossing number, and points toward detection algorithms without detailing their implementation.
Examples
Uses printed circuit boards, flow charts, UML diagrams, and PERT charts as applications of graph layouts.
What it assumes
Assumes basic graph vertices and edges, then applies them to geometric embeddings in the plane.
What you can do after
Evaluate graph embeddings by locating crossings and comparing layouts through their intersection counts.
How it connects
Connects graph embeddings with planar graphs, non-planar graphs, crossing number, and graph visualization.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Advanced Algorithms and Data Structures. The section links point to the parts of the book it draws on.