diff -r 1f436ea3ef4f -r 911c6ba0e3c8 graph_displayer_canvas.cc --- a/graph_displayer_canvas.cc Mon Nov 06 15:40:44 2006 +0000 +++ b/graph_displayer_canvas.cc Tue Nov 07 21:27:28 2006 +0000 @@ -320,8 +320,6 @@ actual_forces.setXMap(x); actual_forces.setYMap(y); - lemon::dim2::Point delta; - //count actual force for each nodes for (NodeIt i((mytab.mapstorage).graph); i!=INVALID; ++i) { @@ -330,17 +328,14 @@ { if(i!=j) { - delta=((mytab.mapstorage).coords[i]-(mytab.mapstorage).coords[j]); + lemon::dim2::Point delta = + ((mytab.mapstorage).coords[i]- + (mytab.mapstorage).coords[j]); - double length_sqr=delta.normSquare(); - double length=sqrt(length_sqr); - if(length_sqr delta = + ((mytab.mapstorage).coords[i]- + (mytab.mapstorage).coords[mytab.mapstorage. + graph.target(ei)]); + + //calculating attraction strength + //greater distance means greater strength + delta*=attraction; + + actual_forces.set(i,actual_forces[i]-delta); } for(InEdgeIt ei((mytab.mapstorage).graph,i);ei!=INVALID;++ei) { - delta=((mytab.mapstorage).coords[i]-(mytab.mapstorage).coords[mytab.mapstorage.graph.source(ei)]); - - double length_sqr=delta.normSquare(); - double length=sqrt(length_sqr); - if(length_sqr delta = + ((mytab.mapstorage).coords[i]- + (mytab.mapstorage).coords[mytab.mapstorage. + graph.source(ei)]); + + //calculating attraction strength + //greater distance means greater strength + delta*=attraction; + + actual_forces.set(i,actual_forces[i]-delta); } } for (NodeIt i((mytab.mapstorage).graph); i!=INVALID; ++i)