ClusterPlanarity testing in quadratic time using the Synchronized Planarity approach.
More...
#include <ogdf/cluster/sync_plan/ClusterPlanarity.h>
|
bool | clusterPlanarEmbedClusterPlanarGraph (ClusterGraph &CG, Graph &G) override |
| Constructs a cluster-planar embedding of CG . CG has to be cluster-planar! More...
|
|
std::vector< std::pair< adjEntry, adjEntry > > * | getStoreAugmentation () const |
|
bool | isClusterPlanar (const ClusterGraph &CG) override |
| Returns true, if CG is cluster-planar, false otherwise. More...
|
|
bool | isClusterPlanarDestructive (ClusterGraph &CG, Graph &G) override |
| Returns true, if CG is cluster-planar, false otherwise. In it is non-cluster-planar, the (Cluster)Graph may be arbitrarily changed after the call. More...
|
|
void | setStoreAugmentation (std::vector< std::pair< adjEntry, adjEntry >> *augmentation) |
| When set to a non-null pointer, will contain the augmentation edges to make the graph c-connected c-plane after calling clusterPlanarEmbed(). More...
|
|
| ClusterPlanarityModule ()=default |
|
virtual | ~ClusterPlanarityModule ()=default |
|
virtual bool | clusterPlanarEmbed (ClusterGraph &CG, Graph &G) |
| Returns true, if CG is cluster-planar, false otherwise. If true, CG contains a cluster-planar embedding. More...
|
|
| Module () |
| Initializes a module. More...
|
|
virtual | ~Module () |
|
|
void | copyBackEmbedding (ClusterGraph &CG, Graph &G, const ClusterGraph &CGcopy, const Graph &Gcopy, const ClusterArray< cluster, true > ©C, const NodeArray< node, true > ©N, const EdgeArray< edge, true > ©E, const EdgeArray< edge, true > &origE) const override |
|
virtual void | copyBackEmbedding (ClusterGraph &CG, Graph &G, const ClusterGraph &CGcopy, const Graph &Gcopy, const ClusterArray< cluster > ©C, const NodeArray< node > ©N, const EdgeArray< edge > ©E, const EdgeArray< edge > &origE) const |
|
ClusterPlanarity testing in quadratic time using the Synchronized Planarity approach.
Definition at line 45 of file ClusterPlanarity.h.
◆ clusterPlanarEmbedClusterPlanarGraph()
bool ogdf::SyncPlanClusterPlanarityModule::clusterPlanarEmbedClusterPlanarGraph |
( |
ClusterGraph & |
CG, |
|
|
Graph & |
G |
|
) |
| |
|
overridevirtual |
Constructs a cluster-planar embedding of CG
. CG
has to be cluster-planar!
Returns true if the embedding was successful. Returns false if the given graph was non-cluster-planar (and leaves the (Cluster)Graph in an at least partially invalidated state).
This routine may be slightly faster than clusterPlanarEmbed, but requires CG
to be cluster-planar. If CG
is not cluster-planar, the (Cluster)Graph will be (partially) destroyed while trying to embed it!
Reimplemented from ogdf::ClusterPlanarityModule.
◆ copyBackEmbedding()
void ogdf::SyncPlanClusterPlanarityModule::copyBackEmbedding |
( |
ClusterGraph & |
CG, |
|
|
Graph & |
G, |
|
|
const ClusterGraph & |
CGcopy, |
|
|
const Graph & |
Gcopy, |
|
|
const ClusterArray< cluster, true > & |
copyC, |
|
|
const NodeArray< node, true > & |
copyN, |
|
|
const EdgeArray< edge, true > & |
copyE, |
|
|
const EdgeArray< edge, true > & |
origE |
|
) |
| const |
|
overrideprotected |
◆ getStoreAugmentation()
std::vector<std::pair<adjEntry, adjEntry> >* ogdf::SyncPlanClusterPlanarityModule::getStoreAugmentation |
( |
| ) |
const |
|
inline |
◆ isClusterPlanar()
bool ogdf::SyncPlanClusterPlanarityModule::isClusterPlanar |
( |
const ClusterGraph & |
CG | ) |
|
|
overridevirtual |
◆ isClusterPlanarDestructive()
bool ogdf::SyncPlanClusterPlanarityModule::isClusterPlanarDestructive |
( |
ClusterGraph & |
CG, |
|
|
Graph & |
G |
|
) |
| |
|
overridevirtual |
Returns true, if CG
is cluster-planar, false otherwise. In it is non-cluster-planar, the (Cluster)Graph may be arbitrarily changed after the call.
This variant may be slightly faster than the default isClusterPlanar
Implements ogdf::ClusterPlanarityModule.
◆ setStoreAugmentation()
void ogdf::SyncPlanClusterPlanarityModule::setStoreAugmentation |
( |
std::vector< std::pair< adjEntry, adjEntry >> * |
augmentation | ) |
|
|
inline |
When set to a non-null pointer, will contain the augmentation edges to make the graph c-connected c-plane after calling clusterPlanarEmbed().
- See also
- insertAugmentationEdges()
-
SyncPlan::SyncPlan(Graph*, ClusterGraph*, std::vector<std::pair<adjEntry, adjEntry>>*, ClusterGraphAttributes*)
Definition at line 58 of file ClusterPlanarity.h.
◆ m_augmentation
std::vector<std::pair<adjEntry, adjEntry> >* ogdf::SyncPlanClusterPlanarityModule::m_augmentation = nullptr |
|
private |
The documentation for this class was generated from the following file: