47class PlanarGridLayoutModule;
60 const std::function<
edge(
edge)>& translate = [](
edge e) ->
edge {
return e; });
78 std::unique_ptr<GraphAttributes>
own_GA;
91 void layout(
bool format =
true,
bool components =
true);
Derived class of GraphObserver providing additional functionality to handle clustered graphs.
Includes declaration of graph class.
Declaration of class GraphAttributes which extends a Graph by additional attributes.
Declaration of graph copy classes.
Declares class GraphIO which provides access to all graph read and write functionality.
Declaration of interface for layout algorithms (class LayoutModule)
Declaration of doubly linked lists and iterators.
Basic declarations, included by all source files.
Class for adjacency list elements.
Representation of clustered graphs.
Class for the representation of edges.
Stores additional attributes of a graph (like layout information).
Condensed settings for drawing SVGs.
Doubly linked lists (maintaining the length of the list).
Class for the representation of nodes.
Base class for planar grid layout algorithms.
RegisteredArray for edges of a graph, specialized for EdgeArray<edge>.
Utilities by dumping a drawing of the current state of a SyncPlan instance.
List< int > reuse_g_edge_idx
const GraphAttributes & getBC_GA() const
void layout(bool format=true, bool components=true)
virtual ~SyncPlanDrawer()
std::unique_ptr< LayoutModule > non_planar_layout
std::unique_ptr< LayoutModule > planar_layout
List< int > reuse_bc_edge_idx
GraphAttributes & ensureGraphAttributes()
SyncPlanDrawer(SyncPlan *pq)
std::unique_ptr< GraphAttributes > own_GA
const GraphIO::SVGSettings & getSvg() const
A class for modelling and solving Synchronized Planarity instances.
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF dynamic library (shared object / DLL),...
EdgeElement * edge
The type of edges.
void formatNode(node n, GraphAttributes *ga, int group)
Simple util for apply a default style to nodes, including a group-based coloring.
std::unique_ptr< std::pair< GraphCopy, GraphAttributes > > drawClusterGraph(ClusterGraph &CG, GraphAttributes &GA, PlanarGridLayoutModule &layout, adjEntry adjExternal=nullptr)
Draw a graph using a given planar layout by turning its cluster borders into edges via planarizeClust...
void styleClusterBorder(const ClusterGraph &CG, const EdgeArray< List< std::pair< adjEntry, cluster > > > &subdivisions, GraphAttributes &GA, const std::function< edge(edge)> &translate=[](edge e) -> edge { return e;})
Properly style a cluster border inserted by planarizeClusterBorderCrossings()
The namespace for all OGDF objects.