Skip to content

anvaka/ngraph.remove-overlaps

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ngraph.remove-overlaps

Removes overlaps between nodes in ngraph.forcelayout. Demo

Usage

There are two ways how you can use ngraph.remove-overlaps. One option is "fire-and-forget". In this mode remove overlaps will take whatever current state of the system is, and will remove all overlaps between boxes:

var createLayout = require('ngraph.forcelayout')
var layout = createLayout(graph)

// let's say your layout ran for several iterations:
while(iterationsCount++ < MAX_ITERTIONS) {
  layout.step()
}

// If you want to remove overlaps just once:
var removeOverlaps = require('ngraph.remove-overlaps')
removeOverlaps(layout)

Alternatively, you may want to remove overlaps after every single layout iteration:

var removeOverlaps = require('ngraph.remove-overlaps')
var createLayout = require('ngraph.forcelayout')
var layout = createLayout(graph)

// run layout and overlap removal for several iterations:
while(iterationsCount++ < MAX_ITERTIONS) {
  layout.step()
  removeOverlaps(layout);
}

Or you can write the code more concisely like so:

var removeOverlaps = require('ngraph.remove-overlaps')
var createLayout = require('ngraph.forcelayout')
var layout = createLayout(graph)

// Thanks to {active: true} option, whever layout is changed,
// the overlaps will be removed automatically:
removeOverlaps(layout, {active: true})

// let's say your layout ran for several iterations:
while(iterationsCount++ < MAX_ITERTIONS) {
  layout.step()
}

license

MIT

About

Removes overlaps between nodes in ngraph.forcelayout

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages