link.router()

Return a shallow copy of the router property of the link.

For backwards compatibility, if there is no router, the function also checks whether the legacy manhattan property is set on the link and returns { name: orthogonal } if it is.

link.router(router [, opt])

Set the router of the link.

If the router argument is an object, it is expected to have the form { name: routerName, args?: routerArgs }. Here routerName is expected to match either the name of a built-in router or the name of a custom router.

If the router argument is a function, it is expected to define a custom router with the signature function(vertices, routerArgs, linkView) that returns an array of route points.

link.router(routerName [, routerArgs, opt])

Set the router of the link to have the value { name: routerName, args: routerArgs }.

The routerName string is expected to match either the name of a built-in router or the name of a custom router. The routerArgs parameter is optional.