55class HypergraphAttributes;
56class HypergraphAttributesES;
64 enum class Profile { Normal = 0x000001, ElectricCircuit = 0x000002 };
114 double ratio()
const {
return m_ratio; }
136 m_planarLayoutModule.reset(pPlanarLayoutModule);
146 m_crossingMinimizationModule.reset(pCrossingMinimizationModule);
156 m_embeddingModule.reset(pEmbeddingModule);
Declaration and implementation of Array class and Array algorithms.
Declaration of CrossingMinimization Module, an interface for crossing minimization algorithms.
Defines ogdf::EmbedderModule.
Includes declaration of graph class.
Declaration of an interface for hypergraph layout algorithms.
Declaration of interface for planar layout algorithms (used in planarization approach).
Declaration of classes GenericPoint, GenericPolyline, GenericLine, GenericSegment,...
Basic declarations, included by all source files.
The parameterized class Array implements dynamic arrays of type E.
Base class for crossing minimization algorithms.
Base class for embedder algorithms.
Copies of graphs with mapping between nodes and edges.
Stores additional attributes of edge standard representation of a hypergraph.
Stores additional attributes of a hypergraph.
void removeShell(PlanRep &planarRep, NodePair &st)
void setConstraintIO(bool pConstraintIO)
Sets the Input / Output drawing requirement.
double ratio() const
Returns the ratio between width and height of a drawing.
void setPlanarLayoutModule(LayoutPlanRepModule *pPlanarLayoutModule)
Sets the module option for the planar layout.
int crossings() const
Returns the number of crossings in computed layout.
double m_ratio
The ration between width and height of a drawing.
void insertShell(GraphCopySimple &planarRep, List< node > &src, List< node > &tgt, List< edge > &fixedShell)
std::unique_ptr< CrossingMinimizationModule > m_crossingMinimizationModule
The module for crossing minimization.
void packAllCC(const PlanRep &planarRep, const GraphCopySimple &gc, HypergraphAttributesES &pHA, Array< DPoint > &bounding)
void layout(HypergraphAttributesES &pHA)
void setCrossingMinimizationModule(CrossingMinimizationModule *pCrossingMinimizationModule)
Sets the module option for crossing minimization.
Profile m_profile
Defines the profile of the layout (eg. Electric Circuit).
int m_crossings
The number of crossings in the layout.
virtual ~HypergraphLayoutES()
bool m_constraintPorts
Defines whether inputs and outputs are placed on different "sides".
bool m_constraintIO
Defines whether a drawing IO constraint is desired or not.
void setEmbeddingModule(EmbedderModule *pEmbeddingModule)
Sets the module option for embedding.
std::unique_ptr< LayoutPlanRepModule > m_planarLayoutModule
The module for computing the final layout.
std::unique_ptr< EmbedderModule > m_embeddingModule
The module for embedding planarization.
Profile
Final appearance is driven by given profile.
void setProfile(Profile pProfile)
Sets the layout profile.
void applyProfile(HypergraphAttributesES &HA)
HypergraphLayoutES & operator=(const HypergraphLayoutES &hl)
Assignment operator.
virtual void call(HypergraphAttributes &HA) override
Computes a layout of hypergraph given by HA.
Interface of hypergraph layout algorithms.
Interface for planar layout algorithms (used in the planarization approach).
Doubly linked lists (maintaining the length of the list).
Planarized representations (of a connected component) of a graph.
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF dynamic library (shared object / DLL),...
The namespace for all OGDF objects.