summaryrefslogtreecommitdiffstats
path: root/src/libcola/gradient_projection.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* committed patch 1710682 by jfaithJiHO2007-05-011-1/+1
| | | | | | | - in src/libcola/cola.cpp, isnan is used and not the cross-platform definition isNaN defined in isnan.h => replaced isnan by isNaN and included isnan.h - add math.h include in src/libcola/gradient_projection.cpp This was necessary because libcola does not compile for OS X 10.3.9 (bzr r2973)
* commited Solaris 2.8 / gcc-3.2.3 fixesMarkus Schwarzenberg2007-03-011-2/+5
| | | (bzr r2485)
* - Connectors with end-markers now constrained to point downwards in graph layoutTim Dwyer2006-07-141-15/+16
| | | | | - vpsc namespace added to libvpsc (bzr r1408)
* Previously graph layout was done using the Kamada-Kawai layout algorithm Tim Dwyer2006-07-121-0/+234
implemented in Boost. I am replacing this with a custom implementation of a constrained stress-majorization algorithm. The stress-majorization algorithm is more robust and has better convergence characteristics than Kamada-Kawai, and also simple constraints can be placed on node position (for example, to enforce downward-pointing edges, non-overlap constraints, or cluster constraints). Another big advantage is that we no longer need Boost. I've tested the basic functionality, but I have yet to properly handle disconnected graphs or to properly scale the resulting layout. This commit also includes significant refactoring... the quadratic program solver - libvpsc (Variable Placement with Separation Constraints) has been moved to src/libvpsc and the actual graph layout algorithm is in libcola. (bzr r1394)