bool ForceDirectedFlowAlgorithm::reflow(DirectedGraph& g, const Rectangle<int>& area, ObjController& objController, float /*deltaTime*/) { // const Array<Node*>& nodes = g.getNodes(); // const Array<Array<bool>>& edges = g.edges; Point<float> totalEnergy(0.0, 0.0); for (tNodesAndEdges& group : g.getConnectedGroups()) { applyForces(totalEnergy, group, area.getWidth(), area.getHeight(), objController); } float lenTotalEnergy = sqrt(totalEnergy.x * totalEnergy.x + totalEnergy.y * totalEnergy.y); // DBG(lenTotalEnergy); if (lenTotalEnergy < stopEnergy) { g.setPositions(); return false; } return true; }