summaryrefslogtreecommitdiffstats
path: root/src/graphlayout/graphlayout.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* more judicious checking of results of find on my shape lookup table. NullTim Dwyer2007-03-181-40/+78
| | | | | bounding boxes could have potentially caused problems. (bzr r2684)
* Added check for null bounding box of shapes involved in graph layout.Tim Dwyer2007-03-161-10/+18
| | | | | | | I'm not actually sure if it's possible for something with a NULL item-box to be attached to a connector but if it is it's probably pretty safe to simply ignore. (bzr r2669)
* Merge further bbox workMenTaLguY2007-03-101-5/+7
| | | (bzr r2596)
* * src/graphlayout/graphlayout.cpp: For the purposes of graph layout,mjwybrow2007-02-021-1/+7
| | | | | | ignore connectors that are not attached to an object at one end. This fixes bug #1630101. (bzr r2311)
* We now use connector spacing to determine the minimum space requiredTim Dwyer2006-07-181-2/+12
| | | | | | | | between shape bounding boxes when graph layout with avoid overlap constraints is applied. This means that there should always be enough room for connectors to route between shapes. Also changed the default connector spacing to a less extreme 3. (bzr r1435)
* remove debug messagesTim Dwyer2006-07-171-7/+1
| | | (bzr r1426)
* remove overlaps between connected componentsTim Dwyer2006-07-171-0/+1
| | | (bzr r1425)
* Constraints are now properly divided up between the connected componentsTim Dwyer2006-07-171-3/+12
| | | (bzr r1424)
* Layout algorithm is now applied to each connected component in the Tim Dwyer2006-07-161-12/+17
| | | | | | selection separately. Previously, behaviour of layout on disconnected graphs was... undefined! (bzr r1421)
* fixed warningsTim Dwyer2006-07-141-9/+5
| | | (bzr r1410)
* - Connectors with end-markers now constrained to point downwards in graph layoutTim Dwyer2006-07-141-26/+55
| | | | | - vpsc namespace added to libvpsc (bzr r1408)
* - added toggle buttons for directed layout (doesn't do anything yet) and ↵Tim Dwyer2006-07-121-11/+26
| | | | | | | | overlap avoiding layout to connector toolbar - added icon for directed layout toggle button - removed old ref to remove_rectangle_overlaps-test from src/Makefile.am (bzr r1396)
* Added layout button and ideal connector length spinbox to connector toolbarTim Dwyer2006-07-121-2/+2
| | | (bzr r1395)
* Previously graph layout was done using the Kamada-Kawai layout algorithm Tim Dwyer2006-07-121-60/+39
| | | | | | | | | | | | | | | | | 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)
* * src/document.cpp, src/document.h, src/sp-conn-end-pair.cpp, mjwybrow2006-02-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | src/connector-context.cpp, src/conn-avoid-ref.cpp: Keep a seperate connector router for each document. * src/libavoid/Makefile_insert, src/libavoid/connector.cpp, src/libavoid/connector.h, src/libavoid/debug.h, src/libavoid/geometry.cpp, src/libavoid/geometry.h, src/libavoid/geomtypes.h, src/libavoid/graph.cpp, src/libavoid/graph.h, src/libavoid/incremental.cpp, src/libavoid/incremental.h, src/libavoid/libavoid.h, src/libavoid/makepath.cpp, src/libavoid/makepath.h, src/libavoid/polyutil.cpp, src/libavoid/polyutil.h, src/libavoid/router.cpp, src/libavoid/router.h, src/libavoid/shape.cpp, src/libavoid/shape.h, src/libavoid/static.cpp, src/libavoid/static.h, src/libavoid/timer.cpp, src/libavoid/timer.h, src/libavoid/vertices.cpp, src/libavoid/vertices.h, src/libavoid/visibility.cpp, src/libavoid/visibility.h: Upstream changes to libavoid that allow multiple connector router instances, as well a few other minor bugfixes. (bzr r144)
* shuffling includes to make it compile againRalf Stephan2006-02-141-1/+1
| | | (bzr r141)
* dumps the graph to cout in dot formatTim Dwyer2006-02-141-1/+1
| | | (bzr r138)
* cleanupTim Dwyer2006-02-141-31/+44
| | | (bzr r137)
* * src/graphlayout/graphlayout.cpp, src/conn-avoid-ref.cpp,mjwybrow2006-02-141-1/+1
| | | | | | | | | | src/conn-avoid-ref.h, src/libavoid/connector.cpp, src/libavoid/connector.h: Change the behaviour and naming of some connector querying code after feedback from Tim Dwyer in implementing graph drawing functionality. (bzr r136)
* using libavoid/geomtypes.hTim Dwyer2006-02-131-6/+2
| | | (bzr r129)
* Make our own simple_pointTim Dwyer2006-02-131-2/+7
| | | (bzr r128)
* fixTim Dwyer2006-02-131-1/+1
| | | (bzr r127)
* ifdefsTim Dwyer2006-02-131-7/+8
| | | (bzr r126)
* cleanupTim Dwyer2006-02-131-8/+2
| | | (bzr r125)
* added isConnector functionTim Dwyer2006-02-131-7/+9
| | | (bzr r124)
* Correct connector/node checkTim Dwyer2006-02-131-2/+8
| | | (bzr r123)
* Added connector graph layout functionalityTim Dwyer2006-02-131-0/+147
(bzr r122)