void CFruchtermanReingold::calculate_coordinates() { CalculateForces(); for(int i = 0; i < vgc_nodes_num; ++i) { if(!vgc_graph->vertice_exists(i)) continue; QVector2D delta = vgc_vertices[i].v_force * NODE_MASS * TIME_DELTA * TIME_DELTA; vgc_vertices[i].v_coordinates += delta.toPoint() * std::min(delta.length(), (double)vgc_temperature) / delta.length(); } Cool(); }