Compares adjacency entries based on the position of the nodes given by GraphAttribute layout information. More...
#include <ogdf/basic/EdgeComparer.h>
Public Member Functions | |
EdgeComparer (const GraphAttributes &AG) | |
Constructor for given GraphAttributes. More... | |
EdgeComparer (const GraphAttributes &AG, const PlanRep &PR) | |
Constructor for a given PlanRep and given GraphAttributes. More... | |
bool | before (const DPoint &u, const DPoint &v, const DPoint &w) const |
Checks if vector from u to v lies within the 180-degree halfcircle before the vector from u to w in clockwise order (i.e. More... | |
int | compare (const adjEntry &e1, const adjEntry &e2) const override |
Compares x and y and returns the result as an integer. More... | |
Public Member Functions inherited from ogdf::VComparer< adjEntry > | |
VComparer () | |
Initializes a comparer. More... | |
virtual | ~VComparer () |
virtual bool | equal (const adjEntry &x, const adjEntry &y) const |
Returns true iff x = y . More... | |
virtual bool | geq (const adjEntry &x, const adjEntry &y) const |
Returns true iff x >= y . More... | |
virtual bool | greater (const adjEntry &x, const adjEntry &y) const |
Returns true iff x > y . More... | |
virtual bool | leq (const adjEntry &x, const adjEntry &y) const |
Returns true iff x <= y . More... | |
virtual bool | less (const adjEntry &x, const adjEntry &y) const |
Returns true iff x < y . More... | |
Private Member Functions | |
int | orientation (const DPoint &u, const DPoint &v, const DPoint &w) const |
Returns 1 if v lies to the left of the line through u and w , -1 if it lies to the right, and 0 if it lies on that line. More... | |
Private Attributes | |
const GraphAttributes * | m_AG |
const PlanRep * | m_PR |
Compares adjacency entries based on the position of the nodes given by GraphAttribute layout information.
An adjacency entry considered greater than another if it comes after the other in a clockwise manner.
Definition at line 52 of file EdgeComparer.h.
|
inline |
Constructor for a given PlanRep and given GraphAttributes.
Assumes that PR
is a PlanRep on original AG
and that PR
is not normalized, i.e., if there are bends in AG
, they do not have a counterpart in PR
(all nodes in PR
have an original) temporary: we assume that we have two adjacency entries at a common point, so we leave the check for now if they meet and at which point.
Definition at line 63 of file EdgeComparer.h.
|
inlineexplicit |
Constructor for given GraphAttributes.
Compares the edges directly in AG
.
Definition at line 70 of file EdgeComparer.h.
Checks if vector from u
to v
lies within the 180-degree halfcircle before the vector from u
to w
in clockwise order (i.e.
twelve o'clock lies before 1).
Compares x
and y
and returns the result as an integer.
The returns value is
Implements ogdf::VComparer< adjEntry >.
|
private |
Returns 1 if v
lies to the left of the line through u
and w
, -1 if it lies to the right, and 0 if it lies on that line.
|
private |
Definition at line 87 of file EdgeComparer.h.
|
private |
Definition at line 88 of file EdgeComparer.h.