Edge Routing Algorithms

All edge routing algorithms provided by yFiles implement interface LayoutStage. LayoutStage makes it easy to use an edge routing algorithm as a postprocessing step to any of the major layout algorithms, for example.

yFiles supports different edge routing styles:

Organic Routing

Organic edge routing is described in the section called “Organic Edge Routing”.

Figure 5.105. Sample organic edge routings

Organic Edge Router
Organic Edge Router

This style is encapsulated in class OrganicEdgeRouter.

Orthogonal Routing

Orthogonal edge routing is described in the section called “Polyline Edge Routing”, the section called “Orthogonal Edge Routing”, and the section called “Channel Edge Routing”. A specialized edge routing algorithm that generates bus-style representations by bundling edges of complete (sub)graphs can be found in the section called “Orthogonal Bus-style Edge Routing”. Polyline edge routing also supports octilinear routing, a variation of orthogonal routing.

Figure 5.106. Sample orthogonal edge routings

Polyline Edge Router
Orthogonal Edge Router
Channel Edge Router
Bus Router

This style is encapsulated in classes EdgeRouter, OrthogonalEdgeRouter, and ChannelEdgeRouter. Class BusRouter encapsulates the bus-routing functionality.