Adaptagrams
Public Attributes | List of all members
dialect::OrthoHubLayoutOptions Struct Reference

Options to control OrthoHubLayout. More...

#include <nodeconfig.h>

Collaboration diagram for dialect::OrthoHubLayoutOptions:
Collaboration graph

Public Attributes

bool avoidFlatTriangles = true
 
bool includeLinks = false
 

Detailed Description

Options to control OrthoHubLayout.

Member Data Documentation

◆ avoidFlatTriangles

bool dialect::OrthoHubLayoutOptions::avoidFlatTriangles = true

If three nodes u, v, w in a graph form a triangle – i.e. a subgraph isomorphic to K3 – then we may wish to prevent the "flattening" of this triangle, i.e. the configuration of any one of the three nodes in such a way that the other two are assigned to opposite compass directions, e.g. assigning u and w to be north and south, resp., of v. To prevent this, set this option to true.

As an example of why you might want to set this option to false, consider that then the graph K4 gets a planar layout. When used in combination with routing by libavoid, flat triangles are not always bad.

Referenced by dialect::doHOLA(), dialect::OrthoHubLayout::layout(), and dialect::OrthoHubLayout::OrthoHubLayout().

◆ includeLinks

bool dialect::OrthoHubLayoutOptions::includeLinks = false

By default, we attempt to configure only Nodes of degree 3 or higher. The idea is that nodes of degree 2 (a.k.a. "links") be handled by a different procedure, such as the ACA algorithm. However, good results can also be obtained by performing ortho hub layout on all nodes, of any degree. If that is desired, set the includeLinks option to true.

Referenced by dialect::OrthoHubLayout::OrthoHubLayout().


The documentation for this struct was generated from the following file: