44namespace topology_module {
110 DegOneCrossings = 0x0001,
204 return static_cast<int>(a) |
static_cast<int>(b);
Declares EdgeComparer class.
Declaration of class GraphAttributes which extends a Graph by additional attributes.
Declaration of a base class for planar representations of graphs and cluster graphs.
Class for adjacency list elements.
Dynamic arrays indexed with edges.
Class for the representation of edges.
Faces in a combinatorial embedding.
Stores additional attributes of a graph (like layout information).
Data type for general directed graphs (adjacency list representation).
Encapsulates a pointer to a list element.
Dynamic arrays indexed with nodes.
Class for the representation of nodes.
Planarized representations (of a connected component) of a graph.
Constructs embeddings from given layout.
bool skipable(topology_module::EdgeLeg *legA, topology_module::EdgeLeg *legB)
void addOption(TopologyModule::Options o)
Options
The (pre/post)processing options.
double faceSum(PlanRep &PG, const GraphAttributes &AG, face f)
bool checkFlipCrossing(PlanRep &PG, node v, bool flip=true)
double angle(DPoint p, DPoint q, DPoint r)
face getExternalFace(PlanRep &PG, const GraphAttributes &AG)
bool setEmbeddingFromGraph(PlanRep &PG, GraphAttributes &GA, adjEntry &adjExternal, bool setExternal=true, bool reuseGAEmbedding=false)
Uses the layout GA to determine an embedding for PG.
void sortEdgesFromLayout(Graph &G, GraphAttributes &GA)
Sorts the edges around all nodes of GA corresponding to the layout given in GA.
void postProcess(PlanRep &PG)
void planarizeFromLayout(PlanRep &PG, GraphAttributes &AG)
void handleImprecision(PlanRep &PG)
EdgeArray< List< topology_module::EdgeLeg * > > m_eLegs
int compare_vectors(const double &x1, const double &y1, const double &x2, const double &y2)
virtual ~TopologyModule()
NodeArray< DPoint > m_crossPosition
bool hasCrossing(topology_module::EdgeLeg *legA, topology_module::EdgeLeg *legB, DPoint &xp)
Helper class for the computation of crossings.
ListIterator< EdgeLeg * > m_eIterator
each edgeLeg holds an entry with a ListIterator pointing to its entry in a <edgeLeg*> List for an ori...
EdgeLeg(edge e, int number, DPoint p1, DPoint p2)
int m_number
the order nuumber on the edge, starting at 0
edge m_copyEdge
the edge in the PlanRep copy corresponding to the EdgeLeg
DPoint m_p2
"Starting" and "End" point of the EdgeLeg
bool m_topDown
we store the direction of the crossed EdgeLeg, too if crossingEdgeLeg is horizontally left to right
DPoint m_xp
to avoid sorting both edgelegs and crossing points, do not store a pair of them, but allow the xp to ...
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF DLL.
static MultilevelBuilder * getDoubleFactoredZeroAdjustedMerger()
The namespace for all OGDF objects.
int operator|(int lhs, UMLOpt rhs)
int operator&(int lhs, UMLOpt rhs)