39namespace energybased {
59 v_lower_level =
v_low;
69 void set_x(
double x) { position.m_x = x; }
71 void set_y(
double y) { position.m_y = y; }
75 double get_x()
const {
return position.m_x; }
77 double get_y()
const {
return position.m_y; }
Includes declaration of graph class.
Declaration of doubly linked lists and iterators.
Declaration of classes GenericPoint, GenericPolyline, GenericLine, GenericSegment,...
Doubly linked lists (maintaining the length of the list).
Class for the representation of nodes.
helping data structure that stores the graphical attributes of a node that are needed for the force-d...
bool placed
indicates weather an initial position has been assigned to this node or not
void set_height(double h)
double angle_1
describes the sector where nodes that are not adjacent to other
node get_lower_level_node() const
friend std::ostream & operator<<(std::ostream &, const NodeAttributes &)
outputstream for NodeAttributes
List< node > * neighbour_s_node_List_ptr
a pointer to to the neighbour_s_node list
double get_angle_2() const
double get_height() const
DPoint get_position() const
int mass
the mass (= number of previously collapsed nodes) of this node
node get_original_node() const
node get_dedicated_sun_node() const
node v_lower_level
the corresponding node in the lower level graph
List< node > neighbour_s_node
this is the list of the neighbour solar systems suns lambda[i] corresponds to neighbour_s_node[i]
void set_original_node(node v)
void set_position(DPoint pos)
node get_subgraph_node() const
NodeAttributes()
Constructor.
List< double > lambda
the factors lambda for scaling the length of this edge relative to the pass between v's sun and the s...
void set_dedicated_sun_distance(double d)
void set_lower_level_node(node v)
void set_dedicated_sun_node(node v)
void set_angle_1(double a)
node get_copy_node() const
double dedicated_sun_distance
the distance to the dedicated sun node of the galaxy of this node
void set_higher_level_node(node v)
void set_dedicated_pm_node(node v)
List< double > * get_lambda_List_ptr()
List< node > * get_dedicated_moon_node_List_ptr()
List< node > * get_neighbour_sun_node_List_ptr()
List< double > * lambda_List_ptr
a pointer to the lambda list
friend std::istream & operator>>(std::istream &, NodeAttributes &)
inputstream for NodeAttributes
void set_copy_node(node v)
void set_subgraph_node(node v)
List< node > moon_List
the list of all dedicated moon nodes (!= nil if type == 3)
node get_dedicated_pm_node() const
double get_dedicated_sun_distance() const
node get_higher_level_node() const
node dedicated_pm_node
if type == 4 the dedicated_pm_node is saved here
List< node > * moon_List_ptr
a pointer to the moon_List
double get_angle_1() const
node dedicated_sun_node
the dedicates s_node of the solar system of this node
void set_NodeAttributes(double w, double h, DPoint pos, node v_low, node v_high)
double angle_2
solar systems have to be placed
int type
1 = sun node (s_node); 2 = planet node (p_node) without a dedicate moon 3 = planet node with dedicate...
node v_higher_level
the corresponding node in the higher level graph for divide et impera v_lower_level is the original g...
void set_angle_2(double a)
void init_mult_values()
initialzes all values needed for multilevel representations
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF DLL.
static MultilevelBuilder * getDoubleFactoredZeroAdjustedMerger()
The namespace for all OGDF objects.