Compute a crossing minimal position for a vertex. More...
#include <ogdf/geometric/CrossingMinimalPosition.h>
Public Member Functions | |
CrossingMinimalPosition () | |
~CrossingMinimalPosition () | |
DPoint | call (GraphAttributes &GA, node v) |
computes a good position for the vertex v with respect to GA | |
void | computePositionInOptimalRegion (const bool within_region) |
If the value within_region is set to false, the algorithm samples points outside the optimal region. | |
unsigned int | neighborThreshold () const |
void | setExactComputation () |
void | setNeighboorhoodThreshold (const unsigned int threshold) |
The algortihm randomly partitions the neighbor of the vertex into blocks of size threshold . | |
void | setSampleSize (const unsigned int number_of_edge_samples, const unsigned int number_of_point_samples) |
set the number of edges that are randomly selected to compute the new vertex postion and the number of points that are tested within the best region. | |
Public Member Functions inherited from ogdf::VertexPositionModule | |
VertexPositionModule () | |
~VertexPositionModule () | |
DPoint | operator() (GraphAttributes &GA, node v) |
computes a good position for the vertex v with respect to GA | |
void | setBoundingBox (double x_min, double y_min, double x_max, double y_max) |
Vertex has to be moved within the given bound. | |
Protected Attributes | |
unsigned int | m_neighborhood_threshold = 100 |
unsigned int | m_number_of_edge_samples = -1 |
unsigned int | m_number_of_point_samples = 1 |
bool | m_within_region = true |
std::mt19937_64 | rnd |
Protected Attributes inherited from ogdf::VertexPositionModule | |
double | m_x_max = 1 |
double | m_x_min = 0 |
double | m_y_max = 1 |
double | m_y_min = 0 |
Compute a crossing minimal position for a vertex.
FT | internal floating point type. Selecting an exact floating point type ensures robust computations. |
Definition at line 64 of file CrossingMinimalPosition.h.
|
inline |
Definition at line 66 of file CrossingMinimalPosition.h.
|
inline |
Definition at line 68 of file CrossingMinimalPosition.h.
|
virtual |
computes a good position for the vertex v
with respect to GA
Implements ogdf::VertexPositionModule.
|
inline |
If the value within_region
is set to false, the algorithm samples points outside the optimal region.
within_region | indicates whether the new position has to be within the crossing minimal region |
Definition at line 94 of file CrossingMinimalPosition.h.
|
inline |
Definition at line 106 of file CrossingMinimalPosition.h.
|
inline |
Definition at line 74 of file CrossingMinimalPosition.h.
|
inline |
The algortihm randomly partitions the neighbor of the vertex into blocks of size threshold
.
A large vertex degree results in long running times and considerable memory consumption.
threshold | indicates the block size |
Definition at line 102 of file CrossingMinimalPosition.h.
|
inline |
set the number of edges that are randomly selected to compute the new vertex postion and the number of points that are tested within the best region.
number_of_edge_samples | number of randomly selected edges |
number_of_point_samples | number of randomly selected point |
Definition at line 85 of file CrossingMinimalPosition.h.
|
protected |
Definition at line 111 of file CrossingMinimalPosition.h.
|
protected |
Definition at line 109 of file CrossingMinimalPosition.h.
|
protected |
Definition at line 110 of file CrossingMinimalPosition.h.
Definition at line 112 of file CrossingMinimalPosition.h.
|
protected |
Definition at line 114 of file CrossingMinimalPosition.h.