Energy function for attraction between two adjacent vertices. More...
#include <ogdf/internal/energybased/Attraction.h>
Inheritance diagram for ogdf::Attraction:Public Member Functions | |
| Attraction (GraphAttributes &AG) | |
| ~Attraction () | |
| void | reinitializeEdgeLength (double multi) |
| set multiplier for the edge length with repspect to node size to multi | |
| void | setPreferredEdgelength (double l) |
| set the preferred edge length to the absolute value l | |
Public Member Functions inherited from ogdf::NodePairEnergy | |
| NodePairEnergy (const String energyname, GraphAttributes &AG) | |
| virtual | ~NodePairEnergy () |
| void | computeEnergy () |
| computes energy for the layout at the beginning of the optimization process | |
Public Member Functions inherited from ogdf::EnergyFunction | |
| EnergyFunction (const String &funcname, GraphAttributes &AG) | |
| Initializes data dtructures to speed up later computations. | |
| virtual | ~EnergyFunction () |
| void | candidateTaken () |
| Changes m_currentX and m_currentY by setting the position of m_testNode to m_testX and m_testY. Sets m_energy to m_candidateEnergy. Computes the energy of the layout stored in AG. | |
| double | computeCandidateEnergy (const node v, const DPoint &newPos) |
| sets m_testNode, m_testX and m_testY and computes the energy for the new configuration (vertex v moves to newPos) | |
| double | energy () const |
| String | getName () const |
| prints the name of the energy function | |
Private Member Functions | |
| double | computeCoordEnergy (node, node, const DPoint &, const DPoint &) const |
| computes the energy contributed by the two nodes if they are placed at the two given positions | |
Private Attributes | |
| double | m_preferredEdgeLength |
| the length that that all edges should ideally have | |
Static Private Attributes | |
| static const double | MULTIPLIER |
| Average length and height of nodes is multiplied by this factor to get preferred edge length. | |
Additional Inherited Members | |
Protected Member Functions inherited from ogdf::NodePairEnergy | |
| bool | adjacent (const node v, const node w) const |
| int | nodeNum (node v) const |
| const IntersectionRectangle & | shape (const node v) const |
Protected Member Functions inherited from ogdf::EnergyFunction | |
| DPoint | currentPos (const node v) const |
| returns the current position of vertex v | |
| node | testNode () const |
| returns the vertex that is under consideration in the current step | |
| DPoint | testPos () |
| returns candidate position for the node to be moved | |
Energy function for attraction between two adjacent vertices.
Implements an energy function that simulates attraction between two adjacent vertices. There is an optimum distance where the energy is zero. The energy grows quadratic with the difference to the optimum distance. The optimum distance between two adjacent vertices depends on the size of the two vertices.
Definition at line 66 of file Attraction.h.
| ogdf::Attraction::Attraction | ( | GraphAttributes & | AG | ) |
|
inline |
Definition at line 70 of file Attraction.h.
|
privatevirtual |
computes the energy contributed by the two nodes if they are placed at the two given positions
Implements ogdf::NodePairEnergy.
| void ogdf::Attraction::reinitializeEdgeLength | ( | double | multi | ) |
set multiplier for the edge length with repspect to node size to multi
|
inline |
set the preferred edge length to the absolute value l
Definition at line 72 of file Attraction.h.
|
private |
the length that that all edges should ideally have
Definition at line 82 of file Attraction.h.
|
staticprivate |
Average length and height of nodes is multiplied by this factor to get preferred edge length.
Definition at line 80 of file Attraction.h.