163 umlGraph.removeUnnecessaryBendsHV();
175 GA.removeUnnecessaryBendsHV();
223 int opts = m_planarLayouter->getOptions();
226 m_planarLayouter->setOptions(
opts | UMLOpt::OpAlign);
228 m_planarLayouter->setOptions(
opts & ~UMLOpt::OpAlign);
Declaration of interface for algorithms that arrange/pack layouts of connected components.
Defines ogdf::EmbedderModule.
Declaration and implementation of HashArray class.
Declaration of interface for planar layout algorithms for UML diagrams (used in planarization approac...
Declaration of orthogonal representation of planar graphs.
Declaration of CrossingMinimization Module, an interface for crossing minimization algorithms.
Declaration of interface for layout algorithms for UML diagrams.
The parameterized class Array implements dynamic arrays of type E.
Base class of algorithms that arrange/pack layouts of connected components.
Combinatorial embeddings of planar graphs with modification functionality.
Dynamic arrays indexed with edges.
Base class for embedder algorithms.
Faces in a combinatorial embedding.
Stores additional attributes of a graph (like layout information).
Indexed arrays using hashing for element access.
Interface for planar UML layout algorithms.
Doubly linked lists (maintaining the length of the list).
Dynamic arrays indexed with nodes.
Class for the representation of nodes.
Planarized representations (of a connected component) of a graph.
Planarized representation (of a connected component) of a UMLGraph; allows special handling of hierar...
The planarization layout algorithm.
PlanarizationLayoutUML()
Creates an instance of planarization layout and sets options to default values.
void pageRatio(double ratio)
Sets the option pageRatio to ratio.
void call(GraphAttributes &GA)
Calls planarization layout for GraphAttributes GA and computes a layout.
std::unique_ptr< LayoutPlanRepUMLModule > m_planarLayouter
The module for computing a planar layout.
virtual void postProcess(UMLGraph &UG)
double pageRatio() const
Returns the current setting of option pageRatio.
void getFixationDistance(node startNode, HashArray< int, int > &distance, const NodeArray< bool > &fixedNodes)
void setPlanarLayouter(LayoutPlanRepUMLModule *pPlanarLayouter)
Sets the module option for the planar layout algorithm.
void simpleCall(UMLGraph ¨Graph)
Simple call function that does not care about cliques etc.
virtual void callIncremental(UMLGraph ¨graph, NodeArray< bool > &fixedNodes, const EdgeArray< bool > &fixedEdges)
Incremental call function.
void doSimpleCall(GraphAttributes &GA)
void setLayouterOptions(int ops)
void setCrossMin(UMLCrossingMinimizationModule *pCrossMin)
Sets the module option for UML crossing minimization.
double m_pageRatio
The desired page ratio.
bool m_arrangeLabels
Option for re-arranging labels.
void simpleCall(GraphAttributes &GA)
Simple call function.
virtual void preProcess(UMLGraph &UG)
void reembed(PlanRepUML &PG, int ccNumber, bool l_align=false, bool l_gensExist=false)
std::unique_ptr< EmbedderModule > m_embedder
The module for planar embedding.
void setPacker(CCLayoutPackModule *pPacker)
Sets the module option for the arrangement of connected components.
std::unique_ptr< UMLCrossingMinimizationModule > m_crossMin
The moule for UML crossing minimization.
int m_nCrossings
The number of crossings in the computed layout.
void arrangeCCs(PlanRep &PG, GraphAttributes &GA, Array< DPoint > &boundingBox)
face findBestExternalFace(const PlanRep &PG, const CombinatorialEmbedding &E)
virtual void call(UMLGraph ¨Graph) override
Calls planarization layout for UML-graph umlGraph and computes a mixed-upward layout.
void assureDrawability(UMLGraph ¨Graph)
std::unique_ptr< CCLayoutPackModule > m_packer
The module for arranging connected components.
void sortIncrementalNodes(List< node > &addNodes, const NodeArray< bool > &fixedNodes)
virtual ~PlanarizationLayoutUML()
int numberOfCrossings() const
Returns the number of crossings in computed layout.
void setEmbedder(EmbedderModule *pEmbedder)
Sets the module option for the graph embedding algorithm.
Base class for UML crossing minimization algorithms.
Interface of UML layout algorithms.
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF DLL.
static MultilevelBuilder * getDoubleFactoredZeroAdjustedMerger()
The namespace for all OGDF objects.